/b-gtk/fix-viz

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/b-gtk/fix-viz
0.8.57 by Szilveszter Farkas (Phanatic)
Bookmarks have titles; you can also edit them.
1
# Copyright (C) 2006 by Szilveszter Farkas (Phanatic) <szilveszter.farkas@gmail.com>
2
#
3
# This program is free software; you can redistribute it and/or modify
4
# it under the terms of the GNU General Public License as published by
5
# the Free Software Foundation; either version 2 of the License, or
6
# (at your option) any later version.
7
#
8
# This program is distributed in the hope that it will be useful,
9
# but WITHOUT ANY WARRANTY; without even the implied warranty of
10
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11
# GNU General Public License for more details.
12
#
13
# You should have received a copy of the GNU General Public License
14
# along with this program; if not, write to the Free Software
15
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
17
try:
18
    import pygtk
19
    pygtk.require("2.0")
20
except:
21
    pass
0.13.10 by Jelmer Vernooij
Don't pass around gladefile all the time.
22
23
import gtk
24
import gtk.glade
0.8.93 by Szilveszter Farkas (Phanatic)
Some further cleanups. More to come.
25
93.1.6 by Alexander Belchenko
detecting name of glade file doing in separate module (olive.gladefile)
26
from olive import OlivePreferences
0.8.93 by Szilveszter Farkas (Phanatic)
Some further cleanups. More to come.
27
from dialog import error_dialog
93.1.12 by Alexander Belchenko
Names XML files with GUI resources obtained via olive/guifiles.py
28
from guifiles import GLADEFILENAME
93.1.6 by Alexander Belchenko
detecting name of glade file doing in separate module (olive.gladefile)
29
0.8.57 by Szilveszter Farkas (Phanatic)
Bookmarks have titles; you can also edit them.
30
31
class OliveBookmark:
32
    """ Display the Edit bookmark dialog and perform the needed actions. """
0.8.93 by Szilveszter Farkas (Phanatic)
Some further cleanups. More to come.
33
    def __init__(self, selected):
0.8.57 by Szilveszter Farkas (Phanatic)
Bookmarks have titles; you can also edit them.
34
        """ Initialize the Edit bookmark dialog. """
93.1.6 by Alexander Belchenko
detecting name of glade file doing in separate module (olive.gladefile)
35
        self.glade = gtk.glade.XML(GLADEFILENAME, 'window_bookmark', 'olive-gtk')
0.8.57 by Szilveszter Farkas (Phanatic)
Bookmarks have titles; you can also edit them.
36
        
37
        self.window = self.glade.get_widget('window_bookmark')
38
        
0.8.93 by Szilveszter Farkas (Phanatic)
Some further cleanups. More to come.
39
        self.pref = self.pref = OlivePreferences()
40
        
0.8.57 by Szilveszter Farkas (Phanatic)
Bookmarks have titles; you can also edit them.
41
        # Dictionary for signal_autoconnect
42
        dic = { "on_button_bookmark_save_clicked": self.bookmark,
43
                "on_button_bookmark_cancel_clicked": self.close }
44
        
45
        # Connect the signals to the handlers
46
        self.glade.signal_autoconnect(dic)
47
        
48
        # Get some important widgets
49
        self.entry_location = self.glade.get_widget('entry_bookmark_location')
50
        self.entry_title = self.glade.get_widget('entry_bookmark_title')
0.8.93 by Szilveszter Farkas (Phanatic)
Some further cleanups. More to come.
51
        
52
        self.selected = selected
0.8.57 by Szilveszter Farkas (Phanatic)
Bookmarks have titles; you can also edit them.
53
54
    def display(self):
55
        """ Display the Edit bookmark dialog. """
0.8.93 by Szilveszter Farkas (Phanatic)
Some further cleanups. More to come.
56
        path = self.selected
0.8.57 by Szilveszter Farkas (Phanatic)
Bookmarks have titles; you can also edit them.
57
        self.entry_location.set_text(path)
0.8.93 by Szilveszter Farkas (Phanatic)
Some further cleanups. More to come.
58
        self.entry_title.set_text(self.pref.get_bookmark_title(path))
0.8.57 by Szilveszter Farkas (Phanatic)
Bookmarks have titles; you can also edit them.
59
        self.window.show_all()
60
        
61
    def bookmark(self, widget):
62
        if self.entry_title.get_text() == '':
0.13.6 by Jelmer Vernooij
Don't pass along dialog context everywhere.
63
            error_dialog(_('No title given'),
0.8.93 by Szilveszter Farkas (Phanatic)
Some further cleanups. More to come.
64
                         _('Please specify a title to continue.'))
0.8.57 by Szilveszter Farkas (Phanatic)
Bookmarks have titles; you can also edit them.
65
            return
66
        
0.8.93 by Szilveszter Farkas (Phanatic)
Some further cleanups. More to come.
67
        self.pref.set_bookmark_title(self.entry_location.get_text(),
68
                                     self.entry_title.get_text())
69
        self.pref.write()
0.8.57 by Szilveszter Farkas (Phanatic)
Bookmarks have titles; you can also edit them.
70
        
71
        self.close()
72
    
73
    def close(self, widget=None):
74
        self.window.destroy()