Example #1
0
    def _setup_fields(self):
        self.callno = MonitoredEntry(self.top.get_object("call_number"),
                                     self.source_ref.set_call_number,
                                     self.source_ref.get_call_number,
                                     self.db.readonly)

        self.gid = MonitoredEntry(self.top.get_object('gid'),
                                  self.source.set_gramps_id,
                                  self.source.get_gramps_id, self.db.readonly)

        self.privacy = PrivacyButton(self.top.get_object("private"),
                                     self.source, self.db.readonly)

        self.ref_privacy = PrivacyButton(self.top.get_object("private_ref"),
                                         self.source_ref, self.db.readonly)

        self.title = MonitoredEntry(self.top.get_object('repo_name'),
                                    self.source.set_name, self.source.get_name,
                                    self.db.readonly)

        self.type_selector = MonitoredDataType(
            self.top.get_object("media_type"),
            self.source_ref.set_media_type,
            self.source_ref.get_media_type,
            self.db.readonly,
            self.db.get_source_media_types(),
        )

        self.media_type_selector = MonitoredDataType(
            self.top.get_object("repo_type"),
            self.source.set_type,
            self.source.get_type,
            self.db.readonly,
            self.db.get_repository_types(),
        )
Example #2
0
    def _setup_fields(self):
        """Get control widgets and attach them to Note's attributes."""
        self.type_selector = MonitoredDataType(
            self.top.get_object('type'),
            self.obj.set_type,
            self.obj.get_type,
            self.db.readonly,
            custom_values=self.get_custom_notetypes(),
            ignore_values=self.obj.get_type().get_ignore_list(self.extratype))

        self.check = MonitoredCheckbox(
            self.obj,
            self.top.get_object('format'),
            self.obj.set_format,
            self.obj.get_format,
            readonly = self.db.readonly)
        
        self.gid = MonitoredEntry(
            self.top.get_object('id'),
            self.obj.set_gramps_id,
            self.obj.get_gramps_id,
            self.db.readonly)
            
        self.tags = MonitoredTagList(
            self.top.get_object("tag_label"), 
            self.top.get_object("tag_button"), 
            self.obj.set_tag_list, 
            self.obj.get_tag_list,
            self.db,
            self.uistate, self.track,
            self.db.readonly)

        self.priv = PrivacyButton(
            self.top.get_object("private"),
            self.obj, self.db.readonly)
Example #3
0
    def _setup_fields(self):

        # place, select_place, add_del_place

        self.place_field = PlaceEntry(self.dbstate, self.uistate, self.track,
                                      self.top.get_object("place"),
                                      self.obj.set_place_handle,
                                      self.obj.get_place_handle,
                                      self.add_del_btn, self.share_btn)

        self.descr_field = MonitoredEntry(
            self.top.get_object("event_description"), self.obj.set_description,
            self.obj.get_description, self.db.readonly)

        self.gid = MonitoredEntry(self.top.get_object("gid"),
                                  self.obj.set_gramps_id,
                                  self.obj.get_gramps_id, self.db.readonly)

        self.priv = PrivacyButton(self.top.get_object("private"), self.obj,
                                  self.db.readonly)

        self.event_menu = MonitoredDataType(
            self.top.get_object("personal_events"),
            self.obj.set_type,
            self.obj.get_type,
            custom_values=self.get_custom_events())

        self.date_field = MonitoredDate(self.top.get_object("date_entry"),
                                        self.top.get_object("date_stat"),
                                        self.obj.get_date_object(),
                                        self.uistate, self.track,
                                        self.db.readonly)
Example #4
0
    def _setup_fields(self):
        self.author = MonitoredEntry(self.glade.get_object("author"),
                                     self.obj.set_author, self.obj.get_author,
                                     self.db.readonly)

        self.pubinfo = MonitoredEntry(self.glade.get_object("pubinfo"),
                                      self.obj.set_publication_info,
                                      self.obj.get_publication_info,
                                      self.db.readonly)

        self.gid = MonitoredEntry(self.glade.get_object("gid"),
                                  self.obj.set_gramps_id,
                                  self.obj.get_gramps_id, self.db.readonly)

        self.priv = PrivacyButton(self.glade.get_object("private"), self.obj,
                                  self.db.readonly)

        self.abbrev = MonitoredEntry(self.glade.get_object("abbrev"),
                                     self.obj.set_abbreviation,
                                     self.obj.get_abbreviation,
                                     self.db.readonly)

        self.title = MonitoredEntry(self.glade.get_object("source_title"),
                                    self.obj.set_title, self.obj.get_title,
                                    self.db.readonly)
