Ejemplo n.º 1
0
    def __init__(self, name, area, parent):
        QtGui.QToolBar.__init__(self, parent)
        assert isinstance(parent, QtGui.QMainWindow)
        assert area in self.DOCK_AREA_TO_TB
        self._area = area
        self.setObjectName(text2objectname(name, prefix="ToolBar"))
        self.setWindowTitle(name)

        #Button Style
        #self.setToolButtonStyle(QtCore.Qt.ToolButtonTextUnderIcon)

        self.setFloatable(False)
        self.setMovable(False)
        self.setSizePolicy(
            QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed,
                              QtGui.QSizePolicy.MinimumExpanding))
        self.setIconSize(QtCore.QSize(16, 16))

        #Restore action
        self.restoreAction = QtGui.QAction(self)
        self.restoreAction.setIcon(resources.getIcon("image-stack"))
        self.restoreAction.triggered.connect(self.hide)
        self.addAction(self.restoreAction)

        self.visibilityChanged.connect(self.on_visibilityChanged)
Ejemplo n.º 2
0
 def setup(self):
     logging.root.addHandler(self.handler)
     self.debug_levels_menu = QtGui.QMenu()
     self.debug_levels_action_group = QtGui.QActionGroup(self)
     for level, value in filter(lambda (key, value): type(key) == str,
                                logging._levelNames.iteritems()):
         action = QtGui.QAction(level.title(), self)
         action.setData({'name': level, 'level': value})
         action.setCheckable(True)
         self.debug_levels_action_group.addAction(action)
         self.debug_levels_menu.addAction(action)
Ejemplo n.º 3
0
 def configToolbar(self):
     self.toolbarMenu = QtGui.QMenu("Menu", self)
     action = QtGui.QAction("New Command", self)
     action.triggered.connect(self.on_actionCommand_triggered)
     self.toolbarMenu.addAction(action)
     action = QtGui.QAction("New Drag Command", self)
     action.triggered.connect(self.on_actionDragCommand_triggered)
     self.toolbarMenu.addAction(action)
     action = QtGui.QAction("New Language", self)
     action.triggered.connect(self.on_actionLanguage_triggered)
     self.toolbarMenu.addAction(action)
     action = QtGui.QAction("New Snippet", self)
     action.triggered.connect(self.on_actionSnippet_triggered)
     self.toolbarMenu.addAction(action)
     action = QtGui.QAction("New Template", self)
     action.triggered.connect(self.on_actionTemplate_triggered)
     self.toolbarMenu.addAction(action)
     action = QtGui.QAction("New Project", self)
     action.triggered.connect(self.on_actionProject_triggered)
     self.toolbarMenu.addAction(action)
     self.templateFileAction = QtGui.QAction("New Template File", self)
     self.templateFileAction.triggered.connect(self.on_actionTemplateFile_triggered)
     self.toolbarMenu.addAction(self.templateFileAction)
     action = QtGui.QAction("New Preferences", self)
     action.triggered.connect(self.on_actionPreferences_triggered)
     self.toolbarMenu.addAction(action)
     self.toolbarMenu.addSeparator()
     action = QtGui.QAction("New Bundle", self)
     action.triggered.connect(self.on_actionBundle_triggered)
     self.toolbarMenu.addAction(action)
     
     def conditionalEnabledTemplateFile():
         node = self.proxyTreeModel.node(self.treeView.currentIndex())
         self.templateFileAction.setEnabled(not node.isRootNode() and (node.TYPE in ["template", "templatefile", "project"]))
     self.toolbarMenu.aboutToShow.connect(conditionalEnabledTemplateFile)
     
     self.pushButtonAdd.setMenu(self.toolbarMenu)
     
     #Bundle global filter dialog
     self.bundleFilterDialog = PMXBundleFilter(self)
     self.defaullFilterText = "Filter"
Ejemplo n.º 4
0
def create_action(parent, settings):
    """Create a QAction"""
    text = settings.get("text", "Action")
    action = QtGui.QAction(text, parent)
    action.setObjectName(text2objectname(text, prefix="action"))

    # attrs
    if settings.has_key("icon"):
        icon = settings["icon"]
        if isinstance(icon, basestring):
            icon = resources.getIcon(icon)
        action.setIcon(icon)
    if settings.has_key("shortcut"):
        action.setShortcut(settings["shortcut"])
    if settings.has_key("tip"):
        action.setToolTip(settings["tip"])
        action.setStatusTip(settings["tip"])
    if settings.has_key("data"):
        action.setData(settings["data"])
    if settings.has_key("menurole"):
        action.setMenuRole(settings["menurole"])
    if settings.has_key("checkable"):
        action.setCheckable(settings["checkable"])

    # callables
    if settings.has_key("callback"):
        action.callback = settings["callback"]
    if settings.has_key("testChecked"):
        action.testChecked = settings["testChecked"]

    if settings.has_key("triggered") and callable(settings["triggered"]):
        parent.connect(action, QtCore.SIGNAL("triggered()"),
                       settings["triggered"])
    if settings.has_key("toggled") and callable(settings["toggled"]):
        parent.connect(action, QtCore.SIGNAL("toggled(bool)"),
                       settings["toggled"])
        action.setCheckable(True)

    #TODO: Hard-code all shortcuts and choose context=QtCore.Qt.WidgetShortcut
    # (this will avoid calling shortcuts from another dockwidget
    #  since the context thing doesn't work quite well with these widgets)
    action.setShortcutContext(settings.get("context",
                                           QtCore.Qt.WindowShortcut))
    return action
Ejemplo n.º 5
0
 def buildTriggerItemAction(self, parent, receiver):
     action = QtGui.QAction(self.icon, self.buildMenuTextEntry(), parent)
     parent.connect(action, QtCore.SIGNAL('triggered()'), receiver)
     return action