From 6d3e7465d35d0fa14e10606e2b80776fc5092d7e Mon Sep 17 00:00:00 2001 From: Doug Blank Date: Thu, 13 Dec 2007 02:22:06 +0000 Subject: [PATCH] 2007-12-12 Douglas S. Blank * src/GrampsCfg.py: fixed bug #1305, refresh view after name change 2007-12-12 Douglas S. Blank svn: r9497 --- ChangeLog | 7 +++++-- src/GrampsCfg.py | 21 +++++++++++++++++++++ 2 files changed, 26 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index d88097cca..48cde6ae4 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,8 +1,11 @@ +2007-12-12 Douglas S. Blank + * src/GrampsCfg.py: fixed bug #1305, refresh view after name change + 2007-12-12 Brian Matherly * src/ReportBase/_DocReportDialog.py: Added. * many, many other files: Refactor various aspects of the report system. - -2007-12-12 Douglas S. Blank + +2007-12-12 Douglas S. Blank * src/GrampsCfg.py: added Translation -> Pattern -> Translation so that one can see fully translated text, even if they type in English, or %codes diff --git a/src/GrampsCfg.py b/src/GrampsCfg.py index 3bb7b4001..d399c7236 100644 --- a/src/GrampsCfg.py +++ b/src/GrampsCfg.py @@ -104,6 +104,8 @@ def get_researcher(): #------------------------------------------------------------------------- class DisplayNameEditor(ManagedWindow.ManagedWindow): def __init__(self, uistate, dbstate, track, dialog): + # Assumes that there are two methods: dialog.name_changed_check(), + # and dialog._build_custom_name_ui() ManagedWindow.ManagedWindow.__init__(self, uistate, [], DisplayNameEditor) self.dialog = dialog self.dbstate = dbstate @@ -117,6 +119,10 @@ class DisplayNameEditor(ManagedWindow.ManagedWindow): self.window.set_default_size(600, 300) self.window.connect('response', self.close) self.show() + def close(self, *obj): + self.dialog.name_changed_check() + ManagedWindow.ManagedWindow.close(self, *obj) + def build_menu_names(self, obj): return (_(" Name Editor"), _("Preferences")) @@ -432,6 +438,18 @@ class GrampsPreferences(ManagedWindow.ManagedWindow): self.name_column = name_column return table + def name_changed_check(self): + """ + Method to check for a name change. Called by Name Edit Dialog. + """ + obj = self.fmt_obox + the_list = obj.get_model() + the_iter = obj.get_active_iter() + format = the_list.get_value(the_iter, COL_FMT) + if format != self.old_format: + # Yes a change; call the callback + self.cb_name_changed(obj) + def cb_name_changed(self, obj): """ Preset name format ComboBox callback @@ -609,6 +627,9 @@ class GrampsPreferences(ManagedWindow.ManagedWindow): return table def cb_name_dialog(self, obj): + the_list = self.fmt_obox.get_model() + the_iter = self.fmt_obox.get_active_iter() + self.old_format = the_list.get_value(the_iter, COL_FMT) win = DisplayNameEditor(self.uistate, self.dbstate, self.track, self) def date_format_changed(self, obj):