Example #5
0
    def _setup_fields(self):

        self.ref_privacy = PrivacyButton(self.top.get_object('eer_ref_priv'),
                                         self.source_ref, self.db.readonly)

        self.descr_field = MonitoredEntry(
            self.top.get_object("eer_description"),
            self.source.set_description, self.source.get_description,
            self.db.readonly)

        self.gid = MonitoredEntry(self.top.get_object("gid"),
                                  self.source.set_gramps_id,
                                  self.source.get_gramps_id, self.db.readonly)

        self.place_field = PlaceEntry(self.dbstate, self.uistate, self.track,
                                      self.top.get_object("eer_place"),
                                      self.source.set_place_handle,
                                      self.source.get_place_handle,
                                      self.share_btn, self.add_del_btn)

        self.ev_privacy = PrivacyButton(self.top.get_object("eer_ev_priv"),
                                        self.source, self.db.readonly)

        self.role_selector = MonitoredDataType(
            self.top.get_object('eer_role_combo'), self.source_ref.set_role,
            self.source_ref.get_role, self.db.readonly,
            self.db.get_event_roles())

        self.event_menu = MonitoredDataType(
            self.top.get_object("eer_type_combo"),
            self.source.set_type,
            self.source.get_type,
            self.db.readonly,
            custom_values=self.get_custom_events())

        self.date_check = MonitoredDate(self.top.get_object("eer_date_entry"),
                                        self.top.get_object("eer_date_stat"),
                                        self.source.get_date_object(),
                                        self.uistate, self.track,
                                        self.db.readonly)
Example #6
0
    def _setup_fields(self):
        self.value_field = MonitoredEntry(self.top.get_object("attr_value"),
                                          self.obj.set_value,
                                          self.obj.get_value, self.db.readonly)

        self.priv = PrivacyButton(self.top.get_object("private"), self.obj,
                                  self.db.readonly)

        self.type_selector = MonitoredDataType(
            self.top.get_object("attr_menu"),
            self.obj.set_type,
            self.obj.get_type,
            self.db.readonly,
            custom_values=self.alist)
Example #7
0
    def _setup_fields(self):
        self.frel = MonitoredDataType(self.top.get_object('frel'),
                                      self.obj.set_father_relation,
                                      self.obj.get_father_relation,
                                      self.db.readonly,
                                      self.db.get_child_reference_types())

        self.mrel = MonitoredDataType(self.top.get_object('mrel'),
                                      self.obj.set_mother_relation,
                                      self.obj.get_mother_relation,
                                      self.db.readonly,
                                      self.db.get_child_reference_types())

        self.priv = PrivacyButton(self.top.get_object("private"), self.obj,
                                  self.db.readonly)
Example #8
0
    def _setup_fields(self):
        self.des = MonitoredEntry(self.top.get_object("url_des"),
                                  self.obj.set_description,
                                  self.obj.get_description, self.db.readonly)

        self.addr = MonitoredEntry(self.top.get_object("url_addr"),
                                   self.obj.set_path, self.obj.get_path,
                                   self.db.readonly)

        self.priv = PrivacyButton(self.top.get_object("priv"), self.obj,
                                  self.db.readonly)

        self.type_sel = MonitoredDataType(self.top.get_object("type"),
                                          self.obj.set_type, self.obj.get_type,
                                          self.db.readonly)
Example #9
0
    def _setup_fields(self):

        if self.obj.ref:
            p = self.dbstate.db.get_person_from_handle(self.obj.ref)
            self.person_label.set_text(name_displayer.display(p))
        
        self.street = MonitoredEntry(
            self.top.get_object("relationship"),
            self.obj.set_relation,
            self.obj.get_relation,
            self.db.readonly)

        self.priv = PrivacyButton(
            self.top.get_object("private"),
            self.obj,
            self.db.readonly)
