/b-gtk/fix-viz

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/b-gtk/fix-viz

« back to all changes in this revision

Viewing changes to revisionview.py

  • Committer: Daniel Schierbeck
  • Date: 2008-04-01 22:05:41 UTC
  • mto: (461.1.1 trunk)
  • mto: This revision was merged to the branch mainline in revision 462.
  • Revision ID: daniel.schierbeck@gmail.com-20080401220541-kyqyda8yhp8skurp
Made bug tab prettier.

Show diffs side-by-side

added added

removed removed

Lines of Context:
31
31
 
32
32
gtk.link_button_set_uri_hook(_open_link)
33
33
 
34
 
class BugsTab(gtk.Table):
 
34
class BugsTab(gtk.VBox):
35
35
    def __init__(self):
36
 
        super(BugsTab, self).__init__(rows=5, columns=2)
37
 
        self.set_row_spacings(6)
38
 
        self.set_col_spacings(6)
39
 
        self.clear()
 
36
        super(BugsTab, self).__init__(False, 6)
 
37
 
 
38
        table = gtk.Table(rows=2, columns=2)
 
39
 
 
40
        table.set_row_spacings(6)
 
41
 
 
42
        image = gtk.Image()
 
43
        image.set_from_file(icon_path("bug.png"))
 
44
        table.attach(image, 0, 1, 0, 1, gtk.FILL)
 
45
 
 
46
        align = gtk.Alignment(0.0, 0.5)
 
47
        label = gtk.Label()
 
48
        label.set_markup("<b>Bugs</b>\nThis revision has one or more bug associations.")
 
49
        align.add(label)
 
50
        table.attach(align, 1, 2, 0, 1, gtk.FILL)
 
51
 
 
52
        treeview = self.construct_treeview()
 
53
        table.attach(treeview, 1, 2, 1, 2, gtk.FILL | gtk.EXPAND)
 
54
 
 
55
        self.set_border_width(6)
 
56
        self.pack_start(table, expand=False)
 
57
 
 
58
        self.hide_all()
 
59
 
 
60
    def construct_treeview(self):
 
61
        self.bugs = gtk.ListStore(gobject.TYPE_STRING, gobject.TYPE_STRING)
 
62
        self.treeview = gtk.TreeView(self.bugs)
 
63
 
 
64
        uri_column = gtk.TreeViewColumn('Bug URI', gtk.CellRendererText(), text=0)
 
65
        status_column = gtk.TreeViewColumn('Status', gtk.CellRendererText(), text=1)
 
66
 
 
67
        self.treeview.append_column(uri_column)
 
68
        self.treeview.append_column(status_column)
 
69
 
 
70
        win = gtk.ScrolledWindow()
 
71
        win.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC)
 
72
        win.set_shadow_type(gtk.SHADOW_IN)
 
73
        win.add(self.treeview)
 
74
 
 
75
        return win
40
76
 
41
77
    def clear(self):
42
 
        for c in self.get_children():
43
 
            self.remove(c)
44
 
        self.count = 0
 
78
        self.bugs.clear()
45
79
        self.hide_all() # Only shown when there are bugs
46
80
 
47
81
    def add_bug(self, url, status):
48
 
        button = gtk.LinkButton(url, url)
49
 
        self.attach(button, 0, 1, self.count, self.count + 1,
50
 
                              gtk.EXPAND | gtk.FILL, gtk.FILL)
51
 
        status_label = gtk.Label(status)
52
 
        self.attach(status_label, 1, 2, self.count, self.count + 1,
53
 
                              gtk.EXPAND | gtk.FILL, gtk.FILL)
54
 
        self.count += 1
 
82
        self.bugs.append([url, status])
55
83
        self.show_all()
56
84
 
57
85