1
0
mirror of https://github.com/gryf/pygtktalog.git synced 2025-12-17 11:30:19 +01:00

* Code clean up.

* Adapted to PEP8.
This commit is contained in:
2008-04-16 14:04:05 +00:00
parent da2df60c40
commit 6691415f12

View File

@@ -35,14 +35,14 @@ class ConfigController(Controller):
} }
category_order = ['General', 'Disk options', 'Scan options', category_order = ['General', 'Disk options', 'Scan options',
'Files extensions',] 'Files extensions',]
def __init__(self, model): def __init__(self, model):
Controller.__init__(self, model) Controller.__init__(self, model)
return return
def register_view(self, view): def register_view(self, view):
Controller.register_view(self, view) Controller.register_view(self, view)
# get data from Config object and put it into view # get data from Config object and put it into view
self.view['mnt_entry'].set_text(self.model.confd['cd']) self.view['mnt_entry'].set_text(self.model.confd['cd'])
self.view['ejt_entry'].set_text(self.model.confd['ejectapp']) self.view['ejt_entry'].set_text(self.model.confd['ejectapp'])
@@ -61,20 +61,20 @@ class ConfigController(Controller):
self.view['ch_retrive'].set_active(self.model.confd['retrive']) self.view['ch_retrive'].set_active(self.model.confd['retrive'])
self.view['ch_imageviewer'].set_active(self.model.confd['imgview']) self.view['ch_imageviewer'].set_active(self.model.confd['imgview'])
self.view['entry_imv'].set_text(self.model.confd['imgprog']) self.view['entry_imv'].set_text(self.model.confd['imgprog'])
self.__toggle_scan_group() self.__toggle_scan_group()
# initialize tree view # initialize tree view
self.__setup_category_tree() self.__setup_category_tree()
# initialize models for files extensions # initialize models for files extensions
self.view['extension_tree'].get_selection().set_mode(gtk.SELECTION_MULTIPLE) vi = self.view['extension_tree']
vi.get_selection().set_mode(gtk.SELECTION_MULTIPLE)
#self.view['extension_tree'].set_model(self.model.ext_tree) #self.view['extension_tree'].set_model(self.model.ext_tree)
self.__setup_extension_tree() self.__setup_extension_tree()
self.view['config'].show(); self.view['config'].show()
return return
# Podłącz sygnały:
################# #################
# connect signals # connect signals
@@ -84,7 +84,7 @@ class ConfigController(Controller):
ext = self.model.confd['extensions'] ext = self.model.confd['extensions']
self.view['ext_entry'].set_text(selected) self.view['ext_entry'].set_text(selected)
self.view['com_entry'].set_text(ext[selected]) self.view['com_entry'].set_text(ext[selected])
def on_category_tree_cursor_changed(self, tree): def on_category_tree_cursor_changed(self, tree):
"""change view to selected row corresponding to group of properties""" """change view to selected row corresponding to group of properties"""
model = tree.get_model() model = tree.get_model()
@@ -92,17 +92,19 @@ class ConfigController(Controller):
iterator = tree.get_model().get_iter_first(); iterator = tree.get_model().get_iter_first();
while iterator != None: while iterator != None:
if model.get_value(iterator, 0) == selected: if model.get_value(iterator, 0) == selected:
self.view[self.category_dict[model.get_value(iterator, 0)]].show() self.view[self.category_dict[model.get_value(iterator,
0)]].show()
self.view['desc'].set_markup("<b>%s</b>" % selected) self.view['desc'].set_markup("<b>%s</b>" % selected)
else: else:
self.view[self.category_dict[model.get_value(iterator, 0)]].hide() self.view[self.category_dict[model.get_value(iterator,
0)]].hide()
iterator = tree.get_model().iter_next(iterator); iterator = tree.get_model().iter_next(iterator);
return return
def on_cancelbutton_clicked(self, button): def on_cancelbutton_clicked(self, button):
self.view['config'].destroy() self.view['config'].destroy()
return return
def on_okbutton_clicked(self, button): def on_okbutton_clicked(self, button):
# get data from view and put it into Config object # get data from view and put it into Config object
self.model.confd['cd'] = self.view['mnt_entry'].get_text() self.model.confd['cd'] = self.view['mnt_entry'].get_text()
@@ -114,7 +116,8 @@ class ConfigController(Controller):
self.model.confd['confirmquit'] = self.view['ch_quit'].get_active() self.model.confd['confirmquit'] = self.view['ch_quit'].get_active()
self.model.confd['mntwarn'] = self.view['ch_wrnmount'].get_active() self.model.confd['mntwarn'] = self.view['ch_wrnmount'].get_active()
self.model.confd['delwarn'] = self.view['ch_wrndel'].get_active() self.model.confd['delwarn'] = self.view['ch_wrndel'].get_active()
self.model.confd['confirmabandon'] = self.view['ch_warnnew'].get_active() v = self.view['ch_warnnew']
self.model.confd['confirmabandon'] = v.get_active()
self.model.confd['thumbs'] = self.view['ch_thumb'].get_active() self.model.confd['thumbs'] = self.view['ch_thumb'].get_active()
self.model.confd['exif'] = self.view['ch_exif'].get_active() self.model.confd['exif'] = self.view['ch_exif'].get_active()
self.model.confd['gthumb'] = self.view['ch_gthumb'].get_active() self.model.confd['gthumb'] = self.view['ch_gthumb'].get_active()
@@ -124,42 +127,43 @@ class ConfigController(Controller):
self.model.confd['imgprog'] = self.view['entry_imv'].get_text() self.model.confd['imgprog'] = self.view['entry_imv'].get_text()
self.model.save() self.model.save()
self.view['config'].destroy() self.view['config'].destroy()
def on_button_ejt_clicked(self, button): def on_button_ejt_clicked(self, button):
fn = self.__show_filechooser("Choose eject program") fn = self.__show_filechooser("Choose eject program")
self.view['ejt_entryentry_imv'].set_text(fn) self.view['ejt_entryentry_imv'].set_text(fn)
def on_button_mnt_clicked(self, button): def on_button_mnt_clicked(self, button):
fn = self.__show_filechooser("Choose mount point") fn = self.__show_filechooser("Choose mount point")
self.view['mnt_entry'].set_text(fn) self.view['mnt_entry'].set_text(fn)
def on_ch_retrive_toggled(self, widget): def on_ch_retrive_toggled(self, widget):
self.__toggle_scan_group() self.__toggle_scan_group()
def on_ch_imageviewer_toggled(self, checkbox): def on_ch_imageviewer_toggled(self, checkbox):
state = self.view['ch_imageviewer'].get_active() state = self.view['ch_imageviewer'].get_active()
for i in ['label_imv', 'entry_imv', 'button_imv']: for i in ['label_imv', 'entry_imv', 'button_imv']:
self.view[i].set_sensitive(state) self.view[i].set_sensitive(state)
def on_button_imv_clicked(self, widget): def on_button_imv_clicked(self, widget):
fn = self.__show_filechooser("Choose image viewer") fn = self.__show_filechooser("Choose image viewer")
self.view['entry_imv'].set_text(fn) self.view['entry_imv'].set_text(fn)
def on_ext_add_clicked(self, widget): def on_ext_add_clicked(self, widget):
ext = self.view['ext_entry'].get_text().lower() ext = self.view['ext_entry'].get_text().lower()
com = self.view['com_entry'].get_text() com = self.view['com_entry'].get_text()
if len(ext) == 0 and len(com) == 0: if len(ext) == 0 and len(com) == 0:
Dialogs.Err("Config - pyGTKtalog", "Error", "Extension and command required") Dialogs.Err("Config - pyGTKtalog", "Error",
"Extension and command required")
return return
if len(com) == 0: if len(com) == 0:
Dialogs.Err("Config - pyGTKtalog", "Error", "Command is empty") Dialogs.Err("Config - pyGTKtalog", "Error", "Command is empty")
return return
if len(ext) == 0: if len(ext) == 0:
Dialogs.Err("Config - pyGTKtalog", "Error", "Extension is empty") Dialogs.Err("Config - pyGTKtalog", "Error", "Extension is empty")
return return
if ext in self.model.confd['extensions'].keys(): if ext in self.model.confd['extensions'].keys():
obj = Dialogs.Qst('Alter extension', obj = Dialogs.Qst('Alter extension',
'Alter extension?', 'Alter extension?',
@@ -167,12 +171,13 @@ class ConfigController(Controller):
if not obj.run(): if not obj.run():
return return
self.model.confd['extensions'][ext] = com self.model.confd['extensions'][ext] = com
self.__setup_extension_tree() self.__setup_extension_tree()
return return
def on_ext_del_clicked(self, widget): def on_ext_del_clicked(self, widget):
model, selection = self.view['extension_tree'].get_selection().get_selected_rows() v = self.view['extension_tree']
model, selection = v.get_selection().get_selected_rows()
if len(selection) == 0: if len(selection) == 0:
Dialogs.Err("Config - pyGTKtalog", "Error", "No item selected") Dialogs.Err("Config - pyGTKtalog", "Error", "No item selected")
return return
@@ -180,102 +185,98 @@ class ConfigController(Controller):
sufix = '' sufix = ''
else: else:
sufix = "s" sufix = "s"
if self.model.confd['delwarn']: if self.model.confd['delwarn']:
obj = Dialogs.Qst('Delete extension%s' % sufix, obj = Dialogs.Qst('Delete extension%s' % sufix,
'Delete extension%s?' % sufix, 'Delete extension%s?' % sufix,
'Object%s will be permanently removed.' % sufix) 'Object%s will be permanently removed.' % sufix)
if not obj.run(): if not obj.run():
return return
for i in selection: for i in selection:
self.model.confd['extensions'].pop(model.get_value(model.get_iter(i), 0)) m = self.model.confd['extensions']
m.pop(model.get_value(model.get_iter(i), 0))
self.__setup_extension_tree() self.__setup_extension_tree()
return return
############################ ############################
# private controller methods # private controller methods
def __setup_extension_tree(self): def __setup_extension_tree(self):
self.model.refresh_ext() self.model.refresh_ext()
self.view['extension_tree'].set_model(self.model.ext_tree) self.view['extension_tree'].set_model(self.model.ext_tree)
for i in self.view['extension_tree'].get_columns(): for i in self.view['extension_tree'].get_columns():
self.view['extension_tree'].remove_column(i) self.view['extension_tree'].remove_column(i)
cell = gtk.CellRendererText() cell = gtk.CellRendererText()
column = gtk.TreeViewColumn("Extension", cell, text=0) column = gtk.TreeViewColumn("Extension", cell, text=0)
column.set_resizable(True) column.set_resizable(True)
self.view['extension_tree'].append_column(column) self.view['extension_tree'].append_column(column)
column = gtk.TreeViewColumn("Command", cell, text=1) column = gtk.TreeViewColumn("Command", cell, text=1)
column.set_resizable(True) column.set_resizable(True)
self.view['extension_tree'].append_column(column) self.view['extension_tree'].append_column(column)
def __toggle_scan_group(self): def __toggle_scan_group(self):
for i in ('ch_thumb','ch_exif','ch_gthumb'): for i in ('ch_thumb','ch_exif','ch_gthumb'):
self.view[i].set_sensitive(self.view['ch_retrive'].get_active()) self.view[i].set_sensitive(self.view['ch_retrive'].get_active())
return return
def __setup_category_tree(self): def __setup_category_tree(self):
category_tree = self.view['category_tree'] category_tree = self.view['category_tree']
category_tree.set_model(self.model.category_tree) category_tree.set_model(self.model.category_tree)
self.model.category_tree.clear() self.model.category_tree.clear()
for i in self.category_order: for i in self.category_order:
myiter = self.model.category_tree.insert_before(None,None) myiter = self.model.category_tree.insert_before(None,None)
self.model.category_tree.set_value(myiter,0,i) self.model.category_tree.set_value(myiter,0,i)
cell = gtk.CellRendererText() cell = gtk.CellRendererText()
column = gtk.TreeViewColumn("Name",cell,text=0) column = gtk.TreeViewColumn("Name",cell,text=0)
column.set_resizable(True) column.set_resizable(True)
category_tree.append_column(column) category_tree.append_column(column)
def __show_filechooser(self, title): def __show_filechooser(self, title):
"""dialog for choose eject""" """dialog for choose eject"""
fn = None fn = None
dialog = gtk.FileChooserDialog( dialog = gtk.FileChooserDialog(
title=title, title=title,
action=gtk.FILE_CHOOSER_ACTION_OPEN, action=gtk.FILE_CHOOSER_ACTION_OPEN,
buttons=( buttons=(gtk.STOCK_CANCEL,
gtk.STOCK_CANCEL, gtk.RESPONSE_CANCEL,
gtk.RESPONSE_CANCEL, gtk.STOCK_OPEN,
gtk.STOCK_OPEN, gtk.RESPONSE_OK))
gtk.RESPONSE_OK
)
)
dialog.set_default_response(gtk.RESPONSE_OK) dialog.set_default_response(gtk.RESPONSE_OK)
response = dialog.run() response = dialog.run()
if response == gtk.RESPONSE_OK: if response == gtk.RESPONSE_OK:
if __debug__: if __debug__:
print "c_config.py: __show_filechooser()", dialog.get_filename() print "c_config.py: __show_filechooser()",
print dialog.get_filename()
fn = dialog.get_filename() fn = dialog.get_filename()
dialog.destroy() dialog.destroy()
return fn return fn
def __show_dirchooser(self): def __show_dirchooser(self):
"""dialog for point the mountpoint""" """dialog for point the mountpoint"""
dialog = gtk.FileChooserDialog( dialog = gtk.FileChooserDialog(
title="Choose mount point", title="Choose mount point",
action=gtk.FILE_CHOOSER_ACTION_OPEN, action=gtk.FILE_CHOOSER_ACTION_OPEN,
buttons=( buttons=(gtk.STOCK_CANCEL,
gtk.STOCK_CANCEL, gtk.RESPONSE_CANCEL,
gtk.RESPONSE_CANCEL, gtk.STOCK_OPEN,
gtk.STOCK_OPEN, gtk.RESPONSE_OK))
gtk.RESPONSE_OK
)
)
dialog.set_action(gtk.FILE_CHOOSER_ACTION_SELECT_FOLDER) dialog.set_action(gtk.FILE_CHOOSER_ACTION_SELECT_FOLDER)
dialog.set_filename(self.view['mnt_entry'].get_text()) dialog.set_filename(self.view['mnt_entry'].get_text())
dialog.set_default_response(gtk.RESPONSE_OK) dialog.set_default_response(gtk.RESPONSE_OK)
response = dialog.run() response = dialog.run()
if response == gtk.RESPONSE_OK: if response == gtk.RESPONSE_OK:
self.view['mnt_entry'].set_text(dialog.get_filename()) self.view['mnt_entry'].set_text(dialog.get_filename())
dialog.destroy() dialog.destroy()
pass # end of class pass # end of class