示例#1
0
    def __init__(self):
        """Builds the initial combose box UI"""

        QtGui.QFrame.__init__(self)

        QtGui.QVBoxLayout(self)

        assetFrame = QtGui.QFrame(self)
        QtGui.QHBoxLayout(assetFrame)
        self.layout().addWidget(assetFrame)

        assetFrame.layout().addWidget(QtGui.QLabel("show:"))
        self.__showCombobox = QtGui.QComboBox()
        assetFrame.layout().addWidget(self.__showCombobox)

        assetFrame.layout().addWidget(QtGui.QLabel("shot:"))
        self.__shotCombobox = QtGui.QComboBox()
        assetFrame.layout().addWidget(self.__shotCombobox)

        assetFrame.layout().addWidget(QtGui.QLabel("asset:"))
        self.__assetCombobox = QtGui.QComboBox()
        assetFrame.layout().addWidget(self.__assetCombobox)

        assetFrame.layout().addWidget(QtGui.QLabel("version:"))
        self.__versionCombobox = QtGui.QComboBox()
        assetFrame.layout().addWidget(self.__versionCombobox)

        self.connect(self.__showCombobox,
                     QtCore.SIGNAL("currentIndexChanged(QString)"),
                     self.__updateShow)
        self.connect(self.__shotCombobox,
                     QtCore.SIGNAL("currentIndexChanged(QString)"),
                     self.__updateShot)
        self.connect(self.__assetCombobox,
                     QtCore.SIGNAL("currentIndexChanged(QString)"),
                     self.__updateAsset)
        self.connect(self.__versionCombobox,
                     QtCore.SIGNAL("currentIndexChanged(QString)"),
                     self.__updateVersion)

        # Modify the integrated QListViews to lay out the items every time the
        # view is resized, so that changes in the application font preferences
        # are correctly reflected
        for combobox in (self.__showCombobox, self.__shotCombobox,
                         self.__assetCombobox, self.__versionCombobox):
            combobox.view().setResizeMode(QtGui.QListView.Adjust)

        self.__sandboxCheckBox = QtGui.QCheckBox('Save to Sandbox', self)
        self.layout().addWidget(self.__sandboxCheckBox)

        self.__showCombobox.addItems(_getShows())
示例#2
0
    def __buildToolbar(self, parent):
        self.__toolbarLayout = QtGui.QHBoxLayout()
        parent.layout().addLayout(self.__toolbarLayout)

        self.__scopePopup = QtGui.QComboBox(parent)

        self.connect(self.__scopePopup,
                     QtCore.SIGNAL('currentIndexChanged(const QString &)'),
                     self.__refresh)

        self.__scopePopup.addItems([
            'Selected ShadingNodes', 'All ShadingNodes',
            'Upstream of NetworkMaterial'
        ])

        self.__toolbarLayout.addWidget(self.__scopePopup)

        self.__shadingNetworkMaterialsPopup = QtGui.QComboBox(parent)

        self.__shadingNetworkMaterialsPopup.addItems(
            [x.getName() for x in self.__getNetworkMaterials()])

        self.connect(self.__shadingNetworkMaterialsPopup,
                     QtCore.SIGNAL('currentIndexChanged(const QString &)'),
                     self.__refresh)

        self.__shadingNetworkMaterialsPopup.hide()

        self.__toolbarLayout.addWidget(self.__shadingNetworkMaterialsPopup)

        self.__toolbarLayout.addStretch()

        self.__filterField = Widgets.FilterFieldWidget(parent)
        self.connect(self.__filterField, QtCore.SIGNAL('filterUpdate'),
                     self.__filterUpdate)

        self.__toolbarLayout.addWidget(self.__filterField)

        self.__statusBar = QtGui.QLabel('', parent)
        parent.layout().addWidget(self.__statusBar)
    def __buildScriptArea(self, parent):
        self.__presetToolbar = QtGui.QHBoxLayout()
        parent.layout().addLayout(self.__presetToolbar)

        self.__presetToolbar.addWidget(QtGui.QLabel('Presets:', parent))
         
        self.__presetsMenu = QtGui.QComboBox(parent)
        self.__presetsMenu.addItems( self.__presetNames )

        self.__presetToolbar.addWidget(self.__presetsMenu)

        self.__presetLoadButton = QtGui.QPushButton('Load', parent)
        self.connect(self.__presetLoadButton, QtCore.SIGNAL('clicked()'),
                self._loadPreset)

        self.__presetToolbar.addWidget(self.__presetLoadButton)

        self.__presetToolbar.addStretch()    
        
        self.__scriptText = TabbableTextEdit(parent)
        parent.layout().addWidget(self.__scriptText)

 
        self.__scriptToolbar = QtGui.QHBoxLayout()
        parent.layout().addLayout(self.__scriptToolbar)
        
        
        self.__scriptHelp = QT4FormWidgets.InputWidgets.HelpButton(
                parent)
        self.__scriptHelp.setAutoDefault(False)
        self.__scriptHelp.setHelpText("""
        local variables: <br>
        <b>nodeName</b>, <b>paramName</b> these are inputs, changing has no result<br>
        <b>dstName</b>, <b>dstPage</b> change these values sets exposure<br>
        <b>hints</b> set fields of this dict to assign widget hints<br>
        <b>persistentData</b>, a dictionary that is reset each time 'Run Script' is 
        pressed, rather than just for each parameter. Useful if you wish to store data 
        about previously visited parameters, for example.
        """)
        self.__scriptToolbar.addWidget(self.__scriptHelp)
        
        
        self.__scriptScope = QtGui.QComboBox(parent)
        
        self.__scriptToolbar.addWidget(QtGui.QLabel('Apply Script To', parent))
        
        self.__scriptScope.addItems(
                ['All Visible Items', 'Selected Visible Items', 'All Items'])
        
        self.__scriptToolbar.addWidget(self.__scriptScope)
        self.__scriptToolbar.addStretch()
        
        self.__undoDepth = 0
        self.__scriptUndoButton = QtGui.QPushButton('Undo', parent)
        self.__scriptUndoButton.setEnabled(False)
        self.connect(self.__scriptUndoButton, QtCore.SIGNAL('clicked()'),
                self.__undo)
        self.__scriptToolbar.addWidget(self.__scriptUndoButton)
        
        
        
        self.__scriptRunButton = QtGui.QPushButton('Run Script', parent)
        #self.__scriptRunButton.setEnabled(False)
        self.connect(self.__scriptRunButton, QtCore.SIGNAL('clicked()'),
                self.__evaluateScript)
        
        
        self.__scriptToolbar.addWidget(self.__scriptRunButton)
