[Pkg-bazaar-commits] ./bzr-gtk/unstable r299: Made the diff viewer close on Ctrl-W and Ctrl-Q.
Daniel Schierbeck
daniel.schierbeck at gmail.com
Fri Apr 10 07:45:25 UTC 2009
------------------------------------------------------------
revno: 299
committer: Daniel Schierbeck <daniel.schierbeck at gmail.com>
branch nick: diff-close
timestamp: Sun 2007-10-14 03:02:38 +0200
message:
Made the diff viewer close on Ctrl-W and Ctrl-Q.
modified:
diff.py
olive/__init__.py
viz/branchwin.py
-------------- next part --------------
=== modified file 'diff.py'
--- a/diff.py 2007-09-17 20:20:43 +0000
+++ b/diff.py 2007-10-14 01:02:38 +0000
@@ -44,7 +44,7 @@
differences between two revisions on a branch.
"""
- def __init__(self):
+ def __init__(self, parent=None):
gtk.Window.__init__(self, gtk.WINDOW_TOPLEVEL)
self.set_border_width(0)
self.set_title("bzrk diff")
@@ -56,6 +56,11 @@
height = int(monitor.height * 0.66)
self.set_default_size(width, height)
+ self._parent = parent
+ self.connect('key-press-event', self._on_key_pressed)
+ if parent is None:
+ self.connect('delete-event', gtk.main_quit)
+
self.construct()
def construct(self):
@@ -316,3 +321,21 @@
colors[key.strip()] = val.strip()
return colors
+ def _on_key_pressed(self, widget, event):
+ """ Key press event handler. """
+ keyname = gtk.gdk.keyval_name(event.keyval)
+ func = getattr(self, '_on_key_press_' + keyname, None)
+ if func:
+ return func(event)
+
+ def _on_key_press_w(self, event):
+ if event.state & gtk.gdk.CONTROL_MASK:
+ self.destroy()
+ if self._parent is None:
+ gtk.main_quit()
+
+ def _on_key_press_q(self, event):
+ if event.state & gtk.gdk.CONTROL_MASK:
+ gtk.main_quit()
+
+
=== modified file 'olive/__init__.py'
--- a/olive/__init__.py 2007-09-15 14:42:19 +0000
+++ b/olive/__init__.py 2007-10-14 01:02:38 +0000
@@ -726,7 +726,7 @@
def on_menuitem_stats_diff_activate(self, widget):
""" Statistics/Differences... menu handler. """
- window = DiffWindow()
+ window = DiffWindow(parent=self)
parent_tree = self.wt.branch.repository.revision_tree(self.wt.branch.last_revision())
window.set_diff(self.wt.branch.nick, self.wt, parent_tree)
window.show()
=== modified file 'viz/branchwin.py'
--- a/viz/branchwin.py 2007-10-08 10:23:50 +0000
+++ b/viz/branchwin.py 2007-10-14 01:02:38 +0000
@@ -293,7 +293,7 @@
def show_diff(self, branch, revid, parentid):
"""Open a new window to show a diff between the given revisions."""
from bzrlib.plugins.gtk.diff import DiffWindow
- window = DiffWindow()
+ window = DiffWindow(parent=self)
(parent_tree, rev_tree) = branch.repository.revision_trees([parentid,
revid])
description = revid + " - " + branch.nick
More information about the Pkg-bazaar-commits
mailing list