Exemple #1
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
Exemple #2
0
    def __init__(self, label, title='', first=True):
        super(CheckBox, self).__init__(label, first)
        self.checkBox = QtWidgets.QCheckBox(title)

        self.layout.addWidget(self.checkBox)
		def addCheckBox(checkbox_name):
			checkbox = QtWidgets.QCheckBox(checkbox_name)
			return checkbox
Exemple #4
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)
Exemple #5
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)
Exemple #6
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)