Пример #1
0
    def modify_statusbar(self, dbstate, active=None):
        view = self.viewmanager.active_page
        if not isinstance(view, NavigationView):
            return

        nav_type = view.navigation_type()
        active_handle = self.get_active(nav_type, view.navigation_group())

        self.status.pop(self.status_id)

        name, obj = navigation_label(dbstate.db, nav_type, active_handle)

        # Append relationship to default person if funtionality is enabled.
        if nav_type == 'Person' and active_handle \
                                and config.get('interface.statusbar') > 1:
            if active_handle != dbstate.db.get_default_handle():
                msg = self.display_relationship(dbstate, active_handle)
                if msg:
                    name = '%s (%s)' % (name, msg.strip())

        if not name:
            name = self.NAV2MES[nav_type]

        self.status.push(self.status_id, name)
        process_pending_events()
Пример #2
0
    def update_mru_menu(self, items):
        """
        Builds the UI and action group for the MRU list.
        """
        self.mru_disable()
        nav_type = self.navigation_type()
        hobj = self.get_history()
        menu_len = min(len(items) - 1, MRU_SIZE)
        
        entry = '<menuitem action="%s%02d"/>'
        data = [entry % (nav_type, index) for index in range(0, menu_len)]
        self.mru_ui = "".join(MRU_TOP) + "".join(data) + "".join(MRU_BTM)
        
        mitems = items[-MRU_SIZE - 1:-1] # Ignore current handle
        mitems.reverse()
        data = []
        for index, handle in enumerate(mitems):
            name, obj = navigation_label(self.dbstate.db, nav_type, handle)
            data.append(('%s%02d'%(nav_type, index), None,  name,
                         "%s%d" % (mod_key(), index), None,
                         make_callback(hobj.push, handle)))
 
        self.mru_action = gtk.ActionGroup(nav_type)
        self.mru_action.add_actions(data)
        self.mru_enable()
Пример #3
0
 def display_backlinks(self, active_handle):
     """
     Display the back references for an object.
     """
     for classname, handle in self.dbstate.db.find_backlink_handles(active_handle):
         for classname, handle in self.dbstate.db.find_backlink_handles(handle):
             name = navigation_label(self.dbstate.db, classname, handle)[0]
             self.model.add((_(classname), name, handle, classname))
         self.set_has_data(self.model.count > 0)
Пример #4
0
 def display_backlinks(self, active_handle):
     """
     Display the back references for an object.
     """
     for classname, handle in self.dbstate.db.find_backlink_handles(active_handle):
         for classname, handle in self.dbstate.db.find_backlink_handles(handle):
             name = navigation_label(self.dbstate.db, classname, handle)[0]
             self.model.add((_(classname), name, handle, classname))
         self.set_has_data(self.model.count > 0)