/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 olive-gtk

  • Committer: Daniel Schierbeck
  • Date: 2008-01-13 14:12:49 UTC
  • mto: (423.1.2 trunk)
  • mto: This revision was merged to the branch mainline in revision 429.
  • Revision ID: daniel.schierbeck@gmail.com-20080113141249-gd0i2lknr3yik55r
Moved branch view to its own package.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#!/usr/bin/python
 
2
 
 
3
# Copyright (C) 2006 by Szilveszter Farkas (Phanatic) <szilveszter.farkas@gmail.com>
 
4
#
 
5
# This program is free software; you can redistribute it and/or modify
 
6
# it under the terms of the GNU General Public License as published by
 
7
# the Free Software Foundation; either version 2 of the License, or
 
8
# (at your option) any later version.
 
9
#
 
10
# This program is distributed in the hope that it will be useful,
 
11
# but WITHOUT ANY WARRANTY; without even the implied warranty of
 
12
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 
13
# GNU General Public License for more details.
 
14
#
 
15
# You should have received a copy of the GNU General Public License
 
16
# along with this program; if not, write to the Free Software
 
17
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 
18
 
 
19
import os
 
20
import sys
 
21
import re
 
22
 
 
23
try:
 
24
    version_info = sys.version_info
 
25
except AttributeError:
 
26
    version_info = 1, 5 # 1.5 or older
 
27
 
 
28
REINVOKE = "__BZR_REINVOKE"
 
29
NEED_VERS = (2, 4)
 
30
KNOWN_PYTHONS = ('python2.4',)
 
31
 
 
32
if version_info < NEED_VERS:
 
33
    if not os.environ.has_key(REINVOKE):
 
34
        # mutating os.environ doesn't work in old Pythons
 
35
        os.putenv(REINVOKE, "1")
 
36
        for python in KNOWN_PYTHONS:
 
37
            try:
 
38
                os.execvp(python, [python] + sys.argv)
 
39
            except OSError:
 
40
                pass
 
41
    print >>sys.stderr, ('bzr: error: cannot find a suitable python interpreter'
 
42
                         ' (need %d.%d or later)'
 
43
                        ) % NEED_VERS
 
44
    sys.exit(1)
 
45
 
 
46
try:
 
47
    import pygtk
 
48
    pygtk.require("2.0")
 
49
except:
 
50
    pass
 
51
 
 
52
try:
 
53
    import gtk
 
54
    import gtk.glade
 
55
except:
 
56
    print >>sys.stderr, ('You need to install python-glade2 and/or pygtk2 (gtk2)'
 
57
                         ' or set your PYTHONPATH correctly.\n'
 
58
                         'try: export PYTHONPATH=/usr/local/lib/python2.4/site-packages/'
 
59
                        )
 
60
    sys.exit(1)
 
61
 
 
62
# gettext support
 
63
import gettext
 
64
gettext.install('olive-gtk')
 
65
 
 
66
 
 
67
# make sure we could import bzrlib
 
68
try:
 
69
    import bzrlib
 
70
except ImportError:
 
71
    # try to find bzr if it exist in $PATH
 
72
    p = os.popen('bzr version')
 
73
    s = p.read()
 
74
    r = p.close()
 
75
    if r not in (None, 0):
 
76
        print >>sys.stderr, "bzr not found"
 
77
        sys.exit(1)
 
78
    else:
 
79
        bzrlib_match = re.compile(r"bzrlib: (.*)[/\\]bzrlib").search(s)
 
80
        if bzrlib_match:
 
81
            sys.path.append(bzrlib_match.group(1))
 
82
        else:
 
83
            print >>sys.stderr, "Can't find bzrlib location"
 
84
            sys.exit(1)
 
85
 
 
86
from bzrlib.plugin import load_plugins
 
87
load_plugins()
 
88
 
 
89
import bzrlib.ui
 
90
import bzrlib.plugins.gtk.ui as ui
 
91
bzrlib.ui.ui_factory = ui.GtkUIFactory()
 
92
 
 
93
from olive import OliveGtk
 
94
app = OliveGtk()
 
95
gtk.main()