Example #10
0
    def _setup_fields(self):

        self.parents_label = self.top.get_object('parents_label')
        self.parents = self.top.get_object('parents')
        self.parents_select = self.top.get_object('parents_select')

        self.priv = PrivacyButton(self.top.get_object("private"), self.obj,
                                  self.db.readonly)

        self.date_field = MonitoredDate(self.top.get_object("date_entry"),
                                        self.top.get_object("date_stat"),
                                        self.obj.get_date_object(),
                                        self.uistate, self.track,
                                        self.db.readonly)

        self.place_field = PlaceEntry(self.dbstate, self.uistate, self.track,
                                      self.top.get_object("place"),
                                      self.obj.set_place_handle,
                                      self.obj.get_place_handle,
                                      self.add_del_btn, self.share_btn)

        self.type_menu = MonitoredMenu(self.top.get_object('type'),
                                       self.obj.set_type,
                                       self.obj.get_type,
                                       [(item[1], item[0])
                                        for item in gen.lib.LdsOrd._TYPE_MAP
                                        if item[0] in self._get_types()],
                                       self.db.readonly,
                                       changed=self.ord_type_changed)
        self.track_ref_for_deletion('type_menu')

        self.temple_menu = MonitoredStrMenu(self.top.get_object('temple'),
                                            self.obj.set_temple,
                                            self.obj.get_temple,
                                            LdsUtils.TEMPLES.name_code_data(),
                                            self.db.readonly)
        self.track_ref_for_deletion('temple_menu')

        self.status_menu = MonitoredMenu(
            self.top.get_object('status'), self.obj.set_status,
            self.obj.get_status,
            [(item[1], item[0]) for item in gen.lib.LdsOrd._STATUS_MAP
             if item[0] in _DATA_MAP[self.obj.get_type()]], self.db.readonly)
        self.track_ref_for_deletion('status_menu')

        self.ord_type_changed()
        self.update_parent_label()
Example #11
0
    def _setup_fields(self):

        self.name = MonitoredEntry(self.glade.get_object("repository_name"),
                                   self.obj.set_name, self.obj.get_name,
                                   self.db.readonly)

        self.type = MonitoredDataType(
            self.glade.get_object("repository_type"),
            self.obj.set_type,
            self.obj.get_type,
            self.db.readonly,
            self.db.get_repository_types(),
        )

        self.call_number = MonitoredEntry(self.glade.get_object('gid'),
                                          self.obj.set_gramps_id,
                                          self.obj.get_gramps_id,
                                          self.db.readonly)

        self.privacy = PrivacyButton(self.glade.get_object("private"),
                                     self.obj, self.db.readonly)
Example #12
0
    def _setup_fields(self):
        """
        Get control widgets and attach them to Citation's attributes.
        """
        self.source_field = SourceEntry(self.dbstate,
                                        self.uistate,
                                        self.track,
                                        self.glade.get_object("source"),
                                        self.obj.set_reference_handle,
                                        self.obj.get_reference_handle,
                                        self.add_del_btn,
                                        self.share_btn,
                                        callback=self.source_changed)

        self.date = MonitoredDate(self.glade.get_object("date_entry"),
                                  self.glade.get_object("date_stat"),
                                  self.obj.get_date_object(), self.uistate,
                                  self.track, self.db.readonly)

        self.gid = MonitoredEntry(self.glade.get_object('gid'),
                                  self.obj.set_gramps_id,
                                  self.obj.get_gramps_id, self.db.readonly)

        self.volume = MonitoredEntry(self.glade.get_object("volume"),
                                     self.obj.set_page, self.obj.get_page,
                                     self.db.readonly)

        self.type_mon = MonitoredMenu(
            self.glade.get_object('confidence'), self.obj.set_confidence_level,
            self.obj.get_confidence_level,
            [(_('Very Low'), gen.lib.Citation.CONF_VERY_LOW),
             (_('Low'), gen.lib.Citation.CONF_LOW),
             (_('Normal'), gen.lib.Citation.CONF_NORMAL),
             (_('High'), gen.lib.Citation.CONF_HIGH),
             (_('Very High'), gen.lib.Citation.CONF_VERY_HIGH)],
            self.db.readonly)

        self.ref_privacy = PrivacyButton(self.glade.get_object('privacy'),
                                         self.obj, self.db.readonly)
