Added flipped text option to the Fan Chart report
Added flip_text option to Graphical Report Fan Chart. This option flips the names in generations 2, 3 and 4 that on the bottom half of the fan.
This commit is contained in:
parent
fba5bfb584
commit
1456d10925
@ -168,6 +168,7 @@ class FanChart(Report):
|
|||||||
radial - Print radial texts roundabout or as upright as possible.
|
radial - Print radial texts roundabout or as upright as possible.
|
||||||
draw_empty - draw background when there is no information
|
draw_empty - draw background when there is no information
|
||||||
same_style - use the same style for all generation
|
same_style - use the same style for all generation
|
||||||
|
flip_text - flip names that are on the bottom half of the fan
|
||||||
incl_private - Whether to include private data
|
incl_private - Whether to include private data
|
||||||
living_people - How to handle living people
|
living_people - How to handle living people
|
||||||
years_past_death - Consider as living this many years after death
|
years_past_death - Consider as living this many years after death
|
||||||
@ -190,6 +191,7 @@ class FanChart(Report):
|
|||||||
pid = menu.get_option_by_name('pid').get_value()
|
pid = menu.get_option_by_name('pid').get_value()
|
||||||
self.draw_empty = menu.get_option_by_name('draw_empty').get_value()
|
self.draw_empty = menu.get_option_by_name('draw_empty').get_value()
|
||||||
self.same_style = menu.get_option_by_name('same_style').get_value()
|
self.same_style = menu.get_option_by_name('same_style').get_value()
|
||||||
|
self.flip_text = menu.get_option_by_name('flip_text').get_value()
|
||||||
self.center_person = self.database.get_person_from_gramps_id(pid)
|
self.center_person = self.database.get_person_from_gramps_id(pid)
|
||||||
if self.center_person is None:
|
if self.center_person is None:
|
||||||
raise ReportError(_("Person %s is not in the Database") % pid)
|
raise ReportError(_("Person %s is not in the Database") % pid)
|
||||||
@ -634,6 +636,15 @@ class FanChart(Report):
|
|||||||
_yc = _y_
|
_yc = _y_
|
||||||
person = self.database.get_person_from_handle(self.map[index])
|
person = self.database.get_person_from_handle(self.map[index])
|
||||||
mark = utils.get_person_mark(self.database, person)
|
mark = utils.get_person_mark(self.database, person)
|
||||||
|
|
||||||
|
if (self.flip_text == True
|
||||||
|
and generation >= 2
|
||||||
|
and (start_angle >= 360
|
||||||
|
or (start_angle >= 90
|
||||||
|
and start_angle < 180))):
|
||||||
|
self.doc.rotate_text(graphic_style, self.text[index],
|
||||||
|
_xc, _yc, text_angle + 180, mark)
|
||||||
|
else:
|
||||||
self.doc.rotate_text(graphic_style, self.text[index],
|
self.doc.rotate_text(graphic_style, self.text[index],
|
||||||
_xc, _yc, text_angle, mark)
|
_xc, _yc, text_angle, mark)
|
||||||
text_angle += delta
|
text_angle += delta
|
||||||
@ -751,6 +762,12 @@ class FanChartOptions(MenuReportOptions):
|
|||||||
"for each generation in the style editor"))
|
"for each generation in the style editor"))
|
||||||
menu.add_option(category_name, "same_style", same_style)
|
menu.add_option(category_name, "same_style", same_style)
|
||||||
|
|
||||||
|
flip_text = BooleanOption(_("Flip names that are on the "
|
||||||
|
"bottom half of the fan"), True)
|
||||||
|
flip_text.set_help(_("Flip names for generations 2, 3 and 4 "
|
||||||
|
"i.e. those found in circles"))
|
||||||
|
menu.add_option(category_name, "flip_text", flip_text)
|
||||||
|
|
||||||
category_name = _("Report Options (2)")
|
category_name = _("Report Options (2)")
|
||||||
|
|
||||||
stdoptions.add_private_data_option(menu, category_name)
|
stdoptions.add_private_data_option(menu, category_name)
|
||||||
|
Loading…
Reference in New Issue
Block a user