Esempio n. 1
0
	def __init__(self, data=None):
		super (ParmWindow, self).__init__()
		self.data = data
		self.parms = data["parms"]
		#self.file_name = data["file_name"]
		self.node_path = data["node_path"]
		self.node_name = data["node_name"]
		self.file_path = data["file_path"]
		self.preferences = self.populateData()

		def addCheckBox(checkbox_name):
			checkbox = QtWidgets.QCheckBox(checkbox_name)
			return checkbox

		self.save = QtWidgets.QPushButton("save")
		self.refresh = QtWidgets.QPushButton("refresh")
		self.select_all = QtWidgets.QPushButton("select_all")
		self.deselect_all = QtWidgets.QPushButton("deselect_all")
		self.onCreate()

		listBox = QtWidgets.QVBoxLayout(self)
		self.setLayout(listBox)

		scroll = QtWidgets.QScrollArea(self)
		listBox.addWidget(self.select_all)
		listBox.addWidget(self.deselect_all)
		listBox.addWidget(self.save)
		listBox.addWidget(self.refresh)
		listBox.addWidget(scroll)
		scroll.setWidgetResizable(True)
		scrollContent = QtWidgets.QWidget(scroll)

		self.scrollLayout = QtWidgets.QVBoxLayout(scrollContent)
		scrollContent.setLayout(self.scrollLayout)

		for i,(p,v) in enumerate(sorted(self.preferences.items(), key=operator.itemgetter(0)))
			#print i, p, v
			#print self.preferences[p]
		#for i, p in enumerate(self.preferences.keys()):
			self.cb = addCheckBox(p) # p.name()
			self.cb.setChecked(bool(self.preferences[p]))
			#self.cb.setChecked(bool(self.preferences.values()[i]))

			self.cb.stateChanged.connect(self.onSave)
			self.scrollLayout.addWidget(self.cb)
		scroll.setWidget(scrollContent)

		self.save.clicked.connect(self.onSave)
		self.refresh.clicked.connect(self.onRefresh)
		self.select_all.clicked.connect(self.onSelectAll)
		self.deselect_all.clicked.connect(self.onDeSelectAll)
		self.setWindowTitle(self.node_name)

		QtWidgets.QShortcut(QtGui.QKeySequence("Esc"), self, self.onClose)
Esempio n. 2
0
    def __init__(self, parent=None, close_cb=None, animationDuration=200):
        super(Animator, self).__init__(parent)

        self.animationDuration = animationDuration

        self.toggleAnimation = QtCore.QParallelAnimationGroup()
        if close_cb is not None:
            self.toggleAnimation.finished.connect(close_cb)

        self.contentArea = QtWidgets.QScrollArea(maximumHeight=0,
                                                 minimumHeight=0,
                                                 minimumWidth=500)
        self.contentArea.setStyleSheet(
            "QScrollArea { background-color: rgba(58 58, 58, 1); border: none;}"
        )
        self.contentArea.setSizePolicy(QtWidgets.QSizePolicy.Expanding,
                                       QtWidgets.QSizePolicy.Fixed)

        toggleAnimation = self.toggleAnimation
        toggleAnimation.addAnimation(
            QtCore.QPropertyAnimation(self, b"minimumHeight"))
        toggleAnimation.addAnimation(
            QtCore.QPropertyAnimation(self, b"maximumHeight"))
        toggleAnimation.addAnimation(
            QtCore.QPropertyAnimation(self.contentArea, b"maximumHeight"))

        mainLayout = QtWidgets.QVBoxLayout(self)
        mainLayout.setSpacing(0)
        mainLayout.setContentsMargins(0, 0, 0, 0)
        mainLayout.addWidget(self.contentArea)
Esempio n. 3
0
 def setupUi(self, BugReport):
     BugReport.setObjectName("BugReport")
     BugReport.setWindowModality(QtCore.Qt.NonModal)
     BugReport.resize(450, 20)
     sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Preferred)
     sizePolicy.setHorizontalStretch(0)
     sizePolicy.setVerticalStretch(0)
     sizePolicy.setHeightForWidth(BugReport.sizePolicy().hasHeightForWidth())
     BugReport.setSizePolicy(sizePolicy)
     BugReport.setMinimumSize(QtCore.QSize(25, 0))
     BugReport.setBaseSize(QtCore.QSize(0, 0))
     BugReport.setContentsMargins(-1, -1, -1,-1)
     BugReport.setStyleSheet("")
     self.gridLayout = QtWidgets.QGridLayout(BugReport)
     self.gridLayout.setContentsMargins(-1, -1, -1, -1)
     self.gridLayout.setSpacing(0)
     self.gridLayout.setObjectName("gridLayout")
     self.verticalLayout_4 = QtWidgets.QVBoxLayout()
     self.verticalLayout_4.setObjectName("verticalLayout_4")
     self.secondrow = QtWidgets.QHBoxLayout()
     self.secondrow.setObjectName("secondrow")
     self.title = QtWidgets.QLineEdit(BugReport)
     self.title.setMinimumSize(QtCore.QSize(175, 0))
     self.title.setObjectName("title")
     self.secondrow.addWidget(self.title)
     self.verticalLayout_4.addLayout(self.secondrow)
     self.thirdrow = QtWidgets.QHBoxLayout()
     self.thirdrow.setObjectName("thirdrow")
     spacerItem1 = QtWidgets.QSpacerItem(40, 25, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed)
     self.thirdrow.addItem(spacerItem1)
     self.label_cbox = QtWidgets.QComboBox(BugReport)
     self.label_cbox.setObjectName("label_cbox")
     self.label_cbox.setLayoutDirection(QtCore.Qt.LeftToRight)
     self.label_cbox.setMaximumSize(QtCore.QSize(100, 25))
     self.label_cbox.addItem("Bug")
     self.label_cbox.addItem("Suggestion")
     self.label_cbox.addItem("Question")
     self.thirdrow.addWidget(self.label_cbox)
     spacerItem1 = QtWidgets.QSpacerItem(5, 30, QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
     self.thirdrow.addItem(spacerItem1)
     self.edittitle_btn = QtWidgets.QPushButton(BugReport)
     sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Fixed)
     sizePolicy.setHorizontalStretch(0)
     sizePolicy.setVerticalStretch(0)
     sizePolicy.setHeightForWidth(self.edittitle_btn.sizePolicy().hasHeightForWidth())
     self.edittitle_btn.setSizePolicy(sizePolicy)
     self.edittitle_btn.setMaximumSize(QtCore.QSize(75, 16777215))
     self.edittitle_btn.setObjectName("edittitle")
     self.thirdrow.addWidget(self.edittitle_btn)
     
     self.verticalLayout_4.addLayout(self.thirdrow)
     self.gridLayout.addLayout(self.verticalLayout_4, 0, 0, 1, 1)
     
     self.retranslateUi(BugReport)
     QtCore.QMetaObject.connectSlotsByName(BugReport)
Esempio n. 4
0
 def initCommitWindow(self):
     self.commitBox = QtWidgets.QVBoxLayout()
     self.commitWindow = QtWidgets.QWidget()
     self.commitWindow.setMinimumHeight(400)
     self.commitWindow.setLayout(self.commitBox)
     self.commitMsg = QtWidgets.QTextEdit()
     self.commitMsg.setPlaceholderText("Enter Commit Message")
     self.commitMsg.setParent(self.commitWindow)
     self.commitBox.addWidget(self.commitMsg)
     okBtn = QtWidgets.QPushButton("Make Commit", self.commitWindow)
     okBtn.clicked.connect(self.createCommit)
     self.commitBox.addWidget(okBtn)
Esempio n. 5
0
 def initLoadWindow(self):
     self.loadBox = QtWidgets.QVBoxLayout()
     self.loadWindow = QtWidgets.QWidget()
     self.loadWindow.setLayout(self.loadBox)
     self.loadWindow.setMinimumHeight(400)
     # create tree with date and message
     self.loadTree = QtWidgets.QTreeWidget()
     self.loadTree.setHeaderLabels(self.backup.getHeaders()[1:])
     self.loadBox.addWidget(self.loadTree)
     # add load button
     loadBtn = QtWidgets.QPushButton("Load Selected Backup",
                                     self.loadWindow)
     loadBtn.clicked.connect(self.loadBackup)
     self.loadBox.addWidget(loadBtn)
     # loadBtn.clicked.connect(lambda:)
     self.loadWindow.setVisible(False)
