Esempio n. 1
0
 def __init__(self, view, parent=None):
     super(TreeMenuHandler, self).__init__(view, parent=parent)
     self.__expandOnLoadAction = Action(selectionBased=False,
                                        text="Keep All Expanded",
                                        checkable=True,
                                        runFn=self.__setExpandOnLoad)
     self._staticActions = [
         Action(selectionBased=True,
                text="Toggle Expanded",
                runFn=self.view._toggleExpanded),
         Action(selectionBased=True,
                text="Expand",
                shortcut=QtGui.QKeySequence(QtCore.Qt.Key_Plus),
                isValidFn=self.__canExpand,
                runFn=self.expandSelected),
         Action(selectionBased=True,
                text="Collapse",
                shortcut=QtGui.QKeySequence(QtCore.Qt.Key_Minus),
                isValidFn=self.__canCollapse,
                runFn=self.collapseSelected),
         Action(selectionBased=True,
                text="Expand all",
                runFn=self.view.expandAll),
         Action(selectionBased=True,
                text="Collapse all",
                runFn=self.view.collapseAll), self.__expandOnLoadAction
     ]
Esempio n. 2
0
    def __init__(self,
                 text=None,
                 icon=None,
                 tip=None,
                 shortcut=None,
                 shortcutContext=QtCore.Qt.WidgetShortcut,
                 menu=None,
                 checkable=False,
                 separator=False,
                 selectionBased=False,
                 signal="triggered()",
                 enabled=True,
                 isValidFn=None,
                 runFn=None,
                 parent=None):

        super(Action, self).__init__(parent)

        if text:
            self.setText(text)

        if icon:
            self.setIcon(icon)

        if tip:
            self.setToolTip(tip)
            self.setStatusTip(tip)

        if shortcut:
            if isinstance(shortcut, list):
                shortcuts = [QtGui.QKeySequence(key) for key in shortcut]
                self.setShortcuts(shortcuts)
            else:
                self.setShortcut(QtGui.QKeySequence(shortcut))
            self.setShortcutContext(shortcutContext)

        if menu:
            self.setMenu(menu)

        self.setCheckable(checkable)
        self.setEnabled(enabled)
        self.setSeparator(separator)

        self.__selectionBased = selectionBased
        self.__isValidFn = isValidFn
        self.__runFn = runFn

        self.connect(self, QtCore.SIGNAL(signal), self.run)

        self.__subActions = []