def __init__(self, parent=None): QtGui.QDialog.__init__(self, parent) self.setWindowTitle("Color Reference Setting") main_layout = QtGui.QVBoxLayout(self) group_layout = QtGui.QHBoxLayout() pre_group = QtGui.QGroupBox() pre_group.setTitle("Pre Shot") post_group = QtGui.QGroupBox() post_group.setTitle("Post Shot") group_layout.addWidget(pre_group) group_layout.addWidget(post_group) self.pre_shot_widget = kLineTextLabel() self.pre_shot_widget.setLabel("shot name") self.pre_frame_widget = kLineTextLabel() self.pre_frame_widget.setLabel("shot frame") pre_group_layout = QtGui.QVBoxLayout(pre_group) pre_group_layout.setContentsMargins(5,5,5,5) pre_group_layout.addWidget(self.pre_shot_widget) pre_group_layout.addWidget(self.pre_frame_widget) self.post_shot_widget = kLineTextLabel() self.post_shot_widget.setLabel("shot name") self.post_frame_widget = kLineTextLabel() self.post_frame_widget.setLabel("shot frame") post_group_layout = QtGui.QVBoxLayout(post_group) post_group_layout.setContentsMargins(5,5,5,5) post_group_layout.addWidget(self.post_shot_widget) post_group_layout.addWidget(self.post_frame_widget) if parent is not None: if parent._pre_shot_name is not None: self.pre_shot_widget.setText(parent._pre_shot_name) if parent._pre_shot_frame is not None: self.pre_frame_widget.setText(parent._pre_shot_frame) if parent._post_shot_name is not None: self.post_shot_widget.setText(parent._post_shot_name) if parent._post_shot_frame is not None: self.post_frame_widget.setText(parent._post_shot_frame) ok_button = QtGui.QPushButton("ok") ok_button.clicked.connect( lambda arg=False, args=parent:self.clicked_ok(args)) cancel_button = QtGui.QPushButton("cancel") cancel_button.clicked.connect(self.close) button_layout = QtGui.QHBoxLayout() button_layout.addWidget(ok_button) button_layout.addWidget(cancel_button) main_layout.addLayout(group_layout) main_layout.addSpacing(25) main_layout.addLayout(button_layout)
def setMessage(message): from Katana import QtCore, QtGui layoutsMenus = [x for x in QtGui.qApp.topLevelWidgets() if type(x).__name__ == 'LayoutsMenu'] KatanaWindow = layoutsMenus[0].parent().parent() widget = QtGui.QDialog(parent=KatanaWindow) title_layout = QtGui.QVBoxLayout() button_layout = QtGui.QHBoxLayout() title = QtGui.QLabel() button = QtGui.QPushButton() font = QtGui.QFont() font.setPixelSize(16) title.setText(message) title.setFont(font) title.setAlignment(QtCore.Qt.AlignHCenter) button.setText("Confirm!") button.clicked.connect(widget.close) button.setFixedHeight(30) title_layout.addStretch() title_layout.addWidget(title) title_layout.addStretch() button_layout.addStretch() button_layout.addWidget(button) button_layout.addStretch() mainLayout = QtGui.QVBoxLayout() mainLayout.addLayout(title_layout) mainLayout.addLayout(button_layout) widget.setWindowTitle("GafferThreeRigs.Warning") widget.setLayout(mainLayout) widget.setFixedHeight(130) widget.show()
def widget(self): layoutsMenus = [ x for x in QtGui.qApp.topLevelWidgets() if type(x).__name__ == 'LayoutsMenu' ] KatanaWindow = layoutsMenus[0].parent().parent() saveTo = self.getParameter('saveTo').getValue(0) widget = QtGui.QDialog(parent=KatanaWindow) title_layout = QtGui.QVBoxLayout() button_layout = QtGui.QHBoxLayout() title = QtGui.QLabel() button = QtGui.QPushButton() font = QtGui.QFont() font.setPixelSize(16) if saveTo: title.setText("MaterialX baking succeeded!") else: title.setText("Please enter the saving path!") title.setFont(font) title.setAlignment(QtCore.Qt.AlignHCenter) button.setText("Confirm!") button.clicked.connect(widget.close) button.setFixedHeight(30) title_layout.addStretch() title_layout.addWidget(title) title_layout.addStretch() button_layout.addStretch() button_layout.addWidget(button) button_layout.addStretch() mainLayout = QtGui.QVBoxLayout() mainLayout.addLayout(title_layout) mainLayout.addLayout(button_layout) widget.setWindowTitle("MaterialXAssign") widget.setLayout(mainLayout) widget.setFixedHeight(130) widget.show()
def __init__(self, parent, node): """ Initializes an instance of the class. """ QtGui.QWidget.__init__(self, parent) self.__node = node # Get the SuperTool's parameters rootLocationsParameter = self.__node.getParameter('rootLocations') passesParameter = self.__node.getParameter('passes') saveToParameter = self.__node.getParameter('saveTo') writeMatexOutButton = self.__node.getParameter("writeMaterialxOut") CreateParameterPolicy = UI4.FormMaster.CreateParameterPolicy self.__rootLocationsParameterPolicy = CreateParameterPolicy( None, rootLocationsParameter) self.__passesParameterPolicy = CreateParameterPolicy( None, passesParameter) self.__saveToParameterPolicy = CreateParameterPolicy( None, saveToParameter) self.__writeMatexOutButtonPolicy = CreateParameterPolicy( None, writeMatexOutButton) WidgetFactory = UI4.FormMaster.KatanaFactory.ParameterWidgetFactory rootLocationsWidget = WidgetFactory.buildWidget( self, self.__rootLocationsParameterPolicy) passesWidget = WidgetFactory.buildWidget(self, self.__passesParameterPolicy) saveToWidget = WidgetFactory.buildWidget(self, self.__saveToParameterPolicy) writeMatexOutButtonWidget = WidgetFactory.buildWidget( self, self.__writeMatexOutButtonPolicy) # Build a group widget self.group_layout = passesWidget.getPopdownWidget().layout() self.add_button = QtGui.QPushButton("Add New Pass") self.remove_button = QtGui.QPushButton("Remove Last Pass") self.connect(self.add_button, QtCore.SIGNAL('clicked(bool)'), self.onAddButtonPressed) self.connect(self.remove_button, QtCore.SIGNAL('clicked(bool)'), self.onRemoveButtonPressed) # parameter = self.__node.getParameters().getChild("look_origin") # if not parameter: # parameter = self.__node.getParameters().createChildString("look_origin", 'default') # policy = UI4.FormMaster.CreateParameterPolicy(None, parameter) # widget = WidgetFactory.buildWidget(self, policy) if not passesParameter.getChild("default"): passesParameter.createChildString("default", 'default') self.button_layout = QtGui.QHBoxLayout() self.button_layout.addWidget(self.add_button) self.button_layout.addWidget(self.remove_button) self.group_layout.addLayout(self.button_layout) line = QtGui.QFrame() line.setFrameShape(QtGui.QFrame.HLine) line.setFrameShadow(QtGui.QFrame.Sunken) # Create a layout and add the parameter editing widgets to it mainLayout = QtGui.QVBoxLayout() mainLayout.addWidget(rootLocationsWidget) mainLayout.addWidget(passesWidget) mainLayout.addWidget(line) mainLayout.addWidget(saveToWidget) mainLayout.addWidget(writeMatexOutButtonWidget) # Apply the layout to the widget self.setLayout(mainLayout)
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)
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)
def __buildUI(self): layout = QtGui.QVBoxLayout(self) fileLayout = QtGui.QHBoxLayout() formatLayout = QtGui.QHBoxLayout() filenamePolicy = UI4.FormMaster.CreateParameterPolicy( None, self.__node.getParameter('Filename')) factory = UI4.FormMaster.KatanaFactory.ParameterWidgetFactory filenameLine = factory.buildWidget(self, filenamePolicy) fileLayout.addWidget(filenameLine) formatPolicy = UI4.FormMaster.CreateParameterPolicy( None, self.__node.getParameter('Format')) formatParam = factory.buildWidget(self, formatPolicy) BitDepthPolicy = UI4.FormMaster.CreateParameterPolicy( None, self.__node.getParameter('BitDepth')) BitDepthParam = factory.buildWidget(self, BitDepthPolicy) tiledPolicy = UI4.FormMaster.CreateParameterPolicy( None, self.__node.getParameter('Tiled')) tiledParam = factory.buildWidget(self, tiledPolicy) mergePolicy = UI4.FormMaster.CreateParameterPolicy( None, self.__node.getParameter('MergeAOVs')) mergeParam = factory.buildWidget(self, mergePolicy) formatLayout.addWidget(formatParam) formatLayout.addWidget(BitDepthParam) formatLayout.addWidget(tiledParam) overallListLayout = QtGui.QHBoxLayout() globalListLayout = QtGui.QVBoxLayout() sceneListLayout = QtGui.QVBoxLayout() __labelAOV1 = QtGui.QLabel('AOV List') __labelAOV2 = QtGui.QLabel('Scene AOVs') globalListLayout.addWidget(__labelAOV1) sceneListLayout.addWidget(__labelAOV2) self.globalAovsList = QtGui.QListWidget() self.globalAovsList.setSelectionMode( QtGui.QAbstractItemView.ExtendedSelection) self.globalAovsList.itemDoubleClicked.connect(self.__addButtonClicked) globalListLayout.addWidget(self.globalAovsList) self.scenAovsList = QtGui.QListWidget() self.scenAovsList.setSelectionMode( QtGui.QAbstractItemView.ExtendedSelection) self.scenAovsList.itemDoubleClicked.connect(self.__removeButtonClicked) self.scenAovsList.itemClicked.connect(self.showNodeParams) sceneListLayout.addWidget(self.scenAovsList) btnLayout = QtGui.QHBoxLayout() __addAovBtn = QtGui.QPushButton('>>') self.connect(__addAovBtn, QtCore.SIGNAL('clicked()'), self.__addButtonClicked) globalListLayout.addWidget(__addAovBtn) customBtn = QtGui.QPushButton('Custom') customBtn.clicked.connect(self.__customClicket) btnLayout.addWidget(customBtn) __removeAovBtn = QtGui.QPushButton('<<') self.connect(__removeAovBtn, QtCore.SIGNAL('clicked()'), self.__removeButtonClicked) btnLayout.addWidget(__removeAovBtn) __scrollWidget = QtGui.QWidget() # __scrollWidget.setMinimumHeight(350) __scrollWidget.setSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Expanding) self.scrollLayout = QtGui.QVBoxLayout(__scrollWidget) scrollArea = QtGui.QScrollArea() scrollArea.setWidgetResizable(True) scrollArea.setSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Expanding) scrollArea.setMinimumHeight(200) scrollArea.setWidget(__scrollWidget) sceneListLayout.addLayout(btnLayout) overallListLayout.addLayout(globalListLayout) overallListLayout.addLayout(sceneListLayout) layout.addLayout(fileLayout) layout.addLayout(formatLayout) layout.addWidget(mergeParam) layout.addWidget(QHLine()) layout.addLayout(overallListLayout) # layout.addLayout(btnLayout) layout.addWidget(scrollArea)