From 996295cd112cbfa5dd802b2c4f3caa6a75dd7ee2 Mon Sep 17 00:00:00 2001 From: Don Allingham Date: Fri, 3 Feb 2006 22:31:46 +0000 Subject: [PATCH] * src/DisplayTabs.py: Handle notes properly * src/EventEdit.py: commit modified events * src/PeopleModel.py: remove unused functions * src/PersonView.py: remove debug svn: r5876 --- gramps2/ChangeLog | 6 ++++++ gramps2/src/DisplayTabs.py | 18 +++++++++++++----- gramps2/src/EventEdit.py | 25 ++++++++++++------------- gramps2/src/PeopleModel.py | 11 ++--------- gramps2/src/PersonView.py | 1 - 5 files changed, 33 insertions(+), 28 deletions(-) diff --git a/gramps2/ChangeLog b/gramps2/ChangeLog index 03680a430..7c1282a88 100644 --- a/gramps2/ChangeLog +++ b/gramps2/ChangeLog @@ -1,3 +1,9 @@ +2006-02-03 Don Allingham + * src/DisplayTabs.py: Handle notes properly + * src/EventEdit.py: commit modified events + * src/PeopleModel.py: remove unused functions + * src/PersonView.py: remove debug + 2006-02-03 Alex Roitman * RelLib/_*.py: Make objects serialize all the way down to built-in python objects, so that Gramps classes are never pickled. diff --git a/gramps2/src/DisplayTabs.py b/gramps2/src/DisplayTabs.py index e113faf78..1cfa7ee6d 100644 --- a/gramps2/src/DisplayTabs.py +++ b/gramps2/src/DisplayTabs.py @@ -574,7 +574,6 @@ class EventEmbedList(EmbeddedList): def event_updated(self,value): self.changed = True - print value self.rebuild() def event_added(self,value): @@ -586,8 +585,8 @@ class EventEmbedList(EmbeddedList): class PersonEventEmbedList(EventEmbedList): def __init__(self,dbstate,uistate,track,obj): - self.orig_data = [ data for data in [ obj.get_birth_ref(), \ - obj.get_death_ref()] + \ + self.orig_data = [ data for data in [ obj.get_birth_ref(), \ + obj.get_death_ref()] + \ obj.get_event_ref_list() \ if data ] EventEmbedList.__init__(self, dbstate, uistate, track, obj) @@ -927,8 +926,8 @@ class NoteTab(GrampsTab): def build_interface(self): vbox = gtk.VBox() - self.text = gtk.TextView() + self.text = gtk.TextView() self.flowed = gtk.RadioButton(None,_('Flowed')) self.format = gtk.RadioButton(self.flowed,_('Formatted')) @@ -944,6 +943,7 @@ class NoteTab(GrampsTab): scroll = gtk.ScrolledWindow() scroll.set_policy(gtk.POLICY_AUTOMATIC,gtk.POLICY_AUTOMATIC) scroll.add_with_viewport(self.text) + scroll.connect('focus-out-event',self.update) vbox.pack_start(scroll,True) vbox.set_spacing(6) @@ -963,9 +963,17 @@ class NoteTab(GrampsTab): else: self.empty = True - self.buf.connect('changed',self._update_label) + self.buf.connect('changed',self.update) self.rebuild() + def update(self,obj): + self._update_label(obj) + if self.note_obj: + self.note_obj.set(self.buf.get_start_iter(),self.buf.get_end_iter(),False) + else: + print "NOTE OBJ DOES NOT EXIST" + return False + def flow_changed(self,obj): if obj.get_active(): self.text.set_wrap_mode(gtk.WRAP_WORD) diff --git a/gramps2/src/EventEdit.py b/gramps2/src/EventEdit.py index 9c82aa29a..4b84a5dd6 100644 --- a/gramps2/src/EventEdit.py +++ b/gramps2/src/EventEdit.py @@ -95,11 +95,12 @@ def get_place(field,pmap,db): #------------------------------------------------------------------------- class EventEditor(DisplayState.ManagedWindow): - def __init__(self,event,dbstate,uistate,track=[]): + def __init__(self,event,dbstate,uistate,track=[],callback=None): self.db = dbstate.db self.uistate = uistate self.dbstate = dbstate self.track = track + self.callback = callback read_only = self.db.readonly noedit = self.db.readonly @@ -245,14 +246,10 @@ class EventEditor(DisplayState.ManagedWindow): def on_delete_event(self,obj,b): self.gladeif.close() -# self.gallery.close() - gc.collect() def close(self,obj): self.gladeif.close() -# self.gallery.close() self.window.destroy() - gc.collect() def on_help_clicked(self,obj): """Display the relevant portion of GRAMPS manual""" @@ -284,6 +281,7 @@ class EventEditor(DisplayState.ManagedWindow): self.update_event(event_data,self.date,eplace_obj,edesc,enote,eformat, epriv,ecause) + if just_added: trans = self.db.transaction_begin() self.db.add_event(self.event,trans) @@ -292,6 +290,8 @@ class EventEditor(DisplayState.ManagedWindow): trans = self.db.transaction_begin() self.db.commit_event(self.event,trans) self.db.transaction_commit(trans,_("Edit Event")) + if self.callback: + self.callback(self.event) self.close(obj) @@ -556,14 +556,13 @@ class EventRefEditor(DisplayState.ManagedWindow): self.lists_changed = 0 self.update_event(etype,self.date,eplace_obj,edesc,enote,eformat, epriv,ecause) - # event is a primary object, so its change has to be committed now - if self.lists_changed: - trans = self.db.transaction_begin() - self.db.commit_event(self.event,trans) - if self.event_added: - self.db.transaction_commit(trans,_("Add Event")) - else: - self.db.transaction_commit(trans,_("Modify Event")) + + trans = self.db.transaction_begin() + self.db.commit_event(self.event,trans) + if self.event_added: + self.db.transaction_commit(trans,_("Add Event")) + else: + self.db.transaction_commit(trans,_("Modify Event")) # then, set properties of the event_ref self.event_ref.set_role(self.role_selector.get_values()) diff --git a/gramps2/src/PeopleModel.py b/gramps2/src/PeopleModel.py index d056e4ee5..ef7763869 100644 --- a/gramps2/src/PeopleModel.py +++ b/gramps2/src/PeopleModel.py @@ -110,8 +110,7 @@ class PeopleModel(gtk.GenericTreeModel): gtk.GenericTreeModel.__init__(self) self.db = db - self.visible = {} - self.top_visible = {} + self.invert_result = invert_result self.sortnames = {} self.marker_color_column = 11 @@ -125,7 +124,6 @@ class PeopleModel(gtk.GenericTreeModel): self.assign_data() def calculate_data(self,data_filter=None): - if data_filter: self.data_filter = data_filter self.temp_top_path2iter = [] @@ -174,6 +172,7 @@ class PeopleModel(gtk.GenericTreeModel): self.build_sub_entry(name) def build_sub_entry(self,name): + self.prev_handle = None slist = map(lambda x: (self.sortnames[x],x),self.temp_sname_sub[name]) slist.sort(lambda f,s: locale.strcoll(f[0],s[0])) entries = map(lambda x: x[1], slist) @@ -249,12 +248,6 @@ class PeopleModel(gtk.GenericTreeModel): print "".join(traceback.format_exception(*sys.exc_info())) return u'error' - def reset_visible(self): - pass - - def set_visible(self,node,val): - pass - def on_iter_next(self, node): '''returns the next node at this level of the tree''' try: diff --git a/gramps2/src/PersonView.py b/gramps2/src/PersonView.py index 336992287..9687e06f2 100644 --- a/gramps2/src/PersonView.py +++ b/gramps2/src/PersonView.py @@ -545,7 +545,6 @@ class PersonView(PageView.PersonNavView): # if paths same, just issue row changed signal if oldpath == newpath: - print "row change", pathval, pnode self.model.row_changed(pathval,pnode) else: # paths different, get the new surname list