diff --git a/ChangeLog b/ChangeLog index f079b7cc8..b37268fef 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,4 +1,23 @@ 2007-02-19 Don Allingham + * src/Editors/_EditPlace.py: note list support + * src/Editors/_EditAddress.py: note list support + * src/Editors/_EditLdsOrd.py: note list support + * src/Editors/_EditSourceRef.py: note list support + * src/Editors/_EditSource.py: note list support + * src/Editors/_EditRepoRef.py: note list support + * src/Editors/_EditAttribute.py: note list support + * src/Editors/_EditPersonRef.py: note list support + * src/Editors/_EditPerson.py: note list support + * src/Editors/_EditMediaRef.py: note list support + * src/Editors/_EditEventRef.py: note list support + * src/Editors/_EditMedia.py: note list support + * src/Editors/_EditRepository.py: note list support + * src/Editors/_EditName.py: note list support + * src/Editors/_EditChildRef.py: note list support + * src/Editors/_EditFamily.py: note list support + * src/Editors/_EditEvent.py: note list support + * src/DisplayTabs/_NoteTab.py: note list support + * src/GrampsDbUtils/_GedcomParse.py: note list support * src/GrampsDbUtils/_GedcomParse.py: fix PLAC/ADDR mappings 2007-02-19 Zsolt Foldvari diff --git a/src/DisplayTabs/_NoteTab.py b/src/DisplayTabs/_NoteTab.py index de87a4aa4..e5824a4bc 100644 --- a/src/DisplayTabs/_NoteTab.py +++ b/src/DisplayTabs/_NoteTab.py @@ -52,9 +52,9 @@ from MarkupText import EditorBuffer #------------------------------------------------------------------------- class NoteTab(GrampsTab): - def __init__(self, dbstate, uistate, track, note_obj, title=_('Note')): - self.note_obj = note_obj - self.original = note_obj.serialize() + def __init__(self, dbstate, uistate, track, note_list, title=_('Note')): + self.note_list = note_list + self.original = note_list[:] GrampsTab.__init__(self, dbstate, uistate, track, title) self.show_all() @@ -98,12 +98,12 @@ class NoteTab(GrampsTab): self.flowed = gtk.RadioButton(None, _('Flowed')) self.format = gtk.RadioButton(self.flowed, _('Formatted')) - if self.note_obj and self.note_obj.get_format(): - self.format.set_active(True) - self.text.set_wrap_mode(gtk.WRAP_NONE) - else: - self.flowed.set_active(True) - self.text.set_wrap_mode(gtk.WRAP_WORD) +# if self.note_obj and self.note_obj.get_format(): +# self.format.set_active(True) +# self.text.set_wrap_mode(gtk.WRAP_NONE) +# else: +# self.flowed.set_active(True) +# self.text.set_wrap_mode(gtk.WRAP_WORD) self.spellcheck = Spell.Spell(self.text) self.flowed.connect('toggled', self.flow_changed) @@ -147,12 +147,12 @@ class NoteTab(GrampsTab): self.menu = gtk.ComboBox() hbox.pack_start(self.menu, True) - if self.note_obj: - self.empty = False - self.buf.set_text(self.note_obj.get(markup=True)) - log.debug("Text: %s" % self.buf.get_text()) - else: - self.empty = True +# if self.note_obj: +# self.empty = False +# self.buf.set_text(self.note_obj.get(markup=True)) +# log.debug("Text: %s" % self.buf.get_text()) +# else: +# self.empty = True self.buf.connect('changed', self.update) self.buf.connect_after('apply-tag', self.update) @@ -169,26 +169,27 @@ class NoteTab(GrampsTab): return True def update(self, obj, *args): - if self.note_obj: - start = self.buf.get_start_iter() - stop = self.buf.get_end_iter() - text = self.buf.get_text(start, stop) - self.note_obj.set(text) - else: - print "NOTE OBJ DOES NOT EXIST" +# if self.note_obj: +# start = self.buf.get_start_iter() +# stop = self.buf.get_end_iter() +# text = self.buf.get_text(start, stop) +# self.note_obj.set(text) +# else: +# print "NOTE OBJ DOES NOT EXIST" self._update_label(obj) return False def flow_changed(self, obj): if obj.get_active(): self.text.set_wrap_mode(gtk.WRAP_WORD) - self.note_obj.set_format(0) +# self.note_obj.set_format(0) else: self.text.set_wrap_mode(gtk.WRAP_NONE) - self.note_obj.set_format(1) +# self.note_obj.set_format(1) def rebuild(self): self._set_label() def cancel(self): - self.note_obj.unserialize(self.original) + pass +# self.note_obj.unserialize(self.original) diff --git a/src/Editors/_EditAddress.py b/src/Editors/_EditAddress.py index 45e1e02f2..969bb84d6 100644 --- a/src/Editors/_EditAddress.py +++ b/src/Editors/_EditAddress.py @@ -140,7 +140,7 @@ class EditAddress(EditSecondary): self.note_tab = self._add_tab( notebook, NoteTab(self.dbstate, self.uistate, self.track, - self.obj.get_note_object())) + self.obj.get_note_list())) self._setup_notebook_tabs( notebook) notebook.show_all() diff --git a/src/Editors/_EditAttribute.py b/src/Editors/_EditAttribute.py index 6dbd38606..16a8f7258 100644 --- a/src/Editors/_EditAttribute.py +++ b/src/Editors/_EditAttribute.py @@ -117,7 +117,7 @@ class EditAttribute(EditSecondary): self.note_tab = self._add_tab( notebook, NoteTab(self.dbstate, self.uistate, self.track, - self.obj.get_note_object())) + self.obj.get_note_list())) self._setup_notebook_tabs( notebook) notebook.show_all() diff --git a/src/Editors/_EditChildRef.py b/src/Editors/_EditChildRef.py index 49d973aa0..0739f0d09 100644 --- a/src/Editors/_EditChildRef.py +++ b/src/Editors/_EditChildRef.py @@ -120,7 +120,7 @@ class EditChildRef(EditSecondary): self.note_tab = self._add_tab( notebook, NoteTab(self.dbstate, self.uistate, self.track, - self.obj.get_note_object())) + self.obj.get_note_list())) self._setup_notebook_tabs( notebook) notebook.show_all() diff --git a/src/Editors/_EditEvent.py b/src/Editors/_EditEvent.py index 53299ab0e..22526b9b7 100644 --- a/src/Editors/_EditEvent.py +++ b/src/Editors/_EditEvent.py @@ -173,7 +173,7 @@ class EditEvent(EditPrimary): self.note_tab = self._add_tab( notebook, NoteTab(self.dbstate, self.uistate, self.track, - self.obj.get_note_object())) + self.obj.get_note_list())) self.gallery_tab = self._add_tab( notebook, diff --git a/src/Editors/_EditEventRef.py b/src/Editors/_EditEventRef.py index 10399ee8b..bcfec1aad 100644 --- a/src/Editors/_EditEventRef.py +++ b/src/Editors/_EditEventRef.py @@ -177,12 +177,12 @@ class EditEventRef(EditReference): self.note_tab = self._add_tab( notebook, NoteTab(self.dbstate, self.uistate, self.track, - self.source.get_note_object())) + self.source.get_note_list())) self.note_ref_tab = self._add_tab( notebook_ref, NoteTab(self.dbstate, self.uistate, self.track, - self.source_ref.get_note_object())) + self.source_ref.get_note_list())) self.gallery_tab = self._add_tab( notebook, diff --git a/src/Editors/_EditFamily.py b/src/Editors/_EditFamily.py index 574a1775d..cf5112bb7 100644 --- a/src/Editors/_EditFamily.py +++ b/src/Editors/_EditFamily.py @@ -549,7 +549,7 @@ class EditFamily(EditPrimary): self.note_tab = self._add_tab( notebook, NoteTab(self.dbstate, self.uistate, self.track, - self.obj.get_note_object())) + self.obj.get_note_list())) self.gallery_tab = self._add_tab( notebook, diff --git a/src/Editors/_EditLdsOrd.py b/src/Editors/_EditLdsOrd.py index fbc935dc3..a2b24f3a7 100644 --- a/src/Editors/_EditLdsOrd.py +++ b/src/Editors/_EditLdsOrd.py @@ -255,7 +255,7 @@ class EditLdsOrd(EditSecondary): self.note_tab = self._add_tab( notebook, NoteTab(self.dbstate, self.uistate, self.track, - self.obj.get_note_object())) + self.obj.get_note_list())) self._setup_notebook_tabs( notebook) notebook.show_all() @@ -424,7 +424,7 @@ class EditFamilyLdsOrd(EditSecondary): self.note_tab = self._add_tab( notebook, NoteTab(self.dbstate, self.uistate, self.track, - self.obj.get_note_object())) + self.obj.get_note_list())) notebook.show_all() self.top.get_widget('vbox').pack_start(notebook,True) diff --git a/src/Editors/_EditMedia.py b/src/Editors/_EditMedia.py index ae0dcecaa..e7838fae2 100644 --- a/src/Editors/_EditMedia.py +++ b/src/Editors/_EditMedia.py @@ -160,12 +160,12 @@ class EditMedia(EditPrimary): self.note_tab = self._add_tab( notebook, NoteTab(self.dbstate, self.uistate, self.track, - self.obj.get_note_object())) + self.obj.get_note_list())) else: self.note_tab = self._add_tab( notebook, NoteTab(self.dbstate, self.uistate, self.track, - self.obj.get_note_object())) + self.obj.get_note_list())) self.src_list = self._add_tab( notebook, diff --git a/src/Editors/_EditMediaRef.py b/src/Editors/_EditMediaRef.py index 0bcda671e..997208f08 100644 --- a/src/Editors/_EditMediaRef.py +++ b/src/Editors/_EditMediaRef.py @@ -176,7 +176,7 @@ class EditMediaRef(EditReference): self.note_ref_tab = self._add_tab( notebook_ref, NoteTab(self.dbstate, self.uistate, self.track, - self.source_ref.get_note_object())) + self.source_ref.get_note_list())) self.src_srcref_list = self._add_tab( notebook_src, @@ -191,7 +191,7 @@ class EditMediaRef(EditReference): self.src_note_ref_tab = self._add_tab( notebook_src, NoteTab(self.dbstate, self.uistate, self.track, - self.source.get_note_object())) + self.source.get_note_list())) self._setup_notebook_tabs( notebook_src) self._setup_notebook_tabs( notebook_ref) diff --git a/src/Editors/_EditName.py b/src/Editors/_EditName.py index 62798c6bb..324ef06ed 100644 --- a/src/Editors/_EditName.py +++ b/src/Editors/_EditName.py @@ -196,7 +196,7 @@ class EditName(EditSecondary): self.note_tab = self._add_tab( notebook, NoteTab(self.dbstate, self.uistate, self.track, - self.obj.get_note_object())) + self.obj.get_note_list())) self._setup_notebook_tabs( notebook) diff --git a/src/Editors/_EditPerson.py b/src/Editors/_EditPerson.py index d815fb5d3..e9fd7750e 100644 --- a/src/Editors/_EditPerson.py +++ b/src/Editors/_EditPerson.py @@ -308,7 +308,7 @@ class EditPerson(EditPrimary): self.note_tab = self._add_tab( notebook, NoteTab(self.dbstate, self.uistate, self.track, - self.obj.get_note_object())) + self.obj.get_note_list())) self.gallery_tab = self._add_tab( notebook, diff --git a/src/Editors/_EditPersonRef.py b/src/Editors/_EditPersonRef.py index 99cf831b2..cd0fb8a8a 100644 --- a/src/Editors/_EditPersonRef.py +++ b/src/Editors/_EditPersonRef.py @@ -130,7 +130,7 @@ class EditPersonRef(EditSecondary): self.note_tab = self._add_tab( notebook, NoteTab(self.dbstate, self.uistate, self.track, - self.obj.get_note_object())) + self.obj.get_note_list())) self._setup_notebook_tabs( notebook) notebook.show_all() diff --git a/src/Editors/_EditPlace.py b/src/Editors/_EditPlace.py index 5fa12df14..be687d3e3 100644 --- a/src/Editors/_EditPlace.py +++ b/src/Editors/_EditPlace.py @@ -167,7 +167,7 @@ class EditPlace(EditPrimary): self.note_tab = self._add_tab( notebook, NoteTab(self.dbstate, self.uistate, self.track, - self.obj.get_note_object())) + self.obj.get_note_list())) self.gallery_tab = self._add_tab( notebook, diff --git a/src/Editors/_EditRepoRef.py b/src/Editors/_EditRepoRef.py index dcc761836..ca8c4f0f7 100644 --- a/src/Editors/_EditRepoRef.py +++ b/src/Editors/_EditRepoRef.py @@ -128,12 +128,12 @@ class EditRepoRef(EditReference): self.note_tab = self._add_tab( notebook_src, NoteTab(self.dbstate, self.uistate, self.track, - self.source.get_note_object())) + self.source.get_note_list())) self.comment_tab = self._add_tab( notebook_ref, NoteTab(self.dbstate, self.uistate, self.track, - self.source_ref.get_note_object())) + self.source_ref.get_note_list())) self.address_tab = self._add_tab( notebook_src, diff --git a/src/Editors/_EditRepository.py b/src/Editors/_EditRepository.py index 7a3d45098..09876c33a 100644 --- a/src/Editors/_EditRepository.py +++ b/src/Editors/_EditRepository.py @@ -124,7 +124,7 @@ class EditRepository(EditPrimary): self.note_tab = self._add_tab( notebook, NoteTab(self.dbstate, self.uistate, self.track, - self.obj.get_note_object())) + self.obj.get_note_list())) self.backref_tab = self._add_tab( notebook, diff --git a/src/Editors/_EditSource.py b/src/Editors/_EditSource.py index 56d7e41f2..777624511 100644 --- a/src/Editors/_EditSource.py +++ b/src/Editors/_EditSource.py @@ -130,7 +130,7 @@ class EditSource(EditPrimary): self.note_tab = self._add_tab( notebook, NoteTab(self.dbstate, self.uistate, self.track, - self.obj.get_note_object())) + self.obj.get_note_list())) self.gallery_tab = self._add_tab( notebook, diff --git a/src/Editors/_EditSourceRef.py b/src/Editors/_EditSourceRef.py index 533871132..eda1a69d4 100644 --- a/src/Editors/_EditSourceRef.py +++ b/src/Editors/_EditSourceRef.py @@ -154,7 +154,7 @@ class EditSourceRef(EditReference): self.note_tab = self._add_tab( notebook_src, NoteTab(self.dbstate, self.uistate, self.track, - self.source.get_note_object())) + self.source.get_note_list())) self.gallery_tab = self._add_tab( notebook_src, @@ -185,7 +185,7 @@ class EditSourceRef(EditReference): self.comment_tab = self._add_tab( notebook_ref, NoteTab(self.dbstate, self.uistate, self.track, - self.source_ref.get_note_object(),_('Comments'))) + self.source_ref.get_note_list(),_('Comments'))) self._setup_notebook_tabs( notebook_src) self._setup_notebook_tabs( notebook_ref) diff --git a/src/GrampsDbUtils/_GedcomParse.py b/src/GrampsDbUtils/_GedcomParse.py index 87bc01bb5..218647741 100644 --- a/src/GrampsDbUtils/_GedcomParse.py +++ b/src/GrampsDbUtils/_GedcomParse.py @@ -282,13 +282,13 @@ class StageOne: if level == 0 and value == "FAM": current = key.strip() current = current[1:-1] - elif key in ("HUSB", "WIFE") and value[0] == '@': + elif key in ("HUSB", "WIFE") and value and value[0] == '@': value = value[1:-1] if self.fams.has_key(current): self.fams[current].append(value) else: self.fams[current] = [value] - elif key == "CHIL" and value[0] == '@': + elif key == "CHIL" and value and value[0] == '@': value = value[1:-1] if self.famc.has_key(current): self.famc[current].append(value) @@ -2381,7 +2381,7 @@ class GedcomParser(UpdateCallback): @type state: CurrentState """ note = self.parse_note(line, state.ref, state.level, "") - state.ref.set_note(note) + state.ref.add_note(note) #------------------------------------------------------------------- # @@ -2675,7 +2675,7 @@ class GedcomParser(UpdateCallback): @type state: CurrentState """ note = line.data - state.family.set_note(note) + state.family.add_note(note) self.skip_subordinate_levels(state.level+1) def func_family_note(self, line, state): @@ -2933,7 +2933,7 @@ class GedcomParser(UpdateCallback): @type state: CurrentState """ note = self.parse_note(line, state.place, state.level+1, '') - state.place.set_note(note) + state.place.add_note(note) def func_event_place_form(self, line, state): """ @@ -3001,7 +3001,7 @@ class GedcomParser(UpdateCallback): place.set_main_location(location) if note: - place.set_note(note) + place.add_note(note) state.event.set_place_handle(place_handle) self.dbase.commit_place(place, self.trans) @@ -3384,7 +3384,7 @@ class GedcomParser(UpdateCallback): @type state: CurrentState """ note = self.parse_comment(line, state.src_ref, state.level+1, '') - state.src_ref.set_note(note) + state.src_ref.add_note(note) def func_srcref_text(self, line, state): """ @@ -3953,6 +3953,7 @@ class GedcomParser(UpdateCallback): def parse_note_base(self, line, obj, level, old_note, task): # reference to a named note defined elsewhere + print line if line.token == TOKEN_RNOTE: note_obj = self.note_map.get(line.data) if note_obj: