[Pkg-bazaar-commits] ./bzr-gtk/unstable r402: Merged dynamic treeview refreshing branch.
Daniel Schierbeck
daniel.schierbeck at gmail.com
Fri Apr 10 07:45:00 UTC 2009
------------------------------------------------------------
revno: 402
committer: Daniel Schierbeck <daniel.schierbeck at gmail.com>
branch nick: menubar
timestamp: Thu 2007-11-22 01:25:35 +0100
message:
Merged dynamic treeview refreshing branch.
modified:
viz/branchwin.py
viz/treeview.py
------------------------------------------------------------
revno: 401.1.1
committer: Daniel Schierbeck <daniel.schierbeck at gmail.com>
branch nick: dynamic-branch
timestamp: Thu 2007-11-22 01:00:19 +0100
message:
Added update() method to TreeView.
modified:
viz/treeview.py
------------------------------------------------------------
revno: 401.1.2
committer: Daniel Schierbeck <daniel.schierbeck at gmail.com>
branch nick: dynamic-branch
timestamp: Thu 2007-11-22 01:10:54 +0100
message:
Allowed the treeview to be refreshed.
modified:
viz/branchwin.py
viz/treeview.py
------------------------------------------------------------
revno: 401.1.3
committer: Daniel Schierbeck <daniel.schierbeck at gmail.com>
branch nick: dynamic-branch
timestamp: Thu 2007-11-22 01:21:46 +0100
message:
Made the compact view toggling cleaner.
modified:
viz/branchwin.py
viz/treeview.py
-------------- next part --------------
=== modified file 'viz/branchwin.py'
--- a/viz/branchwin.py 2007-11-21 17:12:04 +0000
+++ b/viz/branchwin.py 2007-11-22 00:21:46 +0000
@@ -254,12 +254,8 @@
def construct_top(self):
"""Construct the top-half of the window."""
# FIXME: Make broken_line_length configurable
- if self.compact_view:
- brokenlines = 32
- else:
- brokenlines = None
- self.treeview = TreeView(self.branch, self.start, self.maxnum, brokenlines)
+ self.treeview = TreeView(self.branch, self.start, self.maxnum, self.compact_view)
self.treeview.connect('revision-selected',
self._treeselection_changed_cb)
@@ -292,6 +288,12 @@
self.next_button = self.next_rev_action.create_tool_item()
self.toolbar.insert(self.next_button, -1)
+ self.toolbar.insert(gtk.SeparatorToolItem(), -1)
+
+ refresh_button = gtk.ToolButton(gtk.STOCK_REFRESH)
+ refresh_button.connect('clicked', lambda x: self.treeview.refresh())
+ self.toolbar.insert(refresh_button, -1)
+
self.toolbar.show_all()
return self.toolbar
@@ -393,13 +395,8 @@
option = 'no'
self.config.set_user_option('viz-compact-view', option)
-
- revision = self.treeview.get_revision()
-
- self.paned.get_child1().destroy()
- self.paned.pack1(self.construct_top(), resize=True, shrink=False)
-
- gobject.idle_add(self.set_revision, revision.revision_id)
+ self.treeview.set_property('compact', self.compact_view)
+ self.treeview.refresh()
def _tag_revision_cb(self, w):
try:
=== modified file 'viz/treeview.py'
--- a/viz/treeview.py 2007-11-12 18:11:12 +0000
+++ b/viz/treeview.py 2007-11-22 00:21:46 +0000
@@ -58,7 +58,13 @@
'Date',
'Show date column',
False,
- gobject.PARAM_READWRITE)
+ gobject.PARAM_READWRITE),
+
+ 'compact': (gobject.TYPE_BOOLEAN,
+ 'Compact view',
+ 'Break ancestry lines to save space',
+ True,
+ gobject.PARAM_CONSTRUCT | gobject.PARAM_READWRITE)
}
@@ -71,7 +77,7 @@
())
}
- def __init__(self, branch, start, maxnum, broken_line_length=None):
+ def __init__(self, branch, start, maxnum, compact=True):
"""Create a new TreeView.
:param branch: Branch object for branch to show.
@@ -91,8 +97,11 @@
self.iter = None
self.branch = branch
- gobject.idle_add(self.populate, start, maxnum,
- broken_line_length)
+ self.start = start
+ self.maxnum = maxnum
+ self.compact = compact
+
+ gobject.idle_add(self.populate)
self.connect("destroy", lambda x: self.branch.unlock())
@@ -101,6 +110,8 @@
return self.revno_column.get_visible()
elif property.name == 'date-column-visible':
return self.date_column.get_visible()
+ elif property.name == 'compact':
+ return self.compact
elif property.name == 'branch':
return self.branch
elif property.name == 'revision':
@@ -119,6 +130,8 @@
self.revno_column.set_visible(value)
elif property.name == 'date-column-visible':
self.date_column.set_visible(value)
+ elif property.name == 'compact':
+ self.compact = value
elif property.name == 'branch':
self.branch = value
elif property.name == 'revision':
@@ -155,6 +168,9 @@
"""
return self.get_property('parents')
+ def refresh(self):
+ gobject.idle_add(self.populate, self.get_revision())
+
def back(self):
"""Signal handler for the Back button."""
parents = self.get_parents()
@@ -185,7 +201,7 @@
else:
self.set_revision_id(children[0])
- def populate(self, start, maxnum, broken_line_length=None):
+ def populate(self, revision=None):
"""Fill the treeview with contents.
:param start: Revision id of revision to start with.
@@ -194,10 +210,16 @@
:param broken_line_length: After how much lines branches \
should be broken.
"""
+
+ if self.compact:
+ broken_line_length = 32
+ else:
+ broken_line_length = None
+
self.branch.lock_read()
(linegraphdata, index, columns_len) = linegraph(self.branch.repository,
- start,
- maxnum,
+ self.start,
+ self.maxnum,
broken_line_length)
self.model = TreeModel(self.branch.repository, linegraphdata)
@@ -207,7 +229,12 @@
self.graph_column.set_max_width(width)
self.index = index
self.treeview.set_model(self.model)
- self.treeview.set_cursor(0)
+
+ if revision is None:
+ self.treeview.set_cursor(0)
+ else:
+ self.set_revision(revision)
+
self.emit('revisions-loaded')
return False
More information about the Pkg-bazaar-commits
mailing list