From fa7217d7bc7bbfa65ac19bc7eeba0a64c7b98b17 Mon Sep 17 00:00:00 2001 From: gryf Date: Thu, 30 Nov 2006 11:39:23 +0000 Subject: [PATCH] * Preferences module. --- preferences.py | 85 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 85 insertions(+) create mode 100644 preferences.py diff --git a/preferences.py b/preferences.py new file mode 100644 index 0000000..2bc2569 --- /dev/null +++ b/preferences.py @@ -0,0 +1,85 @@ +# This Python file uses the following encoding: utf-8 +""" +Change, apply and save user defined preferences +""" +import sys +import os + +import pygtk +import gtk +import gtk.glade + +from config import Config +import dialogs + +class Preferences: + def __init__(self): + self.conf = Config() + self.conf.load() + + self.gladefile = "glade/prefs.glade" + + self.glade = gtk.glade.XML(self.gladefile,"prefs") + dic = { + "on_button_ejt_clicked" :self.show_filechooser, + "on_button_mnt_clicked" :self.show_dirchooser, + } + self.glade.signal_autoconnect(dic) + + self.pref = self.glade.get_widget("prefs") + + self.tree = self.glade.get_widget("category") + + self.desc = self.glade.get_widget("desc") + + self.cd = self.glade.get_widget("mnt_entry") + self.cd.set_text(self.conf.confd['cd']) + + self.eject = self.glade.get_widget("ejt_entry") + self.eject.set_text(self.conf.confd['eject']) + self.pref.show() + + def show_filechooser(self,widget): + """dialog for choose eject""" + dialog = gtk.FileChooserDialog( + title="Choose eject program", + action=gtk.FILE_CHOOSER_ACTION_OPEN, + buttons=( + gtk.STOCK_CANCEL, + gtk.RESPONSE_CANCEL, + gtk.STOCK_OPEN, + gtk.RESPONSE_OK + ) + ) + + dialog.set_default_response(gtk.RESPONSE_OK) + + response = dialog.run() + if response == gtk.RESPONSE_OK: + self.eject.set_text(dialog.get_filename()) + + dialog.destroy() + + def show_dirchooser(self,widget): + """dialog for point the mountpoint""" + dialog = gtk.FileChooserDialog( + title="Choose mount point", + action=gtk.FILE_CHOOSER_ACTION_OPEN, + buttons=( + gtk.STOCK_CANCEL, + gtk.RESPONSE_CANCEL, + gtk.STOCK_OPEN, + gtk.RESPONSE_OK + ) + ) + + dialog.set_action(gtk.FILE_CHOOSER_ACTION_SELECT_FOLDER) + + dialog.set_default_response(gtk.RESPONSE_OK) + + response = dialog.run() + if response == gtk.RESPONSE_OK: + self.cd.set_text(dialog.get_filename()) + + dialog.destroy() +