Rev 328: Start using repository rather than branch in viz, in preparation of support for displaying multiple branches. in file:///data/jelmer/bzr-gtk/trunk/
Jelmer Vernooij
jelmer at samba.org
Wed Oct 31 02:01:44 GMT 2007
At file:///data/jelmer/bzr-gtk/trunk/
------------------------------------------------------------
revno: 328
revision-id:jelmer at samba.org-20071031020139-fmavr1z26v70uaov
parent: jelmer at samba.org-20071030234227-cm6b5m8itw4bsntu
committer: Jelmer Vernooij <jelmer at samba.org>
branch nick: trunk
timestamp: Wed 2007-10-31 03:01:39 +0100
message:
Start using repository rather than branch in viz, in preparation of support for displaying multiple branches.
modified:
viz/branchwin.py branchwin.py-20051016222514-15fd120652fcf25c
viz/linegraph.py graph.py-20051016214152-ebf565808c860cf7
viz/treemodel.py treemodel.py-20070909175138-leue3q5w1rxy86hw-1
viz/treeview.py treeview.py-20071020204704-vk1erblrjhbcgw94-1
=== modified file 'viz/branchwin.py'
--- a/viz/branchwin.py 2007-10-30 23:42:27 +0000
+++ b/viz/branchwin.py 2007-10-31 02:01:39 +0000
@@ -100,7 +100,7 @@
def construct_top(self):
"""Construct the top-half of the window."""
- self.treeview = TreeView(self.branch, self.start, self.maxnum)
+ self.treeview = TreeView(self.branch.repository, self.start, self.maxnum)
self.treeview.connect("revision-selected",
self._treeselection_changed_cb)
@@ -178,6 +178,6 @@
def _show_clicked_cb(self, revid, parentid):
"""Callback for when the show button for a parent is clicked."""
- self.treeview.show_diff(self.branch, revid, parentid)
+ self.treeview.show_diff(self.branch.repository, revid, parentid)
self.treeview.grab_focus()
=== modified file 'viz/linegraph.py'
--- a/viz/linegraph.py 2007-10-01 21:45:28 +0000
+++ b/viz/linegraph.py 2007-10-31 02:01:39 +0000
@@ -11,8 +11,8 @@
from bzrlib.tsort import merge_sort
-def linegraph(branch, start, maxnum):
- """Produce a directed graph of a bzr branch.
+def linegraph(repository, start, maxnum):
+ """Produce a directed graph of a bzr repository.
Returns a tuple of (line_graph, revid_index, columns_len) where
* line_graph is a list of tuples of (revid,
@@ -44,11 +44,7 @@
# FIXME: This should be configurable
BROKEN_LINE_LENGTH = 32
- # We get the mainline so we can pass it to merge_sort to make merge_sort
- # run faster.
- mainline = [None]
- mainline.extend(branch.revision_history())
- graph_parents = branch.repository.get_revision_graph(start)
+ graph_parents = repository.get_revision_graph(start)
graph_children = {}
for revid in graph_parents.iterkeys():
graph_children[revid] = []
@@ -56,7 +52,6 @@
merge_sorted_revisions = merge_sort(
graph_parents,
start,
- mainline,
generate_revno=True)
revid_index = {}
=== modified file 'viz/treemodel.py'
--- a/viz/treemodel.py 2007-10-02 22:55:24 +0000
+++ b/viz/treemodel.py 2007-10-31 02:01:39 +0000
@@ -29,10 +29,10 @@
class TreeModel(gtk.GenericTreeModel):
- def __init__ (self, branch, line_graph_data):
+ def __init__ (self, repository, line_graph_data):
gtk.GenericTreeModel.__init__(self)
self.revisions = {}
- self.branch = branch
+ self.repository = repository
self.line_graph_data = line_graph_data
def on_get_flags(self):
@@ -76,7 +76,7 @@
for revno in revno_sequence])
if revid not in self.revisions:
- revision = self.branch.repository.get_revisions([revid])[0]
+ revision = self.repository.get_revisions([revid])[0]
self.revisions[revid] = revision
else:
revision = self.revisions[revid]
=== modified file 'viz/treeview.py'
--- a/viz/treeview.py 2007-10-24 18:03:11 +0000
+++ b/viz/treeview.py 2007-10-31 02:01:39 +0000
@@ -29,10 +29,10 @@
())
}
- def __init__(self, branch, start, maxnum):
+ def __init__(self, repository, start, maxnum):
"""Create a new TreeView.
- :param branch: Branch object for branch to show.
+ :param repository: Repository object to use for retrieving revisions.
:param start: Revision id of top revision.
:param maxnum: Maximum number of revisions to display,
None for no limit.
@@ -44,8 +44,8 @@
self.construct_treeview()
- self.branch = branch
- self.branch.lock_read()
+ self.repository = repository
+ self.repository.lock_read()
gobject.idle_add(self.populate, start, maxnum)
@@ -53,7 +53,7 @@
self.children = None
self.parents = None
- self.connect('destroy', lambda w: self.branch.unlock())
+ self.connect('destroy', lambda w: self.repository.unlock())
def get_revision(self):
"""Return revision id of currently selected revision, or None."""
@@ -124,11 +124,11 @@
:param maxnum: Maximum number of revisions to display, or None
for no limit.
"""
- (linegraphdata, index, columns_len) = linegraph(self.branch,
+ (linegraphdata, index, columns_len) = linegraph(self.repository,
start,
maxnum)
- self.model = TreeModel(self.branch, linegraphdata)
+ self.model = TreeModel(self.repository, linegraphdata)
self.graph_cell.columns_len = columns_len
width = self.graph_cell.get_size(self.treeview)[2]
self.graph_column.set_fixed_width(width)
@@ -140,13 +140,15 @@
return False
- def show_diff(self, branch, revid, parentid):
+ def show_diff(self, repository, revid, parentid):
"""Open a new window to show a diff between the given revisions."""
from bzrlib.plugins.gtk.diff import DiffWindow
window = DiffWindow(parent=self)
- (parent_tree, rev_tree) = branch.repository.revision_trees([parentid,
- revid])
- description = revid + " - " + branch.nick
+ (parent_tree, rev_tree) = repository.revision_trees([parentid, revid])
+ description = revid
+ rev = repository.get_revision(revid)
+ if rev.properties.has("branch-nick"):
+ rev += " - " + rev.properties['branch-nick']
window.set_diff(description, rev_tree, parent_tree)
window.show()
@@ -227,9 +229,8 @@
def _on_revision_selected(self, widget, event):
from bzrlib.plugins.gtk.revisionmenu import RevisionPopupMenu
if event.button == 3:
- menu = RevisionPopupMenu(self.branch.repository,
- [self.get_revision().revision_id],
- self.branch)
+ menu = RevisionPopupMenu(self.repository,
+ [self.get_revision().revision_id])
menu.popup(None, None, None, event.button, event.get_time())
def _on_revision_activated(self, widget, path, col):
@@ -241,5 +242,5 @@
# Ignore revisions without parent
return
parent_id = parents[0]
- self.show_diff(self.branch, revision_id, parent_id)
+ self.show_diff(self.repository, revision_id, parent_id)
self.treeview.grab_focus()
More information about the bazaar-commits
mailing list