Example #13
0
    def _setup_fields(self):
        self.addr_start = MonitoredDate(
            self.top.get_object("date_entry"),
            self.top.get_object("date_stat"), 
            self.obj.get_date_object(),
            self.uistate,
            self.track,
            self.db.readonly)
            
        self.street = MonitoredEntry(
            self.top.get_object("street"), self.obj.set_street,
            self.obj.get_street, self.db.readonly)

        self.city = MonitoredEntry(
            self.top.get_object("city"), self.obj.set_city,
            self.obj.get_city, self.db.readonly)

        self.locality = MonitoredEntry(
            self.top.get_object("locality"), self.obj.set_locality,
            self.obj.get_locality, self.db.readonly)

        self.state = MonitoredEntry(
            self.top.get_object("state"), self.obj.set_state,
            self.obj.get_state, self.db.readonly)

        self.country = MonitoredEntry(
            self.top.get_object("country"), self.obj.set_country,
            self.obj.get_country, self.db.readonly)

        self.postal = MonitoredEntry(
            self.top.get_object("postal"), self.obj.set_postal_code,
            self.obj.get_postal_code, self.db.readonly)

        self.phone = MonitoredEntry(
            self.top.get_object("phone"), self.obj.set_phone,
            self.obj.get_phone, self.db.readonly)
            
        self.priv = PrivacyButton(self.top.get_object("private"),
                                  self.obj, self.db.readonly)
Example #14
0
    def _setup_fields(self):

        self.private = PrivacyButton(self.top.get_object('private'), self.obj,
                                     self.db.readonly)

        self.gid = MonitoredEntry(self.top.get_object('gid'),
                                  self.obj.set_gramps_id,
                                  self.obj.get_gramps_id, self.db.readonly)

        self.tags = MonitoredTagList(self.top.get_object("tag_label"),
                                     self.top.get_object("tag_button"),
                                     self.obj.set_tag_list,
                                     self.obj.get_tag_list, self.db,
                                     self.uistate, self.track,
                                     self.db.readonly)

        self.data_type = MonitoredDataType(
            self.top.get_object('marriage_type'),
            self.obj.set_relationship,
            self.obj.get_relationship,
            self.db.readonly,
            self.db.get_family_relation_types(),
        )
