def build_options(self): from gramps.gen.plug.menu import EnumeratedListOption # Add types: type_list = EnumeratedListOption(_("View Type"), self.gui.data[0]) for item in [("Person", _("Person")), ("Event", _("Event")), ("Family", _("Family")), ("Media", _("Media")), ("Note", _("Note")), ("Place", _("Place")), ("Repository", _("Repository")), ("Source", _("Source")), ("Citation", _("Citation")), ]: type_list.add_item(item[0], item[1]) # Add particular lists: qv_list = get_quick_report_list(CATEGORY_QR_PERSON) if self.gui.data[1] is None: self.gui.data[1] = qv_list[0].id list_option = EnumeratedListOption(_("Quick Views"), self.gui.data[1]) for pdata in qv_list: list_option.add_item(pdata.id, pdata.name) self.add_option(type_list) self.add_option(list_option) type_widget = self.get_option_widget(_("View Type")) type_widget.value_changed = self.rebuild_option_list self.rebuild_option_list() # call for initial setting
def build_options(self): from gramps.gen.plug.menu import EnumeratedListOption # Add types: type_list = EnumeratedListOption(_("View Type"), self.gui.data[0]) for item in [ ("Person", _("Person")), ("Event", _("Event")), ("Family", _("Family")), ("Media", _("Media")), ("Note", _("Note")), ("Place", _("Place")), ("Repository", _("Repository")), ("Source", _("Source")), ("Citation", _("Citation")), ]: type_list.add_item(item[0], item[1]) # Add particular lists: qv_list = get_quick_report_list(CATEGORY_QR_PERSON) if self.gui.data[1] is None: self.gui.data[1] = qv_list[0].id list_option = EnumeratedListOption(_("Quick Views"), self.gui.data[1]) for pdata in qv_list: list_option.add_item(pdata.id, pdata.name) self.add_option(type_list) self.add_option(list_option) type_widget = self.get_option_widget(_("View Type")) type_widget.value_changed = self.rebuild_option_list self.rebuild_option_list() # call for initial setting
def rebuild_option_list(self): code_map = {"Person": CATEGORY_QR_PERSON, "Family": CATEGORY_QR_FAMILY, "Event": CATEGORY_QR_EVENT, "Source": CATEGORY_QR_SOURCE, "Citation": CATEGORY_QR_CITATION, "Source or Citation": CATEGORY_QR_SOURCE_OR_CITATION, "Place": CATEGORY_QR_PLACE, "Media": CATEGORY_QR_MEDIA, "Note": CATEGORY_QR_NOTE, "Repository": CATEGORY_QR_REPOSITORY} qv_option = self.get_option(_("View Type")) list_option = self.get_option(_("Quick Views")) list_option.clear() qv_list = get_quick_report_list(code_map[qv_option.get_value()]) for pdata in qv_list: list_option.add_item(pdata.id, pdata.name)
def rebuild_option_list(self): code_map = { "Person": CATEGORY_QR_PERSON, "Family": CATEGORY_QR_FAMILY, "Event": CATEGORY_QR_EVENT, "Source": CATEGORY_QR_SOURCE, "Citation": CATEGORY_QR_CITATION, "Source or Citation": CATEGORY_QR_SOURCE_OR_CITATION, "Place": CATEGORY_QR_PLACE, "Media": CATEGORY_QR_MEDIA, "Note": CATEGORY_QR_NOTE, "Repository": CATEGORY_QR_REPOSITORY } qv_option = self.get_option(_("View Type")) list_option = self.get_option(_("Quick Views")) list_option.clear() qv_list = get_quick_report_list(code_map[qv_option.get_value()]) for pdata in qv_list: list_option.add_item(pdata.id, pdata.name)