/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 logview.py

  • Committer: Jelmer Vernooij
  • Date: 2007-10-30 23:42:27 UTC
  • mfrom: (324.2.11 no-diff)
  • Revision ID: jelmer@samba.org-20071030234227-cm6b5m8itw4bsntu
Merge tab view for viz.

Show diffs side-by-side

added added

removed removed

Lines of Context:
22
22
 
23
23
from bzrlib.osutils import format_date
24
24
 
25
 
 
26
 
class LogView(gtk.ScrolledWindow):
 
25
class LogView(gtk.Notebook):
27
26
    """ Custom widget for commit log details.
28
27
 
29
28
    A variety of bzr tools may need to implement such a thing. This is a
31
30
    """
32
31
 
33
32
    def __init__(self, revision=None, scroll=True, tags=[],
34
 
                 show_children=False):
35
 
        super(LogView, self).__init__()
36
 
        if scroll:
37
 
            self.set_policy(gtk.POLICY_NEVER, gtk.POLICY_AUTOMATIC)
38
 
        else:
39
 
            self.set_policy(gtk.POLICY_NEVER, gtk.POLICY_NEVER)
40
 
        self.set_shadow_type(gtk.SHADOW_NONE)
 
33
                 show_children=False, branch=None):
 
34
        gtk.Notebook.__init__(self)
41
35
        self.show_children = show_children
42
 
        self._create()
 
36
 
 
37
        self._create_general()
 
38
        self._create_relations()
 
39
 
 
40
        self.set_current_page(0)
 
41
        
43
42
        self._show_callback = None
44
43
        self._go_callback = None
45
44
        self._clicked_callback = None
46
45
 
 
46
        self._branch = branch
 
47
 
47
48
        if revision is not None:
48
49
            self.set_revision(revision, tags=tags)
49
50
 
156
157
            hbox.pack_start(button, expand=False, fill=True)
157
158
            button.show()
158
159
 
159
 
    def _create(self):
 
160
    def _create_general(self):
160
161
        vbox = gtk.VBox(False, 6)
161
162
        vbox.set_border_width(6)
162
163
        vbox.pack_start(self._create_headers(), expand=False, fill=True)
 
164
        vbox.pack_start(self._create_message_view())
 
165
        self.append_page(vbox, tab_label=gtk.Label("General"))
 
166
        vbox.show()
 
167
 
 
168
    def _create_relations(self):
 
169
        vbox = gtk.VBox(False, 6)
 
170
        vbox.set_border_width(6)
163
171
        vbox.pack_start(self._create_parents(), expand=False, fill=True)
164
172
        if self.show_children:
165
173
            vbox.pack_start(self._create_children(), expand=False, fill=True)
166
 
        vbox.pack_start(self._create_message_view())
167
 
        self.add_with_viewport(vbox)
 
174
        self.append_page(vbox, tab_label=gtk.Label("Relations"))
168
175
        vbox.show()
169
176
 
170
177
    def _create_headers(self):
313
320
 
314
321
    def _create_message_view(self):
315
322
        self.message_buffer = gtk.TextBuffer()
 
323
        window = gtk.ScrolledWindow()
 
324
        window.set_policy(gtk.POLICY_NEVER, gtk.POLICY_AUTOMATIC)
 
325
        window.set_shadow_type(gtk.SHADOW_IN)
316
326
        tv = gtk.TextView(self.message_buffer)
317
327
        tv.set_editable(False)
318
328
        tv.set_wrap_mode(gtk.WRAP_WORD)
319
329
        tv.modify_font(pango.FontDescription("Monospace"))
320
330
        tv.show()
321
 
        return tv
 
331
        window.add(tv)
 
332
        window.show()
 
333
        return window
322
334