Example #15
0
    def _setup_fields(self):
        self.group_as = MonitoredEntry(self.top.get_object("group_as"),
                                       self.obj.set_group_as,
                                       self.obj.get_group_as, self.db.readonly)

        if not self.original_group_set:
            if self.global_group_set:
                self.group_as.force_value(self.global_group_as)
            else:
                self.group_as.force_value(
                    self.obj.get_primary_surname().get_surname())

        format_list = [
            (name, number)
            for (number, name, fmt_str,
                 act) in name_displayer.get_name_format(also_default=True)
        ]

        self.sort_as = MonitoredMenu(self.top.get_object('sort_as'),
                                     self.obj.set_sort_as,
                                     self.obj.get_sort_as, format_list,
                                     self.db.readonly)

        self.display_as = MonitoredMenu(self.top.get_object('display_as'),
                                        self.obj.set_display_as,
                                        self.obj.get_display_as, format_list,
                                        self.db.readonly)

        self.given_field = MonitoredEntry(self.top.get_object("given_name"),
                                          self.obj.set_first_name,
                                          self.obj.get_first_name,
                                          self.db.readonly)

        self.call_field = MonitoredEntry(self.top.get_object("call"),
                                         self.obj.set_call_name,
                                         self.obj.get_call_name,
                                         self.db.readonly)
        self.call_field.connect("validate", self._validate_call)
        #force validation now with initial entry
        self.call_field.obj.validate(force=True)

        self.title_field = MonitoredEntry(self.top.get_object("title_field"),
                                          self.obj.set_title,
                                          self.obj.get_title, self.db.readonly)

        self.suffix_field = MonitoredEntry(self.top.get_object("suffix"),
                                           self.obj.set_suffix,
                                           self.obj.get_suffix,
                                           self.db.readonly)

        self.nick = MonitoredEntry(self.top.get_object("nickname"),
                                   self.obj.set_nick_name,
                                   self.obj.get_nick_name, self.db.readonly)

        self.famnick = MonitoredEntry(self.top.get_object("familynickname"),
                                      self.obj.set_family_nick_name,
                                      self.obj.get_family_nick_name,
                                      self.db.readonly)

        #self.surname_field = MonitoredEntry(
        #    self.top.get_object("alt_surname"),
        #    self.obj.set_surname,
        #    self.obj.get_surname,
        #    self.db.readonly,
        #    autolist=self.db.get_surname_list() if not self.db.readonly else [],
        #    changed=self.update_group_as)

        self.date = MonitoredDate(self.top.get_object("date_entry"),
                                  self.top.get_object("date_stat"),
                                  self.obj.get_date_object(), self.uistate,
                                  self.track, self.db.readonly)

        self.obj_combo = MonitoredDataType(
            self.top.get_object("ntype"),
            self.obj.set_type,
            self.obj.get_type,
            self.db.readonly,
            self.db.get_name_types(),
        )

        self.privacy = PrivacyButton(self.top.get_object("priv"), self.obj,
                                     self.db.readonly)
Example #16
0
    def _setup_fields(self):
        mloc = self.obj.get_main_location()
        
        self.title = MonitoredEntry(self.top.get_object("place_title"),
                                    self.obj.set_title, self.obj.get_title,
                                    self.db.readonly)
        
        self.street = MonitoredEntry(self.top.get_object("street"),
                                     mloc.set_street, mloc.get_street, 
                                     self.db.readonly)

        self.locality = MonitoredEntry(self.top.get_object("locality"),
                                     mloc.set_locality, mloc.get_locality, 
                                     self.db.readonly)

        self.city = MonitoredEntry(self.top.get_object("city"),
                                   mloc.set_city, mloc.get_city, 
                                   self.db.readonly)
        
        self.gid = MonitoredEntry(self.top.get_object("gid"),
                                  self.obj.set_gramps_id, 
                                  self.obj.get_gramps_id, self.db.readonly)
        
        self.privacy = PrivacyButton(self.top.get_object("private"), self.obj, 
                                     self.db.readonly)

        self.parish = MonitoredEntry(self.top.get_object("parish"),
                                     mloc.set_parish, mloc.get_parish, 
                                     self.db.readonly)
        
        self.county = MonitoredEntry(self.top.get_object("county"),
                                     mloc.set_county, mloc.get_county, 
                                     self.db.readonly)
        
        self.state = MonitoredEntry(self.top.get_object("state"),
                                    mloc.set_state, mloc.get_state, 
                                    self.db.readonly)

        self.phone = MonitoredEntry(self.top.get_object("phone"),
                                    mloc.set_phone, mloc.get_phone, 
                                    self.db.readonly)
        
        self.postal = MonitoredEntry(self.top.get_object("postal"),
                                     mloc.set_postal_code, 
                                     mloc.get_postal_code, self.db.readonly)

        self.country = MonitoredEntry(self.top.get_object("country"),
                                      mloc.set_country, mloc.get_country, 
                                      self.db.readonly)

        self.longitude = MonitoredEntry(
            self.top.get_object("lon_entry"),
            self.obj.set_longitude, self.obj.get_longitude,
            self.db.readonly)
        self.longitude.connect("validate", self._validate_coordinate, "lon")
        #force validation now with initial entry
        self.top.get_object("lon_entry").validate(force=True)

        self.latitude = MonitoredEntry(
            self.top.get_object("lat_entry"),
            self.obj.set_latitude, self.obj.get_latitude,
            self.db.readonly)
        self.latitude.connect("validate", self._validate_coordinate, "lat")
        #force validation now with initial entry
        self.top.get_object("lat_entry").validate(force=True)
