diff --git a/gramps2/ChangeLog b/gramps2/ChangeLog index 361a48b9e..ee45089cc 100644 --- a/gramps2/ChangeLog +++ b/gramps2/ChangeLog @@ -1,5 +1,8 @@ 2006-11-07 Don Allingham * src/plugins/RemoveUnused.py: general cleanup + * src/DataViews/_RelationshipView.py: Optionally hide Edit buttons + * src/Config/_GrampsConfigKeys.py: Optionally hide Edit buttons + * src/GrampsWidgets.py: Allow empty button for LinkBox 2006-11-07 Alex Roitman * src/DataViews/_RelationView.py (info_string): Add missing clause. diff --git a/gramps2/src/Config/_GrampsConfigKeys.py b/gramps2/src/Config/_GrampsConfigKeys.py index dcfecd5f9..2212dc0a4 100644 --- a/gramps2/src/Config/_GrampsConfigKeys.py +++ b/gramps2/src/Config/_GrampsConfigKeys.py @@ -75,9 +75,11 @@ SIDEBAR_TEXT = ('interface','sidebar-text', 0) WEBSITE_DIRECTORY = ('paths','website-directory', 2) PORT_WARN = ('preferences','port-warn', 0) TRANSACTIONS = ('behavior','transactions', 0) +RELEDITBTN = ('interface','editbutton', 1) default_value = { + RELEDITBTN : False, DEFAULT_SOURCE : False, RELATION_SHADE : True, ONLINE_MAPS : False, diff --git a/gramps2/src/DataViews/_RelationView.py b/gramps2/src/DataViews/_RelationView.py index 2d7c2d588..bf5bea08b 100644 --- a/gramps2/src/DataViews/_RelationView.py +++ b/gramps2/src/DataViews/_RelationView.py @@ -339,7 +339,6 @@ class RelationshipView(PageView.PersonNavView): self.attach = AttachList() self.row = 1 - family_handle_list = person.get_parent_family_handle_list() sensitive = len(family_handle_list)> 1 @@ -419,7 +418,10 @@ class RelationshipView(PageView.PersonNavView): fmt = '%s' text = fmt % cgi.escape(name) label = GrampsWidgets.DualMarkupLabel(text, _GenderCode[person.gender]) - button = GrampsWidgets.IconButton(self.edit_button_press,person.handle) + if Config.get(Config.RELEDITBTN): + button = GrampsWidgets.IconButton(self.edit_button_press,person.handle) + else: + button = None hbox = GrampsWidgets.LinkBox(label, button) table.attach(hbox, 0, 2, 0, 1) @@ -623,14 +625,13 @@ class RelationshipView(PageView.PersonNavView): child_list = [ref.ref for ref in family.get_child_ref_list()\ if ref.ref != active] - label = _("Siblings") if child_list: eventbox = gtk.EventBox() if self.use_shade: eventbox.modify_bg(gtk.STATE_NORMAL, self.color) vbox = gtk.VBox() label_cell = self.build_label_cell(_('Siblings')) - label_cell.set_alignment(0,0) + label_cell.set_alignment(0, 0) self.attach.attach( label_cell, _CLABEL_START, _CLABEL_STOP, self.row, self.row+1, xoptions=gtk.FILL|gtk.SHRINK, @@ -656,7 +657,8 @@ class RelationshipView(PageView.PersonNavView): label = GrampsWidgets.MarkupLabel(format % cgi.escape(title)) label.set_alignment(0,0) - label.set_padding(0,5) + if Config.get(Config.RELEDITBTN): + label.set_padding(0,5) self.attach.attach(label, _PLABEL_START, _PLABEL_STOP, self.row, self.row+1, xoptions=gtk.FILL|gtk.SHRINK, yoptions=gtk.FILL|gtk.SHRINK) @@ -668,7 +670,10 @@ class RelationshipView(PageView.PersonNavView): self.button_press, handle) if self.use_shade: link_label.modify_bg(gtk.STATE_NORMAL, self.color) - button = GrampsWidgets.IconButton(self.edit_button_press, handle) + if Config.get(Config.RELEDITBTN): + button = GrampsWidgets.IconButton(self.edit_button_press, handle) + else: + button = None vbox.pack_start(GrampsWidgets.LinkBox(link_label, button)) else: link_label = gtk.Label(_('Unknown')) @@ -698,7 +703,8 @@ class RelationshipView(PageView.PersonNavView): format = "%s" lbl = GrampsWidgets.MarkupLabel(format % cgi.escape(title)) - lbl.set_padding(0,5) + if Config.get(Config.RELEDITBTN): + lbl.set_padding(0,5) return lbl def write_child(self, vbox, handle, index): @@ -707,7 +713,10 @@ class RelationshipView(PageView.PersonNavView): if self.use_shade: link_label.modify_bg(gtk.STATE_NORMAL, self.color) link_label.set_padding(3, 0) - button = GrampsWidgets.IconButton(self.edit_button_press, handle) + if Config.get(Config.RELEDITBTN): + button = GrampsWidgets.IconButton(self.edit_button_press, handle) + else: + button = None hbox = gtk.HBox() hbox.pack_start(GrampsWidgets.BasicLabel("%d." % index), diff --git a/gramps2/src/GrampsCfg.py b/gramps2/src/GrampsCfg.py index 2ac2051d6..2cda91449 100644 --- a/gramps2/src/GrampsCfg.py +++ b/gramps2/src/GrampsCfg.py @@ -500,12 +500,12 @@ class GrampsPreferences(ManagedWindow.ManagedWindow): 2, Config.SPELLCHECK) self.add_checkbox(table, _('Display Tip of the Day'), 3, Config.USE_TIPS) -# self.add_checkbox(table, _('Download maps online'), -# 4, Config.ONLINE_MAPS) self.add_checkbox(table, _('Use shading in Relationship View'), 4, Config.RELATION_SHADE) self.add_checkbox(table, _('Enable database transactions'), 5, Config.TRANSACTIONS) + self.add_checkbox(table, _('Display edit buttons on Relationship View'), + 6, Config.RELEDITBTN) return table diff --git a/gramps2/src/GrampsWidgets.py b/gramps2/src/GrampsWidgets.py index 8e59b954e..fc749536c 100644 --- a/gramps2/src/GrampsWidgets.py +++ b/gramps2/src/GrampsWidgets.py @@ -140,7 +140,8 @@ class LinkBox(gtk.HBox): gtk.HBox.__init__(self) self.set_spacing(6) self.pack_start(link, False) - self.pack_start(button, False) + if button: + self.pack_start(button, False) self.show() class EditLabel(gtk.HBox): diff --git a/gramps2/src/PageView.py b/gramps2/src/PageView.py index f13aa1aa0..9082e6e69 100644 --- a/gramps2/src/PageView.py +++ b/gramps2/src/PageView.py @@ -638,7 +638,8 @@ class ListView(BookMarkView): self.selection.select_path(path) self.list.scroll_to_cell(path,None,1,0.5,0) for i in xrange(len(self.columns)): - self.columns[i].set_sort_indicator(i==self.sort_col) + enable_sort_flag = (i==self.sort_col) + self.columns[i].set_sort_indicator(enable_sort_flag) self.columns[self.sort_col].set_sort_order(order) def build_columns(self):