[Pkg-bazaar-commits] ./bzr-gtk/unstable r364: Simplified TreeView.show_diff() and made the Revision -> View Changes menu item work.

Daniel Schierbeck daniel.schierbeck at gmail.com
Fri Apr 10 07:45:12 UTC 2009


------------------------------------------------------------
revno: 364
committer: Daniel Schierbeck <daniel.schierbeck at gmail.com>
branch nick: menubar
timestamp: Tue 2007-11-06 18:33:25 +0100
message:
  Simplified TreeView.show_diff() and made the Revision -> View Changes menu item work.
modified:
  viz/branchwin.py
  viz/treeview.py
-------------- next part --------------
=== modified file 'viz/branchwin.py'
--- a/viz/branchwin.py	2007-11-06 17:20:32 +0000
+++ b/viz/branchwin.py	2007-11-06 17:33:25 +0000
@@ -157,8 +157,12 @@
         revision_menuitem = gtk.MenuItem("_Revision")
         revision_menuitem.set_submenu(revision_menu)
 
+        revision_menu_diff = gtk.MenuItem("View Changes")
+        revision_menu_diff.connect('activate', 
+                lambda w: self.treeview.show_diff())
+
         revision_menu.add(gtk.MenuItem("Tag Revision"))
-        revision_menu.add(gtk.MenuItem("View Changes"))
+        revision_menu.add(revision_menu_diff)
 
         branch_menu = gtk.Menu()
         branch_menuitem = gtk.MenuItem("_Branch")
@@ -315,7 +319,7 @@
 
     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(revid, parentid)
         self.treeview.grab_focus()
 
     def _set_revision_cb(self, w, revision_id):

=== modified file 'viz/treeview.py'
--- a/viz/treeview.py	2007-11-05 17:19:30 +0000
+++ b/viz/treeview.py	2007-11-06 17:33:25 +0000
@@ -196,19 +196,24 @@
 
         return False
 
-    def show_diff(self, branch, revid, parentid=None):
+    def show_diff(self, revid=None, parentid=None):
         """Open a new window to show a diff between the given revisions."""
         from bzrlib.plugins.gtk.diff import DiffWindow
         window = DiffWindow(parent=self)
 
-        rev_tree = branch.repository.revision_tree(revid)
+        if revid is None:
+            revid = self.revision.revision_id
+
+            if parentid is None and len(self.parents) > 0:
+                parentid = self.parents[0]
 
         if parentid is None:
             parentid = NULL_REVISION
 
-        parent_tree = branch.repository.revision_tree(parentid)
+        rev_tree    = self.branch.repository.revision_tree(revid)
+        parent_tree = self.branch.repository.revision_tree(parentid)
 
-        description = revid + " - " + branch.nick
+        description = revid + " - " + self.branch.nick
         window.set_diff(description, rev_tree, parent_tree)
         window.show()
 
@@ -318,5 +323,5 @@
         else:
             parent_id = parents[0]
 
-        self.show_diff(self.branch, revision_id, parent_id)
+        self.show_diff(revision_id, parent_id)
         self.treeview.grab_focus()



More information about the Pkg-bazaar-commits mailing list