3778: Family notes and attributes are not displayed in reports, by lcc
svn: r15485
This commit is contained in:
parent
8a25a77c9f
commit
6cedab8349
@ -356,15 +356,21 @@ class DetDescendantReport(Report):
|
|||||||
|
|
||||||
self.write_person_info(person)
|
self.write_person_info(person)
|
||||||
|
|
||||||
if self.listchildren or self.inc_events or self.inc_mates:
|
if self.inc_mates or self.listchildren or self.inc_notes \
|
||||||
|
or self.inc_events or self.inc_attrs:
|
||||||
for family_handle in person.get_family_handle_list():
|
for family_handle in person.get_family_handle_list():
|
||||||
family = self.database.get_family_from_handle(family_handle)
|
family = self.database.get_family_from_handle(family_handle)
|
||||||
if self.inc_mates:
|
if self.inc_mates:
|
||||||
self.__write_mate(person, family)
|
self.__write_mate(person, family)
|
||||||
if self.listchildren:
|
if self.listchildren:
|
||||||
self.__write_children(family)
|
self.__write_children(family)
|
||||||
|
if self.inc_notes:
|
||||||
|
self.__write_family_notes(family)
|
||||||
|
first = True
|
||||||
if self.inc_events:
|
if self.inc_events:
|
||||||
self.__write_family_events(family)
|
first = self.__write_family_events(family)
|
||||||
|
if self.inc_attrs:
|
||||||
|
self.__write_family_attrs(family, first)
|
||||||
|
|
||||||
def write_event(self, event_ref):
|
def write_event(self, event_ref):
|
||||||
text = ""
|
text = ""
|
||||||
@ -501,13 +507,7 @@ class DetDescendantReport(Report):
|
|||||||
|
|
||||||
self.write_person_info(mate)
|
self.write_person_info(mate)
|
||||||
|
|
||||||
def __write_children(self, family):
|
def __get_mate_names(self, family):
|
||||||
"""
|
|
||||||
List the children for the given family.
|
|
||||||
"""
|
|
||||||
if not family.get_child_ref_list():
|
|
||||||
return
|
|
||||||
|
|
||||||
mother_handle = family.get_mother_handle()
|
mother_handle = family.get_mother_handle()
|
||||||
if mother_handle:
|
if mother_handle:
|
||||||
mother = self.database.get_person_from_handle(mother_handle)
|
mother = self.database.get_person_from_handle(mother_handle)
|
||||||
@ -522,6 +522,17 @@ class DetDescendantReport(Report):
|
|||||||
else:
|
else:
|
||||||
father_name = _("unknown")
|
father_name = _("unknown")
|
||||||
|
|
||||||
|
return mother_name, father_name
|
||||||
|
|
||||||
|
def __write_children(self, family):
|
||||||
|
"""
|
||||||
|
List the children for the given family.
|
||||||
|
"""
|
||||||
|
if not family.get_child_ref_list():
|
||||||
|
return
|
||||||
|
|
||||||
|
mother_name, father_name = self.__get_mate_names(family)
|
||||||
|
|
||||||
self.doc.start_paragraph("DDR-ChildTitle")
|
self.doc.start_paragraph("DDR-ChildTitle")
|
||||||
self.doc.write_text(
|
self.doc.write_text(
|
||||||
_("Children of %(mother_name)s and %(father_name)s") %
|
_("Children of %(mother_name)s and %(father_name)s") %
|
||||||
@ -572,6 +583,25 @@ class DetDescendantReport(Report):
|
|||||||
self.__narrator.get_buried_string())
|
self.__narrator.get_buried_string())
|
||||||
self.doc.end_paragraph()
|
self.doc.end_paragraph()
|
||||||
|
|
||||||
|
def __write_family_notes(self, family):
|
||||||
|
"""
|
||||||
|
Write the notes for the given family.
|
||||||
|
"""
|
||||||
|
notelist = family.get_note_list()
|
||||||
|
if len(notelist) > 0:
|
||||||
|
mother_name, father_name = self.__get_mate_names(family)
|
||||||
|
|
||||||
|
self.doc.start_paragraph("DDR-NoteHeader")
|
||||||
|
self.doc.write_text(
|
||||||
|
_('Notes for %(mother_name)s and %(father_name)s:') % {
|
||||||
|
'mother_name' : mother_name,
|
||||||
|
'father_name' : father_name })
|
||||||
|
self.doc.end_paragraph()
|
||||||
|
for notehandle in notelist:
|
||||||
|
note = self.database.get_note_from_handle(notehandle)
|
||||||
|
self.doc.write_styled_note(note.get_styledtext(),
|
||||||
|
note.get_format(),"DDR-Entry")
|
||||||
|
|
||||||
def __write_family_events(self, family):
|
def __write_family_events(self, family):
|
||||||
"""
|
"""
|
||||||
List the events for the given family.
|
List the events for the given family.
|
||||||
@ -579,19 +609,7 @@ class DetDescendantReport(Report):
|
|||||||
if not family.get_event_ref_list():
|
if not family.get_event_ref_list():
|
||||||
return
|
return
|
||||||
|
|
||||||
mother_handle = family.get_mother_handle()
|
mother_name, father_name = self.__get_mate_names(family)
|
||||||
if mother_handle:
|
|
||||||
mother = self.database.get_person_from_handle(mother_handle)
|
|
||||||
mother_name = _nd.display(mother)
|
|
||||||
else:
|
|
||||||
mother_name = _("unknown")
|
|
||||||
|
|
||||||
father_handle = family.get_father_handle()
|
|
||||||
if father_handle:
|
|
||||||
father = self.database.get_person_from_handle(father_handle)
|
|
||||||
father_name = _nd.display(father)
|
|
||||||
else:
|
|
||||||
father_name = _("unknown")
|
|
||||||
|
|
||||||
first = 1
|
first = 1
|
||||||
for event_ref in family.get_event_ref_list():
|
for event_ref in family.get_event_ref_list():
|
||||||
@ -604,6 +622,42 @@ class DetDescendantReport(Report):
|
|||||||
self.doc.end_paragraph()
|
self.doc.end_paragraph()
|
||||||
first = 0
|
first = 0
|
||||||
self.write_event(event_ref)
|
self.write_event(event_ref)
|
||||||
|
return first
|
||||||
|
|
||||||
|
def __write_family_attrs(self, family, first):
|
||||||
|
"""
|
||||||
|
List the attributes for the given family.
|
||||||
|
"""
|
||||||
|
attrs = family.get_attribute_list()
|
||||||
|
|
||||||
|
if first and attrs:
|
||||||
|
mother_name, father_name = self.__get_mate_names(family)
|
||||||
|
|
||||||
|
self.doc.start_paragraph('DDR-MoreHeader')
|
||||||
|
self.doc.write_text(
|
||||||
|
_('More about %(mother_name)s and %(father_name)s:') % {
|
||||||
|
'mother_name' : mother_name,
|
||||||
|
'father_name' : father_name })
|
||||||
|
self.doc.end_paragraph()
|
||||||
|
|
||||||
|
for attr in attrs:
|
||||||
|
self.doc.start_paragraph('DDR-MoreDetails')
|
||||||
|
text = _("%(type)s: %(value)s%(endnotes)s") % {
|
||||||
|
'type' : attr.get_type(),
|
||||||
|
'value' : attr.get_value(),
|
||||||
|
'endnotes' : self.endnotes(attr) }
|
||||||
|
self.doc.write_text_citation( text )
|
||||||
|
self.doc.end_paragraph()
|
||||||
|
|
||||||
|
if self.inc_notes:
|
||||||
|
# if the attr or attr reference has a note attached to it,
|
||||||
|
# get the text and format it correctly
|
||||||
|
notelist = attr.get_note_list()
|
||||||
|
for notehandle in notelist:
|
||||||
|
note = self.database.get_note_from_handle(notehandle)
|
||||||
|
self.doc.write_styled_note(note.get_styledtext(),
|
||||||
|
note.get_format(),"DDR-MoreDetails")
|
||||||
|
|
||||||
|
|
||||||
def write_person_info(self, person):
|
def write_person_info(self, person):
|
||||||
name = _nd.display_formal(person)
|
name = _nd.display_formal(person)
|
||||||
@ -947,7 +1001,8 @@ class DetDescendantOptions(MenuReportOptions):
|
|||||||
para.set(first_indent=0.0, lmargin=1.5)
|
para.set(first_indent=0.0, lmargin=1.5)
|
||||||
para.set_top_margin(0.25)
|
para.set_top_margin(0.25)
|
||||||
para.set_bottom_margin(0.25)
|
para.set_bottom_margin(0.25)
|
||||||
para.set_description(_('The style used for the More About header.'))
|
para.set_description(_('The style used for the More About header and '
|
||||||
|
'for headers of mates.'))
|
||||||
default_style.add_paragraph_style("DDR-MoreHeader", para)
|
default_style.add_paragraph_style("DDR-MoreHeader", para)
|
||||||
|
|
||||||
font = FontStyle()
|
font = FontStyle()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user