From 6374fa21630a4c04c4474578a29c954eb51857c9 Mon Sep 17 00:00:00 2001 From: Raphael Ackermann Date: Wed, 30 Jan 2008 20:55:39 +0000 Subject: [PATCH] 2008-01-30 Raphael Ackermann * src/FilterEditor/_FilterEditor.py: pylint fixes and work on 0001660: Title for all Edit Filter windows not translated correctly svn: r9965 --- ChangeLog | 4 ++ src/FilterEditor/_FilterEditor.py | 97 ++++++++++++++++--------------- 2 files changed, 54 insertions(+), 47 deletions(-) diff --git a/ChangeLog b/ChangeLog index 4ca4653b4..654a11e1d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2008-01-30 Raphael Ackermann + * src/FilterEditor/_FilterEditor.py: pylint fixes and + work on 0001660: Title for all Edit Filter windows not translated correctly + 2008-01-30 Raphael Ackermann * src/FilterEditor/_EditFilter.py: self.space --> self.namespace * src/FilterEditor/_FilterEditor.py: self.space --> self.namespace diff --git a/src/FilterEditor/_FilterEditor.py b/src/FilterEditor/_FilterEditor.py index 1048b2ea3..111840d8f 100644 --- a/src/FilterEditor/_FilterEditor.py +++ b/src/FilterEditor/_FilterEditor.py @@ -58,12 +58,20 @@ from Filters.Rules._MatchesFilterBase import MatchesFilterBase import ListModel import ManagedWindow from QuestionDialog import QuestionDialog +from FilterEditor._EditFilter import EditFilter + +# dictionary mapping FILTER_TYPE of views to Filter window name +_TITLES = { + 'Person' : _("Person Filters"), + 'Family' : _('Family Filters'), + 'Event' : _('Event Filters'), + 'Place' : _('Place Filters'), + 'Source' : _('Source Filters'), + 'MediaObject' : _('Media Object Filters'), + 'Repository' : _('Repository Filters'), + 'Note' : _('Note Filters'), +} -#------------------------------------------------------------------------- -# -# -# -#------------------------------------------------------------------------- class FilterEditor(ManagedWindow.ManagedWindow): def __init__(self, namespace, filterdb, dbstate, uistate): @@ -88,7 +96,8 @@ class FilterEditor(ManagedWindow.ManagedWindow): self.set_window(self.get_widget('filter_list'), self.get_widget('title'), - _('%s filters') % _(self.namespace)) + _TITLES[self.namespace]) +# _('%s filters') % _(self.namespace)) self.edit.connect('clicked', self.edit_filter) self.clone.connect('clicked', self.clone_filter) @@ -99,25 +108,25 @@ class FilterEditor(ManagedWindow.ManagedWindow): self.connect_button('close', self.close) self.connect_button('add', self.add_new_filter) - self.uistate.connect('filter-name-changed',self.clean_after_rename) + self.uistate.connect('filter-name-changed', self.clean_after_rename) self.clist = ListModel.ListModel( - self.filter_list, - [(_('Filter'),0,150),(_('Comment'),1,150)], - self.filter_select_row, - self.edit_filter) + self.filter_list, + [(_('Filter'), 0, 150), (_('Comment'), 1, 150)], + self.filter_select_row, + self.edit_filter) self.draw_filters() self.show() def build_menu_names(self, obj): return (_("Custom Filter Editor"), _("Custom Filter Editor")) - def help_clicked(self,obj): + def help_clicked(self, obj): """Display the relevant portion of GRAMPS manual""" GrampsDisplay.help('tools-util-cfe') - def filter_select_row(self,obj): - store,node = self.clist.get_selected() + def filter_select_row(self, obj): + store, node = self.clist.get_selected() if node: self.edit.set_sensitive(True) self.clone.set_sensitive(True) @@ -129,61 +138,55 @@ class FilterEditor(ManagedWindow.ManagedWindow): self.delete.set_sensitive(False) self.test.set_sensitive(False) - def close(self,*obj): + def close(self, *obj): self.filterdb.save() reload_custom_filters() reload_system_filters() - self.uistate.emit('filters-changed',(self.namespace,)) - ManagedWindow.ManagedWindow.close(self,*obj) + self.uistate.emit('filters-changed', (self.namespace,)) + ManagedWindow.ManagedWindow.close(self, *obj) def draw_filters(self): self.clist.clear() for f in self.filterdb.get_filters(self.namespace): - self.clist.add([f.get_name(),f.get_comment()],f) - - def add_new_filter(self,obj): - from _EditFilter import EditFilter + self.clist.add([f.get_name(), f.get_comment()], f) + def add_new_filter(self, obj): the_filter = GenericFilterFactory(self.namespace)() EditFilter(self.namespace, self.dbstate, self.uistate, self.track, the_filter, self.filterdb, self.draw_filters) - def edit_filter(self,obj): - store,node = self.clist.get_selected() + def edit_filter(self, obj): + store, node = self.clist.get_selected() if node: - from _EditFilter import EditFilter - gfilter = self.clist.get_object(node) EditFilter(self.namespace, self.dbstate, self.uistate, self.track, gfilter, self.filterdb, self.draw_filters) - def clone_filter(self,obj): - store,node = self.clist.get_selected() + def clone_filter(self, obj): + store, node = self.clist.get_selected() if node: - from _EditFilter import EditFilter - old_filter = self.clist.get_object(node) the_filter = GenericFilterFactory(self.namespace)(old_filter) the_filter.set_name('') EditFilter(self.namespace, self.dbstate, self.uistate, self.track, the_filter, self.filterdb, self.draw_filters) - def test_clicked(self,obj): - store,node = self.clist.get_selected() + def test_clicked(self, obj): + store, node = self.clist.get_selected() if node: - from _ShowResults import ShowResults + from FilterEditor._ShowResults import ShowResults filt = self.clist.get_object(node) - handle_list = filt.apply(self.db,self.get_all_handles()) + handle_list = filt.apply(self.db, self.get_all_handles()) ShowResults(self.db, self.uistate, self.track, handle_list, filt.get_name(),self.namespace) - def delete_filter(self,obj): - store,node = self.clist.get_selected() + def delete_filter(self, obj): + store, node = self.clist.get_selected() if node: gfilter = self.clist.get_object(node) name = gfilter.get_name() - if self.check_recursive_filters(self.namespace,name): + if self.check_recursive_filters(self.namespace, name): QuestionDialog( _('Delete Filter?'), _('This filter is currently being used ' 'as the base for other filters. Deleting' @@ -196,23 +199,23 @@ class FilterEditor(ManagedWindow.ManagedWindow): self._do_delete_selected_filter() def _do_delete_selected_filter(self): - store,node = self.clist.get_selected() + store, node = self.clist.get_selected() if node: gfilter = self.clist.get_object(node) - self._do_delete_filter(self.namespace,gfilter) + self._do_delete_filter(self.namespace, gfilter) self.draw_filters() - def _do_delete_filter(self,space,gfilter): + def _do_delete_filter(self, space, gfilter): # Find everything we need to remove filter_set = set() - self._find_dependent_filters(space,gfilter,filter_set) + self._find_dependent_filters(space, gfilter, filter_set) # Remove what we found filters = self.filterdb.get_filters(space) for the_filter in filter_set: filters.remove(the_filter) - def _find_dependent_filters(self,space,gfilter,filter_set): + def _find_dependent_filters(self, space, gfilter, filter_set): """ This method recursively calls itself to find all filters that depend on the given filter, either directly through one of the rules, @@ -225,9 +228,9 @@ class FilterEditor(ManagedWindow.ManagedWindow): for the_filter in filters: for rule in the_filter.get_rules(): values = rule.values() - if issubclass(rule.__class__,MatchesFilterBase) \ + if issubclass(rule.__class__, MatchesFilterBase) \ and (name in values): - self._find_dependent_filters(space,the_filter,filter_set) + self._find_dependent_filters(space, the_filter, filter_set) break # Add itself to the filter_set filter_set.add(gfilter) @@ -250,7 +253,7 @@ class FilterEditor(ManagedWindow.ManagedWindow): elif self.namespace == 'Note': return self.db.get_note_handles() - def clean_after_rename(self,space,old_name,new_name): + def clean_after_rename(self, space, old_name, new_name): if old_name == "": return @@ -260,16 +263,16 @@ class FilterEditor(ManagedWindow.ManagedWindow): for the_filter in self.filterdb.get_filters(space): for rule in the_filter.get_rules(): values = rule.values() - if issubclass(rule.__class__,MatchesFilterBase) \ + if issubclass(rule.__class__, MatchesFilterBase) \ and (old_name in values): ind = values.index(old_name) values[ind] = new_name - def check_recursive_filters(self,space,name): + def check_recursive_filters(self, space, name): for the_filter in self.filterdb.get_filters(space): for rule in the_filter.get_rules(): values = rule.values() - if issubclass(rule.__class__,MatchesFilterBase) \ + if issubclass(rule.__class__, MatchesFilterBase) \ and (name in values): return True return False