示例#4
0
    def buildUI(self):

        layout = QtGui.QVBoxLayout(self)

        #########################################################

        # upper row

        controlWidget = QtGui.QWidget()
        controlLayout = QtGui.QHBoxLayout(controlWidget)
        layout.addWidget(controlWidget)

        # reload
        reloadBtn = QtGui.QPushButton('RELOAD')
        reloadBtn.setStyleSheet("background-color: #1f366b;")

        reloadBtn.clicked.connect(self.clearSearch)
        reloadBtn.clicked.connect(self.populate)
        reloadBtn.clicked.connect(self.categories)

        # standard MTL
        createStd = QtGui.QPushButton('Standard Material')
        createStd.setStyleSheet("background-color: #36743f;")
        createStd.clicked.connect(self.createStandard)
        createStd.setMaximumWidth(110)

        # thumbnail size
        self.icon_size = QtGui.QSpinBox()
        self.icon_size.setRange(60, 260)
        self.icon_size.setValue(128)
        self.icon_size.setSingleStep(20)
        self.icon_size.valueChanged.connect(self.populate)
        self.icon_size.setMaximumWidth(50)

        label = QtGui.QLabel()
        label.setText('Thumbnail size:')
        label.setMaximumWidth(100)

        #layout
        controlLayout.addWidget(label)
        controlLayout.addWidget(self.icon_size)
        controlLayout.addWidget(reloadBtn)
        controlLayout.addWidget(createStd)

        #########################################################

        # second row

        searchWidget = QtGui.QWidget()
        searchLayout = QtGui.QHBoxLayout(searchWidget)
        layout.addWidget(searchWidget)

        # search field
        label1 = QtGui.QLabel()
        label1.setText('Search:')
        label1.setMaximumWidth(50)

        self.searchField = QtGui.QLineEdit()
        self.searchField.returnPressed.connect(self.populate)
        # self.searchField.textChanged.connect(self.searchCmd)
        self.searchField.setMaximumWidth(650)

        # categories

        label2 = QtGui.QLabel()
        label2.setText('Category:')
        label2.setMaximumWidth(80)

        self.catedoryCB = QtGui.QComboBox()
        self.catedoryCB.currentIndexChanged.connect(self.populate)
        self.catedoryCB.setMaximumWidth(100)

        # layout
        searchLayout.addWidget(label1)
        searchLayout.addWidget(self.searchField)
        searchLayout.addWidget(label2)
        searchLayout.addWidget(self.catedoryCB)

        #########################################################

        # main list view

        self.listWidget = QtGui.QListWidget()
        self.listWidget.setViewMode(QtGui.QListWidget.IconMode)

        self.listWidget.setResizeMode(QtGui.QListWidget.Adjust)
        self.listWidget.itemDoubleClicked.connect(self.doubleCkicked)

        self.listWidget.setStyleSheet("QListWidget::item {"
                                      "border-style: solid;"
                                      "border-width:3px;"
                                      "background-color: #252525;"
                                      "}"
                                      "QListWidget::item:selected {"
                                      "background-color: #1e1e1e;"
                                      "}")

        layout.addWidget(self.listWidget)