Пример #1
0
    def openMenu(self, position):
        indexes = self.selectedIndexes()
        if len(indexes) > 0:

            level = 0
            index = indexes[0]
            while index.parent().isValid():
                index = index.parent()
                level += 1

        menu = QtGui.QMenu()
        delete_menu = None
        open_explorer_menu = None

        if level == 1:
            open_explorer_menu = QtGui.QAction("Open in Explorer", self)
            menu.addAction(open_explorer_menu)
            delete_menu = QtGui.QAction("Delete", self)
            menu.addAction(delete_menu)

        if open_explorer_menu:
            open_explorer_menu.triggered.connect(
                partial(self._on_right_click, 'explorer'))

        if delete_menu:
            delete_menu.triggered.connect(
                partial(self._on_right_click, 'delete'))

        menu.exec_(self.viewport().mapToGlobal(position))
Пример #2
0
    def openMenu(self, position):
        if not self.parent_view:
            return
        indexes = self.parent_view.selectedIndexes()
        if not indexes:
            return
        if len(indexes) > 0:

            level = 0
            index = indexes[0]
            while index.parent().isValid():
                index = index.parent()
                level += 1

        menu = QtGui.QMenu()
        assign_new_image_action = None

        if level == 1:
            assign_new_image_action = QtGui.QAction(
                'Assign new thumbnail from viewport', self)
            menu.addAction(assign_new_image_action)

        if assign_new_image_action:
            assign_new_image_action.triggered.connect(self._on_click)

        menu.exec_(self.mapToGlobal(position))
Пример #3
0
    def __init__(self, parent=None):
        super(Dialog, self).__init__(parent)
        self.setWindowTitle("Foreign Asset Manager")
        self.setMinimumSize(400, 175)
        self.add_wizard = Wizard()
        self.preferences_window = PreferencesWindow()
        self.maya_class = MayaOperationClass()

        self.model = TreeModel()
        self.proxy1 = Proxy01()
        self.proxy1.setSourceModel(self.model)
        self.proxy1.setFilterCaseSensitivity(QtCore.Qt.CaseInsensitive)
        self.proxy1.setDynamicSortFilter(True)

        master_lyt = QtGui.QVBoxLayout(self)
        splitter = QtGui.QSplitter(self)
        splitter.setChildrenCollapsible(False)
        splitter.setOrientation(QtCore.Qt.Horizontal)

        self.ui_widget = QtGui.QWidget(splitter)

        layout = QtGui.QVBoxLayout(self.ui_widget)
        layout.setContentsMargins(-1, 20, -1, -1)

        expand_collapse_lyt = QtGui.QHBoxLayout()
        expand_collapse_lyt.setSpacing(0)

        self.expand_all_button = QtGui.QPushButton('+')
        self.expand_all_button.setMaximumSize(20, 20)
        expand_collapse_lyt.addWidget(self.expand_all_button)

        self.collapse_all_button = QtGui.QPushButton('-')
        self.collapse_all_button.setMaximumSize(20, 20)
        expand_collapse_lyt.addWidget(self.collapse_all_button)

        spacer2 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
        expand_collapse_lyt.addItem(spacer2)

        self.refresh_button = QtGui.QPushButton('r')
        self.refresh_button.setMaximumSize(20, 20)
        expand_collapse_lyt.addWidget(self.refresh_button)

        layout.addLayout(expand_collapse_lyt)

        self.tree_view = TreeView()
        self.tree_view.setModel(self.proxy1)
        self.tree_view.setSortingEnabled(True)
        self.tree_view.setAlternatingRowColors(True)
        self.tree_view.right_button_clicked.connect(self.rightMenuClicked)
        self.tree_view.selection_cleared.connect(self.resetPreviewImage)
        self.expand_all_button.clicked.connect(self.expandAll)
        self.collapse_all_button.clicked.connect(self.collpaseAll)
        self.refresh_button.clicked.connect(self.refreshView)
        layout.addWidget(self.tree_view)

        search_layout = QtGui.QHBoxLayout()

        self.search_line_edit = QtGui.QLineEdit()
        self.search_line_edit.setPlaceholderText('Search')
        self.search_line_edit.returnPressed.connect(self.updateFilter)
        search_layout.addWidget(self.search_line_edit)

        self.search_button = QtGui.QPushButton('Search')
        self.search_button.setMaximumWidth(75)
        self.search_button.clicked.connect(self.updateFilter)
        search_layout.addWidget(self.search_button)

        layout.addLayout(search_layout)

        QtCore.QObject.connect(self.tree_view, QtCore.SIGNAL("clicked(QModelIndex)"), self.row_clicked)
        QtCore.QObject.connect(self.tree_view, QtCore.SIGNAL("doubleClicked(QModelIndex)"), self.row_double_clicked)

        self.detail_panel_widget = QtGui.QWidget(splitter)
        image_layout = QtGui.QVBoxLayout(self.detail_panel_widget)

        self.image_label = ImageLabel(parent_view=self.tree_view)
        self.image_label.image_assign_signal.connect(self.assignImage)
        image_layout.addWidget(self.image_label)

        master_lyt.addWidget(splitter)

        self.qmenuBar = QtGui.QMenuBar(self)
        self.default_qmenubar_height = self.qmenuBar.height()
        file_menu = self.qmenuBar.addMenu('File')
        preferences_action = QtGui.QAction('Preferences', self)
        preferences_action.triggered.connect(self.preferencesClicked)
        add_asset_action = QtGui.QAction('Add new asset', self)
        add_asset_action.triggered.connect(self.addMenuClicked)
        file_menu.addAction(add_asset_action)
        file_menu.addAction(preferences_action)