diff --git a/gramps/gui/configure.py b/gramps/gui/configure.py index 1bd231c1b..08baf06c7 100644 --- a/gramps/gui/configure.py +++ b/gramps/gui/configure.py @@ -220,6 +220,27 @@ class ConfigureDialog(ManagedWindow): except: print("WARNING: ignoring invalid value for '%s'" % constant) + def update_markup_entry(self, obj, constant): + """ + :param obj: an object with get_text method + :param constant: the config setting to which the text value must be + saved + """ + try: + obj.get_text() % 'test_markup' + except TypeError: + print("WARNING: ignoring invalid value for '%s'" % constant) + ErrorDialog(_("Invalid or incomplete format definition."), + obj.get_text()) + obj.set_text('%s') + except ValueError: + print("WARNING: ignoring invalid value for '%s'" % constant) + ErrorDialog(_("Invalid or incomplete format definition."), + obj.get_text()) + obj.set_text('%s') + + self.__config.set(constant, unicode(obj.get_text())) + def update_entry(self, obj, constant): """ :param obj: an object with get_text method @@ -1167,7 +1188,7 @@ class GrampsPreferences(ConfigureDialog): 6, 'behavior.avg-generation-gap', (10, 30)) self.add_pos_int_entry(table, _('Markup for invalid date format'), - 7, 'preferences.invalid-date-format', self.update_entry) + 7, 'preferences.invalid-date-format', self.update_markup_entry) return _('Dates'), table