Teaks for readability
svn: r16689
This commit is contained in:
parent
e8b0c9d1eb
commit
045ecbab89
@ -27,6 +27,7 @@
|
|||||||
#------------------------------------------------------------------------
|
#------------------------------------------------------------------------
|
||||||
from gen.ggettext import gettext as _
|
from gen.ggettext import gettext as _
|
||||||
from gen.ggettext import ngettext
|
from gen.ggettext import ngettext
|
||||||
|
from functools import partial
|
||||||
import datetime
|
import datetime
|
||||||
import time
|
import time
|
||||||
|
|
||||||
@ -76,21 +77,24 @@ class Calendar(Report):
|
|||||||
def __init__(self, database, options_class):
|
def __init__(self, database, options_class):
|
||||||
Report.__init__(self, database, options_class)
|
Report.__init__(self, database, options_class)
|
||||||
menu = options_class.menu
|
menu = options_class.menu
|
||||||
|
get_value = lambda name: menu.get_option_by_name(name).get_value()
|
||||||
self.year = menu.get_option_by_name('year').get_value()
|
|
||||||
self.name_format = menu.get_option_by_name('name_format').get_value()
|
self.year = get_value('year')
|
||||||
self.country = menu.get_option_by_name('country').get_value()
|
self.name_format = get_value('name_format')
|
||||||
self.anniversaries = menu.get_option_by_name('anniversaries').get_value()
|
self.country = get_value('country')
|
||||||
self.start_dow = menu.get_option_by_name('start_dow').get_value()
|
self.anniversaries = get_value('anniversaries')
|
||||||
self.maiden_name = menu.get_option_by_name('maiden_name').get_value()
|
self.start_dow = get_value('start_dow')
|
||||||
self.alive = menu.get_option_by_name('alive').get_value()
|
self.maiden_name = get_value('maiden_name')
|
||||||
self.birthdays = menu.get_option_by_name('birthdays').get_value()
|
self.alive = get_value('alive')
|
||||||
self.text1 = menu.get_option_by_name('text1').get_value()
|
self.birthdays = get_value('birthdays')
|
||||||
self.text2 = menu.get_option_by_name('text2').get_value()
|
self.text1 = get_value('text1')
|
||||||
self.text3 = menu.get_option_by_name('text3').get_value()
|
self.text2 = get_value('text2')
|
||||||
self.filter_option = menu.get_option_by_name('filter')
|
self.text3 = get_value('text3')
|
||||||
|
import pdb
|
||||||
|
pdb.set_trace()
|
||||||
|
self.filter_option = menu.get_option_by_name('filter')
|
||||||
self.filter = self.filter_option.get_filter()
|
self.filter = self.filter_option.get_filter()
|
||||||
pid = menu.get_option_by_name('pid').get_value()
|
pid = get_value('pid')
|
||||||
self.center_person = database.get_person_from_gramps_id(pid)
|
self.center_person = database.get_person_from_gramps_id(pid)
|
||||||
if (self.center_person == None) :
|
if (self.center_person == None) :
|
||||||
raise ReportError(_("Person %s is not in the Database") % pid )
|
raise ReportError(_("Person %s is not in the Database") % pid )
|
||||||
@ -223,10 +227,10 @@ class Calendar(Report):
|
|||||||
self.doc.center_text("CAL-Numbers", str(thisday.day),
|
self.doc.center_text("CAL-Numbers", str(thisday.day),
|
||||||
day_col * cell_width + cell_width/2,
|
day_col * cell_width + cell_width/2,
|
||||||
header + week_row * cell_height)
|
header + week_row * cell_height)
|
||||||
list = self.calendar.get(month, {}).get(thisday.day, [])
|
list_ = self.calendar.get(month, {}).get(thisday.day, [])
|
||||||
list.sort() # to get CAL-Holiday on bottom
|
list_.sort() # to get CAL-Holiday on bottom
|
||||||
position = 0.0
|
position = 0.0
|
||||||
for (format, p) in list:
|
for (format, p) in list_:
|
||||||
lines = p.count("\n") + 1 # lines in the text
|
lines = p.count("\n") + 1 # lines in the text
|
||||||
position += (lines * spacing)
|
position += (lines * spacing)
|
||||||
current = 0
|
current = 0
|
||||||
@ -245,9 +249,11 @@ class Calendar(Report):
|
|||||||
if not something_this_week:
|
if not something_this_week:
|
||||||
last_edge = 0
|
last_edge = 0
|
||||||
font_height = pt2cm(1.5 * ptext1style.get_font().get_size())
|
font_height = pt2cm(1.5 * ptext1style.get_font().get_size())
|
||||||
self.doc.center_text("CAL-Text1style", self.text1, last_edge + (width - last_edge)/2, height - font_height * 3)
|
x = last_edge + (width - last_edge)/2
|
||||||
self.doc.center_text("CAL-Text2style", self.text2, last_edge + (width - last_edge)/2, height - font_height * 2)
|
y = height - font_height
|
||||||
self.doc.center_text("CAL-Text3style", self.text3, last_edge + (width - last_edge)/2, height - font_height * 1)
|
self.doc.center_text("CAL-Text1style", self.text1, x, y * 3)
|
||||||
|
self.doc.center_text("CAL-Text2style", self.text2, x, y * 2)
|
||||||
|
self.doc.center_text("CAL-Text3style", self.text3, x, y * 1)
|
||||||
self.doc.end_page()
|
self.doc.end_page()
|
||||||
|
|
||||||
def collect_data(self):
|
def collect_data(self):
|
||||||
@ -255,19 +261,20 @@ class Calendar(Report):
|
|||||||
This method runs through the data, and collects the relevant dates
|
This method runs through the data, and collects the relevant dates
|
||||||
and text.
|
and text.
|
||||||
"""
|
"""
|
||||||
people = self.database.iter_person_handles()
|
db = self.database
|
||||||
self.progress.set_pass(_('Applying Filter...'), self.database.get_number_of_people())
|
people = db.iter_person_handles()
|
||||||
|
self.progress.set_pass(_('Applying Filter...'), db.get_number_of_people())
|
||||||
people = self.filter.apply(self.database, people, self.progress)
|
people = self.filter.apply(self.database, people, self.progress)
|
||||||
rel_calc = Relationship.get_relationship_calculator()
|
rel_calc = Relationship.get_relationship_calculator()
|
||||||
|
|
||||||
self.progress.set_pass(_('Reading database...'), len(people))
|
self.progress.set_pass(_('Reading database...'), len(people))
|
||||||
for person_handle in people:
|
for person_handle in people:
|
||||||
self.progress.step()
|
self.progress.step()
|
||||||
person = self.database.get_person_from_handle(person_handle)
|
person = db.get_person_from_handle(person_handle)
|
||||||
birth_ref = person.get_birth_ref()
|
birth_ref = person.get_birth_ref()
|
||||||
birth_date = None
|
birth_date = None
|
||||||
if birth_ref:
|
if birth_ref:
|
||||||
birth_event = self.database.get_event_from_handle(birth_ref.ref)
|
birth_event = db.get_event_from_handle(birth_ref.ref)
|
||||||
birth_date = birth_event.get_date_object()
|
birth_date = birth_event.get_date_object()
|
||||||
|
|
||||||
if (self.birthdays and birth_date is not None and birth_date.is_valid()):
|
if (self.birthdays and birth_date is not None and birth_date.is_valid()):
|
||||||
@ -283,23 +290,23 @@ class Calendar(Report):
|
|||||||
if self.maiden_name in ['spouse_first', 'spouse_last']: # get husband's last name:
|
if self.maiden_name in ['spouse_first', 'spouse_last']: # get husband's last name:
|
||||||
if person.get_gender() == gen.lib.Person.FEMALE:
|
if person.get_gender() == gen.lib.Person.FEMALE:
|
||||||
family_list = person.get_family_handle_list()
|
family_list = person.get_family_handle_list()
|
||||||
if len(family_list) > 0:
|
if family_list:
|
||||||
if self.maiden_name == 'spouse_first':
|
if self.maiden_name == 'spouse_first':
|
||||||
fhandle = family_list[0]
|
fhandle = family_list[0]
|
||||||
else:
|
else:
|
||||||
fhandle = family_list[-1]
|
fhandle = family_list[-1]
|
||||||
fam = self.database.get_family_from_handle(fhandle)
|
fam = db.get_family_from_handle(fhandle)
|
||||||
father_handle = fam.get_father_handle()
|
father_handle = fam.get_father_handle()
|
||||||
mother_handle = fam.get_mother_handle()
|
mother_handle = fam.get_mother_handle()
|
||||||
if mother_handle == person_handle:
|
if mother_handle == person_handle:
|
||||||
if father_handle:
|
if father_handle:
|
||||||
father = self.database.get_person_from_handle(father_handle)
|
father = db.get_person_from_handle(father_handle)
|
||||||
if father is not None:
|
if father:
|
||||||
father_lastname = father.get_primary_name().get_surname()
|
father_lastname = father.get_primary_name().get_surname()
|
||||||
short_name = self.get_name(person, father_lastname)
|
short_name = self.get_name(person, father_lastname)
|
||||||
alive = probably_alive(person, self.database, prob_alive_date)
|
alive = probably_alive(person, db, prob_alive_date)
|
||||||
|
|
||||||
if (self.alive and alive) or not self.alive:
|
if not self.alive or alive:
|
||||||
if nyears == 0:
|
if nyears == 0:
|
||||||
text = _('%(person)s, birth%(relation)s') % {
|
text = _('%(person)s, birth%(relation)s') % {
|
||||||
'person' : short_name,
|
'person' : short_name,
|
||||||
@ -314,7 +321,7 @@ class Calendar(Report):
|
|||||||
if self.anniversaries:
|
if self.anniversaries:
|
||||||
family_list = person.get_family_handle_list()
|
family_list = person.get_family_handle_list()
|
||||||
for fhandle in family_list:
|
for fhandle in family_list:
|
||||||
fam = self.database.get_family_from_handle(fhandle)
|
fam = db.get_family_from_handle(fhandle)
|
||||||
father_handle = fam.get_father_handle()
|
father_handle = fam.get_father_handle()
|
||||||
mother_handle = fam.get_mother_handle()
|
mother_handle = fam.get_mother_handle()
|
||||||
if father_handle == person.get_handle():
|
if father_handle == person.get_handle():
|
||||||
@ -323,7 +330,7 @@ class Calendar(Report):
|
|||||||
continue # with next person if the father is not "person"
|
continue # with next person if the father is not "person"
|
||||||
# this will keep from duplicating the anniversary
|
# this will keep from duplicating the anniversary
|
||||||
if spouse_handle:
|
if spouse_handle:
|
||||||
spouse = self.database.get_person_from_handle(spouse_handle)
|
spouse = db.get_person_from_handle(spouse_handle)
|
||||||
if spouse:
|
if spouse:
|
||||||
spouse_name = self.get_name(spouse)
|
spouse_name = self.get_name(spouse)
|
||||||
short_name = self.get_name(person)
|
short_name = self.get_name(person)
|
||||||
@ -331,21 +338,23 @@ class Calendar(Report):
|
|||||||
# GRAMPS 3.0 will have a new mechanism for start/stop events
|
# GRAMPS 3.0 will have a new mechanism for start/stop events
|
||||||
are_married = None
|
are_married = None
|
||||||
for event_ref in fam.get_event_ref_list():
|
for event_ref in fam.get_event_ref_list():
|
||||||
event = self.database.get_event_from_handle(event_ref.ref)
|
event = db.get_event_from_handle(event_ref.ref)
|
||||||
if event.type in [gen.lib.EventType.MARRIAGE,
|
et = gen.lib.EventType
|
||||||
gen.lib.EventType.MARR_ALT] and \
|
rt = gen.lib.EventRoleType
|
||||||
(event_ref.get_role() == gen.lib.EventRoleType.FAMILY or
|
if event.type in [et.MARRIAGE,
|
||||||
event_ref.get_role() == gen.lib.EventRoleType.PRIMARY ):
|
et.MARR_ALT] and \
|
||||||
|
(event_ref.get_role() == rt.FAMILY or
|
||||||
|
event_ref.get_role() == rt.PRIMARY ):
|
||||||
are_married = event
|
are_married = event
|
||||||
elif event.type in [gen.lib.EventType.DIVORCE,
|
elif event.type in [et.DIVORCE,
|
||||||
gen.lib.EventType.ANNULMENT,
|
et.ANNULMENT,
|
||||||
gen.lib.EventType.DIV_FILING] and \
|
et.DIV_FILING] and \
|
||||||
(event_ref.get_role() == gen.lib.EventRoleType.FAMILY or
|
(event_ref.get_role() == rt.FAMILY or
|
||||||
event_ref.get_role() == gen.lib.EventRoleType.PRIMARY ):
|
event_ref.get_role() == rt.PRIMARY ):
|
||||||
are_married = None
|
are_married = None
|
||||||
if are_married is not None:
|
if are_married is not None:
|
||||||
for event_ref in fam.get_event_ref_list():
|
for event_ref in fam.get_event_ref_list():
|
||||||
event = self.database.get_event_from_handle(event_ref.ref)
|
event = db.get_event_from_handle(event_ref.ref)
|
||||||
event_obj = event.get_date_object()
|
event_obj = event.get_date_object()
|
||||||
|
|
||||||
if event_obj.is_valid():
|
if event_obj.is_valid():
|
||||||
@ -390,21 +399,20 @@ class CalendarOptions(MenuReportOptions):
|
|||||||
|
|
||||||
def add_menu_options(self, menu):
|
def add_menu_options(self, menu):
|
||||||
""" Add the options for the graphical calendar """
|
""" Add the options for the graphical calendar """
|
||||||
category_name = _("Report Options")
|
add_option = partial(menu.add_option, _("Report Options"))
|
||||||
|
|
||||||
year = NumberOption(_("Year of calendar"), time.localtime()[0],
|
year = NumberOption(_("Year of calendar"), time.localtime()[0],
|
||||||
1000, 3000)
|
1000, 3000)
|
||||||
year.set_help(_("Year of calendar"))
|
year.set_help(_("Year of calendar"))
|
||||||
menu.add_option(category_name, "year", year)
|
add_option("year", year)
|
||||||
|
|
||||||
self.__filter = FilterOption(_("Filter"), 0)
|
self.__filter = FilterOption(_("Filter"), 0)
|
||||||
self.__filter.set_help(
|
self.__filter.set_help(
|
||||||
_("Select filter to restrict people that appear on calendar"))
|
_("Select filter to restrict people that appear on calendar"))
|
||||||
menu.add_option(category_name, "filter", self.__filter)
|
add_option("filter", self.__filter)
|
||||||
|
|
||||||
self.__pid = PersonOption(_("Center Person"))
|
self.__pid = PersonOption(_("Center Person"))
|
||||||
self.__pid.set_help(_("The center person for the report"))
|
self.__pid.set_help(_("The center person for the report"))
|
||||||
menu.add_option(category_name, "pid", self.__pid)
|
add_option("pid", self.__pid)
|
||||||
self.__pid.connect('value-changed', self.__update_filters)
|
self.__pid.connect('value-changed', self.__update_filters)
|
||||||
|
|
||||||
self.__update_filters()
|
self.__update_filters()
|
||||||
@ -416,7 +424,7 @@ class CalendarOptions(MenuReportOptions):
|
|||||||
for num, name, fmt_str, act in fmt_list:
|
for num, name, fmt_str, act in fmt_list:
|
||||||
name_format.add_item(num, name)
|
name_format.add_item(num, name)
|
||||||
name_format.set_help(_("Select the format to display names"))
|
name_format.set_help(_("Select the format to display names"))
|
||||||
menu.add_option(category_name, "name_format", name_format)
|
add_option("name_format", name_format)
|
||||||
|
|
||||||
country = EnumeratedListOption(_("Country for holidays"), 0)
|
country = EnumeratedListOption(_("Country for holidays"), 0)
|
||||||
holiday_table = libholiday.HolidayTable()
|
holiday_table = libholiday.HolidayTable()
|
||||||
@ -430,47 +438,48 @@ class CalendarOptions(MenuReportOptions):
|
|||||||
country.add_item(count, c)
|
country.add_item(count, c)
|
||||||
count += 1
|
count += 1
|
||||||
country.set_help(_("Select the country to see associated holidays"))
|
country.set_help(_("Select the country to see associated holidays"))
|
||||||
menu.add_option(category_name, "country", country)
|
add_option("country", country)
|
||||||
|
|
||||||
start_dow = EnumeratedListOption(_("First day of week"), 1)
|
start_dow = EnumeratedListOption(_("First day of week"), 1)
|
||||||
for count in range(1, 8):
|
for count in range(1, 8):
|
||||||
# conversion between gramps numbering (sun=1) and iso numbering (mon=1) of weekdays below
|
# conversion between gramps numbering (sun=1) and iso numbering (mon=1) of weekdays below
|
||||||
start_dow.add_item((count+5) % 7 + 1, GrampsLocale.long_days[count].capitalize())
|
start_dow.add_item((count+5) % 7 + 1, GrampsLocale.long_days[count].capitalize())
|
||||||
start_dow.set_help(_("Select the first day of the week for the calendar"))
|
start_dow.set_help(_("Select the first day of the week for the calendar"))
|
||||||
menu.add_option(category_name, "start_dow", start_dow)
|
add_option("start_dow", start_dow)
|
||||||
|
|
||||||
maiden_name = EnumeratedListOption(_("Birthday surname"), "own")
|
maiden_name = EnumeratedListOption(_("Birthday surname"), "own")
|
||||||
maiden_name.add_item("spouse_first", _("Wives use husband's surname (from first family listed)"))
|
maiden_name.add_item("spouse_first", _("Wives use husband's surname (from first family listed)"))
|
||||||
maiden_name.add_item("spouse_last", _("Wives use husband's surname (from last family listed)"))
|
maiden_name.add_item("spouse_last", _("Wives use husband's surname (from last family listed)"))
|
||||||
maiden_name.add_item("own", _("Wives use their own surname"))
|
maiden_name.add_item("own", _("Wives use their own surname"))
|
||||||
maiden_name.set_help(_("Select married women's displayed surname"))
|
maiden_name.set_help(_("Select married women's displayed surname"))
|
||||||
menu.add_option(category_name, "maiden_name", maiden_name)
|
add_option("maiden_name", maiden_name)
|
||||||
|
|
||||||
alive = BooleanOption(_("Include only living people"), True)
|
alive = BooleanOption(_("Include only living people"), True)
|
||||||
alive.set_help(_("Include only living people in the calendar"))
|
alive.set_help(_("Include only living people in the calendar"))
|
||||||
menu.add_option(category_name, "alive", alive)
|
add_option("alive", alive)
|
||||||
|
|
||||||
birthdays = BooleanOption(_("Include birthdays"), True)
|
birthdays = BooleanOption(_("Include birthdays"), True)
|
||||||
birthdays.set_help(_("Include birthdays in the calendar"))
|
birthdays.set_help(_("Include birthdays in the calendar"))
|
||||||
menu.add_option(category_name, "birthdays", birthdays)
|
add_option("birthdays", birthdays)
|
||||||
|
|
||||||
anniversaries = BooleanOption(_("Include anniversaries"), True)
|
anniversaries = BooleanOption(_("Include anniversaries"), True)
|
||||||
anniversaries.set_help(_("Include anniversaries in the calendar"))
|
anniversaries.set_help(_("Include anniversaries in the calendar"))
|
||||||
menu.add_option(category_name, "anniversaries", anniversaries)
|
add_option("anniversaries", anniversaries)
|
||||||
|
|
||||||
category_name = _("Text Options")
|
category_name = _("Text Options")
|
||||||
|
add_option = partial(menu.add_option, _("Text Options"))
|
||||||
|
|
||||||
text1 = StringOption(_("Text Area 1"), _("My Calendar"))
|
text1 = StringOption(_("Text Area 1"), _("My Calendar"))
|
||||||
text1.set_help(_("First line of text at bottom of calendar"))
|
text1.set_help(_("First line of text at bottom of calendar"))
|
||||||
menu.add_option(category_name, "text1", text1)
|
add_option("text1", text1)
|
||||||
|
|
||||||
text2 = StringOption(_("Text Area 2"), _("Produced with Gramps"))
|
text2 = StringOption(_("Text Area 2"), _("Produced with Gramps"))
|
||||||
text2.set_help(_("Second line of text at bottom of calendar"))
|
text2.set_help(_("Second line of text at bottom of calendar"))
|
||||||
menu.add_option(category_name, "text2", text2)
|
add_option("text2", text2)
|
||||||
|
|
||||||
text3 = StringOption(_("Text Area 3"), "http://gramps-project.org/",)
|
text3 = StringOption(_("Text Area 3"), "http://gramps-project.org/",)
|
||||||
text3.set_help(_("Third line of text at bottom of calendar"))
|
text3.set_help(_("Third line of text at bottom of calendar"))
|
||||||
menu.add_option(category_name, "text3", text3)
|
add_option("text3", text3)
|
||||||
|
|
||||||
def __update_filters(self):
|
def __update_filters(self):
|
||||||
"""
|
"""
|
||||||
|
Loading…
x
Reference in New Issue
Block a user