Python qtpy.QtWidgets.QVBoxLayout() Examples
The following are 30
code examples of qtpy.QtWidgets.QVBoxLayout().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
qtpy.QtWidgets
, or try the search function
.
Example #1
Source File: iir_widget.py From pyrpl with GNU General Public License v3.0 | 6 votes |
def __init__(self, parent): # buttons and standard attributes self.name = "General settings" super(IirButtonWidget, self).__init__(parent) self.parent = parent self.module = self.parent.module self.layout = QtWidgets.QVBoxLayout(self) #self.setLayout(self.layout) # wasnt here before aws = self.parent.attribute_widgets for attr in ['input', 'inputfilter', 'output_direct', 'loops', 'gain', 'on', 'bypass', 'overflow']: widget = aws[attr] widget.setFixedWidth(self.BUTTONWIDTH) self.layout.addWidget(widget) self.setFixedWidth(self.BUTTONWIDTH+50)
Example #2
Source File: test_qt_dock_widget.py From napari with BSD 3-Clause "New" or "Revised" License | 6 votes |
def test_add_dock_widget_from_list(make_test_viewer): """Test that we can add a list of widgets and they will be combined""" viewer = make_test_viewer() widg = QPushButton('button') widg2 = QPushButton('button') dwidg = viewer.window.add_dock_widget( [widg, widg2], name='test', area='right' ) assert viewer.window._qt_window.findChild(QDockWidget, 'test') assert isinstance(dwidg.widget.layout, QVBoxLayout) dwidg = viewer.window.add_dock_widget( [widg, widg2], name='test2', area='bottom' ) assert viewer.window._qt_window.findChild(QDockWidget, 'test2') assert isinstance(dwidg.widget.layout, QHBoxLayout)
Example #3
Source File: unittestplugin.py From spyder-unittest with MIT License | 6 votes |
def __init__(self, parent): """ Initialize plugin and corresponding widget. The part of the initialization that depends on `parent` is done in `self.register_plugin()`. """ SpyderPluginWidget.__init__(self, parent) # Create unit test widget and add to dockwindow self.unittestwidget = UnitTestWidget( self.main, options_button=self.options_button, options_menu=self._options_menu) layout = QVBoxLayout() layout.addWidget(self.unittestwidget) self.setLayout(layout)
Example #4
Source File: terminalgui.py From spyder-terminal with MIT License | 6 votes |
def __init__(self, parent, port, path='~', font=None, theme=None, color_scheme=None): """Frame main constructor.""" QWidget.__init__(self, parent) url = 'http://127.0.0.1:{0}?path={1}'.format(port, path) self.handler = ChannelHandler(self) self.handler.sig_ready.connect(lambda: self.terminal_ready.emit()) self.handler.sig_closed.connect(lambda: self.terminal_closed.emit()) self.view = TermView(self, parent.CONF, term_url=url, handler=self.handler) self.font = font self.initial_path = path self.theme = theme self.color_scheme = color_scheme self.parent = parent self.shortcuts = self.create_shortcuts() layout = QVBoxLayout() layout.addWidget(self.view) layout.setContentsMargins(0, 0, 0, 0) self.setFrameStyle(QFrame.StyledPanel | QFrame.Sunken) self.setLayout(layout) self.body = self.view.document self.handler.sig_ready.connect(self.setup_term)
Example #5
Source File: SubmitChangeWindow.py From P4VFX with MIT License | 6 votes |
def create_layout(self): ''' Create the layouts and add widgets ''' check_box_layout = QtWidgets.QHBoxLayout() check_box_layout.setContentsMargins(2, 2, 2, 2) main_layout = QtWidgets.QVBoxLayout() main_layout.setContentsMargins(6, 6, 6, 6) main_layout.addWidget(self.descriptionLabel) main_layout.addWidget(self.descriptionWidget) main_layout.addWidget(self.tableWidget) main_layout.addWidget(self.chkboxLockedWidget) main_layout.addWidget(self.submitBtn) # main_layout.addStretch() self.setLayout(main_layout)
Example #6
Source File: FileRevisionWindow.py From P4VFX with MIT License | 6 votes |
def create_layout(self): ''' Create the layouts and add widgets ''' check_box_layout = QtWidgets.QHBoxLayout() check_box_layout.setContentsMargins(2, 2, 2, 2) main_layout = QtWidgets.QVBoxLayout() main_layout.setContentsMargins(6, 6, 6, 6) main_layout.addWidget(self.fileTree) main_layout.addWidget(self.tableWidget) bottomLayout = QtWidgets.QHBoxLayout() bottomLayout.addWidget(self.getRevisionBtn) bottomLayout.addSpacerItem(QtWidgets.QSpacerItem(20, 16)) bottomLayout.addWidget(self.getPreviewBtn) bottomLayout.addSpacerItem(QtWidgets.QSpacerItem(20, 16)) bottomLayout.addWidget(self.getLatestBtn) main_layout.addLayout(bottomLayout) main_layout.addWidget(self.horizontalLine) main_layout.addWidget(self.statusBar) self.setLayout(main_layout)
Example #7
Source File: FileRevisionWindow.py From P4VFX with MIT License | 6 votes |
def create_layout(self): ''' Create the layouts and add widgets ''' check_box_layout = QtWidgets.QHBoxLayout() check_box_layout.setContentsMargins(2, 2, 2, 2) main_layout = QtWidgets.QVBoxLayout() main_layout.setContentsMargins(6, 6, 6, 6) main_layout.addWidget(self.tabwidget) # main_layout.addLayout(bottomLayout) # main_layout.addWidget(self.horizontalLine) # main_layout.addWidget(self.statusBar) self.setLayout(main_layout)
Example #8
Source File: OpenedFilesWindow.py From P4VFX with MIT License | 6 votes |
def create_layout(self): ''' Create the layouts and add widgets ''' check_box_layout = QtWidgets.QHBoxLayout() check_box_layout.setContentsMargins(2, 2, 2, 2) main_layout = QtWidgets.QVBoxLayout() main_layout.setContentsMargins(6, 6, 6, 6) main_layout.addWidget(self.tableWidget) bottomLayout = QtWidgets.QHBoxLayout() bottomLayout.addWidget(self.revertFileBtn) bottomLayout.addWidget(self.refreshBtn) bottomLayout.addSpacerItem(QtWidgets.QSpacerItem(400, 16)) bottomLayout.addWidget(self.openSelectedBtn) main_layout.addLayout(bottomLayout) self.setLayout(main_layout)
Example #9
Source File: SubmitChangeWindow.py From P4VFX with MIT License | 6 votes |
def create_layout(self): ''' Create the layouts and add widgets ''' check_box_layout = QtWidgets.QHBoxLayout() check_box_layout.setContentsMargins(2, 2, 2, 2) main_layout = QtWidgets.QVBoxLayout() main_layout.setContentsMargins(6, 6, 6, 6) main_layout.addWidget(self.descriptionLabel) main_layout.addWidget(self.descriptionWidget) main_layout.addWidget(self.tableWidget) main_layout.addWidget(self.chkboxLockedWidget) main_layout.addWidget(self.submitBtn) # main_layout.addStretch() self.setLayout(main_layout)
Example #10
Source File: FileRevisionWindow.py From P4VFX with MIT License | 6 votes |
def create_layout(self): ''' Create the layouts and add widgets ''' check_box_layout = QtWidgets.QHBoxLayout() check_box_layout.setContentsMargins(2, 2, 2, 2) main_layout = QtWidgets.QVBoxLayout() main_layout.setContentsMargins(6, 6, 6, 6) main_layout.addWidget(self.fileTree) main_layout.addWidget(self.tableWidget) bottomLayout = QtWidgets.QHBoxLayout() bottomLayout.addWidget(self.getRevisionBtn) bottomLayout.addSpacerItem(QtWidgets.QSpacerItem(20, 16)) bottomLayout.addWidget(self.getPreviewBtn) bottomLayout.addSpacerItem(QtWidgets.QSpacerItem(20, 16)) bottomLayout.addWidget(self.getLatestBtn) main_layout.addLayout(bottomLayout) main_layout.addWidget(self.horizontalLine) main_layout.addWidget(self.statusBar) self.setLayout(main_layout)
Example #11
Source File: FileRevisionWindow.py From P4VFX with MIT License | 6 votes |
def create_layout(self): ''' Create the layouts and add widgets ''' check_box_layout = QtWidgets.QHBoxLayout() check_box_layout.setContentsMargins(2, 2, 2, 2) main_layout = QtWidgets.QVBoxLayout() main_layout.setContentsMargins(6, 6, 6, 6) main_layout.addWidget(self.tabwidget) # main_layout.addLayout(bottomLayout) # main_layout.addWidget(self.horizontalLine) # main_layout.addWidget(self.statusBar) self.setLayout(main_layout)
Example #12
Source File: OpenedFilesWindow.py From P4VFX with MIT License | 6 votes |
def create_layout(self): ''' Create the layouts and add widgets ''' check_box_layout = QtWidgets.QHBoxLayout() check_box_layout.setContentsMargins(2, 2, 2, 2) main_layout = QtWidgets.QVBoxLayout() main_layout.setContentsMargins(6, 6, 6, 6) main_layout.addWidget(self.tableWidget) bottomLayout = QtWidgets.QHBoxLayout() bottomLayout.addWidget(self.revertFileBtn) bottomLayout.addWidget(self.refreshBtn) bottomLayout.addSpacerItem(QtWidgets.QSpacerItem(400, 16)) bottomLayout.addWidget(self.openSelectedBtn) main_layout.addLayout(bottomLayout) self.setLayout(main_layout)
Example #13
Source File: chart.py From Pyslvs-UI with GNU Affero General Public License v3.0 | 6 votes |
def __init__(self, parent: QWidget, row: int = 1, col: int = 1, polar: bool = False): """Input title and two axises, QChart class has no parent.""" super(DataChart, self).__init__(parent) layout = QVBoxLayout(self) figure = Figure() canvas = FigureCanvasQTAgg(figure) layout.addWidget(NavigationToolbar2QT(canvas, self)) layout.addWidget(canvas) self._ax = [] for i in range(1, row * col + 1): self._ax.append(figure.add_subplot(row, col, i, polar=polar)) def set_margin(m: float) -> None: figure.tight_layout(pad=m) self.set_margin = set_margin
Example #14
Source File: graph_view_widget.py From pyflowgraph with BSD 3-Clause "New" or "Revised" License | 6 votes |
def setGraphView(self, graphView): self.graphView = graphView # Setup Layout layout = QtWidgets.QVBoxLayout(self) layout.addWidget(self.graphView) self.setLayout(layout) ######################### ## Setup hotkeys for the following actions. deleteShortcut = QtWidgets.QShortcut(QtGui.QKeySequence(QtCore.Qt.Key_Delete), self) deleteShortcut.activated.connect(self.graphView.deleteSelectedNodes) frameShortcut = QtWidgets.QShortcut(QtGui.QKeySequence(QtCore.Qt.Key_F), self) frameShortcut.activated.connect(self.graphView.frameSelectedNodes) frameShortcut = QtWidgets.QShortcut(QtGui.QKeySequence(QtCore.Qt.Key_A), self) frameShortcut.activated.connect(self.graphView.frameAllNodes)
Example #15
Source File: pid_widget.py From pyrpl with GNU General Public License v3.0 | 6 votes |
def init_gui(self): self.init_main_layout(orientation="vertical") #self.main_layout = QtWidgets.QVBoxLayout() #self.setLayout(self.main_layout) self.init_attribute_layout() input_filter_widget = self.attribute_widgets["inputfilter"] self.attribute_layout.removeWidget(input_filter_widget) self.main_layout.addWidget(input_filter_widget) for prop in ['p', 'i']: #, 'd']: self.attribute_widgets[prop].widget.set_log_increment() # can't avoid timer to update ival # self.timer_ival = QtCore.QTimer() # self.timer_ival.setInterval(1000) # self.timer_ival.timeout.connect(self.update_ival) # self.timer_ival.start()
Example #16
Source File: lockbox_widget.py From pyrpl with GNU General Public License v3.0 | 6 votes |
def init_gui(self): #self.main_layout = QtWidgets.QVBoxLayout(self) self.init_main_layout(orientation="vertical") self.init_attribute_layout() self.win = pg.GraphicsWindow(title="Expected signal") self.plot_item = self.win.addPlot(title='Expected ' + self.module.name) self.plot_item.showGrid(y=True, x=True, alpha=1.) self.curve = self.plot_item.plot(pen='y') self.curve_slope = self.plot_item.plot(pen=pg.mkPen('b', width=5)) self.symbol = self.plot_item.plot(pen='b', symbol='o') self.main_layout.addWidget(self.win) self.button_calibrate = QtWidgets.QPushButton('Calibrate') self.main_layout.addWidget(self.button_calibrate) self.button_calibrate.clicked.connect(lambda: self.module.calibrate()) self.input_calibrated()
Example #17
Source File: lockbox_widget.py From pyrpl with GNU General Public License v3.0 | 6 votes |
def __init__(self, parent): super(PostFiltering, self).__init__(parent) self.parent = parent aws = self.parent.attribute_widgets self.layout = QtWidgets.QVBoxLayout(self) aws = self.parent.attribute_widgets self.layout.addWidget(aws["additional_filter"]) self.mod_layout = QtWidgets.QHBoxLayout() self.mod_layout.addWidget(aws["extra_module"]) self.mod_layout.addWidget(aws["extra_module_state"]) self.layout.addLayout(self.mod_layout) self.layout.setSpacing(12) self.setTitle("Pre-filtering before PID")
Example #18
Source File: lockbox_widget.py From pyrpl with GNU General Public License v3.0 | 6 votes |
def __init__(self, parent): super(WidgetAssisted, self).__init__(parent) self.parent = parent self.layout = QtWidgets.QVBoxLayout(self) self.v1 = QtWidgets.QVBoxLayout() self.v2 = QtWidgets.QVBoxLayout() self.layout.addLayout(self.v1) self.layout.addLayout(self.v2) self.desired = parent.parent.attribute_widgets["desired_unity_gain_frequency"] self.desired.label.setText('unity-gain-frequency (Hz) ') self.desired.set_log_increment() self.analog_filter = parent.parent.attribute_widgets["analog_filter_cutoff"] self.analog_filter.label.setText('actuator cut-off frequency (Hz)') #self.analog_filter.set_horizontal() # self.analog_filter.layout_v.setSpacing(0) # self.analog_filter.layout_v.setContentsMargins(0, 0, 0, 0) #self.analog_filter.set_max_cols(2) self.v1.addWidget(self.desired) self.v2.addWidget(self.analog_filter)
Example #19
Source File: lockbox_widget.py From pyrpl with GNU General Public License v3.0 | 6 votes |
def __init__(self, parent): super(WidgetManual, self).__init__(parent) self.parent = parent self.layout = QtWidgets.QVBoxLayout(self) self.pv1 = QtWidgets.QVBoxLayout() self.pv2 = QtWidgets.QVBoxLayout() self.layout.addLayout(self.pv1) self.layout.addLayout(self.pv2) self.p = parent.parent.attribute_widgets["p"] self.i = parent.parent.attribute_widgets["i"] self.p.label.setText('proportional gain (1)') self.i.label.setText('integral unity-gain (Hz)') #self.p.label.setFixedWidth(24) #self.i.label.setFixedWidth(24) # self.p.adjustSize() # self.i.adjustSize() for prop in self.p, self.i: prop.widget.set_log_increment() self.pv1.addWidget(self.p) self.pv2.addWidget(self.i) # self.i.label.setMinimumWidth(6)
Example #20
Source File: schematics.py From pyrpl with GNU General Public License v3.0 | 6 votes |
def __init__(self, widget_name, y, label, parent, x_offset=0): super(MyItem, self).__init__() self.lay = QtWidgets.QVBoxLayout() self.setLayout(self.lay) self.item = QtWidgets.QLabel(label) self.setStyleSheet('background-color:transparent') self.lay.addWidget(self.item) self.widget_name = widget_name self.y = y self.x_offset = x_offset self.parent = parent parent.graphic_items.append(self) self.item.setStyleSheet( "QLabel{border: 1px solid black; border-radius: 5px; " "font-size: 15px; background-color:white}") self.proxy = parent.scene.addWidget(self) self.proxy.setZValue(2)
Example #21
Source File: attribute_widgets.py From pyrpl with GNU General Public License v3.0 | 6 votes |
def set_max_cols(self, n_cols): """ If more than n boxes are required, go to next line """ if len(self.combos)<=n_cols: return for item in self.combos: self.lay.removeWidget(item) self.v_layouts = [] n = len(self.combos) n_rows = int(np.ceil(n*1.0/n_cols)) j = 0 for i in range(n_cols): layout = QtWidgets.QVBoxLayout() self.lay.addLayout(layout) for j in range(n_rows): index = i*n_rows + j if index>=n: break layout.addWidget(self.combos[index])
Example #22
Source File: attribute_widgets.py From pyrpl with GNU General Public License v3.0 | 6 votes |
def __init__(self, module, attribute_name, widget_name=None): super(BaseAttributeWidget, self).__init__() self.module = module self.attribute_name = attribute_name if widget_name is None: self.widget_name = self.attribute_name else: self.widget_name = widget_name self.setToolTip(self.attribute_descriptor.__doc__) self.layout_v = QtWidgets.QVBoxLayout() self.layout = self.layout_v if self.widget_name != "": self.label = QtWidgets.QLabel(self.widget_name) self.layout.addWidget(self.label, 0) # stretch=0 self.layout.addStretch(1) self.layout_v.setContentsMargins(0, 0, 0, 0) self._make_widget() self.layout.addWidget(self.widget, 0) # stretch=0 self.layout.addStretch(1) self.setLayout(self.layout) self.write_attribute_value_to_widget() # this is very nice for debugging, but should probably be removed later setattr(self.module, '_'+self.attribute_name+'_widget', self)
Example #23
Source File: pickchannelsdialog.py From mnelab with BSD 3-Clause "New" or "Revised" License | 6 votes |
def __init__(self, parent, channels, selected=None, title="Pick channels"): super().__init__(parent) self.setWindowTitle(title) if selected is None: selected = [] self.initial_selection = selected vbox = QVBoxLayout(self) self.channels = QListWidget() self.channels.insertItems(0, channels) self.channels.setSelectionMode(QListWidget.ExtendedSelection) for i in range(self.channels.count()): if self.channels.item(i).data(0) in selected: self.channels.item(i).setSelected(True) vbox.addWidget(self.channels) self.buttonbox = QDialogButtonBox(QDialogButtonBox.Ok | QDialogButtonBox.Cancel) vbox.addWidget(self.buttonbox) self.buttonbox.accepted.connect(self.accept) self.buttonbox.rejected.connect(self.reject) self.channels.itemSelectionChanged.connect(self.toggle_buttons) self.toggle_buttons() # initialize OK button state
Example #24
Source File: chart.py From Pyslvs-UI with GNU Affero General Public License v3.0 | 6 votes |
def __init__( self, title: str, algorithm_data: Sequence[Mapping[str, Any]], parent: QWidget ): """Add three tabs of chart.""" super(ChartDialog, self).__init__(parent) self.setWindowTitle("Chart") self.setWindowFlags(self.windowFlags() | Qt.WindowMaximizeButtonHint) self.setSizeGripEnabled(True) self.setModal(True) self.setMinimumSize(QSize(800, 600)) self.title = title self.algorithm_data = algorithm_data # Widgets main_layout = QVBoxLayout(self) main_layout.setContentsMargins(6, 6, 6, 6) self.tab_widget = QTabWidget(self) self.__set_chart("F-G Plot", 0, 1, 'Generation', 'Fitness') self.__set_chart("G-T Plot", 2, 0, 'Time', 'Generation') self.__set_chart("F-T Plot", 2, 1, 'Time', 'Fitness') main_layout.addWidget(self.tab_widget)
Example #25
Source File: lockbox_widget.py From pyrpl with GNU General Public License v3.0 | 5 votes |
def __init__(self, parent): super(MainOutputProperties, self).__init__(parent) self.parent = parent self.module = self.parent.module aws = self.parent.attribute_widgets self.layout = QtWidgets.QHBoxLayout(self) self.leftlayout = QtWidgets.QVBoxLayout() self.rightlayout = QtWidgets.QVBoxLayout() self.layout.addLayout(self.leftlayout) self.layout.addLayout(self.rightlayout) self.v1 = QtWidgets.QHBoxLayout() self.v2 = QtWidgets.QHBoxLayout() self.leftlayout.addLayout(self.v2) self.leftlayout.addLayout(self.v1) self.dcgain = aws['dc_gain'] self.v1.addWidget(self.dcgain) self.dcgain.label.setText('analog DC-gain') self.v1.addWidget(aws["unit"]) aws['dc_gain'].set_log_increment() self.v2.addWidget(aws["output_channel"]) # self.v2.addWidget(aws["tf_type"]) self.button_tf = AnalogTfSpec(self) self.v2.addWidget(self.button_tf) # aws['tf_curve'].hide() self.setTitle('Main settings') for v in self.v1, self.v2: v.setSpacing(9) self.rightlayout.addWidget(aws["max_voltage"]) self.rightlayout.addWidget(aws["min_voltage"])
Example #26
Source File: test_vim.py From spyder-vim with MIT License | 5 votes |
def __init__(self, editor_stack): """Main Window Mock constructor.""" QWidget.__init__(self, None) self.plugin_focus_changed = Mock() self.editor = EditorMock(editor_stack) layout = QVBoxLayout() layout.addWidget(self.editor) self.setLayout(layout)
Example #27
Source File: pop_in_dialog.py From cutelog with MIT License | 5 votes |
def setupUi(self): self.resize(200, 320) self.vbox = QVBoxLayout(self) self.listWidget = QListWidget(self) self.listWidget.setSelectionMode(self.listWidget.MultiSelection) self.listWidget.selectionModel().reset() self.vbox.addWidget(self.listWidget) self.buttonBox = QDialogButtonBox(QDialogButtonBox.Ok | QDialogButtonBox.Cancel, self) self.vbox.addWidget(self.buttonBox) self.buttonBox.accepted.connect(self.accept) self.listWidget.doubleClicked.connect(self.accept) self.buttonBox.rejected.connect(self.reject) self.fill_logger_list()
Example #28
Source File: curve_viewer_widget.py From pyrpl with GNU General Public License v3.0 | 5 votes |
def init_gui(self): """ To be overwritten in derived class :return: """ self.top_level_layout = QtWidgets.QVBoxLayout() self.setLayout(self.top_level_layout) self.main_layout = QtWidgets.QHBoxLayout() self.top_level_layout.addLayout(self.main_layout) self.bottom_layout = QtWidgets.QHBoxLayout() self.top_level_layout.addLayout(self.bottom_layout) self.init_attribute_layout()
Example #29
Source File: lockbox_widget.py From pyrpl with GNU General Public License v3.0 | 5 votes |
def __init__(self, parent): super(AnalogTfSpec, self).__init__(parent) self.parent = parent self.module = self.parent.module self.layout = QtWidgets.QVBoxLayout(self) self.label = QtWidgets.QLabel("Analog transfer function") self.layout.addWidget(self.label) self.button = QtWidgets.QPushButton('Change...') self.layout.addWidget(self.button) self.button.clicked.connect(self.change) self.dialog = AnalogTfDialog(self) self.layout.setContentsMargins(0,0,0,0) self.change_analog_tf()
Example #30
Source File: QComplexWidgets.py From pylustrator with GNU General Public License v3.0 | 5 votes |
def __init__(self, axis: str, signal_target_changed: QtCore.Signal): """ A widget to change the tick properties Args: axis: whether to use the "x" or "y" axis signal_target_changed: a signal to emit when the target changed """ QtWidgets.QWidget.__init__(self) self.setWindowTitle("Figure - " + axis + "-Axis - Ticks - Pylustrator") self.setWindowIcon(QtGui.QIcon(os.path.join(os.path.dirname(__file__), "icons", "ticks.ico"))) self.layout = QtWidgets.QVBoxLayout(self) self.axis = axis self.label = QtWidgets.QLabel( "Ticks can be specified, one tick pre line.\nOptionally a label can be provided, e.g. 1 \"First\",") self.layout.addWidget(self.label) self.layout2 = QtWidgets.QHBoxLayout() self.layout.addLayout(self.layout2) self.input_ticks = TextWidget(self.layout2, axis + "-Ticks:", multiline=True, horizontal=False) self.input_ticks.editingFinished.connect(self.ticksChanged) self.input_ticks2 = TextWidget(self.layout2, axis + "-Ticks (minor):", multiline=True, horizontal=False) self.input_ticks2.editingFinished.connect(self.ticksChanged2) self.input_scale = ComboWidget(self.layout, axis + "-Scale", ["linear", "log", "symlog", "logit"]) self.input_scale.link(axis + "scale", signal_target_changed) self.input_font = TextPropertiesWidget(self.layout) self.input_labelpad = NumberWidget(self.layout, axis + "-Labelpad", min=-999) self.input_labelpad.link(axis + "axis.labelpad", signal_target_changed, direct=True) self.button_ok = QtWidgets.QPushButton("Ok") self.layout.addWidget(self.button_ok) self.button_ok.clicked.connect(self.hide)