[Pkg-bazaar-commits] ./bzr-gtk/unstable r342: Merged diff fix.

Daniel Schierbeck daniel.schierbeck at gmail.com
Fri Apr 10 07:49:59 UTC 2009


------------------------------------------------------------
revno: 342
committer: Daniel Schierbeck <daniel.schierbeck at gmail.com>
branch nick: menubar
timestamp: Sat 2007-11-03 18:38:10 +0100
message:
  Merged diff fix.
modified:
  revisionmenu.py
  viz/treeview.py
    ------------------------------------------------------------
    revno: 330.4.1
    committer: Daniel Schierbeck <daniel.schierbeck at gmail.com>
    branch nick: fix-diff
    timestamp: Sat 2007-11-03 03:19:54 +0100
    message:
      Made it possible to view the diff of an orphant revision.
    modified:
      viz/treeview.py
    ------------------------------------------------------------
    revno: 330.4.2
    committer: Daniel Schierbeck <daniel.schierbeck at gmail.com>
    branch nick: fix-diff
    timestamp: Sat 2007-11-03 03:23:43 +0100
    message:
      Made it work when right-clicking, too.
    modified:
      revisionmenu.py
    ------------------------------------------------------------
    revno: 330.4.3
    committer: Daniel Schierbeck <daniel.schierbeck at gmail.com>
    branch nick: fix-diff
    timestamp: Sat 2007-11-03 16:58:52 +0100
    message:
      Switched to using NULL_REVISION instead of None.
    modified:
      revisionmenu.py
      viz/treeview.py
-------------- next part --------------
=== modified file 'revisionmenu.py'
--- a/revisionmenu.py	2007-10-31 02:11:04 +0000
+++ b/revisionmenu.py	2007-11-03 15:58:52 +0000
@@ -24,6 +24,7 @@
 import bzrlib
 import gtk
 from bzrlib import (errors, ui)
+from bzrlib.revision import NULL_REVISION
 
 class RevisionPopupMenu(gtk.Menu):
     def __init__(self, repository, revids, branch=None, wt=None):
@@ -70,9 +71,15 @@
     def show_diff(self, item):
         from bzrlib.plugins.gtk.diff import DiffWindow
         window = DiffWindow(parent=self.parent)
-        parentid = self.repository.revision_parents(self.revids[0])[0]
-        (parent_tree, rev_tree) = self.repository.revision_trees(
-            [parentid, self.revids[0]])
+        parentids = self.repository.revision_parents(self.revids[0])
+
+        if len(parentids) == 0:
+            parentid = NULL_REVISION
+        else:
+            parentid = parentids[0]
+
+        rev_tree    = self.repository.revision_tree(self.revids[0])
+        parent_tree = self.repository.revision_tree(parentid)
         window.set_diff(self.revids[0], rev_tree, parent_tree)
         window.show()
 

=== modified file 'viz/treeview.py'
--- a/viz/treeview.py	2007-11-03 00:44:01 +0000
+++ b/viz/treeview.py	2007-11-03 17:38:10 +0000
@@ -17,6 +17,7 @@
 from linegraph import linegraph, same_branch
 from graphcell import CellRendererGraph
 from treemodel import TreeModel
+from bzrlib.revision import NULL_REVISION
 
 class TreeView(gtk.ScrolledWindow):
 
@@ -146,12 +147,18 @@
 
         return False
 
-    def show_diff(self, branch, revid, parentid):
+    def show_diff(self, branch, revid, 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)
-        (parent_tree, rev_tree) = branch.repository.revision_trees([parentid, 
-                                                                   revid])
+
+        rev_tree    = branch.repository.revision_tree(revid)
+
+        if parentid is None:
+            parentid = NULL_REVISION
+
+        parent_tree = branch.repository.revision_tree(parentid)
+
         description = revid + " - " + branch.nick
         window.set_diff(description, rev_tree, parent_tree)
         window.show()
@@ -244,9 +251,11 @@
         """Callback for when a treeview row gets activated."""
         revision_id = self.model[path][treemodel.REVID]
         parents = self.model[path][treemodel.PARENTS]
+
         if len(parents) == 0:
-            # Ignore revisions without parent
-            return
-        parent_id = parents[0]
+            parent_id = None
+        else:
+            parent_id = parents[0]
+
         self.show_diff(self.branch, revision_id, parent_id)
         self.treeview.grab_focus()



More information about the Pkg-bazaar-commits mailing list