Esempio n. 6
0
    def __init__(self, material_library):
        super(MaterialLibraryWidget, self).__init__()

        self._material_library = material_library
        self._fullPreviewWindow = FullPreviewWindow()

        script_dir = os.path.dirname(os.path.abspath(__file__))
        ui_filepath = os.path.join(script_dir, 'materialLibrary.ui')
        self._ui = QtUiTools.QUiLoader().load(ui_filepath, parentWidget=self)

        self._layout = QtWidgets.QVBoxLayout()
        self.setLayout(self._layout)
        self._layout.setContentsMargins(0, 0, 0, 0)
        self._layout.addWidget(self._ui)

        self._ui.filter.textChanged.connect(self._filterChanged)

        self._listWidget = LibraryListWidget(self)
        self._fullPreviewWindow._requiredWidget = self._listWidget
        self._ui.verticalLayout_3.insertWidget(0, self._listWidget)

        self._ui.treeView.clicked.connect(self._treeItemClicked)
        self._listWidget.clicked.connect(self._listItemClicked)
        self._listWidget.itemEntered.connect(self._listItemEntered)
        self._listWidget.viewportEntered.connect(self._listViewportEntered)
        self._listWidget.setMouseTracking(True)

        self._ui.splitter.setSizes([150, 150])

        self._libraryTreeModel = LibraryTreeModel(self)      # tree item height must not be less than line edit height
        self._ui.treeView.setModel(self._libraryTreeModel)

        for group, materials in material_library.material_groups:
            for name in materials:
                self._libraryTreeModel.addItem(['All', group, name], material_library.material_datas[name].preview)

        self._libraryTreeModel.reset()
        self._ui.treeView.setIndentation(self._ui.treeView.indentation() // 2)
        rootIndex = self._libraryTreeModel.index(0, 0, QtCore.QModelIndex())
        self._treeItemClicked(rootIndex)
        self._ui.treeView.expand(rootIndex)

        self._ui.helpButton.clicked.connect(self._helpButtonClicked)

        self._dataModel = None
        self._stateLoaded = False
Esempio n. 7
0
    def __init__(self, scipt='lz_quick_vex', rows=4):
        super(LZ_vex_interface, self).__init__()
        #create Layout
        mainLayout = QtWidgets.QGridLayout()
        self.callbackDict = {}

        # read json
        import json
        hext = hou.expandString('$HEXT')
        self.json = json.load(open(hext + '/' + scipt + '.txt'))

        i = 0
        # fill lists
        for list_key in sorted(self.json.keys()):
            # create list widget
            new_list = QtWidgets.QListWidget()
            items = self.json[list_key]

            for key in sorted(items.keys()):
                list_item = QtWidgets.QListWidgetItem(key)

                picName = key.split(". ")[len(key.split(". ")) -
                                          1].lower().replace(":", "").replace(
                                              " ", "")
                #print picNam
                pic_path = hou.expandString(
                    '$HEXT\pic') + '\\' + picName + r".svg"
                if os.path.isfile(pic_path):
                    list_item.setIcon(QtGui.QIcon(pic_path))
                new_list.addItem(list_item)
                self.callbackDict[key] = items[key]
            new_list.doubleClicked.connect(self.doubleClickedList)

            # create label
            label = QtWidgets.QLabel(list_key)

            #fill
            layout = QtWidgets.QVBoxLayout()
            layout.addWidget(label)
            layout.addWidget(new_list)
            mainLayout.addLayout(layout, i / rows, i % rows)
            i += 1

        #set Layout
        self.setStyleSheet("background-color: hsv(0,0,45);")
        self.setLayout(mainLayout)
Esempio n. 8
0
    def __init__(self, plugin_configuration, parent):
        super(_PluginConfigurationWidget, self).__init__(parent=parent)
        self.plugin_configuration = plugin_configuration

        self.main_layout = QtWidgets.QVBoxLayout(self)
        self.main_layout.setContentsMargins(
            self.main_layout.contentsMargins().left() // 2,
            self.main_layout.contentsMargins().top() // 2,
            self.main_layout.contentsMargins().right() // 2,
            self.main_layout.contentsMargins().bottom() // 2)

        self.plugin_type = plugin_configuration.plugin_type
        if self.plugin_type == RprUsd.kPluginHybrid:
            plugin_qualities = 'Low-High Qualities'
        elif self.plugin_type == RprUsd.kPluginTahoe:
            plugin_qualities = 'Full (Legacy) Quality'
        elif self.plugin_type == RprUsd.kPluginNorthstar:
            plugin_qualities = 'Full Quality'

        self.labels_widget = QtWidgets.QWidget(self)
        self.main_layout.addWidget(self.labels_widget)

        self.labels_widget_layout = QtWidgets.QHBoxLayout(self.labels_widget)
        self.labels_widget_layout.setContentsMargins(0, 0, 0, 0)

        self.plugin_qualities_label = QtWidgets.QLabel(self.labels_widget)
        self.plugin_qualities_label.setText(plugin_qualities)
        self.labels_widget_layout.addWidget(self.plugin_qualities_label)

        self.incomplete_config_label = QtWidgets.QLabel(self.labels_widget)
        self.incomplete_config_label.setStyleSheet('color: rgb(255,204,0)')
        self.incomplete_config_label.setText('Configuration is incomplete: no devices')
        self.labels_widget_layout.addWidget(self.incomplete_config_label)
        self.incomplete_config_label.hide()

        if plugin_configuration.cpu_config.cpu_info.numThreads:
            cpu_widget = _DeviceWidget(parent=self, cpu_config=plugin_configuration.cpu_config)
            cpu_widget.on_change.connect(self.on_device_change)
            self.main_layout.addWidget(cpu_widget)

        for gpu_config in plugin_configuration.gpu_configs:
            gpu_widget = _DeviceWidget(parent=self, gpu_config=gpu_config)
            gpu_widget.on_change.connect(self.on_device_change)
            self.main_layout.addWidget(gpu_widget)

        self.is_complete = True
Esempio n. 9
0
    def __init__(self):
        super(MaterialLibraryWindow, self).__init__()

        matLibWidget = MaterialLibraryWidget(material_library)

        layout = QtWidgets.QVBoxLayout()
        layout.addWidget(matLibWidget)

        central_widget = QtWidgets.QWidget()
        central_widget.setLayout(layout)

        self.setCentralWidget(central_widget)
        self.setParent(hou.qt.mainWindow(), QtCore.Qt.Window)
        self.setWindowTitle('RPR Material Library')

        desktop_widget = QtWidgets.QDesktopWidget()
        primary_screen = desktop_widget.screen(desktop_widget.primaryScreen())
        self.resize(primary_screen.width() // 3, int(primary_screen.height() * 0.8))
Esempio n. 10
0
    def __init__(self, configuration, show_restart_warning):
        super(_DevicesConfigurationDialog, self).__init__()

        self.configuration = configuration
        self.initial_configuration = configuration.deepcopy()

        if self.configuration.context.parent:
            self.setParent(self.configuration.context.parent, self.configuration.context.parent_flags)
        self.setSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
        self.setWindowTitle('RPR Render Devices')

        self.main_layout = QtWidgets.QVBoxLayout(self)
        self.main_layout.setSizeConstraint(QtWidgets.QLayout.SetFixedSize)

        self.plugin_configuration_widgets = list()
        for config in configuration.plugin_configurations:
            widget = _PluginConfigurationWidget(config, self)
            widget.on_change.connect(self.on_plugin_configuration_change)
            self.main_layout.addWidget(widget)
            self.plugin_configuration_widgets.append(widget)

        if show_restart_warning:
            self.restart_warning_label = QtWidgets.QLabel(self)
            self.restart_warning_label.setText('Changes will not take effect until the RPR renderer restarts.')
            self.restart_warning_label.setStyleSheet('color: rgb(255,204,0)')
            self.restart_warning_label.hide()
            self.main_layout.addWidget(self.restart_warning_label)
        else:
            self.restart_warning_label = None

        self.button_box = QtWidgets.QDialogButtonBox(self)
        self.save_button = self.button_box.addButton("Save", QtWidgets.QDialogButtonBox.AcceptRole)
        self.save_button.setEnabled(False)
        self.button_box.addButton("Cancel", QtWidgets.QDialogButtonBox.RejectRole)
        self.button_box.accepted.connect(self.on_accept)
        self.button_box.rejected.connect(self.on_reject)
        self.main_layout.addWidget(self.button_box)

        self.show()

        self.should_update_configuration = False
Esempio n. 11
0
 def __init__(self, parent=None):
     QtWidgets.QWidget.__init__(self, parent)
     # create composite backup controller
     self.backup = Backup()
     # init Windows
     self.initCommitWindow()
     self.initLoadWindow()
     self.setGeometry(500, 300, 400, 200)
     self.setWindowTitle('Sane Backup')
     # set layouts and add widgets
     self.numCommits = 0
     parentLayout = QtWidgets.QVBoxLayout()
     self.setLayout(parentLayout)
     # create tabs
     tabWidget = QtWidgets.QTabWidget()
     tabWidget.addTab(self.commitWindow, "Make a Commit")
     tabWidget.addTab(self.loadWindow, "Load a Backup")
     # listen for tab change
     tabWidget.currentChanged.connect(self.handleTabSelect)
     parentLayout.addWidget(tabWidget)
     self.setParent(hou.ui.mainQtWindow(), QtCore.Qt.Window)
Esempio n. 12
0
    def __init__(self, parent=None):
        # INITIALIZE GUI AND SET WINDOW TO ALWAYS ON TOP
        QtWidgets.QWidget.__init__(self, parent, QtCore.Qt.WindowStaysOnTopHint)
        
        # SET LAYOUTS
        vbox = QtWidgets.QVBoxLayout()
        hbox1 = QtWidgets.QHBoxLayout()        
        
        # SET WINDOW ATTRIBUTES
        self.setGeometry(500, 300, 420, 110)
        self.setWindowTitle('Convert Relative File Paths to Absolute')
        
        # CREATE WIDGETS
        self.apply_to_label = QtWidgets.QLabel("Nodes to Update:")
        self.apply_to_combo_box = QtWidgets.QComboBox(self)     
        self.update_paths_button = QtWidgets.QPushButton('Update Paths', self)
        
        # POPULATE COMBO BOX
        self.apply_to_combo_box.addItem("Selected Nodes Only")        
        self.apply_to_combo_box.addItem("All Nodes In Scene (Any Context)")          
        self.apply_to_combo_box.addItem("All Nodes In Obj Context")           
        self.apply_to_combo_box.addItem("Selected Nodes & Their Direct Children")
        self.apply_to_combo_box.addItem("Selected Nodes & All Subchildren")        
        self.apply_to_combo_box.addItem("Only Direct Children Of Selected Nodes")   
        self.apply_to_combo_box.addItem("Only All Subchildren Of Selected Nodes")           

        # CONNECT BUTTONS TO FUNCTIONS
        self.update_paths_button.clicked.connect(self.updatePaths)
        
        # ADD WIDGETS TO LAYOUT
        hbox1.addWidget(self.apply_to_label) 
        hbox1.addWidget(self.apply_to_combo_box)     
        vbox.addLayout(hbox1)
        vbox.addWidget(self.update_paths_button)
        
        # SET LAYOUT
        self.setLayout(vbox)
Esempio n. 13
0
    def setupUi(self, Theme):
        Theme.setObjectName("Theme")
        Theme.setWindowModality(QtCore.Qt.NonModal)
        Theme.resize(450, 300)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred,
                                           QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(Theme.sizePolicy().hasHeightForWidth())
        Theme.setSizePolicy(sizePolicy)
        Theme.setMinimumSize(QtCore.QSize(100, 0))
        Theme.setBaseSize(QtCore.QSize(0, 0))
        Theme.setStyleSheet("")
        self.gridLayout = QtWidgets.QGridLayout(Theme)
        self.gridLayout.setContentsMargins(-1, -1, -1, 6)
        self.gridLayout.setSpacing(6)
        self.gridLayout.setObjectName("gridLayout")
        self.r2 = QtWidgets.QVBoxLayout()
        self.r2.setObjectName("r2")
        self.horizontalLayout_2 = QtWidgets.QHBoxLayout()
        self.horizontalLayout_2.setObjectName("horizontalLayout_2")
        spacerItem = QtWidgets.QSpacerItem(40, 20,
                                           QtWidgets.QSizePolicy.Expanding,
                                           QtWidgets.QSizePolicy.Minimum)
        self.horizontalLayout_2.addItem(spacerItem)
        self.discardtheme = QtWidgets.QPushButton(Theme)
        self.discardtheme.setObjectName("discardtheme")
        self.horizontalLayout_2.addWidget(self.discardtheme)
        self.savetheme = QtWidgets.QPushButton(Theme)
        self.savetheme.setObjectName("savetheme")
        self.horizontalLayout_2.addWidget(self.savetheme)
        self.r2.addLayout(self.horizontalLayout_2)
        self.gridLayout.addLayout(self.r2, 2, 0, 1, 1)
        self.verticalLayout = QtWidgets.QVBoxLayout()
        self.verticalLayout.setObjectName("verticalLayout")
        self.tabWidget = QtWidgets.QTabWidget(Theme)
        self.tabWidget.setObjectName("tabWidget")
        self.tab = QtWidgets.QWidget()
        self.tab.setObjectName("tab")
        self.layoutWidget = QtWidgets.QWidget(self.tab)
        self.layoutWidget.setGeometry(QtCore.QRect(0, 0, 533, 164))
        self.layoutWidget.setObjectName("layoutWidget")
        self.r1 = QtWidgets.QHBoxLayout(self.layoutWidget)
        self.r1.setContentsMargins(6, 6, 6, 0)
        self.r1.setObjectName("r1")
        self.c1 = QtWidgets.QVBoxLayout()
        self.c1.setObjectName("c1")
        self.h4_c1 = QtWidgets.QHBoxLayout()
        self.h4_c1.setObjectName("h4_c1")
        self.text2_lbl = QtWidgets.QLabel(self.layoutWidget)
        self.text2_lbl.setObjectName("text2_lbl")
        self.h4_c1.addWidget(self.text2_lbl)
        spacerItem1 = QtWidgets.QSpacerItem(40, 20,
                                            QtWidgets.QSizePolicy.Expanding,
                                            QtWidgets.QSizePolicy.Minimum)
        self.h4_c1.addItem(spacerItem1)
        self.text2_btn = QtWidgets.QToolButton(self.layoutWidget)
        self.text2_btn.setText("")
        self.text2_btn.setObjectName("text2_btn")
        self.h4_c1.addWidget(self.text2_btn)
        self.text2 = QtWidgets.QLineEdit(self.layoutWidget)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.text2.sizePolicy().hasHeightForWidth())
        self.text2.setSizePolicy(sizePolicy)
        self.text2.setMinimumSize(QtCore.QSize(75, 0))
        self.text2.setMaximumSize(QtCore.QSize(75, 16777215))
        self.text2.setBaseSize(QtCore.QSize(75, 0))
        self.text2.setReadOnly(True)
        self.text2.setObjectName("text2")
        self.h4_c1.addWidget(self.text2)
        spacerItem2 = QtWidgets.QSpacerItem(20, 20,
                                            QtWidgets.QSizePolicy.Fixed,
                                            QtWidgets.QSizePolicy.Minimum)
        self.h4_c1.addItem(spacerItem2)
        self.c1.addLayout(self.h4_c1)
        self.h1_c2 = QtWidgets.QHBoxLayout()
        self.h1_c2.setObjectName("h1_c2")
        self.tooltip_lbl = QtWidgets.QLabel(self.layoutWidget)
        self.tooltip_lbl.setObjectName("tooltip_lbl")
        self.h1_c2.addWidget(self.tooltip_lbl)
        self.tooltip_btn = QtWidgets.QToolButton(self.layoutWidget)
        self.tooltip_btn.setText("")
        self.tooltip_btn.setObjectName("tooltip_btn")
        self.h1_c2.addWidget(self.tooltip_btn)
        self.tooltip = QtWidgets.QLineEdit(self.layoutWidget)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.tooltip.sizePolicy().hasHeightForWidth())
        self.tooltip.setSizePolicy(sizePolicy)
        self.tooltip.setMinimumSize(QtCore.QSize(75, 0))
        self.tooltip.setMaximumSize(QtCore.QSize(75, 16777215))
        self.tooltip.setReadOnly(True)
        self.tooltip.setObjectName("tooltip")
        self.h1_c2.addWidget(self.tooltip)
        spacerItem3 = QtWidgets.QSpacerItem(20, 20,
                                            QtWidgets.QSizePolicy.Fixed,
                                            QtWidgets.QSizePolicy.Minimum)
        self.h1_c2.addItem(spacerItem3)
        self.c1.addLayout(self.h1_c2)
        self.h3_c1 = QtWidgets.QHBoxLayout()
        self.h3_c1.setObjectName("h3_c1")
        self.text1_lbl = QtWidgets.QLabel(self.layoutWidget)
        self.text1_lbl.setObjectName("text1_lbl")
        self.h3_c1.addWidget(self.text1_lbl)
        spacerItem4 = QtWidgets.QSpacerItem(40, 20,
                                            QtWidgets.QSizePolicy.Expanding,
                                            QtWidgets.QSizePolicy.Minimum)
        self.h3_c1.addItem(spacerItem4)
        self.text1_btn = QtWidgets.QToolButton(self.layoutWidget)
        self.text1_btn.setText("")
        self.text1_btn.setObjectName("text1_btn")
        self.h3_c1.addWidget(self.text1_btn)
        self.text1 = QtWidgets.QLineEdit(self.layoutWidget)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.text1.sizePolicy().hasHeightForWidth())
        self.text1.setSizePolicy(sizePolicy)
        self.text1.setMinimumSize(QtCore.QSize(75, 0))
        self.text1.setMaximumSize(QtCore.QSize(75, 16777215))
        self.text1.setBaseSize(QtCore.QSize(75, 0))
        self.text1.setReadOnly(True)
        self.text1.setObjectName("text1")
        self.h3_c1.addWidget(self.text1)
        spacerItem5 = QtWidgets.QSpacerItem(20, 20,
                                            QtWidgets.QSizePolicy.Fixed,
                                            QtWidgets.QSizePolicy.Minimum)
        self.h3_c1.addItem(spacerItem5)
        self.c1.addLayout(self.h3_c1)
        self.h2_c1 = QtWidgets.QHBoxLayout()
        self.h2_c1.setObjectName("h2_c1")
        self.stats1_lbl = QtWidgets.QLabel(self.layoutWidget)
        self.stats1_lbl.setObjectName("stats1_lbl")
        self.h2_c1.addWidget(self.stats1_lbl)
        spacerItem6 = QtWidgets.QSpacerItem(40, 20,
                                            QtWidgets.QSizePolicy.Expanding,
                                            QtWidgets.QSizePolicy.Minimum)
        self.h2_c1.addItem(spacerItem6)
        self.stats1_btn = QtWidgets.QToolButton(self.layoutWidget)
        self.stats1_btn.setText("")
        self.stats1_btn.setObjectName("stats1_btn")
        self.h2_c1.addWidget(self.stats1_btn)
        self.stats1 = QtWidgets.QLineEdit(self.layoutWidget)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.stats1.sizePolicy().hasHeightForWidth())
        self.stats1.setSizePolicy(sizePolicy)
        self.stats1.setMinimumSize(QtCore.QSize(75, 0))
        self.stats1.setMaximumSize(QtCore.QSize(75, 16777215))
        self.stats1.setBaseSize(QtCore.QSize(75, 0))
        self.stats1.setReadOnly(True)
        self.stats1.setObjectName("stats1")
        self.h2_c1.addWidget(self.stats1)
        spacerItem7 = QtWidgets.QSpacerItem(20, 20,
                                            QtWidgets.QSizePolicy.Fixed,
                                            QtWidgets.QSizePolicy.Minimum)
        self.h2_c1.addItem(spacerItem7)
        self.c1.addLayout(self.h2_c1)
        spacerItem8 = QtWidgets.QSpacerItem(20, 40,
                                            QtWidgets.QSizePolicy.Minimum,
                                            QtWidgets.QSizePolicy.Expanding)
        self.c1.addItem(spacerItem8)
        self.r1.addLayout(self.c1)
        self.c2 = QtWidgets.QVBoxLayout()
        self.c2.setObjectName("c2")
        self.h1_c1 = QtWidgets.QHBoxLayout()
        self.h1_c1.setObjectName("h1_c1")
        self.stats2_lbl = QtWidgets.QLabel(self.layoutWidget)
        self.stats2_lbl.setObjectName("stats2_lbl")
        self.h1_c1.addWidget(self.stats2_lbl)
        spacerItem9 = QtWidgets.QSpacerItem(40, 20,
                                            QtWidgets.QSizePolicy.Expanding,
                                            QtWidgets.QSizePolicy.Minimum)
        self.h1_c1.addItem(spacerItem9)
        spacerItem10 = QtWidgets.QSpacerItem(20, 20,
                                             QtWidgets.QSizePolicy.Fixed,
                                             QtWidgets.QSizePolicy.Minimum)
        self.h1_c1.addItem(spacerItem10)
        self.stats2_btn = QtWidgets.QToolButton(self.layoutWidget)
        self.stats2_btn.setText("")
        self.stats2_btn.setObjectName("stats2_btn")
        self.h1_c1.addWidget(self.stats2_btn)
        self.stats2 = QtWidgets.QLineEdit(self.layoutWidget)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.stats2.sizePolicy().hasHeightForWidth())
        self.stats2.setSizePolicy(sizePolicy)
        self.stats2.setMinimumSize(QtCore.QSize(75, 0))
        self.stats2.setMaximumSize(QtCore.QSize(75, 16777215))
        self.stats2.setBaseSize(QtCore.QSize(75, 0))
        self.stats2.setReadOnly(True)
        self.stats2.setObjectName("stats2")
        self.h1_c1.addWidget(self.stats2)
        self.c2.addLayout(self.h1_c1)
        self.h2_c2 = QtWidgets.QHBoxLayout()
        self.h2_c2.setObjectName("h2_c2")
        self.label_7 = QtWidgets.QLabel(self.layoutWidget)
        self.label_7.setEnabled(True)
        self.label_7.setObjectName("label_7")
        self.h2_c2.addWidget(self.label_7)
        spacerItem11 = QtWidgets.QSpacerItem(40, 20,
                                             QtWidgets.QSizePolicy.Expanding,
                                             QtWidgets.QSizePolicy.Minimum)
        self.h2_c2.addItem(spacerItem11)
        self.toolButton_6 = QtWidgets.QToolButton(self.layoutWidget)
        self.toolButton_6.setText("")
        self.toolButton_6.setObjectName("toolButton_6")
        self.h2_c2.addWidget(self.toolButton_6)
        self.lineEdit_3 = QtWidgets.QLineEdit(self.layoutWidget)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.lineEdit_3.sizePolicy().hasHeightForWidth())
        self.lineEdit_3.setSizePolicy(sizePolicy)
        self.lineEdit_3.setMinimumSize(QtCore.QSize(75, 0))
        self.lineEdit_3.setMaximumSize(QtCore.QSize(75, 16777215))
        self.lineEdit_3.setReadOnly(True)
        self.lineEdit_3.setObjectName("lineEdit_3")
        self.h2_c2.addWidget(self.lineEdit_3)
        self.c2.addLayout(self.h2_c2)
        self.h3_c2 = QtWidgets.QHBoxLayout()
        self.h3_c2.setObjectName("h3_c2")
        self.label_6 = QtWidgets.QLabel(self.layoutWidget)
        self.label_6.setObjectName("label_6")
        self.h3_c2.addWidget(self.label_6)
        spacerItem12 = QtWidgets.QSpacerItem(40, 20,
                                             QtWidgets.QSizePolicy.Expanding,
                                             QtWidgets.QSizePolicy.Minimum)
        self.h3_c2.addItem(spacerItem12)
        self.toolButton_7 = QtWidgets.QToolButton(self.layoutWidget)
        self.toolButton_7.setText("")
        self.toolButton_7.setObjectName("toolButton_7")
        self.h3_c2.addWidget(self.toolButton_7)
        self.lineEdit_4 = QtWidgets.QLineEdit(self.layoutWidget)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.lineEdit_4.sizePolicy().hasHeightForWidth())
        self.lineEdit_4.setSizePolicy(sizePolicy)
        self.lineEdit_4.setMinimumSize(QtCore.QSize(75, 0))
        self.lineEdit_4.setMaximumSize(QtCore.QSize(75, 16777215))
        self.lineEdit_4.setReadOnly(True)
        self.lineEdit_4.setObjectName("lineEdit_4")
        self.h3_c2.addWidget(self.lineEdit_4)
        self.c2.addLayout(self.h3_c2)
        self.h4_c2 = QtWidgets.QHBoxLayout()
        self.h4_c2.setObjectName("h4_c2")
        self.label_5 = QtWidgets.QLabel(self.layoutWidget)
        self.label_5.setObjectName("label_5")
        self.h4_c2.addWidget(self.label_5)
        spacerItem13 = QtWidgets.QSpacerItem(40, 20,
                                             QtWidgets.QSizePolicy.Expanding,
                                             QtWidgets.QSizePolicy.Minimum)
        self.h4_c2.addItem(spacerItem13)
        self.toolButton_8 = QtWidgets.QToolButton(self.layoutWidget)
        self.toolButton_8.setText("")
        self.toolButton_8.setObjectName("toolButton_8")
        self.h4_c2.addWidget(self.toolButton_8)
        self.lineEdit = QtWidgets.QLineEdit(self.layoutWidget)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.lineEdit.sizePolicy().hasHeightForWidth())
        self.lineEdit.setSizePolicy(sizePolicy)
        self.lineEdit.setMinimumSize(QtCore.QSize(75, 0))
        self.lineEdit.setMaximumSize(QtCore.QSize(75, 16777215))
        self.lineEdit.setReadOnly(True)
        self.lineEdit.setObjectName("lineEdit")
        self.h4_c2.addWidget(self.lineEdit)
        self.c2.addLayout(self.h4_c2)
        spacerItem14 = QtWidgets.QSpacerItem(20, 40,
                                             QtWidgets.QSizePolicy.Minimum,
                                             QtWidgets.QSizePolicy.Expanding)
        self.c2.addItem(spacerItem14)
        self.r1.addLayout(self.c2)
        self.tabWidget.addTab(self.tab, "")
        self.tab_2 = QtWidgets.QWidget()
        self.tab_2.setObjectName("tab_2")
        self.tabWidget.addTab(self.tab_2, "")
        self.verticalLayout.addWidget(self.tabWidget)
        self.gridLayout.addLayout(self.verticalLayout, 0, 0, 1, 1)

        self.retranslateUi(Theme)
        self.setVisibility()
        QtCore.QMetaObject.connectSlotsByName(Theme)
