* src/ReportBase/_ReportUtils: Factor out common code into get_birth_or_fallback() and get_death_or_fallback()
* src/DataViews/_PedigreeView.py: Use get_birth/death_or_fallback() * src/DataViews/_RelationView.py: Use get_birth/death_or_fallback() * src/DisplayModels/_PeopleModel.py: Fix EventRoleType call svn: r7669
This commit is contained in:
parent
2906476bc1
commit
2157a1fbdc
@ -2,6 +2,12 @@
|
||||
* src/RelLib/_Person.py (set_birth_ref,set_death_ref): Dont fail if setting
|
||||
to None (which is what Check.py does).
|
||||
* src/plugins/TestcaseGenerator.py: Make it work again + some enhancements
|
||||
* src/ReportBase/_ReportUtils: Factor out common code into
|
||||
get_birth_or_fallback() and get_death_or_fallback()
|
||||
* src/DataViews/_PedigreeView.py: Use get_birth/death_or_fallback()
|
||||
* src/DataViews/_RelationView.py: Use get_birth/death_or_fallback()
|
||||
* src/DisplayModels/_PeopleModel.py: Fix EventRoleType call
|
||||
|
||||
|
||||
2006-11-21 Brian Matherly <brian@gramps-project.org>
|
||||
* src/plugins/DetDescendantReport.py: 0000558: Print only primary events
|
||||
|
@ -391,35 +391,8 @@ class FormattingHelper:
|
||||
if line_count < 3:
|
||||
return name
|
||||
|
||||
birth_ref = person.get_birth_ref()
|
||||
birth = None
|
||||
birth_fallback = False
|
||||
if birth_ref:
|
||||
birth = self.dbstate.db.get_event_from_handle(birth_ref.ref)
|
||||
else:
|
||||
for event_ref in person.get_event_ref_list():
|
||||
event = self.dbstate.db.get_event_from_handle(event_ref.ref)
|
||||
if event.get_type() in [RelLib.EventType.CHRISTEN, RelLib.EventType.BAPTISM] and\
|
||||
event_ref.get_role() == RelLib.EventRoleType.PRIMARY:
|
||||
birth = event
|
||||
birth_fallback = True
|
||||
break
|
||||
|
||||
death_ref = person.get_death_ref()
|
||||
death = None
|
||||
death_fallback = False
|
||||
if death_ref:
|
||||
death = self.dbstate.db.get_event_from_handle(death_ref.ref)
|
||||
else:
|
||||
for event_ref in person.get_event_ref_list():
|
||||
event = self.dbstate.db.get_event_from_handle(event_ref.ref)
|
||||
if event.get_type() in [RelLib.EventType.BURIAL, RelLib.EventType.CREMATION] and\
|
||||
event_ref.get_role() == RelLib.EventRoleType.PRIMARY:
|
||||
death = event
|
||||
death_fallback = True
|
||||
break
|
||||
|
||||
if birth and birth_fallback and use_markup:
|
||||
birth = ReportUtils.get_birth_or_fallback(self.dbstate.db, person)
|
||||
if birth and use_markup and birth.get_type() != RelLib.EventType.BIRTH:
|
||||
bdate = "<i>%s</i>" % DateHandler.get_date(birth)
|
||||
bplace = "<i>%s</i>" % self.get_place_name(birth.get_place_handle())
|
||||
elif birth:
|
||||
@ -428,7 +401,8 @@ class FormattingHelper:
|
||||
else:
|
||||
bdate = ""
|
||||
bplace = ""
|
||||
if death and death_fallback and use_markup:
|
||||
death = ReportUtils.get_death_or_fallback(self.dbstate.db, person)
|
||||
if death and use_markup and death.get_type() != RelLib.EventType.DEATH:
|
||||
ddate = "<i>%s</i>" % DateHandler.get_date(death)
|
||||
dplace = "<i>%s</i>" % self.get_place_name(death.get_place_handle())
|
||||
elif death:
|
||||
|
@ -487,48 +487,22 @@ class RelationshipView(PageView.PersonNavView):
|
||||
2, 3, 0, 1, yoptions=0)
|
||||
|
||||
# Birth event.
|
||||
birth_ref = person.get_birth_ref()
|
||||
birth_title = _('Birth')
|
||||
birth = None
|
||||
if birth_ref:
|
||||
birth = self.dbstate.db.get_event_from_handle(birth_ref.ref)
|
||||
birth = ReportUtils.get_birth_or_fallback(self.dbstate.db,person)
|
||||
if birth:
|
||||
birth_title = birth.get_type()
|
||||
else:
|
||||
for event_ref in person.get_event_ref_list():
|
||||
event = self.dbstate.db.get_event_from_handle(event_ref.ref)
|
||||
if event.get_type() == RelLib.EventType.CHRISTEN and\
|
||||
event_ref.get_role() == RelLib.EventRoleType.PRIMARY:
|
||||
birth_title = _('Christening')
|
||||
birth = event
|
||||
break
|
||||
if event.get_type() == RelLib.EventType.BAPTISM and\
|
||||
event_ref.get_role() == RelLib.EventRoleType.PRIMARY:
|
||||
birth_title = _('Baptism')
|
||||
birth = event
|
||||
break
|
||||
birth_title = None
|
||||
|
||||
subtbl.attach(GrampsWidgets.BasicLabel("%s:" % birth_title),
|
||||
1, 2, 1, 2, xoptions=gtk.FILL, yoptions=0)
|
||||
subtbl.attach(GrampsWidgets.BasicLabel(self.format_event(birth)),
|
||||
2, 3, 1, 2, yoptions=0)
|
||||
|
||||
death_ref = person.get_death_ref()
|
||||
death_title = _('Death')
|
||||
death = None
|
||||
if death_ref:
|
||||
death = self.dbstate.db.get_event_from_handle(death_ref.ref)
|
||||
death = ReportUtils.get_death_or_fallback(self.dbstate.db,person)
|
||||
if death:
|
||||
death_title = death.get_type()
|
||||
else:
|
||||
for event_ref in person.get_event_ref_list():
|
||||
event = self.dbstate.db.get_event_from_handle(event_ref.ref)
|
||||
if event.get_type() == RelLib.EventType.BURIAL and\
|
||||
event_ref.get_role() == RelLib.EventRoleType.PRIMARY:
|
||||
death_title = _('Burial')
|
||||
death = event
|
||||
break
|
||||
if event.get_type() == RelLib.EventType.CREMATION and\
|
||||
event_ref.get_role() == RelLib.EventRoleType.PRIMARY:
|
||||
death_title = _('Cremation')
|
||||
death = event
|
||||
break
|
||||
death_title = None
|
||||
|
||||
subtbl.attach(GrampsWidgets.BasicLabel("%s:" % death_title),
|
||||
1, 2, 2, 3, xoptions=gtk.FILL, yoptions=0)
|
||||
@ -790,41 +764,16 @@ class RelationshipView(PageView.PersonNavView):
|
||||
if not child:
|
||||
return None
|
||||
|
||||
birth_ref = child.get_birth_ref()
|
||||
birth = None
|
||||
birth_fallback = False
|
||||
if birth_ref:
|
||||
birth = self.dbstate.db.get_event_from_handle(birth_ref.ref)
|
||||
else:
|
||||
for event_ref in child.get_event_ref_list():
|
||||
event = self.dbstate.db.get_event_from_handle(event_ref.ref)
|
||||
if event.get_type() in [RelLib.EventType.CHRISTEN, RelLib.EventType.BAPTISM] and\
|
||||
event_ref.get_role() == RelLib.EventRoleType.PRIMARY:
|
||||
birth = event
|
||||
birth_fallback = True
|
||||
break
|
||||
|
||||
death_ref = child.get_death_ref()
|
||||
death = None
|
||||
death_fallback = False
|
||||
if death_ref:
|
||||
death = self.dbstate.db.get_event_from_handle(death_ref.ref)
|
||||
else:
|
||||
for event_ref in child.get_event_ref_list():
|
||||
event = self.dbstate.db.get_event_from_handle(event_ref.ref)
|
||||
if event.get_type() in [RelLib.EventType.BURIAL, RelLib.EventType.CREMATION] and\
|
||||
event_ref.get_role() == RelLib.EventRoleType.PRIMARY:
|
||||
death = event
|
||||
death_fallback = True
|
||||
break
|
||||
|
||||
if birth and birth_fallback:
|
||||
birth = ReportUtils.get_birth_or_fallback(self.dbstate.db, child)
|
||||
if birth and birth.get_type != RelLib.EventType.BIRTH:
|
||||
bdate = "<i>%s</i>" % DateHandler.get_date(birth)
|
||||
elif birth:
|
||||
bdate = DateHandler.get_date(birth)
|
||||
else:
|
||||
bdate = ""
|
||||
if death and death_fallback:
|
||||
|
||||
death = ReportUtils.get_death_or_fallback(self.dbstate.db, child)
|
||||
if death and death.get_type != RelLib.EventType.DEATH:
|
||||
ddate = "<i>%s</i>" % DateHandler.get_date(death)
|
||||
elif death:
|
||||
ddate = DateHandler.get_date(death)
|
||||
|
@ -455,7 +455,7 @@ class PeopleModel(gtk.GenericTreeModel):
|
||||
etype = event.get_type()
|
||||
date_str = DateHandler.get_date(event)
|
||||
if (etype in [EventType.BAPTISM, EventType.CHRISTEN]
|
||||
and er.get_role() == RelLib.EventRoleType.PRIMARY
|
||||
and er.get_role() == EventRoleType.PRIMARY
|
||||
and date_str != ""):
|
||||
return "<i>" + cgi.escape(date_str) + "</i>"
|
||||
|
||||
@ -482,7 +482,7 @@ class PeopleModel(gtk.GenericTreeModel):
|
||||
etype = event.get_type()
|
||||
date_str = DateHandler.get_date(event)
|
||||
if (etype in [EventType.BURIAL, EventType.CREMATION]
|
||||
and er.get_role() == RelLib.EventRoleType.PRIMARY
|
||||
and er.get_role() == EventRoleType.PRIMARY
|
||||
and date_str != ""):
|
||||
return "<i>" + cgi.escape(date_str) + "</i>"
|
||||
|
||||
@ -512,7 +512,7 @@ class PeopleModel(gtk.GenericTreeModel):
|
||||
event = self.db.get_event_from_handle(er.ref)
|
||||
etype = event.get_type()
|
||||
if etype in [EventType.BAPTISM, EventType.CHRISTEN]\
|
||||
and er.get_role() == RelLib.EventRoleType.PRIMARY:
|
||||
and er.get_role() == EventRoleType.PRIMARY:
|
||||
place_handle = event.get_place_handle()
|
||||
if place_handle:
|
||||
place = self.db.get_place_from_handle(place_handle)
|
||||
@ -546,7 +546,7 @@ class PeopleModel(gtk.GenericTreeModel):
|
||||
event = self.db.get_event_from_handle(er.ref)
|
||||
etype = event.get_type()
|
||||
if etype in [EventType.BURIAL, EventType.CREMATION]\
|
||||
and er.get_role() == RelLib.EventRoleType.PRIMARY:
|
||||
and er.get_role() == EventRoleType.PRIMARY:
|
||||
place_handle = event.get_place_handle()
|
||||
if place_handle:
|
||||
place = self.db.get_place_from_handle(place_handle)
|
||||
|
@ -2141,6 +2141,27 @@ def list_person_str(database,person,empty_date="",empty_place=""):
|
||||
text = ""
|
||||
return text
|
||||
|
||||
def get_birth_or_fallback(database,person):
|
||||
birth_ref = person.get_birth_ref()
|
||||
if birth_ref: # regular birth found
|
||||
return database.get_event_from_handle(birth_ref.ref)
|
||||
# now search the event list for fallbacks
|
||||
for event_ref in person.get_primary_event_ref_list():
|
||||
event = database.get_event_from_handle(event_ref.ref)
|
||||
if event.get_type() in [RelLib.EventType.CHRISTEN, RelLib.EventType.BAPTISM]:
|
||||
return event
|
||||
return None
|
||||
|
||||
def get_death_or_fallback(database,person):
|
||||
birth_ref = person.get_death_ref()
|
||||
if birth_ref: # regular death found
|
||||
return database.get_event_from_handle(birth_ref.ref)
|
||||
# now search the event list for fallbacks
|
||||
for event_ref in person.get_primary_event_ref_list():
|
||||
event = database.get_event_from_handle(event_ref.ref)
|
||||
if event.get_type() in [RelLib.EventType.BURIAL, RelLib.EventType.CREMATION]:
|
||||
return event
|
||||
return None
|
||||
|
||||
def old_calc_age(database,person):
|
||||
"""
|
||||
|
Loading…
Reference in New Issue
Block a user