Refactoring the report system: reports no longer require dbstate.

svn: r9924
This commit is contained in:
Brian Matherly
2008-01-24 12:50:33 +00:00
parent c43c200c5d
commit 77af7ed092
25 changed files with 126 additions and 104 deletions

View File

@@ -293,13 +293,13 @@ class TimeLine(Report):
#------------------------------------------------------------------------
class TimeLineOptions(MenuReportOptions):
def __init__(self,name,dbstate=None):
def __init__(self, name, dbase):
self.__pid = None
self.__filter = None
self.__dbstate = dbstate
MenuReportOptions.__init__(self,name,dbstate)
self.__db = dbase
MenuReportOptions.__init__(self, name, dbase)
def add_menu_options(self,menu,dbstate):
def add_menu_options(self, menu):
category_name = _("Report Options")
self.__filter = FilterOption(_("Filter"), 0)
@@ -317,7 +317,7 @@ class TimeLineOptions(MenuReportOptions):
sortby = EnumeratedListOption(_('Sort by'), 0 )
idx = 0
for item in _get_sort_functions(Sort.Sort(dbstate.get_database())):
for item in _get_sort_functions(Sort.Sort(self.__db)):
sortby.add_item(idx,item[0])
idx += 1
sortby.set_help( _("Sorting method to use"))
@@ -327,9 +327,8 @@ class TimeLineOptions(MenuReportOptions):
"""
Update the filter list based on the selected person
"""
_db = self.__dbstate.get_database()
gid = self.__pid.get_value()
person = _db.get_person_from_gramps_id(gid)
person = self.__db.get_person_from_gramps_id(gid)
filter_list = ReportUtils.get_person_filters(person, False)
self.__filter.set_filters(filter_list)