Esempio n. 14
0
    def setupUi(self, Searcher, animated):
        self.animated = animated
        Searcher.setObjectName("Searcher")
        Searcher.setWindowModality(QtCore.Qt.NonModal)
        Searcher.setStyleSheet(
            u"background-color: rgb(42,42,42); border: 0px solid black")

        self.mainlayout = QtWidgets.QVBoxLayout()
        self.gridLayout = QtWidgets.QGridLayout()
        self.gridLayout.setSpacing(0)
        self.gridLayout.setContentsMargins(0, 0, 0, 0)

        self.verticalLayout = QtWidgets.QVBoxLayout()
        self.verticalLayout.setSpacing(0)

        self.titlerow = QtWidgets.QHBoxLayout()
        self.titlerow.setSpacing(5)

        self.titlespacer1 = QtWidgets.QSpacerItem(
            8, 0, QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Minimum)

        # ------------------------------------------ Header
        # NOTE Header -------------------------------------
        self.searcherlbl = QtWidgets.QLabel("Searcher")
        font = QtGui.QFont()
        font.setPointSize(15)
        self.searcherlbl.setFont(font)
        self.searcherlbl.setAlignment(QtCore.Qt.AlignCenter)

        self.titlespacer2 = QtWidgets.QSpacerItem(
            40, 30, QtWidgets.QSizePolicy.Expanding,
            QtWidgets.QSizePolicy.Minimum)

        self.expander = QtWidgets.QToolButton()
        self.expander.setObjectName("expander")

        self.metricpos = QtWidgets.QToolButton()
        self.metricpos.setObjectName("metricpos")

        self.contexttoggle = QtWidgets.QPushButton()
        self.contexttoggle.setObjectName("contexttoggle")

        self.helpButton = HelpButton.HelpButton("main", la.TT_MW['helpButton'],
                                                16, Searcher)
        self.helpButton.setObjectName("helpButton")

        self.pinwindow_btn = QtWidgets.QToolButton()
        self.pinwindow_btn.setObjectName("pinwindow")

        self.opensettings_btn = QtWidgets.QToolButton()
        self.opensettings_btn.setObjectName("opensettingstool")

        self.titlespacer3 = QtWidgets.QSpacerItem(
            8, 0, QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Minimum)

        # ----------------------------------- Search Filter
        # NOTE Search Filter ------------------------------
        self.searchrow = QtWidgets.QHBoxLayout()
        self.searchrow.setSpacing(0)
        self.frame = QtWidgets.QFrame()
        searchframe_details = QtWidgets.QSizePolicy(
            QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Preferred)
        searchframe_details.setHorizontalStretch(0)
        searchframe_details.setVerticalStretch(0)
        searchframe_details.setHeightForWidth(
            self.frame.sizePolicy().hasHeightForWidth())
        self.frame.setSizePolicy(searchframe_details)
        self.frame.setMinimumSize(QtCore.QSize(20, 20))
        self.frame.setMaximumSize(QtCore.QSize(500, 200))
        self.frame.setFrameShape(QtWidgets.QFrame.StyledPanel)
        self.frame.setFrameShadow(QtWidgets.QFrame.Plain)
        self.frame.setStyleSheet(
            u"background-color: rgb(19, 19, 19); color: rgb(19, 19, 19);")
        self.searchfilter_btn = QtWidgets.QToolButton(self.frame)
        self.searchfilter_btn.setObjectName("searchfilter")
        self.searchfilter_btn.setGeometry(QtCore.QRect(0, 0, 36, 36))
        self.searchfilter_btn.setBaseSize(QtCore.QSize(30, 30))
        self.searchfilter_btn.setStyleSheet(
            u"background-color: rgb(19, 19, 19);")
        self.searchfilter_btn.setArrowType(QtCore.Qt.NoArrow)
        self.searchfilter_btn.setParent(self.frame)

        # -------------------------------------- Search Box
        # NOTE Search Box ---------------------------------
        self.searchbox_txt = QtWidgets.QLineEdit()
        self.searchbox_txt.setObjectName("searchbox")
        searchbox_details = QtWidgets.QSizePolicy(
            QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
        searchbox_details.setHorizontalStretch(99)
        searchbox_details.setVerticalStretch(0)
        # searchbox_details.setHeightForWidth(
        #     self.searchbox_txt.sizePolicy().hasHeightForWidth())
        self.searchbox_txt.setSizePolicy(searchbox_details)
        self.searchbox_txt.setMinimumSize(QtCore.QSize(50, 0))
        self.searchbox_txt.setMouseTracking(False)
        self.searchbox_txt.setStyleSheet(u"background-color: rgb(19, 19, 19);")
        self.searchbox_txt.setFrame(False)

        # ------------------------------------ Results Tree
        # NOTE Results Tree -------------------------------
        self.searchresults_tree = QtWidgets.QTreeWidget()
        self.searchresults_tree.setObjectName("searchresultstree")

        # Header ---------
        __qtreewidgetitem = QtWidgets.QTreeWidgetItem()
        __qtreewidgetitem.setText(0, u"1")
        resultstree_header = QtGui.QFont()
        resultstree_header.setPointSize(9)
        __qtreewidgetitem.setFont(0, resultstree_header)
        self.searchresults_tree.setHeaderItem(__qtreewidgetitem)

        resultstree_details = QtWidgets.QSizePolicy(
            QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Expanding)
        resultstree_details.setHorizontalStretch(0)
        resultstree_details.setVerticalStretch(0)
        self.searchresults_tree.setSizePolicy(resultstree_details)

        resultstree_font = QtGui.QFont()
        resultstree_font.setPointSize(9)
        self.searchresults_tree.setFont(resultstree_font)

        self.searchresults_tree.setMouseTracking(False)
        self.searchresults_tree.setFocusPolicy(QtCore.Qt.NoFocus)
        self.searchresults_tree.setFrameShadow(QtWidgets.QFrame.Sunken)
        self.searchresults_tree.setLineWidth(0)

        self.searchresults_tree.setSizeAdjustPolicy(
            QtWidgets.QAbstractScrollArea.AdjustToContents)
        self.searchresults_tree.setAlternatingRowColors(True)
        self.searchresults_tree.setSelectionMode(
            QtWidgets.QAbstractItemView.SingleSelection)
        self.searchresults_tree.setSelectionBehavior(
            QtWidgets.QAbstractItemView.SelectRows)

        # -------------------------------------- Info Panel
        # NOTE Info Panel ---------------------------------
        self.infobar = QtWidgets.QHBoxLayout()
        self.infobar.setObjectName("infobar")
        self.infobargrid = QtWidgets.QGridLayout()
        self.infobargrid.setObjectName("infobargrid")

        # -------------------------------------- Info Panel
        # NOTE Info Panel ---------------------------------
        self.info_lbl = QtWidgets.QLabel()
        self.infolbl_font = QtGui.QFont()
        self.infolbl_font.setPointSize(9)
        self.infolbl_font.setBold(False)
        self.infolbl_font.setWeight(40)
        self.info_lbl.setFont(self.infolbl_font)
        self.info_lbl.setStyleSheet(
            u"background-color: rgba(11, 11, 11, 0); border-bottom: 1px solid rgb(100, 100, 100);"
        )
        self.info_lbl.setMargin(3)
        self.info_lbl.setIndent(5)

        # -------------------------------------- Info Panel
        # NOTE Info Panel ---------------------------------
        self.overlay = overlayLabel(self.info_lbl)
        self.overlay.setFont(self.infolbl_font)
        self.overlay.setStyleSheet(
            u"background-color: rgb(11, 11, 11); border-bottom: 1px solid rgb(100, 100, 100); "
        )
        self.overlay.setMargin(3)
        self.overlay.setIndent(5)

        # -------------------------------------- Info Panel
        # NOTE Info Panel ---------------------------------
        self.treetotal_lbl = QtWidgets.QLabel()
        self.treetotal_lbl.setObjectName("treetotal_lbl")
        # Size ----------
        treetotal_size = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum,
                                               QtWidgets.QSizePolicy.Preferred)
        treetotal_size.setHorizontalStretch(0)
        treetotal_size.setVerticalStretch(0)
        treetotal_size.setHeightForWidth(
            self.treetotal_lbl.sizePolicy().hasHeightForWidth())
        self.treetotal_lbl.setSizePolicy(treetotal_size)
        self.treetotal_lbl.setMinimumSize(QtCore.QSize(160, 0))
        self.treetotal_lbl.setAlignment(QtCore.Qt.AlignRight
                                        | QtCore.Qt.AlignTrailing
                                        | QtCore.Qt.AlignVCenter)

        # Style ---------
        self.treetotallbl_font = QtGui.QFont()
        self.treetotallbl_font.setPointSize(9)
        self.treetotallbl_font.setBold(False)
        self.treetotallbl_font.setWeight(50)
        self.treetotal_lbl.setFont(self.treetotallbl_font)
        self.treetotal_lbl.setStyleSheet(
            u"background-color: rgb(11, 11, 11); border-bottom: 1px solid rgb(100, 100, 100); "
        )
        self.treetotal_lbl.setMargin(3)
        self.treetotal_lbl.setIndent(5)

        # ------------------------------------------ Layout
        # NOTE Layout -------------------------------------
        self.titlerow.addItem(self.titlespacer1)
        self.titlerow.addWidget(self.searcherlbl)
        self.titlerow.addItem(self.titlespacer2)
        self.titlerow.addWidget(self.expander)
        self.titlerow.addWidget(self.metricpos)
        self.titlerow.addWidget(self.contexttoggle)
        self.titlerow.addWidget(self.helpButton)
        self.titlerow.addWidget(self.pinwindow_btn)
        self.titlerow.addWidget(self.opensettings_btn)
        self.titlerow.addItem(self.titlespacer3)
        self.verticalLayout.addLayout(self.titlerow)

        # self.searchrow.addWidget(self.frame)
        self.searchgrid = QtWidgets.QGridLayout()
        self.searchgrid.addWidget(self.frame, 1, 0, 1, 1)
        self.searchgrid.addWidget(self.searchfilter_btn, 1, 0, 1, 1)
        self.searchgrid.addWidget(self.searchbox_txt, 1, 1, 1, 1)
        self.searchrow.addLayout(self.searchgrid)
        self.verticalLayout.addLayout(self.searchrow)

        self.verticalLayout.addWidget(self.searchresults_tree)
        self.gridLayout.addLayout(self.verticalLayout, 1, 0, 1, 1)

        self.infobargrid.addWidget(self.overlay, 1, 0, 1, 1)
        self.infobargrid.addWidget(self.info_lbl, 1, 0, 1, 1)
        self.infobargrid.addWidget(self.treetotal_lbl, 1, 1, 1, 1)
        self.infobar.addLayout(self.infobargrid)
        self.gridLayout.addLayout(self.infobar, 3, 0, 1, 1)

        self.mainlayout.setContentsMargins(0, 0, 0, 0)

        # --------------------------------------- ResizeHandles
        # NOTE ResizeHandles ----------------------------------
        self.leftresize = QtWidgets.QSizeGrip(self.info_lbl)
        self.leftresize.setObjectName("resizeleft")
        self.leftresize.setMaximumSize(QtCore.QSize(25, 25))
        self.leftresize.setStyleSheet(
            u"color: rgba(0, 0, 0, 0); background-color: rgba(0, 0, 0, 0);")
        pos = self.info_lbl.mapToGlobal(QtCore.QPoint(-3, 0))
        self.leftresize.setGeometry(pos.x(), pos.y(), self.leftresize.width(),
                                    self.leftresize.height())

        self.rightresize = QtWidgets.QSizeGrip(self.treetotal_lbl)
        self.rightresize.setMaximumSize(QtCore.QSize(25, 25))
        self.rightresize.setObjectName("resizeright")
        self.rightresize.setStyleSheet(
            u"color: rgba(0, 0, 0, 0); background-color: rgba(0, 0, 0, 0);")
        pos = self.treetotal_lbl.mapToGlobal(QtCore.QPoint(138, 0))
        self.rightresize.setGeometry(pos.x(), pos.y(),
                                     self.rightresize.width(),
                                     self.rightresize.height())
        self.vlayout = self.gridLayout
