Fix Geography view 'Find' when db is closed.

Fixes #10229
This commit is contained in:
prculley 2017-10-14 11:36:31 -05:00 committed by Nick Hall
parent 85f42908f4
commit 84e0d45ab6
6 changed files with 21 additions and 5 deletions

View File

@ -313,13 +313,18 @@ class GeoClose(GeoGraphyView):
all handling of visibility is now in rebuild_trees, see that for more
information.
"""
active = self.get_active()
person = self.dbstate.db.get_person_from_handle(active)
self.lifeway_layer.clear_ways()
if person is None:
self.goto_handle(None)
if not self.dbstate.is_open():
return
active = self.get_active()
if active:
person = self.dbstate.db.get_person_from_handle(active)
if person is None:
self.goto_handle(None)
else:
self.goto_handle(handle=person)
else:
self.goto_handle(handle=person)
self.goto_handle(None)
def draw(self, menu, marks, color, reference):
"""

View File

@ -188,6 +188,8 @@ class GeoEvents(GeoGraphyView):
all handling of visibility is now in rebuild_trees, see that for more
information.
"""
if not self.dbstate.is_open():
return
active = self.uistate.get_active('Event')
if active:
self._createmap(active)

View File

@ -304,6 +304,9 @@ class GeoFamClose(GeoGraphyView):
all handling of visibility is now in rebuild_trees, see that for more
information.
"""
self.lifeway_layer.clear_ways()
if not self.dbstate.is_open():
return
active = self.get_active()
family = self.dbstate.db.get_family_from_handle(active)
self.goto_handle(handle=family)

View File

@ -178,6 +178,8 @@ class GeoFamily(GeoGraphyView):
all handling of visibility is now in rebuild_trees, see that for more
information.
"""
if not self.dbstate.is_open():
return
if self.uistate.get_active('Family'):
self._createmap(self.uistate.get_active('Family'))
else:

View File

@ -215,6 +215,8 @@ class GeoPerson(GeoGraphyView):
all handling of visibility is now in rebuild_trees, see that for more
information.
"""
if not self.dbstate.is_open():
return
active = self.get_active()
self._createmap(active)

View File

@ -189,6 +189,8 @@ class GeoPlaces(GeoGraphyView):
all handling of visibility is now in rebuild_trees, see that for more
information.
"""
if not self.dbstate.is_open():
return
active = self.uistate.get_active('Place')
if active:
self._createmap(active)