* src/Exporter.py: Set initial person in case there's no active.

* src/ViewManager.py (find_initial_person): Remove method.
* src/GrampsDb/_GrampsDbBase.py (find_initial_person): Add method.


svn: r5856
This commit is contained in:
Alex Roitman 2006-01-29 22:05:20 +00:00
parent fce7809f3a
commit c1ddf79a8e
4 changed files with 13 additions and 15 deletions

View File

@ -2,6 +2,9 @@
* src/GrampsDb/_WriteXML.py (write_place_obj): Always write ptitle.
* src/GrampsDb/_ReadXML.py: Prase file and ptitle tags.
* example/gramps/example.gramps: Update XML example.
* src/Exporter.py: Set initial person in case there's no active.
* src/ViewManager.py (find_initial_person): Remove method.
* src/GrampsDb/_GrampsDbBase.py (find_initial_person): Add method.
2006-01-28 Don Allingham <don@gramps-project.org>
* src/DisplayTabs.py: hook up event ref editor

View File

@ -75,14 +75,10 @@ class Exporter:
"""
self.dbstate = dbstate
self.uistate = uistate
# self.parent_window = parent_window
if self.dbstate.active:
self.person = self.dbstate.active
else:
pass
# FIXME: find_initial_person needs to move into dbstate or db
# and then it will be available here
# self.person = self.parent.find_initial_person()
self.person = self.dbstate.db.find_initial_person()
self.build_exports()
self.format_option = None

View File

@ -989,6 +989,14 @@ class GrampsDbBase(GrampsDBCallback):
"""
assert False, "Needs to be overridden in the derived class"
def find_initial_person(self):
person = self.get_default_person()
if not person:
the_ids = self.get_gramps_ids(PERSON_KEY)
if the_ids:
person = self.get_person_from_gramps_id(min(the_ids))
return person
def _validated_id_prefix(self, val, default):
if val:
try:

View File

@ -784,7 +784,7 @@ class ViewManager:
GrampsKeys.save_last_file(name)
self.relationship = self.RelClass(self.state.db)
self.state.change_active_person(self.find_initial_person())
self.state.change_active_person(self.state.db.find_initial_person())
self.change_page(None,None)
self.state.db.undo_callback = self.change_undo_label
self.state.db.redo_callback = self.change_redo_label
@ -844,15 +844,6 @@ class ViewManager:
import Plugins
Plugins.ToolPlugins(self.state,self.uistate,[])
def find_initial_person(self):
person = self.state.db.get_default_person()
if not person:
the_ids = self.state.db.get_person_handles(sort_handles=False)
if the_ids:
the_ids.sort()
person = self.state.db.get_person_from_handle(the_ids[0])
return person
def scratchpad(self,obj):
import ScratchPad
ScratchPad.ScratchPadWindow(self.state, self)