Esempio n. 15
0
    def setupUi(self, SearcherSettings, width, height, animated):
        self.width = width
        self.height = height
        self.animated = animated

        SearcherSettings.setObjectName("SearcherSettings")
        SearcherSettings.setWindowModality(QtCore.Qt.NonModal)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred,
                                           QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            SearcherSettings.sizePolicy().hasHeightForWidth())
        SearcherSettings.setSizePolicy(sizePolicy)
        SearcherSettings.setMinimumSize(QtCore.QSize(width, height))
        SearcherSettings.setBaseSize(QtCore.QSize(0, 0))

        self.gridLayout = QtWidgets.QGridLayout(SearcherSettings)
        self.gridLayout.setContentsMargins(-1, -1, -1, -1)
        self.gridLayout.setObjectName("gridLayout")
        self.verticallayout = QtWidgets.QVBoxLayout()
        self.verticallayout.setObjectName("verticalLayout")
        self.verticallayout.setSpacing(10)

        # ------------------------------------------------- headerrow
        # NOTE headerrow --------------------------------------------
        self.headerrow = QtWidgets.QHBoxLayout()
        self.headerrow.setObjectName("headerrow")

        self.projectTitle = QtWidgets.QLabel(SearcherSettings)
        font = QtGui.QFont()
        font.setPointSize(15)
        self.projectTitle.setFont(font)
        self.projectTitle.setAlignment(QtCore.Qt.AlignCenter)
        self.projectTitle.setObjectName("projectTitle")
        self.headerrow.addWidget(self.projectTitle)

        spaceritem = QtWidgets.QSpacerItem(40, 20,
                                           QtWidgets.QSizePolicy.Expanding,
                                           QtWidgets.QSizePolicy.Minimum)
        self.headerrow.addItem(spaceritem)

        self.animatedsettings_chk = QtWidgets.QCheckBox(SearcherSettings)
        self.animatedsettings_chk.setLayoutDirection(QtCore.Qt.RightToLeft)
        self.animatedsettings_chk.setObjectName("animatedsettings_chk")
        self.headerrow.addWidget(self.animatedsettings_chk)

        self.windowsize_chk = QtWidgets.QCheckBox(SearcherSettings)
        self.windowsize_chk.setLayoutDirection(QtCore.Qt.RightToLeft)
        self.windowsize_chk.setObjectName("windowsize_chk")
        self.headerrow.addWidget(self.windowsize_chk)
        self.verticallayout.addLayout(self.headerrow)

        self.line = QtWidgets.QFrame(SearcherSettings)
        self.line.setFrameShape(QtWidgets.QFrame.HLine)
        self.line.setFrameShadow(QtWidgets.QFrame.Sunken)
        self.line.setObjectName("line")
        self.verticallayout.addWidget(self.line)

        # ------------------------------------------------- secondrow
        # NOTE Second Row -------------------------------------------
        self.secondrow = QtWidgets.QHBoxLayout()
        self.secondrow.setObjectName("secondrow")

        # self.lang_cbox = QtWidgets.QComboBox(SearcherSettings)
        # self.lang_cbox.setObjectName("lang_cbox")
        # self.lang_cbox.addItem("")
        # self.secondrow.addWidget(self.lang_cbox)

        spaceritem = QtWidgets.QSpacerItem(40, 20,
                                           QtWidgets.QSizePolicy.Expanding,
                                           QtWidgets.QSizePolicy.Minimum)
        self.secondrow.addItem(spaceritem)

        self.maxresults_lbl = QtWidgets.QLabel(SearcherSettings)
        self.maxresults_lbl.setObjectName("maxresults_lbl")
        self.secondrow.addWidget(self.maxresults_lbl)
        self.maxresults_txt = QtWidgets.QSpinBox(SearcherSettings)
        self.maxresults_txt.setMinimum(1)
        self.maxresults_txt.setMaximum(9999)
        self.maxresults_txt.setObjectName("maxresults_txt")
        self.secondrow.addWidget(self.maxresults_txt)

        self.inmemory_chk = QtWidgets.QCheckBox(SearcherSettings)
        self.inmemory_chk.setLayoutDirection(QtCore.Qt.RightToLeft)
        self.inmemory_chk.setTristate(False)
        self.inmemory_chk.setObjectName("inmemory_chk")
        self.secondrow.addWidget(self.inmemory_chk)

        self.verticallayout.addLayout(self.secondrow)

        # -------------------------------------------------- thirdrow
        # NOTE Third Row --------------------------------------------
        self.thirdrow = QtWidgets.QHBoxLayout()
        self.thirdrow.setObjectName("thirdrow")

        self.defaulthotkey_lbl = QtWidgets.QLabel(SearcherSettings)
        self.defaulthotkey_lbl.setObjectName("defaulthotkey_lbl")
        self.thirdrow.addWidget(self.defaulthotkey_lbl)

        self.defaulthotkey_txt = QtWidgets.QLineEdit(SearcherSettings)
        self.defaulthotkey_txt.setToolTip("")
        self.defaulthotkey_txt.setReadOnly(True)
        self.defaulthotkey_txt.setObjectName("defaulthotkey_txt")
        self.thirdrow.addWidget(self.defaulthotkey_txt)

        self.hotkey_icon = QtWidgets.QToolButton(SearcherSettings)
        self.hotkey_icon.setPopupMode(QtWidgets.QToolButton.InstantPopup)
        self.hotkey_icon.setObjectName("hotkey_icon")
        self.thirdrow.addWidget(self.hotkey_icon)
        self.verticallayout.addLayout(self.thirdrow)

        # ------------------------------------------------- fourthrow
        # NOTE Fourth Row -------------------------------------------
        self.fourthrow = QtWidgets.QHBoxLayout()
        self.fourthrow.setObjectName("fourthrow")

        self.dbpath_lbl = QtWidgets.QLabel(SearcherSettings)
        self.dbpath_lbl.setObjectName("dbpath_lbl")
        self.fourthrow.addWidget(self.dbpath_lbl)

        self.databasepath_txt = QtWidgets.QLineEdit(SearcherSettings)
        self.databasepath_txt.setObjectName("databasepath_txt")
        self.fourthrow.addWidget(self.databasepath_txt)

        self.dbpath_icon = QtWidgets.QToolButton(SearcherSettings)
        self.dbpath_icon.setObjectName("dbpath_icon")
        self.fourthrow.addWidget(self.dbpath_icon)

        self.verticallayout.addLayout(self.fourthrow)

        # -------------------------------------------------- fifthrow
        # NOTE Fifth Row --------------------------------------------
        self.fifthrow = QtWidgets.QHBoxLayout()
        self.fifthrow.setObjectName("fifthrow")

        # self.maint_lbl = QtWidgets.QLabel(SearcherSettings)
        # self.maint_lbl.setObjectName("maint_lbl")
        # self.fifthrow.addWidget(self.maint_lbl)

        # self.metrics_chk = QtWidgets.QCheckBox(SearcherSettings)
        # self.metrics_chk.setLayoutDirection(QtCore.Qt.RightToLeft)
        # self.metrics_chk.setTristate(False)
        # self.metrics_chk.setObjectName("metrics_chk")
        # self.fifthrow.addWidget(self.metrics_chk)

        # self.cleardata_btn = QtWidgets.QPushButton(SearcherSettings)
        # self.cleardata_btn.setObjectName("cleardata_btn")
        # self.fifthrow.addWidget(self.cleardata_btn)

        # self.verticallayout.addLayout(self.fifthrow)

        # ---------------------------------------------------- Spacer
        self.line2 = QtWidgets.QFrame(SearcherSettings)
        self.line2.setFrameShape(QtWidgets.QFrame.HLine)
        self.line2.setFrameShadow(QtWidgets.QFrame.Sunken)
        self.line2.setObjectName("line2")
        self.verticallayout.addWidget(self.line2)
        # ---------------------------------------------------- Spacer

        # -------------------------------------------------- sixthrow
        # NOTE Sixth Row --------------------------------------------
        self.sixthrow = QtWidgets.QHBoxLayout()
        self.sixthrow.setObjectName("sixthrow")

        self.about_btn = QtWidgets.QToolButton(SearcherSettings)
        self.about_btn.setObjectName("about")
        self.sixthrow.addWidget(self.about_btn)

        self.bug_btn = QtWidgets.QToolButton(SearcherSettings)
        self.bug_btn.setObjectName("bugreport")
        self.sixthrow.addWidget(self.bug_btn)

        self.theme_btn = QtWidgets.QToolButton(SearcherSettings)
        self.theme_btn.setObjectName("theme")
        self.sixthrow.addWidget(self.theme_btn)

        spacerItem1 = QtWidgets.QSpacerItem(40, 25,
                                            QtWidgets.QSizePolicy.Expanding,
                                            QtWidgets.QSizePolicy.Fixed)
        self.sixthrow.addItem(spacerItem1)

        self.metrics_chk = QtWidgets.QCheckBox(SearcherSettings)
        self.metrics_chk.setLayoutDirection(QtCore.Qt.RightToLeft)
        self.metrics_chk.setTristate(False)
        self.metrics_chk.setObjectName("metrics_chk")
        self.sixthrow.addWidget(self.metrics_chk)

        self.debuglevel_cbx = QtWidgets.QComboBox(SearcherSettings)
        self.debuglevel_cbx.setObjectName("debuglevel_cbx")
        self.sixthrow.addWidget(self.debuglevel_cbx)

        self.debugflag_chk = QtWidgets.QCheckBox(SearcherSettings)
        self.debugflag_chk.setLayoutDirection(QtCore.Qt.RightToLeft)
        self.debugflag_chk.setObjectName("debugflag_chk")
        self.sixthrow.addWidget(self.debugflag_chk)

        self.discard_btn = QtWidgets.QPushButton(SearcherSettings)
        self.discard_btn.setObjectName("discard_btn")
        self.sixthrow.addWidget(self.discard_btn)

        self.save_btn = QtWidgets.QPushButton(SearcherSettings)
        self.save_btn.setObjectName("save_btn")
        self.sixthrow.addWidget(self.save_btn)

        self.verticallayout.addLayout(self.sixthrow)

        if not self.animated:
            self.gridLayout.addLayout(self.verticallayout, 1, 0, 1, 1)

        # -----------------------------------------------------------
        self.retranslateUi(SearcherSettings)
        QtCore.QMetaObject.connectSlotsByName(SearcherSettings)