Example #17
0
    def _setup_fields(self):

        ebox_shared = self.top.get_object('eventbox')
        ebox_shared.connect('button-press-event', self.button_press_event)

        if not self.dbstate.db.readonly:
            self.button_press_coords = (0, 0)
            ebox_ref = self.top.get_object('eventbox1')
            ebox_ref.connect('button-press-event', self.button_press_event_ref)
            ebox_ref.connect('button-release-event',
                             self.button_release_event_ref)
            ebox_ref.connect('motion-notify-event',
                             self.motion_notify_event_ref)
            ebox_ref.add_events(gtk.gdk.BUTTON_PRESS_MASK)
            ebox_ref.add_events(gtk.gdk.BUTTON_RELEASE_MASK)

        self.pixmap = self.top.get_object("pixmap")
        self.mimetext = self.top.get_object("type")
        self.track_ref_for_deletion("mimetext")

        coord = self.source_ref.get_rectangle()
        #upgrade path: set invalid (from eg old db) to none

        if coord is not None and coord in ((None, ) * 4, (0, 0, 100, 100),
                                           (coord[0], coord[1]) * 2):
            coord = None

        self.rectangle = coord
        self.subpixmap = self.top.get_object("subpixmap")
        self.track_ref_for_deletion("subpixmap")

        self.setup_filepath()
        self.determine_mime()
        self.draw_preview()

        corners = ["corner1_x", "corner1_y", "corner2_x", "corner2_y"]

        if coord and isinstance(coord, tuple):
            for index, corner in enumerate(corners):
                self.top.get_object(corner).set_value(coord[index])
        else:
            for corner, value in zip(corners, [0, 0, 100, 100]):
                self.top.get_object(corner).set_value(value)

        if self.dbstate.db.readonly:
            for corner in corners:
                self.top.get_object(corner).set_sensitive(False)

        self.corner1_x_spinbutton = MonitoredSpinButton(
            self.top.get_object("corner1_x"), self.set_corner1_x,
            self.get_corner1_x, self.db.readonly)
        self.track_ref_for_deletion("corner1_x_spinbutton")

        self.corner1_y_spinbutton = MonitoredSpinButton(
            self.top.get_object("corner1_y"), self.set_corner1_y,
            self.get_corner1_y, self.db.readonly)
        self.track_ref_for_deletion("corner1_y_spinbutton")

        self.corner2_x_spinbutton = MonitoredSpinButton(
            self.top.get_object("corner2_x"), self.set_corner2_x,
            self.get_corner2_x, self.db.readonly)
        self.track_ref_for_deletion("corner2_x_spinbutton")

        self.corner2_y_spinbutton = MonitoredSpinButton(
            self.top.get_object("corner2_y"), self.set_corner2_y,
            self.get_corner2_y, self.db.readonly)
        self.track_ref_for_deletion("corner2_y_spinbutton")

        self.descr_window = MonitoredEntry(self.top.get_object("description"),
                                           self.source.set_description,
                                           self.source.get_description,
                                           self.db.readonly)

        self.ref_privacy = PrivacyButton(self.top.get_object("private"),
                                         self.source_ref, self.db.readonly)

        self.gid = MonitoredEntry(self.top.get_object("gid"),
                                  self.source.set_gramps_id,
                                  self.source.get_gramps_id, self.db.readonly)

        self.privacy = PrivacyButton(self.top.get_object("privacy"),
                                     self.source, self.db.readonly)

        self.path_obj = MonitoredEntry(self.top.get_object("path"),
                                       self.source.set_path,
                                       self.source.get_path, self.db.readonly)

        self.date_field = MonitoredDate(self.top.get_object("date_entry"),
                                        self.top.get_object("date_edit"),
                                        self.source.get_date_object(),
                                        self.uistate, self.track,
                                        self.db.readonly)

        self.tags = MonitoredTagList(self.top.get_object("tag_label"),
                                     self.top.get_object("tag_button"),
                                     self.source.set_tag_list,
                                     self.source.get_tag_list, self.db,
                                     self.uistate, self.track,
                                     self.db.readonly)