/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 __init__.py

  • Committer: Curtis Hovey
  • Date: 2011-09-08 03:11:06 UTC
  • mto: This revision was merged to the branch mainline in revision 741.
  • Revision ID: sinzui.is@verizon.net-20110908031106-c0s7grzmctdyghcm
Fixed packing args.

Show diffs side-by-side

added added

removed removed

Lines of Context:
15
15
"""Graphical support for Bazaar using GTK.
16
16
 
17
17
This plugin includes:
18
 
gannotate         GTK+ annotate. 
19
 
gbranch           GTK+ branching. 
20
 
gcheckout         GTK+ checkout. 
 
18
gannotate         GTK+ annotate.
 
19
gbranch           GTK+ branching.
 
20
gcheckout         GTK+ checkout.
21
21
gcommit           GTK+ commit dialog.
22
 
gconflicts        GTK+ conflicts. 
23
 
gdiff             Show differences in working tree in a GTK+ Window. 
 
22
gconflicts        GTK+ conflicts.
 
23
gdiff             Show differences in working tree in a GTK+ Window.
24
24
ginit             Initialise a new branch.
25
 
ginfo             GTK+ branch info dialog
26
25
gloom             GTK+ loom browse dialog
27
26
gmerge            GTK+ merge dialog
28
 
gmissing          GTK+ missing revisions dialog. 
29
 
gpreferences      GTK+ preferences dialog. 
 
27
gmissing          GTK+ missing revisions dialog.
 
28
gpreferences      GTK+ preferences dialog.
30
29
gpush             GTK+ push.
31
30
gsend             GTK+ send merge directive.
32
31
gstatus           GTK+ status dialog.
33
32
gtags             Manage branch tags.
34
 
visualise         Graphically visualise this branch. 
 
33
visualise         Graphically visualise this branch.
35
34
"""
36
35
 
37
36
import os
59
58
    )
60
59
from bzrlib.commands import plugin_cmds
61
60
 
62
 
 
63
 
version_info = (0, 99, 0, 'dev', 1)
 
61
from info import (
 
62
    bzr_plugin_version as version_info,
 
63
    bzr_compatible_versions,
 
64
    )
64
65
 
65
66
if version_info[3] == 'final':
66
67
    version_string = '%d.%d.%d' % version_info[:3]
68
69
    version_string = '%d.%d.%d%s%d' % version_info
69
70
__version__ = version_string
70
71
 
71
 
COMPATIBLE_BZR_VERSIONS = [(1, 6, 0), (1, 7, 0), (1, 8, 0), (1, 9, 0),
72
 
                           (1, 10, 0), (1, 11, 0), (1, 12, 0), (1, 13, 0),
73
 
                           (1, 15, 0),
74
 
                           (1, 17, 0),
75
 
                           (2, 1, 0),
76
 
                           (2, 2, 0),
77
 
                           ]
78
 
 
79
 
bzrlib.api.require_any_api(bzrlib, COMPATIBLE_BZR_VERSIONS)
 
72
bzrlib.api.require_any_api(bzrlib, bzr_compatible_versions)
80
73
 
81
74
if __name__ != 'bzrlib.plugins.gtk':
82
75
    from bzrlib.trace import warning
83
76
    warning("Not running as bzrlib.plugins.gtk, things may break.")
84
77
 
85
 
def import_pygtk():
86
 
    try:
87
 
        import pygtk
88
 
    except ImportError:
89
 
        raise errors.BzrCommandError("PyGTK not installed.")
90
 
    pygtk.require('2.0')
91
 
    return pygtk
92
 
 
93
78
 
94
79
def set_ui_factory():
95
 
    import_pygtk()
96
80
    from ui import GtkUIFactory
97
81
    import bzrlib.ui
98
82
    bzrlib.ui.ui_factory = GtkUIFactory()
116
100
    return data_path(os.path.join('icons', *args))
117
101
 
118
102
 
119
 
def open_display():
120
 
    pygtk = import_pygtk()
121
 
    try:
122
 
        import gtk
123
 
    except RuntimeError, e:
124
 
        if str(e) == "could not open display":
125
 
            raise NoDisplayError
126
 
    set_ui_factory()
127
 
    return gtk
128
 
 
129
 
 
130
103
commands = {
131
104
    "gannotate": ["gblame", "gpraise"],
132
105
    "gbranch": [],
135
108
    "gconflicts": [],
136
109
    "gdiff": [],
137
110
    "ginit": [],
138
 
    "ginfo": [],
139
111
    "gmerge": [],
140
112
    "gmissing": [],
141
113
    "gpreferences": [],
142
114
    "gpush": [],
143
 
    "gselftest": [],
144
115
    "gsend": [],
145
116
    "gstatus": ["gst"],
146
117
    "gtags": [],
166
137
                                       save_commit_messages,
167
138
                                       "Saving commit messages for gcommit")
168
139
 
169
 
import gettext
170
 
gettext.install('olive-gtk')
171
 
 
172
 
# Let's create a specialized alias to protect '_' from being erased by other
173
 
# uses of '_' as an anonymous variable (think pdb for one).
174
 
_i18n = gettext.gettext
175
 
 
176
 
class NoDisplayError(errors.BzrCommandError):
177
 
    """gtk could not find a proper display"""
178
 
 
179
 
    def __str__(self):
180
 
        return "No DISPLAY. Unable to run GTK+ application."
181
 
 
182
 
 
183
140
credential_store_registry = getattr(config, "credential_store_registry", None)
184
141
if credential_store_registry is not None:
185
142
    try:
202
159
    try:
203
160
        result = basic_tests
204
161
        try:
205
 
            import_pygtk()
206
 
        except errors.BzrCommandError:
 
162
            import gi.repository.Gtk
 
163
        except ImportError:
207
164
            return basic_tests
208
165
        basic_tests.addTest(loader.loadTestsFromModuleNames(
209
166
                ["%s.%s" % (__name__, tmn) for tmn in testmod_names]))
212
169
            reload(sys)
213
170
            sys.setdefaultencoding(default_encoding)
214
171
    return basic_tests
 
172