Esempio n. 16
0
    def __init__(self, cpu_config=None, gpu_config=None, parent=None):
        super(_DeviceWidget, self).__init__(parent=parent)

        self.cpu_config = cpu_config
        self.gpu_config = gpu_config

        if gpu_config:
            self.device_name_label = QtWidgets.QLabel(self)
            self.device_name_label.setText('GPU "{}"'.format(gpu_config.gpu_info.name))

            self.main_layout = QtWidgets.QHBoxLayout(self)
            self.main_layout.addWidget(self.device_name_label)

            self.main_layout.addStretch()

            self.is_enabled_check_box = QtWidgets.QCheckBox(self)
            self.is_enabled_check_box.setChecked(gpu_config.is_enabled)
            self.is_enabled_check_box.stateChanged.connect(self.on_gpu_update)
            self.main_layout.addWidget(self.is_enabled_check_box)

        elif cpu_config:
            self.name_container_widget = QtWidgets.QWidget(self)
            self.name_container_layout = QtWidgets.QHBoxLayout(self.name_container_widget)
            self.name_container_layout.setContentsMargins(0, 0, 0, 0)

            self.name_label = QtWidgets.QLabel(self.name_container_widget)
            self.name_label.setText('CPU')
            self.name_container_layout.addWidget(self.name_label)

            self.name_container_layout.addStretch()

            is_cpu_enabled = cpu_config.num_active_threads > 0

            self.is_enabled_check_box = QtWidgets.QCheckBox(self.name_container_widget)
            self.is_enabled_check_box.setChecked(is_cpu_enabled)
            self.is_enabled_check_box.stateChanged.connect(self.on_cpu_enabled_update)
            self.name_container_layout.addWidget(self.is_enabled_check_box)

            self.num_threads_container_widget = QtWidgets.QWidget(self)
            self.num_threads_container_layout = QtWidgets.QHBoxLayout(self.num_threads_container_widget)
            self.num_threads_container_layout.setContentsMargins(0, 0, 0, 0)

            self.num_threads_label = QtWidgets.QLabel(self.num_threads_container_widget)
            self.num_threads_label.setText('Number of Threads')
            self.num_threads_container_layout.addWidget(self.num_threads_label)

            self.num_threads_container_layout.addStretch()

            self.num_threads_spin_box = QtWidgets.QSpinBox(self.num_threads_container_widget)
            self.num_threads_spin_box.setValue(cpu_config.num_active_threads)
            self.num_threads_spin_box.setRange(1, cpu_config.cpu_info.numThreads)
            self.num_threads_spin_box.valueChanged.connect(self.on_cpu_num_threads_update)
            if not is_cpu_enabled:
                self.num_threads_container_widget.hide()
            self.num_threads_container_layout.addWidget(self.num_threads_spin_box)

            self.main_layout = QtWidgets.QVBoxLayout(self)
            self.main_layout.addWidget(self.name_container_widget)
            self.main_layout.addWidget(self.num_threads_container_widget)

        self.main_layout.setContentsMargins(
            self.main_layout.contentsMargins().left() // 2,
            self.main_layout.contentsMargins().top() // 4,
            self.main_layout.contentsMargins().right() // 2,
            self.main_layout.contentsMargins().bottom() // 4)
Esempio n. 17
0
    def __init__(self, handler, width, height, parent=None):
        super(SearcherSettings, self).__init__(parent=parent)
        # -------------------------------------------- settings
        # NOTE settings ---------------------------------------
        self.parentwindow = parent
        self.settings = {}
        self.context_dict = {}
        self.command_dict = {}
        self.currentsettings = {}
        self.performcheck = True
        self.contexts = None
        self.commands = None
        self.addKeyWidget = None
        self.context_data = None
        self.command_data = None
        self.keys_changed = False
        self.keystring = ""
        self.keyindex = 0
        self.canedit = False
        self.KeySequence = None
        self.hkholder = ""
        self.datahandler = handler
        self.isopened = False
        self.resetdb = False
        self.waitforclose = False
        self.modifylayout = False
        self.uiwidth = width
        self.uiheight = height
        self.windowlist = ["about", "bugreport", "theme"]
        self.parentwindow.oldPos = self.parentwindow.pos()

        # --------------------------------------------- beginui
        # NOTE beginui ----------------------------------------
        self.setObjectName('searcher-settings')
        self.setAutoFillBackground(True)
        self.setBackgroundRole(QtGui.QPalette.Window)
        self.settings = get_settings()
        self.isdebug = util.Dbug(
            self.settings[util.SETTINGS_KEYS[4]],
            str(self.settings[util.SETTINGS_KEYS[10]]),
            self.settings[util.SETTINGS_KEYS[12]],
            self.settings[util.SETTINGS_KEYS[13]],
        )

        self.la = la.TT_SETTINGS
        # Load UI File
        self.ui = searcher_settings_ui.Ui_SearcherSettings()
        self.ui.setupUi(self, self.uiwidth, self.uiheight,
                        bc(self.settings[util.SETTINGS_KEYS[8]]))
        self.ui.retranslateUi(self)

        self.about = about.About(self)
        self.about.setAttribute(QtCore.Qt.WA_StyledBackground, True)
        self.about.setWindowFlags(QtCore.Qt.Tool
                                  | QtCore.Qt.FramelessWindowHint
                                  | QtCore.Qt.CustomizeWindowHint)
        self.about.resize(width, height - 180)

        self.bugreport = bugreport.BugReport(self)
        self.bugreport.setAttribute(QtCore.Qt.WA_StyledBackground, True)
        self.bugreport.setWindowFlags(QtCore.Qt.Tool
                                      | QtCore.Qt.FramelessWindowHint
                                      | QtCore.Qt.CustomizeWindowHint)
        self.bugreport.resize(width, height - 300)

        self.theme = theme.Theme(self)
        self.theme.setAttribute(QtCore.Qt.WA_StyledBackground, True)
        self.theme.setWindowFlags(QtCore.Qt.Tool
                                  | QtCore.Qt.FramelessWindowHint
                                  | QtCore.Qt.CustomizeWindowHint
                                  | QtCore.Qt.NoDropShadowWindowHint)
        self.theme.resize(width, height - 90)

        self.settingslayout = QtWidgets.QVBoxLayout()

        # Get UI Elements
        self.hotkey_icon = self.ui.hotkey_icon

        # headerrow
        self.in_memory_db = self.ui.inmemory_chk
        self.in_memory_db.setToolTip(
            la.TT_SETTINGS[self.in_memory_db.objectName()])
        self.savewindowsize = self.ui.windowsize_chk
        self.savewindowsize.setToolTip(
            la.TT_SETTINGS[self.savewindowsize.objectName()])

        # secondrow
        self.ui.maxresults_lbl.setToolTip(
            la.TT_SETTINGS[self.ui.maxresults_lbl.objectName()])
        self.maxresults = self.ui.maxresults_txt
        self.maxresults.setToolTip(
            la.TT_SETTINGS[self.maxresults.objectName()])
        self.animatedsettings = self.ui.animatedsettings_chk
        self.animatedsettings.setToolTip(
            la.TT_SETTINGS[self.animatedsettings.objectName()])

        # thirdrow
        self.ui.defaulthotkey_lbl.setToolTip(
            la.TT_SETTINGS[self.ui.defaulthotkey_lbl.objectName()])
        self.defaulthotkey = self.ui.defaulthotkey_txt
        self.defaulthotkey.setToolTip(
            la.TT_SETTINGS[self.defaulthotkey.objectName()])

        # fourthrow
        self.ui.dbpath_lbl.setToolTip(
            la.TT_SETTINGS[self.ui.dbpath_lbl.objectName()])
        self.database_path = self.ui.databasepath_txt
        self.database_path.setToolTip(
            la.TT_SETTINGS[self.database_path.objectName()])
        self.dbpath_btn = self.ui.dbpath_icon
        self.dbpath_btn.setToolTip(
            la.TT_SETTINGS[self.dbpath_btn.objectName()])
        dbpath_button_size = hou.ui.scaledSize(16)
        self.dbpath_btn.setProperty("flat", True)
        self.dbpath_btn.setIcon(util.FILE_ICON)
        self.dbpath_btn.setIconSize(
            QtCore.QSize(dbpath_button_size, dbpath_button_size))

        # fifthrow
        self.metrics = self.ui.metrics_chk
        self.metrics.setVisible(bc(self.settings[util.SETTINGS_KEYS[4]]))
        self.metrics.setToolTip(la.TT_SETTINGS[self.metrics.objectName()])
        # self.cleardata = self.ui.cleardata_btn
        # self.cleardata.setToolTip(la.TT_SETTINGS[self.cleardata.objectName()])

        # sixthrow
        self.aboutbtn = self.ui.about_btn
        self.aboutbtn.setToolTip(la.TT_SETTINGS[self.aboutbtn.objectName()])
        self.aboutbtn.setCheckable(True)
        self.aboutbtn.setChecked(False)
        about_button_size = hou.ui.scaledSize(32)
        self.aboutbtn.setProperty("flat", True)
        self.aboutbtn.setIcon(util.ABOUT_ICON1)
        self.aboutbtn.setIconSize(
            QtCore.QSize(about_button_size, about_button_size))

        self.bugreportbtn = self.ui.bug_btn
        self.bugreportbtn.setToolTip(
            la.TT_SETTINGS[self.bugreportbtn.objectName()])
        self.bugreportbtn.setCheckable(True)
        self.bugreportbtn.setChecked(False)
        bugreport_button_size = hou.ui.scaledSize(21)
        self.bugreportbtn.setProperty("flat", True)
        self.bugreportbtn.setIcon(util.BUG_ICON)
        self.bugreportbtn.setIconSize(
            QtCore.QSize(bugreport_button_size, bugreport_button_size))

        self.themebtn = self.ui.theme_btn
        self.themebtn.setToolTip(la.TT_SETTINGS[self.themebtn.objectName()])
        self.themebtn.setCheckable(True)
        self.themebtn.setChecked(False)
        theme_button_size = hou.ui.scaledSize(27)
        self.themebtn.setProperty("flat", True)
        self.themebtn.setIcon(util.COLOR_ICON)
        self.themebtn.setIconSize(
            QtCore.QSize(theme_button_size, theme_button_size))

        self.debuglevel = self.ui.debuglevel_cbx
        for lvl in util.DEBUG_LEVEL:
            self.debuglevel.addItem(str(lvl))
        self.debuglevel.setToolTip(
            la.TT_SETTINGS[self.debuglevel.objectName()])
        self.debugflag = self.ui.debugflag_chk
        self.debugflag.setToolTip(la.TT_SETTINGS[self.debugflag.objectName()])
        self.debuglevel.setVisible(bc(self.settings[util.SETTINGS_KEYS[4]]))
        self.debugflag.setVisible(bc(self.settings[util.SETTINGS_KEYS[4]]))

        self.savedata = self.ui.save_btn
        self.savedata.setToolTip(la.TT_SETTINGS[self.savedata.objectName()])

        self.discarddata = self.ui.discard_btn
        self.discarddata.setToolTip(
            la.TT_SETTINGS[self.discarddata.objectName()])

        # -------------------------------------------- sixthrow
        # NOTE sixthrow ---------------------------------------
        info_button_size = hou.ui.scaledSize(16)
        self.hotkey_icon.setProperty("flat", True)
        self.hotkey_icon.setIcon(util.INFO_ICON)
        self.hotkey_icon.setIconSize(
            QtCore.QSize(info_button_size, info_button_size))

        # --------------------------------------------- connect
        # NOTE connect ----------------------------------------
        self.hotkey_icon.clicked.connect(self.hotkeyicon_cb)
        self.dbpath_btn.clicked.connect(self.dbpath_cb)
        # self.cleardata.clicked.connect(self.cleardata_cb)
        self.aboutbtn.clicked.connect(self.window_cb)
        self.bugreportbtn.clicked.connect(self.window_cb)
        self.themebtn.clicked.connect(self.window_cb)
        self.savedata.clicked.connect(self.save_cb)
        self.discarddata.clicked.connect(self.discard_cb)

        # -------------------------------------------- about_cb
        # NOTE about_cb ---------------------------------------
        self.settingslayout = self.ui.verticallayout
        self.setLayout(self.ui.gridLayout)

        # ----------------------------------- Startup Functions
        # NOTE Startup Functions ------------------------------
        self.updatecurrentvalues()
        self.fieldsetup()
Esempio n. 18
0
    def __init__(self, paneTab):
        """Define all the elements of the user interface."""
        QtWidgets.QWidget.__init__(self)
        self.setMouseTracking(True)
        self.factor = 100
        self.mouseX = 0
        self.mouseY = 0
        hou.playbar.addEventCallback(self.outputPlaybarEvent)

        self.icons_path = hou.findDirectory(
            'python_panels') + '/InBetween_icons/'

        self.nameLabel = QtWidgets.QLabel(self)
        self.nameLabel.setText('inBetween 1.0')
        self.nameLabel.setAlignment(QtCore.Qt.AlignCenter)
        self.nameLabel.mousePressEvent = self.help
        self.nameLabelLayout = QtWidgets.QHBoxLayout()
        self.nameLabelLayout.addWidget(self.nameLabel)

        self.valueSlider = QtWidgets.QSlider(QtCore.Qt.Horizontal, self)
        self.valueSlider.setTickPosition(QtWidgets.QSlider.TicksBelow)
        self.valueSlider.setTickInterval(1)
        self.valueSlider.setValue(0)
        self.valueSlider.setStyleSheet("QSlider:handle {width: 14px;}")
        self.valueSlider.setMinimum(-100)
        self.valueSlider.setMaximum(100)
        self.valueSlider.setSingleStep(1)
        self.valueSlider.setToolTip(
            'Creates a breakdown pose for the selected objects.')

        invisible_btn_stylesheet = "QPushButton {border: transparent;background: transparent;height: 48px;width: 120px;} QPushButton:hover {background-color: rgb(0,0,0, 0);height: 48px;width: 120px;}"

        self.sizePolicy = QtWidgets.QSizePolicy(
            QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Expanding)
        self.sizePolicy.setHeightForWidth(True)

        self.zeroBtn = QtWidgets.QPushButton(self)
        self.zeroBtn.setMaximumHeight(30)
        self.zeroBtn.setSizePolicy(self.sizePolicy)
        self.zeroBtn.clicked.connect(self.zeroBtnAction)
        self.zeroBtn.setStyleSheet(invisible_btn_stylesheet)

        self.minStepBtn = QtWidgets.QPushButton(self)
        self.minStepBtn.setMaximumHeight(30)
        self.minStepBtn.setSizePolicy(self.sizePolicy)
        self.minStepBtn.clicked.connect(self.minStepBtnAction)
        self.minStepBtn.setStyleSheet(invisible_btn_stylesheet)

        self.plusStepBtn = QtWidgets.QPushButton(self)
        self.plusStepBtn.setMaximumHeight(30)
        self.plusStepBtn.setSizePolicy(self.sizePolicy)
        self.plusStepBtn.clicked.connect(self.plusStepBtnAction)
        self.plusStepBtn.setStyleSheet(invisible_btn_stylesheet)

        self.buttonLayout = QtWidgets.QHBoxLayout()
        self.buttonLayout.addWidget(self.minStepBtn, 1)
        self.buttonLayout.addStretch(1)
        self.buttonLayout.addWidget(self.zeroBtn, 1)
        self.buttonLayout.addStretch(1)
        self.buttonLayout.addWidget(self.plusStepBtn, 1)

        self.makeGhostBtn = QtWidgets.QPushButton(self)
        self.makeGhostBtn.setMinimumHeight(30)
        self.makeGhostBtn.setSizePolicy(self.sizePolicy)
        self.makeGhostBtn.setIcon(QtGui.QPixmap(self.icons_path + 'ghost.png'))
        self.makeGhostBtn.clicked.connect(self.manuallyCreateGhost)
        self.makeGhostBtn.setToolTip('Makes a new ghost.')
        self.delGhostBtn = QtWidgets.QPushButton(self)
        self.delGhostBtn.setMinimumHeight(30)
        self.delGhostBtn.setSizePolicy(self.sizePolicy)
        self.delGhostBtn.setIcon(QtGui.QPixmap(self.icons_path +
                                               'deghost.png'))
        self.delGhostBtn.clicked.connect(self.deleteCurrentGhost)
        self.delGhostBtn.setToolTip('Deletes current ghost.')

        self.copyToTwosBtn = QtWidgets.QPushButton(self)
        self.copyToTwosBtn.setMinimumHeight(30)
        self.copyToTwosBtn.setSizePolicy(self.sizePolicy)
        self.copyToTwosBtn.setIcon(
            QtGui.QPixmap(self.icons_path + 'plus_two.png'))
        self.copyToTwosBtn.clicked.connect(self.copyToTwos)
        self.copyToTwosBtn.setToolTip('Copies current pose +2.')
        self.copyToFoursBtn = QtWidgets.QPushButton(self)
        self.copyToFoursBtn.setMinimumHeight(30)
        self.copyToFoursBtn.setSizePolicy(self.sizePolicy)
        self.copyToFoursBtn.setIcon(
            QtGui.QPixmap(self.icons_path + 'plus_four.png'))
        self.copyToFoursBtn.clicked.connect(self.copyToFours)
        self.copyToFoursBtn.setToolTip('Copies current pose +4.')

        self.ghostLabel = QtWidgets.QLabel(self)
        self.ghostLabel.setText('Ghosting')
        self.ghostLabel.setAlignment(QtCore.Qt.AlignCenter)
        self.copyLabel = QtWidgets.QLabel(self)
        self.copyLabel.setText('Copy Pose')
        self.copyLabel.setAlignment(QtCore.Qt.AlignCenter)

        self.copyLabelLayout = QtWidgets.QHBoxLayout()
        self.copyLabelLayout.addWidget(self.ghostLabel)
        self.copyLabelLayout.addWidget(self.copyLabel)
        self.copyLabelLayout.setSpacing(20)

        self.ghostColorLabel = QtWidgets.QLabel(self)
        self.ghostColorLabel.setStyleSheet(
            "QLabel {background-color: #E57200;}")
        self.ghostColorLabel.setMinimumHeight(30)
        self.ghostColorLabel.setSizePolicy(self.sizePolicy)
        self.ghostColorLabel.mousePressEvent = self.colorDialogCall
        self.ghostColorLabel.setToolTip('Sets a color for the current ghost.')

        self.ghostSlider = QtWidgets.QSlider(QtCore.Qt.Horizontal, self)
        self.ghostSlider.setTickPosition(QtWidgets.QSlider.TicksBelow)
        self.ghostSlider.setStyleSheet("QSlider:handle {width: 14px;}")
        self.ghostSlider.setTickInterval(1)
        self.ghostSlider.setValue(0)
        self.ghostSlider.setMinimum(100)
        self.ghostSlider.setMaximum(200)
        self.ghostSlider.setSingleStep(1)
        self.ghostSlider.setSizePolicy(self.sizePolicy)
        self.ghostSlider.setToolTip('Sets a visibility for the current ghost.')

        self.setRefBtn = QtWidgets.QPushButton(self)
        self.setRefBtn.setMinimumHeight(30)
        self.setRefBtn.setSizePolicy(self.sizePolicy)
        self.setRefBtn.setIcon(QtGui.QPixmap(self.icons_path + 'ref.png'))
        self.setRefBtn.clicked.connect(self.addReferencePlane)
        self.setRefBtn.setToolTip('Creates a reference plane.')

        self.selectionSet = QtWidgets.QPushButton(self)
        self.selectionSet.setMinimumHeight(30)
        self.selectionSet.setSizePolicy(self.sizePolicy)
        self.selectionSet.setIcon(
            QtGui.QPixmap(self.icons_path + 'selection.png'))
        self.selectionSet.clicked.connect(self.createNewSelectionSet)
        self.selectionSet.setToolTip('Creates selection set.')

        self.grid_left = QtWidgets.QGridLayout()
        self.grid_left.addWidget(self.delGhostBtn, 0, 0)
        self.grid_left.addWidget(self.makeGhostBtn, 0, 1)
        self.grid_left.addWidget(self.ghostColorLabel, 1, 0)
        self.grid_left.addWidget(self.ghostSlider, 1, 1)
        self.grid_left.setSpacing(8)

        self.grid_right = QtWidgets.QGridLayout()
        self.grid_right.addWidget(self.copyToTwosBtn, 0, 0)
        self.grid_right.addWidget(self.copyToFoursBtn, 0, 1)
        self.grid_right.addWidget(self.setRefBtn, 1, 0)
        self.grid_right.addWidget(self.selectionSet, 1, 1)
        self.grid_right.setSpacing(8)

        self.bottomLayout = QtWidgets.QHBoxLayout()
        self.bottomLayout.addLayout(self.grid_left)
        self.bottomLayout.addLayout(self.grid_right)
        self.bottomLayout.setSpacing(20)

        self.layout = QtWidgets.QVBoxLayout()
        self.layout.addLayout(self.nameLabelLayout)
        self.layout.addLayout(self.buttonLayout)
        self.layout.addWidget(self.valueSlider)
        self.layout.addLayout(self.copyLabelLayout)
        self.layout.addLayout(self.bottomLayout)
        self.layout.setSpacing(8)
        self.valueSlider.valueChanged.connect(self.sliderVal)
        self.valueSlider.sliderMoved.connect(self.repaintValue)
        self.valueSlider.sliderReleased.connect(self.setBetweenKey)
        self.ghostSlider.valueChanged.connect(self.ghostWidth)
        self.setLayout(self.layout)
        self.layout.setContentsMargins(10, 10, 10, 10)
Esempio n. 19
0
    def __init__(self, parent=None):
    
        # INITIALIZE GUI AND SET WINDOW TO ALWAYS ON TOP
        QtWidgets.QWidget.__init__(self, parent, QtCore.Qt.WindowStaysOnTopHint)

        # SET LAYOUTS
        vbox = QtWidgets.QVBoxLayout()
        hbox1 = QtWidgets.QHBoxLayout()
        hbox2 = QtWidgets.QHBoxLayout()
        hbox3 = QtWidgets.QHBoxLayout()
        hbox4 = QtWidgets.QHBoxLayout()
        hbox_checkboxes1 = QtWidgets.QHBoxLayout()
        hbox_checkboxes2 = QtWidgets.QHBoxLayout()        
        hbox_checkboxes3 = QtWidgets.QHBoxLayout()  
        hbox_checkboxes4 = QtWidgets.QHBoxLayout()          
        hbox_apply_to = QtWidgets.QHBoxLayout()
        hbox_buttons1 = QtWidgets.QHBoxLayout()
        hbox_buttons2 = QtWidgets.QHBoxLayout()
        
        # SET WINDOW ATTRIBUTES
        self.setGeometry(500, 300, 400, 110)
        self.setWindowTitle('Find & Replace')
        
        # CREATE WIDGETS
        self.search_for_label = QtWidgets.QLabel("Search For:  ")
        self.search_for_line_edit = QtWidgets.QLineEdit()
        self.replace_with_label = QtWidgets.QLabel("Replace With:")
        self.replace_with_line_edit = QtWidgets.QLineEdit()
        self.search_in_node_names_checkbox = QtWidgets.QCheckBox("Search In Node Names")
        self.search_in_parameters_checkbox = QtWidgets.QCheckBox("Search In Parameters")
        self.include_string_parms_checkbox = QtWidgets.QCheckBox("Include String Parms")
        self.include_float_parms_checkbox = QtWidgets.QCheckBox("Include Float Parms")
        self.include_expressions_checkbox = QtWidgets.QCheckBox("Include Expressions")
        self.select_in_viewport_checkbox = QtWidgets.QCheckBox("Select In Viewport")
        self.print_results_checkbox = QtWidgets.QCheckBox("Print Results")        
        self.case_sensitive_checkbox = QtWidgets.QCheckBox("Case Sensitive")
        self.apply_to_label = QtWidgets.QLabel("Apply To:")
        self.apply_to_combo_box = QtWidgets.QComboBox(self)
        self.find_button = QtWidgets.QPushButton('Find', self)
        self.replace_button = QtWidgets.QPushButton('Replace', self)
        
        # POPULATE COMBO BOX
        self.apply_to_combo_box.addItem("Selected Nodes Only")
        self.apply_to_combo_box.addItem("Selected Nodes & Their Direct Children")
        self.apply_to_combo_box.addItem("Selected Nodes & All Subchildren")        
        self.apply_to_combo_box.addItem("Only Direct Children Of Selected Nodes")   
        self.apply_to_combo_box.addItem("Only All Subchildren Of Selected Nodes")           
        self.apply_to_combo_box.addItem("All Nodes In Obj Context")   
        self.apply_to_combo_box.addItem("All Nodes In Scene (Any Context)")           
        
        # SET INITIAL WIDGET BEHAVIORS
        self.search_in_node_names_checkbox.setCheckState(QtCore.Qt.Checked)
        self.search_in_parameters_checkbox.setCheckState(QtCore.Qt.Unchecked)
        self.case_sensitive_checkbox.setCheckState(QtCore.Qt.Unchecked)        
        self.select_in_viewport_checkbox.setCheckState(QtCore.Qt.Checked)  
        self.print_results_checkbox.setCheckState(QtCore.Qt.Unchecked)  
        self.include_string_parms_checkbox.setCheckState(QtCore.Qt.Checked)    
        self.include_float_parms_checkbox.setCheckState(QtCore.Qt.Checked)          
        self.include_expressions_checkbox.setCheckState(QtCore.Qt.Checked)
        self.include_string_parms_checkbox.setEnabled(False)
        self.include_float_parms_checkbox.setEnabled(False)
        self.include_expressions_checkbox.setEnabled(False)

        # WATCH WIDGETS FOR STATECHANGE
        self.search_for_line_edit.textChanged.connect(self.lineEditChanged)
        self.replace_with_line_edit.textChanged.connect(self.lineEditChanged)
        self.search_in_parameters_checkbox.stateChanged.connect(self.searchInParametersCheckboxChanged)
        self.search_in_node_names_checkbox.stateChanged.connect(self.searchInNodeNamesCheckboxChanged)
        self.include_string_parms_checkbox.stateChanged.connect(self.includeCheckboxChanged)
        self.include_float_parms_checkbox.stateChanged.connect(self.includeCheckboxChanged)
        self.include_expressions_checkbox.stateChanged.connect(self.includeCheckboxChanged)  
        self.print_results_checkbox.stateChanged.connect(self.printResultsUnchecked)          
        self.select_in_viewport_checkbox.stateChanged.connect(self.selectInViewportUnchecked)        
        self.apply_to_combo_box.currentIndexChanged.connect(self.comboBoxIndexChanged)
        
        # CONNECT BUTTONS TO FUNCTIONS
        self.find_button.clicked.connect(self.locate)
        self.replace_button.clicked.connect(self.locateAndReplace)

        # ADD WIDGETS TO LAYOUT
        hbox1.addWidget(self.search_for_label)
        hbox1.addWidget(self.search_for_line_edit)
        hbox2.addWidget(self.replace_with_label)
        hbox2.addWidget(self.replace_with_line_edit)
        vbox.addLayout(hbox1)
        vbox.addLayout(hbox2)
        vbox.addLayout(hbox3)
        vbox.addLayout(hbox4)
        hbox_checkboxes1.addWidget(self.search_in_node_names_checkbox)
        hbox_checkboxes1.addWidget(self.search_in_parameters_checkbox)   
        
        hbox_checkboxes2.addWidget(self.case_sensitive_checkbox)           
        hbox_checkboxes2.addWidget(self.include_string_parms_checkbox)
        hbox_checkboxes3.addWidget(self.select_in_viewport_checkbox)     
        hbox_checkboxes3.addWidget(self.include_float_parms_checkbox)
        hbox_checkboxes4.addWidget(self.print_results_checkbox)    
        hbox_checkboxes4.addWidget(self.include_expressions_checkbox)            
        vbox.addLayout(hbox_checkboxes1)
        vbox.addLayout(hbox_checkboxes2) 
        vbox.addLayout(hbox_checkboxes3)
        vbox.addLayout(hbox_checkboxes4)        
        hbox_apply_to.addWidget(self.apply_to_label)        
        hbox_apply_to.addWidget(self.apply_to_combo_box)
        vbox.addLayout(hbox_apply_to)
        hbox_buttons1.addWidget(self.find_button)
        hbox_buttons1.addWidget(self.replace_button)
        vbox.addLayout(hbox_buttons1)           

        # SET LAYOUT
        self.setLayout(vbox)
Esempio n. 20
0
        def buildUI():

            self.setAttribute(QtCore.Qt.WA_DeleteOnClose)
            self.setAttribute(QtCore.Qt.WA_AlwaysShowToolTips)

            # Main Layout
            mainLayout = QtWidgets.QVBoxLayout()

            # General Group
            generalGroupBox = QtWidgets.QGroupBox("General")
            generalLayout = QtWidgets.QVBoxLayout(generalGroupBox)

            # Host Layout
            hostLayout = QtWidgets.QHBoxLayout()
            self.hostLineEdit = LineEditBox("Host", u"%s" % self.defaultHost)
            self.hostCheckBox = QtWidgets.QCheckBox()
            self.hostCheckBox.setChecked(True)
            self.hostCheckBox.stateChanged.connect(
                self.hostLineEdit.setEnabled)
            hostLayout.addWidget(self.hostLineEdit)
            hostLayout.addWidget(self.hostCheckBox)

            # Port Layout
            portLayout = QtWidgets.QHBoxLayout()
            self.portSlider = SliderBox("Port")
            self.portSlider.setMinimum(0, 0)
            self.portSlider.setMaximum(9999, 15)
            self.portSlider.setValue(self.defaultPort)
            self.portSlider.connect(portUpdateUI)
            self.portCheckBox = QtWidgets.QCheckBox()
            self.portCheckBox.setChecked(True)
            self.portCheckBox.stateChanged.connect(self.portSlider.setEnabled)
            portLayout.addWidget(self.portSlider)
            portLayout.addWidget(self.portCheckBox)

            # Output Driver Layout
            outputDriverLayout = QtWidgets.QHBoxLayout()
            self.outputComboBox = ComboBox("Output")
            self.outputComboBox.addItems([i.path for i in self.outputsList])
            self.outputComboBox.currentIndexChanged.connect(outputUpdateUI)
            outputDriverLayout.addWidget(self.outputComboBox)

            # Camera Layout
            cameraLayout = QtWidgets.QHBoxLayout()
            self.cameraComboBox = ComboBox("Camera")
            self.cameraComboBox.addItems(getAllCameras(path=True))
            self.cameraComboBox.setCurrentName(self.output.cameraPath)
            cameraLayout.addWidget(self.cameraComboBox)

            # Overrides Group
            overridesGroupBox = QtWidgets.QGroupBox("Overrides")
            overridesLayout = QtWidgets.QVBoxLayout(overridesGroupBox)

            # IPR Update Layout
            IPRUpdateLayout = QtWidgets.QHBoxLayout()
            self.IPRUpdateCheckBox = CheckBox('IPR', " Auto Update")
            self.IPRUpdateCheckBox.setChecked(self.ipr.isAutoUpdateOn())
            self.IPRUpdateCheckBox.stateChanged.connect(
                lambda: self.ipr.setAutoUpdate(self.IPRUpdateCheckBox.
                                               isChecked()))
            IPRUpdateLayout.addWidget(self.IPRUpdateCheckBox)

            # Bucket Layout
            bucketLayout = QtWidgets.QHBoxLayout()
            self.bucketComboBox = ComboBox("Bucket Scan")
            self.bucketComboBox.addItems(getBucketModes())
            self.bucketComboBox.setCurrentName(self.output.bucketScanning)
            bucketLayout.addWidget(self.bucketComboBox)

            # Resolution Layout
            resolutionLayout = QtWidgets.QHBoxLayout()
            self.resolutionSlider = SliderBox("Resolution %")
            self.resolutionSlider.setMinimum(1, 1)
            self.resolutionSlider.setMaximum(200, 40)
            self.resolutionSlider.setValue(100, 20)
            self.resolutionSlider.connect(resUpdateUI)
            xres, yres = self.output.resolution[0], self.output.resolution[1]
            self.resolutionInfoLabel = QtWidgets.QLabel(
                str(xres) + 'x' + str(yres))
            self.resolutionInfoLabel.setMaximumSize(100, 20)
            self.resolutionInfoLabel.setEnabled(False)
            resolutionLayout.addWidget(self.resolutionSlider)
            resolutionLayout.addWidget(self.resolutionInfoLabel)

            # Camera AA Layout
            cameraAaLayout = QtWidgets.QHBoxLayout()
            self.cameraAaSlider = SliderBox("Camera (AA)")
            self.cameraAaSlider.setMinimum(-64, -3)
            self.cameraAaSlider.setMaximum(64, 16)
            self.cameraAaSlider.setValue(self.output.AASamples,
                                         self.output.AASamples)
            cameraAaLayout.addWidget(self.cameraAaSlider)

            # Render region layout
            renderRegionLayout = QtWidgets.QHBoxLayout()
            self.renderRegionXSpinBox = SpinBox("Region X")
            self.renderRegionYSpinBox = SpinBox("Y", 0, False)
            self.renderRegionRSpinBox = SpinBox("R", 0, False)
            self.renderRegionTSpinBox = SpinBox("T", 0, False)
            self.renderRegionRSpinBox.setValue(self.output.resolution[0])
            self.renderRegionTSpinBox.setValue(self.output.resolution[1])
            renderRegionGetNukeButton = QtWidgets.QPushButton("Get")
            renderRegionGetNukeButton.clicked.connect(self.getNukeCropNode)
            renderRegionLayout.addWidget(self.renderRegionXSpinBox)
            renderRegionLayout.addWidget(self.renderRegionYSpinBox)
            renderRegionLayout.addWidget(self.renderRegionRSpinBox)
            renderRegionLayout.addWidget(self.renderRegionTSpinBox)
            renderRegionLayout.addWidget(renderRegionGetNukeButton)

            # Overscan Layout
            overscanLayout = QtWidgets.QHBoxLayout()
            self.overscanSlider = SliderBox("Overscan")
            self.overscanSlider.setMinimum(0)
            self.overscanSlider.setMaximum(9999, 250)
            self.overscanSlider.setValue(0, 0)
            overscanLayout.addWidget(self.overscanSlider)

            # Ignore Group
            ignoresGroupBox = QtWidgets.QGroupBox("Ignore")
            ignoresGroupBox.setMaximumSize(9999, 75)

            # Ignore Layout
            ignoresLayout = QtWidgets.QVBoxLayout(ignoresGroupBox)
            ignoreLayout = QtWidgets.QHBoxLayout()
            self.motionBlurCheckBox = QtWidgets.QCheckBox(' Motion Blur')
            self.subdivsCheckBox = QtWidgets.QCheckBox(" Subdivs")
            self.displaceCheckBox = QtWidgets.QCheckBox(' Displace')
            self.bumpCheckBox = QtWidgets.QCheckBox(' Bump')
            self.sssCheckBox = QtWidgets.QCheckBox(' SSS')
            ignoreLayout.addWidget(self.motionBlurCheckBox)
            ignoreLayout.addWidget(self.subdivsCheckBox)
            ignoreLayout.addWidget(self.displaceCheckBox)
            ignoreLayout.addWidget(self.bumpCheckBox)
            ignoreLayout.addWidget(self.sssCheckBox)

            # Main Buttons Layout
            mainButtonslayout = QtWidgets.QHBoxLayout()
            startButton = QtWidgets.QPushButton("Start / Refresh")
            stopButton = QtWidgets.QPushButton("Stop")
            resetButton = QtWidgets.QPushButton("Reset")
            startButton.clicked.connect(self.startRender)
            stopButton.clicked.connect(self.stopRender)
            resetButton.clicked.connect(resetUI)
            mainButtonslayout.addWidget(startButton)
            mainButtonslayout.addWidget(stopButton)
            mainButtonslayout.addWidget(resetButton)

            # Add Layouts to Main
            generalLayout.addLayout(hostLayout)
            generalLayout.addLayout(portLayout)
            generalLayout.addLayout(outputDriverLayout)
            overridesLayout.addLayout(IPRUpdateLayout)
            overridesLayout.addLayout(cameraLayout)
            overridesLayout.addLayout(bucketLayout)
            overridesLayout.addLayout(resolutionLayout)
            overridesLayout.addLayout(cameraAaLayout)
            overridesLayout.addLayout(renderRegionLayout)
            overridesLayout.addLayout(overscanLayout)
            ignoresLayout.addLayout(ignoreLayout)

            mainLayout.addWidget(generalGroupBox)
            mainLayout.addWidget(overridesGroupBox)
            mainLayout.addWidget(ignoresGroupBox)
            mainLayout.addLayout(mainButtonslayout)

            addUICallbacks()

            return mainLayout
Esempio n. 21
0
    def setupUi(self, About):
        About.setObjectName("About")
        About.setWindowModality(QtCore.Qt.NonModal)
        About.resize(185, 251)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred,
                                           QtWidgets.QSizePolicy.Preferred)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(About.sizePolicy().hasHeightForWidth())
        About.setSizePolicy(sizePolicy)
        About.setMinimumSize(QtCore.QSize(100, 0))
        About.setBaseSize(QtCore.QSize(0, 0))
        About.setStyleSheet("")

        # ------------------------------------------------- gridsetup
        # NOTE gridsetup --------------------------------------------
        self.gridLayout = QtWidgets.QGridLayout(About)
        self.gridLayout.setContentsMargins(-1, -1, -1, 6)
        self.gridLayout.setSpacing(6)
        self.gridLayout.setObjectName("gridLayout")
        self.verticalLayout_4 = QtWidgets.QVBoxLayout()
        self.verticalLayout_4.setObjectName("verticalLayout_4")
        self.horizontalLayout = QtWidgets.QHBoxLayout()
        self.horizontalLayout.setObjectName("horizontalLayout")
        self.verticalLayout = QtWidgets.QVBoxLayout()
        self.verticalLayout.setObjectName("verticalLayout")
        spacerItem = QtWidgets.QSpacerItem(20, 40,
                                           QtWidgets.QSizePolicy.Minimum,
                                           QtWidgets.QSizePolicy.Expanding)
        self.verticalLayout.addItem(spacerItem)

        # ------------------------------------------------- secondrow
        # NOTE Second Row -------------------------------------------
        self.secondrow = QtWidgets.QHBoxLayout()
        self.secondrow.setObjectName("secondrow")
        self.web_icon = QtWidgets.QToolButton(About)
        self.web_icon.setObjectName("web_icon")
        self.web = QtWidgets.QLabel(About)
        self.web.setObjectName("web")
        self.secondrow.addWidget(self.web_icon)
        self.secondrow.addWidget(self.web)
        self.verticalLayout.addLayout(self.secondrow)

        # -------------------------------------------------- thirdrow
        # NOTE Third Row --------------------------------------------
        self.thirdrow = QtWidgets.QHBoxLayout()
        self.thirdrow.setObjectName("thirdrow")
        self.github_icon = QtWidgets.QToolButton(About)
        self.github_icon.setObjectName("github_icon")
        self.github = QtWidgets.QLabel(About)
        self.github.setObjectName("github")
        self.thirdrow.addWidget(self.github_icon)
        self.thirdrow.addWidget(self.github)
        self.verticalLayout.addLayout(self.thirdrow)

        # ------------------------------------------------- fourthrow
        # NOTE fourthrow --------------------------------------------
        self.fourthrow = QtWidgets.QHBoxLayout()
        self.fourthrow.setObjectName("fourthrow")
        self.twitter_icon = QtWidgets.QToolButton(About)
        self.twitter_icon.setObjectName("twitter_icon")
        self.twitter = QtWidgets.QLabel(About)
        self.twitter.setObjectName("twitter")
        self.fourthrow.addWidget(self.twitter_icon)
        self.fourthrow.addWidget(self.twitter)
        self.verticalLayout.addLayout(self.fourthrow)

        # ------------------------------------------------- fifthrow
        # NOTE fifthrow --------------------------------------------
        self.fifthrow = QtWidgets.QHBoxLayout()
        self.fifthrow.setObjectName("fifthrow")
        self.email_icon = QtWidgets.QToolButton(About)
        self.email_icon.setObjectName("email_icon")
        self.email = QtWidgets.QLabel(About)
        self.email.setObjectName("email")
        self.fifthrow.addWidget(self.email_icon)
        self.fifthrow.addWidget(self.email)
        self.verticalLayout.addLayout(self.fifthrow)

        # ----------------------------------------------- columnsetup
        # NOTE columnsetup ------------------------------------------
        self.horizontalLayout.addLayout(self.verticalLayout)
        self.verticalLayout_4.addLayout(self.horizontalLayout)
        self.gridLayout.addLayout(self.verticalLayout_4, 0, 0, 1, 1)

        # ----------------------------------------------------- image
        # NOTE image --- --------------------------------------------
        self.logo = QtWidgets.QLabel(About)
        sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed,
                                           QtWidgets.QSizePolicy.Fixed)
        sizePolicy.setHorizontalStretch(0)
        sizePolicy.setVerticalStretch(0)
        sizePolicy.setHeightForWidth(
            self.logo.sizePolicy().hasHeightForWidth())
        self.logo.setSizePolicy(sizePolicy)
        self.logo.setMaximumSize(QtCore.QSize(120, 120))
        self.logo.setText("")
        self.logo.setPixmap(QtGui.QPixmap(scriptpath + "/images/logo.png"))
        self.logo.setScaledContents(True)
        self.logo.setObjectName("logo")
        self.gridLayout.addWidget(self.logo, 0, 1, 1, 1)

        self.retranslateUi(About)
        QtCore.QMetaObject.connectSlotsByName(About)