Example #1
0
    def contextMenuEvent(self, event):

        handled = True
        index = self.indexAt(event.pos())
        menu = QtWidgets.QMenu()
        node = None

        if index.isValid():
            node = self.model().getNode(index)

        # top_actions = list()
        def_actions = list()

        if node:

            def_actions.append(QtWidgets.QAction("Remove branch...", menu,
                                                 triggered=functools.partial(self.remove, node, index)))


        else:

            def_actions.append(QtWidgets.QAction("Add branch...", menu,
                                                 triggered=functools.partial(self.add, node)))

        menu.addActions(def_actions)

        menu.exec_(event.globalPos())
        event.accept()

        return
Example #2
0
    def set_preset_menu(self):

        self.menu = None
        self.menu = QtWidgets.QMenu(self.load_preset_btn)
        self.menu.addAction(
            QtWidgets.QAction("Load from file...",
                              self.menu,
                              triggered=self.load_preset))
        self.menu.addSeparator()

        for p in self.list_saved_presets():
            self.menu.addAction(
                QtWidgets.QAction(p[1],
                                  self.menu,
                                  triggered=functools.partial(
                                      self.set_preset, p[0])))

        self.menu.addSeparator()
        self.menu.addAction(
            QtWidgets.QAction("Clear", self.menu, triggered=self.clear_preset))
        self.load_preset_btn.setMenu(self.menu)
Example #3
0
    def contextMenuEvent(self, event):

        handled = True
        index = self.indexAt(event.pos())
        self.menu = QtWidgets.QMenu()
        node = None

        if index.isValid():
            node = self.asModelNode(index)

        top_actions = list()
        def_actions = list()

        if hasattr(self.parent(), '_parent_box'):
            if not self.parent()._parent_box:

                if self.permissions.has_permissions(
                        role_string=self.role(),
                        action=self.permissions.create_preset):

                    presets_menu = self.menu.addMenu("Create preset... ")
                    presets_menu.addAction(
                        QtWidgets.QAction('From file...',
                                          presets_menu,
                                          triggered=functools.partial(
                                              self.parent().apply_preset,
                                              None)))

                    presets_menu.addSeparator()

                    for p in preset_editor.Preset_dialog.list_saved_presets():
                        presets_menu.addAction(
                            QtWidgets.QAction(p[1],
                                              presets_menu,
                                              triggered=functools.partial(
                                                  self.parent().apply_preset,
                                                  p[0])))

                    self.menu.addSeparator()

        if node:

            if node.typeInfo() != cfg._component_:

                if self.permissions.has_permissions(
                        role_string=self.role(),
                        action=self.permissions.create_category):

                    top_actions.append(
                        QtWidgets.QAction("Create Category...",
                                          self.menu,
                                          triggered=functools.partial(
                                              self.create_catagory, node,
                                              index)))

                if self.permissions.has_permissions(
                        role_string=self.role(),
                        action=self.permissions.create_component):

                    top_actions.append(
                        QtWidgets.QAction("Create Component...",
                                          self.menu,
                                          triggered=functools.partial(
                                              self.create_component, node,
                                              index)))

                if self.permissions.has_permissions(
                        role_string=self.role(),
                        action=self.permissions.rename):

                    top_actions.append(
                        QtWidgets.QAction("Rename category...",
                                          self.menu,
                                          triggered=functools.partial(
                                              self.rename_catagory, node,
                                              index)))

            if self.permissions.has_permissions(
                    role_string=self.role(), action=self.permissions.delete):

                top_actions.append(
                    QtWidgets.QAction("Delete...",
                                      self.menu,
                                      triggered=functools.partial(
                                          self.delete, node, index)))

            def_actions.append(
                QtWidgets.QAction("Explore...",
                                  self.menu,
                                  triggered=functools.partial(
                                      self.explore, node)))

            if node.typeInfo() == cfg._component_:
                if self.permissions.has_permissions(
                        role_string=self.role(),
                        action=self.permissions.rename):

                    top_actions.append(
                        QtWidgets.QAction("Rename component...",
                                          self.menu,
                                          triggered=functools.partial(
                                              self.rename_component, node,
                                              index)))

        else:

            if not self.search_mode:

                if self.permissions.has_permissions(
                        role_string=self.role(),
                        action=self.permissions.create_category):
                    top_actions.append(
                        QtWidgets.QAction("Create Category...",
                                          self.menu,
                                          triggered=functools.partial(
                                              self.create_catagory, node)))

                if self.permissions.has_permissions(
                        role_string=self.role(),
                        action=self.permissions.create_component):
                    top_actions.append(
                        QtWidgets.QAction("Create Component...",
                                          self.menu,
                                          triggered=functools.partial(
                                              self.create_component, node)))

                def_actions.append(
                    QtWidgets.QAction("Explore...",
                                      self.menu,
                                      triggered=functools.partial(
                                          self.explore, node)))
            else:
                event.accept()
                return

        self.menu.addActions(top_actions)
        self.menu.addSeparator()
        self.menu.addActions(def_actions)
        self.menu.setStyleSheet(self.css)

        self.menu.exec_(event.globalPos())
        event.accept()

        return