/b-gtk/fix-viz

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/b-gtk/fix-viz

« back to all changes in this revision

Viewing changes to bzr-handle-patch

  • Committer: Scott James Remnant
  • Date: 2005-10-17 04:26:00 UTC
  • Revision ID: scott@netsplit.com-20051017042600-b3a3265abfffdf53
Split the display in two with a pane, we'll use the bottom half to show
information about the current revision.  Add a Back and Forward button
which figure out which revision is logically the next of previous and
moves the cursor to it.  Handle the cursor-changed event to enable/disable
the buttons (and soon update the bottom pane).

Further split up graph.py so we can stash the internal lists to do the
above; also it may allow us in future to produce partial graphs.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
#!/usr/bin/python
2
 
 
3
 
from bzrlib import errors, merge_directive
4
 
from bzrlib.plugin import load_plugins
5
 
from bzrlib.plugins.gtk import open_display
6
 
load_plugins()
7
 
 
8
 
import sys
9
 
 
10
 
if len(sys.argv) < 2:
11
 
        print "Usage: handle-patch <path>"
12
 
        sys.exit(1)
13
 
 
14
 
 
15
 
path = sys.argv[1]
16
 
 
17
 
try:
18
 
        from bzrlib.plugins.gtk.diff import (DiffController,
19
 
                                                                                 MergeDirectiveController)
20
 
        if path == '-':
21
 
                lines = sys.stdin.readlines()
22
 
        else:
23
 
                lines = open(path, 'rb').readlines()
24
 
        lines = [l.replace('\r\n', '\n') for l in lines]
25
 
        try:
26
 
                directive = merge_directive.MergeDirective.from_lines(lines)
27
 
        except errors.NotAMergeDirective:
28
 
                controller = DiffController(path, lines)
29
 
        else:
30
 
                controller = MergeDirectiveController(path, directive)
31
 
        window = controller.window
32
 
        window.show()
33
 
        gtk = open_display()
34
 
        window.connect("destroy", gtk.main_quit)
35
 
except Exception, e:
36
 
        from dialog import error_dialog
37
 
        error_dialog('Error', str(e))
38
 
        raise
39
 
gtk.main()