File: pitivi.in

package info (click to toggle)
pitivi 0.13.4-3
  • links: PTS
  • area: main
  • in suites: squeeze
  • size: 5,176 kB
  • ctags: 3,035
  • sloc: python: 19,017; perl: 1,486; sh: 1,266; makefile: 364; xml: 78
file content (108 lines) | stat: -rw-r--r-- 2,946 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
#!/usr/bin/env python
# PiTiVi , Non-linear video editor
#
#       pitivi
#
# Copyright (c) 2005, Edward Hervey <bilboed@bilboed.com>
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this program; if not, write to the
# Free Software Foundation, Inc., 59 Temple Place - Suite 330,
# Boston, MA 02111-1307, USA.

import os
import sys
import string
import locale
import gettext

# variables
CONFIGURED_PYTHONPATH = '@CONFIGURED_PYTHONPATH@'
LIBDIR = '@LIBDIR@'

localedir = ""

# Add the path of pitivi stuff
# TODO : change it when it's finally in cvs

def _get_root_dir():
    return '/'.join(os.path.dirname(os.path.abspath(__file__)).split('/')[:-1])

def _add_pitivi_path():
    global localedir
    dir = os.path.dirname(os.path.abspath(__file__))
    root = os.path.join(LIBDIR, 'pitivi', 'python')
    localedir = "@DATADIR@/locale"

    if not root in sys.path:
        sys.path.insert(0, root)

    # prepend any directories found at configure time if they're not
    # already in the path. (if they are already in the path, the user
    # chose to have it that way, so we leave their order)
    for path in string.split(CONFIGURED_PYTHONPATH, ':'):
        if path not in sys.path:
            sys.path.insert(0, path)

    # Added for i18n
    try:
        locale.setlocale(locale.LC_ALL, '')
        locale.bindtextdomain('pitivi', localedir)
        locale.textdomain('pitivi')

        gettext.bindtextdomain('pitivi', localedir)
        gettext.textdomain('pitivi')
    except:
        print "Couldn't set locale !, reverting to C locale"

def _init_gobject_gtk_gst():
    global localedir
    try:
        import pygtk
        pygtk.require("2.0")

        import gtk

        import gobject
        gobject.threads_init()
    except ImportError:
        raise SystemExit("PyGTK couldn't be found !")

    gobject.threads_init()

    try:
        from gtk import glade
    except ImportError:
        raise SystemExit("Can't find glade module")

    glade.bindtextdomain('pitivi', localedir)

    try:
        import pygst
        pygst.require('0.10')

        import gst
    except ImportError:
        raise SystemExit("Gst-Python couldn't be found!")

def _run_pitivi():
    import pitivi.application as ptv

    sys.exit(ptv.main(sys.argv))

try:
    _add_pitivi_path()
    _init_gobject_gtk_gst()
    _run_pitivi()
except KeyboardInterrupt:
    print "Interrupted by user!"