Exemple #1
0
class Container(gtk.ScrolledWindow):
    """container of ManagerList & managers"""
    def __init__(self):
        """init"""
        gtk.ScrolledWindow.__init__(self)
        self._set_style()
        self.addon_manager = AddonManager()
    def _set_style(self):
        #sets style of ScrolledWindow
        self.set_shadow_type(gtk.SHADOW_IN)
        self.set_policy(gtk.POLICY_NEVER,
                        gtk.POLICY_AUTOMATIC)
    def _remove_child(self, child):
        """removes widget"""
        self.get_child().remove(child)
        del child
    def _add_child(self, child):
        """add widget

        Arguments:
        - `child`: widget to add
        """
        if self.get_child():
            if type(child) == ManagerList:
                self._remove_child(self.manager)
            else:
                self._remove_child(self.manlist)
        self.add_with_viewport(child)
        child.show_all()
    def set_mode(self, mode):
        """sets view mode
        
        Arguments:
        - `mode`: 'list' | 'manager'
        """
        if mode == "list":
            self.manlist = ManagerList()
            self.manlist.show_list(self.addon_manager.list_addons())
            self.manlist.listen_on_item(self._add_manager)
            self._add_child(self.manlist)
            self.parent.back_btn.hide()
        elif mode == "manager":
            self.parent.back_btn.show()
            self._add_child(self.manager)
    def _add_manager(self, uuid):
        #add manager
        self.manager = self.addon_manager.create_widget(uuid)
        self.set_mode("manager")
Exemple #2
0
 def __init__(self):
     """init"""
     gtk.ScrolledWindow.__init__(self)
     self._set_style()
     self.addon_manager = AddonManager()