devctrl.gui.widgets.settings_form.SettingsForm#
- class SettingsForm(config_file: ConfigFile, parent=None)[source]#
Bases:
QWidgetForm widget connected to a ConfigFile instance
Creates a form with labeled input widgets that automatically sync with
a configuration file.
Methods
Add a labeled input row to the form
Add a collapsible group box to the form
Get the value of the widget with the given key.
Each keyword argument is either the name of a Qt property or a Qt signal.
Set the value of the widget with the given key.
Give all labels the min width of the widest label, so that all forms are aligned even when in different group boxes
Update the value in the config file when it is updated in the widget Parameters ---------- key value
Attributes
customContextMenuRequestedpyqtSignal(*types, name: str = ..., revision: int = ..., arguments: Sequence = ...) -> PYQT_SIGNAL
destroyedpyqtSignal(*types, name: str = ..., revision: int = ..., arguments: Sequence = ...) -> PYQT_SIGNAL
objectNameChangedpyqtSignal(*types, name: str = ..., revision: int = ..., arguments: Sequence = ...) -> PYQT_SIGNAL
staticMetaObjectwindowIconChangedpyqtSignal(*types, name: str = ..., revision: int = ..., arguments: Sequence = ...) -> PYQT_SIGNAL
windowIconTextChangedpyqtSignal(*types, name: str = ..., revision: int = ..., arguments: Sequence = ...) -> PYQT_SIGNAL
windowTitleChangedpyqtSignal(*types, name: str = ..., revision: int = ..., arguments: Sequence = ...) -> PYQT_SIGNAL
- class PaintDeviceMetric(*values)#
Bases:
Enum
- class RenderFlag(*values)#
Bases:
Flag
- classmethod acceptDrops(self) bool#
- classmethod accessibleDescription(self) str#
- classmethod accessibleIdentifier(self) str#
- classmethod accessibleName(self) str#
- classmethod actionEvent(self, a0: QActionEvent | None)#
- classmethod actions(self) list[QAction]#
- classmethod activateWindow(self)#
- classmethod addAction(self, icon: QIcon, text: str | None) QAction | None#
- classmethod addAction(self, icon: QIcon, text: str | None, slot: PYQT_SLOT, type: Qt.ConnectionType = Qt.AutoConnection) QAction | None
- classmethod addAction(self, icon: QIcon, text: str | None, shortcut: QKeySequence | QKeySequence.StandardKey | str | None | int) QAction | None
- classmethod addAction(self, icon: QIcon, text: str | None, shortcut: QKeySequence | QKeySequence.StandardKey | str | None | int, slot: PYQT_SLOT, type: Qt.ConnectionType = Qt.AutoConnection) QAction | None
- classmethod addAction(self, text: str | None) QAction | None
- classmethod addAction(self, text: str | None, shortcut: QKeySequence | QKeySequence.StandardKey | str | None | int) QAction | None
- classmethod addAction(self, text: str | None, slot: PYQT_SLOT, type: Qt.ConnectionType = Qt.AutoConnection) QAction | None
- classmethod addAction(self, text: str | None, shortcut: QKeySequence | QKeySequence.StandardKey | str | None | int, slot: PYQT_SLOT, type: Qt.ConnectionType = Qt.AutoConnection) QAction | None
- classmethod addAction(self, action: QAction | None)
- classmethod addActions(self, actions: Iterable[QAction])#
- add_form_row(key: str, label: str, default_value, widget: QWidget, tooltip: str = None, group: str = 'default')[source]#
Add a labeled input row to the form
Uses the value from the config file for the given key, or the default value if not present.
- Parameters:
key – Configuration key to sync with
label – Display label for the form widget
default_value – Default value if key not in config file
widget – Input widget (QSpinBox, QDoubleSpinBox, QCheckBox, QLineEdit, or FileSelection)
tooltip – Optional tooltip text
group – Group identifier to add the row to
- Raises:
ValueError – If the group does not exist
- add_group(key, name)[source]#
Add a collapsible group box to the form
- Parameters:
key – Group identifier key
name – Display title for the group box
- classmethod adjustSize(self)#
- classmethod autoFillBackground(self) bool#
- classmethod backgroundRole(self) QPalette.ColorRole#
- classmethod baseSize(self) QSize#
- classmethod blockSignals(self, b: bool) bool#
- classmethod changeEvent(self, a0: QEvent | None)#
- classmethod childAt(self, p: QPoint) QWidget | None#
- classmethod childAt(self, p: QPointF) QWidget | None
- classmethod childAt(self, ax: int, ay: int) QWidget | None
- classmethod childEvent(self, a0: QChildEvent | None)#
- classmethod children(self) list[QObject]#
- classmethod childrenRect(self) QRect#
- classmethod childrenRegion(self) QRegion#
- classmethod clearFocus(self)#
- classmethod clearMask(self)#
- classmethod close(self) bool#
- classmethod closeEvent(self, a0: QCloseEvent | None)#
- classmethod colorCount(self) int#
- classmethod connectNotify(self, signal: QMetaMethod)#
- classmethod contentsMargins(self) QMargins#
- classmethod contentsRect(self) QRect#
- classmethod contextMenuEvent(self, a0: QContextMenuEvent | None)#
- classmethod contextMenuPolicy(self) Qt.ContextMenuPolicy#
- classmethod create(self, window: PyQt6.sip.voidptr = None, initializeWindow: bool = True, destroyOldWindow: bool = True)#
- classmethod createWindowContainer(window: QWindow | None, parent: QWidget | None = None, flags: Qt.WindowType = Qt.WindowFlags()) QWidget#
- classmethod cursor(self) QCursor#
- classmethod customEvent(self, a0: QEvent | None)#
- classmethod deleteLater(self)#
- classmethod depth(self) int#
- classmethod destroy(self, destroyWindow: bool = True, destroySubWindows: bool = True)#
- classmethod devType(self) int#
- classmethod devicePixelRatio(self) float#
- classmethod devicePixelRatioF(self) float#
- classmethod devicePixelRatioFScale() float#
- classmethod disconnect(a0: QMetaObject.Connection) bool#
- classmethod disconnect(self)
- classmethod disconnectNotify(self, signal: QMetaMethod)#
- classmethod dragEnterEvent(self, a0: QDragEnterEvent | None)#
- classmethod dragLeaveEvent(self, a0: QDragLeaveEvent | None)#
- classmethod dragMoveEvent(self, a0: QDragMoveEvent | None)#
- classmethod dropEvent(self, a0: QDropEvent | None)#
- classmethod dumpObjectInfo(self)#
- classmethod dumpObjectTree(self)#
- classmethod dynamicPropertyNames(self) list[QByteArray]#
- classmethod effectiveWinId(self) PyQt6.sip.voidptr#
- classmethod ensurePolished(self)#
- classmethod enterEvent(self, event: QEnterEvent | None)#
- classmethod event(self, a0: QEvent | None) bool#
- classmethod eventFilter(self, a0: QObject | None, a1: QEvent | None) bool#
- classmethod find(a0: PyQt6.sip.voidptr) QWidget | None#
- classmethod findChild(self, type: type[QObjectT], name: str | None = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) QObjectT#
- classmethod findChild(self, types: tuple[type[QObjectT], ...], name: str | None = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) QObjectT
- classmethod findChildren(self, type: type[QObjectT], name: str | None = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) list[QObjectT]#
- classmethod findChildren(self, types: tuple[type[QObjectT], ...], name: str | None = '', options: Qt.FindChildOption = Qt.FindChildrenRecursively) list[QObjectT]
- classmethod findChildren(self, type: type[QObjectT], re: QRegularExpression, options: Qt.FindChildOption = Qt.FindChildrenRecursively) list[QObjectT]
- classmethod findChildren(self, types: tuple[type[QObjectT], ...], re: QRegularExpression, options: Qt.FindChildOption = Qt.FindChildrenRecursively) list[QObjectT]
- classmethod focusInEvent(self, a0: QFocusEvent | None)#
- classmethod focusNextChild(self) bool#
- classmethod focusNextPrevChild(self, next: bool) bool#
- classmethod focusOutEvent(self, a0: QFocusEvent | None)#
- classmethod focusPolicy(self) Qt.FocusPolicy#
- classmethod focusPreviousChild(self) bool#
- classmethod focusProxy(self) QWidget | None#
- classmethod focusWidget(self) QWidget | None#
- classmethod font(self) QFont#
- classmethod fontInfo(self) QFontInfo#
- classmethod fontMetrics(self) QFontMetrics#
- classmethod foregroundRole(self) QPalette.ColorRole#
- classmethod frameGeometry(self) QRect#
- classmethod frameSize(self) QSize#
- classmethod geometry(self) QRect#
- get_value(key)[source]#
Get the value of the widget with the given key. Parameters ———- key
Returns#
- classmethod grab(self, rectangle: QRect = QRect(QPoint(0, 0), QSize(-1, -1))) QPixmap#
- classmethod grabGesture(self, type: Qt.GestureType, flags: Qt.GestureFlag = Qt.GestureFlags())#
- classmethod grabKeyboard(self)#
- classmethod grabMouse(self)#
- classmethod grabMouse(self, a0: QCursor | Qt.CursorShape)
- classmethod grabShortcut(self, key: QKeySequence | QKeySequence.StandardKey | str | None | int, context: Qt.ShortcutContext = Qt.WindowShortcut) int#
- classmethod graphicsEffect(self) QGraphicsEffect | None#
- classmethod graphicsProxyWidget(self) QGraphicsProxyWidget | None#
- classmethod hasFocus(self) bool#
- classmethod hasHeightForWidth(self) bool#
- classmethod hasMouseTracking(self) bool#
- classmethod hasTabletTracking(self) bool#
- classmethod height(self) int#
- classmethod heightForWidth(self, a0: int) int#
- classmethod heightMM(self) int#
- classmethod hide(self)#
- classmethod hideEvent(self, a0: QHideEvent | None)#
- classmethod inherits(self, classname: str | None) bool#
- classmethod initPainter(self, painter: QPainter | None)#
- classmethod inputMethodEvent(self, a0: QInputMethodEvent | None)#
- classmethod inputMethodHints(self) Qt.InputMethodHint#
- classmethod inputMethodQuery(self, a0: Qt.InputMethodQuery) Any#
- classmethod insertAction(self, before: QAction | None, action: QAction | None)#
- classmethod insertActions(self, before: QAction | None, actions: Iterable[QAction])#
- classmethod installEventFilter(self, a0: QObject | None)#
- classmethod isActiveWindow(self) bool#
- classmethod isAncestorOf(self, child: QWidget | None) bool#
- classmethod isEnabled(self) bool#
- classmethod isEnabledTo(self, a0: QWidget | None) bool#
- classmethod isFullScreen(self) bool#
- classmethod isHidden(self) bool#
- classmethod isLeftToRight(self) bool#
- classmethod isMaximized(self) bool#
- classmethod isMinimized(self) bool#
- classmethod isModal(self) bool#
- classmethod isQuickItemType(self) bool#
- classmethod isRightToLeft(self) bool#
- classmethod isSignalConnected(self, signal: QMetaMethod) bool#
- classmethod isVisible(self) bool#
- classmethod isVisibleTo(self, a0: QWidget | None) bool#
- classmethod isWidgetType(self) bool#
- classmethod isWindow(self) bool#
- classmethod isWindowModified(self) bool#
- classmethod isWindowType(self) bool#
- classmethod keyPressEvent(self, a0: QKeyEvent | None)#
- classmethod keyReleaseEvent(self, a0: QKeyEvent | None)#
- classmethod keyboardGrabber() QWidget | None#
- classmethod killTimer(self, id: int)#
- classmethod layout(self) QLayout | None#
- classmethod layoutDirection(self) Qt.LayoutDirection#
- classmethod leaveEvent(self, a0: QEvent | None)#
- classmethod locale(self) QLocale#
- classmethod logicalDpiX(self) int#
- classmethod logicalDpiY(self) int#
- classmethod lower(self)#
- classmethod mapFrom(self, a0: QWidget | None, a1: QPoint) QPoint#
- classmethod mapFrom(self, a0: QWidget | None, a1: QPointF) QPointF
- classmethod mapFromGlobal(self, a0: QPoint) QPoint#
- classmethod mapFromGlobal(self, a0: QPointF) QPointF
- classmethod mapFromParent(self, a0: QPoint) QPoint#
- classmethod mapFromParent(self, a0: QPointF) QPointF
- classmethod mapTo(self, a0: QWidget | None, a1: QPoint) QPoint#
- classmethod mapTo(self, a0: QWidget | None, a1: QPointF) QPointF
- classmethod mapToGlobal(self, a0: QPoint) QPoint#
- classmethod mapToGlobal(self, a0: QPointF) QPointF
- classmethod mapToParent(self, a0: QPoint) QPoint#
- classmethod mapToParent(self, a0: QPointF) QPointF
- classmethod mask(self) QRegion#
- classmethod maximumHeight(self) int#
- classmethod maximumSize(self) QSize#
- classmethod maximumWidth(self) int#
- classmethod metaObject(self) QMetaObject | None#
- classmethod metric(self, a0: QPaintDevice.PaintDeviceMetric) int#
- classmethod minimumHeight(self) int#
- classmethod minimumSize(self) QSize#
- classmethod minimumSizeHint(self) QSize#
- classmethod minimumWidth(self) int#
- classmethod mouseDoubleClickEvent(self, a0: QMouseEvent | None)#
- classmethod mouseGrabber() QWidget | None#
- classmethod mouseMoveEvent(self, a0: QMouseEvent | None)#
- classmethod mousePressEvent(self, a0: QMouseEvent | None)#
- classmethod mouseReleaseEvent(self, a0: QMouseEvent | None)#
- classmethod move(self, a0: QPoint)#
- classmethod move(self, ax: int, ay: int)
- classmethod moveEvent(self, a0: QMoveEvent | None)#
- classmethod moveToThread(self, thread: QThread | None)#
- classmethod nativeEvent(self, eventType: QByteArray | bytes | bytearray | memoryview, message: PyQt6.sip.voidptr | None)#
- classmethod nativeParentWidget(self) QWidget | None#
- classmethod nextInFocusChain(self) QWidget | None#
- classmethod normalGeometry(self) QRect#
- classmethod objectName(self) str#
- classmethod overrideWindowFlags(self, type: Qt.WindowType)#
- classmethod overrideWindowState(self, state: Qt.WindowState)#
- classmethod paintEngine(self) QPaintEngine | None#
- classmethod paintEvent(self, a0: QPaintEvent | None)#
- classmethod paintingActive(self) bool#
- classmethod palette(self) QPalette#
- classmethod parent(self) QObject | None#
- classmethod parentWidget(self) QWidget | None#
- classmethod physicalDpiX(self) int#
- classmethod physicalDpiY(self) int#
- classmethod pos(self) QPoint#
- classmethod previousInFocusChain(self) QWidget | None#
- classmethod property(self, name: str | None) Any#
- classmethod pyqtConfigure(...)#
Each keyword argument is either the name of a Qt property or a Qt signal. For properties the property is set to the given value which should be of an appropriate type. For signals the signal is connected to the given value which should be a callable.
- classmethod raise_(self)#
- classmethod receivers(self, signal: PYQT_SIGNAL) int#
- classmethod rect(self) QRect#
- classmethod releaseKeyboard(self)#
- classmethod releaseMouse(self)#
- classmethod releaseShortcut(self, id: int)#
- classmethod removeAction(self, action: QAction | None)#
- classmethod removeEventFilter(self, a0: QObject | None)#
- classmethod render(self, target: QPaintDevice | None, targetOffset: QPoint = QPoint(), sourceRegion: QRegion = QRegion(), flags: QWidget.RenderFlag = QWidget.RenderFlags(QWidget.DrawWindowBackground | QWidget.DrawChildren))#
- classmethod render(self, painter: QPainter | None, targetOffset: QPoint = QPoint(), sourceRegion: QRegion = QRegion(), flags: QWidget.RenderFlag = QWidget.RenderFlags(QWidget.DrawWindowBackground | QWidget.DrawChildren))
- classmethod repaint(self)#
- classmethod repaint(self, x: int, y: int, w: int, h: int)
- classmethod repaint(self, a0: QRect)
- classmethod repaint(self, a0: QRegion)
- classmethod resize(self, a0: QSize)#
- classmethod resize(self, w: int, h: int)
- classmethod resizeEvent(self, a0: QResizeEvent | None)#
- classmethod restoreGeometry(self, geometry: QByteArray | bytes | bytearray | memoryview) bool#
- classmethod saveGeometry(self) QByteArray#
- classmethod screen(self) QScreen | None#
- classmethod scroll(self, dx: int, dy: int)#
- classmethod scroll(self, dx: int, dy: int, a2: QRect)
- classmethod sender(self) QObject | None#
- classmethod senderSignalIndex(self) int#
- classmethod setAcceptDrops(self, on: bool)#
- classmethod setAccessibleDescription(self, description: str | None)#
- classmethod setAccessibleIdentifier(self, identifier: str | None)#
- classmethod setAccessibleName(self, name: str | None)#
- classmethod setAttribute(self, attribute: Qt.WidgetAttribute, on: bool = True)#
- classmethod setAutoFillBackground(self, enabled: bool)#
- classmethod setBackgroundRole(self, a0: QPalette.ColorRole)#
- classmethod setBaseSize(self, basew: int, baseh: int)#
- classmethod setBaseSize(self, s: QSize)
- classmethod setContentsMargins(self, left: int, top: int, right: int, bottom: int)#
- classmethod setContentsMargins(self, margins: QMargins)
- classmethod setContextMenuPolicy(self, policy: Qt.ContextMenuPolicy)#
- classmethod setCursor(self, a0: QCursor | Qt.CursorShape)#
- classmethod setDisabled(self, a0: bool)#
- classmethod setEnabled(self, a0: bool)#
- classmethod setFixedHeight(self, h: int)#
- classmethod setFixedSize(self, a0: QSize)#
- classmethod setFixedSize(self, w: int, h: int)
- classmethod setFixedWidth(self, w: int)#
- classmethod setFocus(self)#
- classmethod setFocus(self, reason: Qt.FocusReason)
- classmethod setFocusPolicy(self, policy: Qt.FocusPolicy)#
- classmethod setFocusProxy(self, a0: QWidget | None)#
- classmethod setFont(self, a0: QFont)#
- classmethod setForegroundRole(self, a0: QPalette.ColorRole)#
- classmethod setGeometry(self, a0: QRect)#
- classmethod setGeometry(self, ax: int, ay: int, aw: int, ah: int)
- classmethod setGraphicsEffect(self, effect: QGraphicsEffect | None)#
- classmethod setHidden(self, hidden: bool)#
- classmethod setInputMethodHints(self, hints: Qt.InputMethodHint)#
- classmethod setLayout(self, a0: QLayout | None)#
- classmethod setLayoutDirection(self, direction: Qt.LayoutDirection)#
- classmethod setLocale(self, locale: QLocale)#
- classmethod setMask(self, a0: QBitmap)#
- classmethod setMask(self, a0: QRegion)
- classmethod setMaximumHeight(self, maxh: int)#
- classmethod setMaximumSize(self, maxw: int, maxh: int)#
- classmethod setMaximumSize(self, s: QSize)
- classmethod setMaximumWidth(self, maxw: int)#
- classmethod setMinimumHeight(self, minh: int)#
- classmethod setMinimumSize(self, minw: int, minh: int)#
- classmethod setMinimumSize(self, s: QSize)
- classmethod setMinimumWidth(self, minw: int)#
- classmethod setMouseTracking(self, enable: bool)#
- classmethod setObjectName(self, name: QByteArray | bytes | bytearray | memoryview | str | None)#
- classmethod setPalette(self, a0: QPalette)#
- classmethod setParent(self, parent: QWidget | None)#
- classmethod setParent(self, parent: QWidget | None, f: Qt.WindowType)
- classmethod setProperty(self, name: str | None, value: Any) bool#
- classmethod setScreen(self, a0: QScreen | None)#
- classmethod setShortcutAutoRepeat(self, id: int, enabled: bool = True)#
- classmethod setShortcutEnabled(self, id: int, enabled: bool = True)#
- classmethod setSizeIncrement(self, w: int, h: int)#
- classmethod setSizeIncrement(self, s: QSize)
- classmethod setSizePolicy(self, a0: QSizePolicy)#
- classmethod setSizePolicy(self, hor: QSizePolicy.Policy, ver: QSizePolicy.Policy)
- classmethod setStatusTip(self, a0: str | None)#
- classmethod setStyle(self, a0: QStyle | None)#
- classmethod setStyleSheet(self, styleSheet: str | None)#
- classmethod setTabOrder(a0: QWidget | None, a1: QWidget | None)#
- classmethod setTabletTracking(self, enable: bool)#
- classmethod setToolTip(self, a0: str | None)#
- classmethod setToolTipDuration(self, msec: int)#
- classmethod setUpdatesEnabled(self, enable: bool)#
- classmethod setVisible(self, visible: bool)#
- classmethod setWhatsThis(self, a0: str | None)#
- classmethod setWindowFilePath(self, filePath: str | None)#
- classmethod setWindowFlag(self, a0: Qt.WindowType, on: bool = True)#
- classmethod setWindowFlags(self, type: Qt.WindowType)#
- classmethod setWindowIcon(self, icon: QIcon)#
- classmethod setWindowIconText(self, a0: str | None)#
- classmethod setWindowModality(self, windowModality: Qt.WindowModality)#
- classmethod setWindowModified(self, a0: bool)#
- classmethod setWindowOpacity(self, level: float)#
- classmethod setWindowRole(self, a0: str | None)#
- classmethod setWindowState(self, state: Qt.WindowState)#
- classmethod setWindowTitle(self, a0: str | None)#
- set_value(key, value)[source]#
Set the value of the widget with the given key. “” Parameters ———- key value
Returns#
- classmethod show(self)#
- classmethod showEvent(self, a0: QShowEvent | None)#
- classmethod showFullScreen(self)#
- classmethod showMaximized(self)#
- classmethod showMinimized(self)#
- classmethod showNormal(self)#
- classmethod signalsBlocked(self) bool#
- classmethod size(self) QSize#
- classmethod sizeHint(self) QSize#
- classmethod sizeIncrement(self) QSize#
- classmethod sizePolicy(self) QSizePolicy#
- classmethod stackUnder(self, a0: QWidget | None)#
- classmethod startTimer(self, interval: int, timerType: Qt.TimerType = Qt.CoarseTimer) int#
- classmethod statusTip(self) str#
- classmethod style(self) QStyle | None#
- classmethod styleSheet(self) str#
- classmethod tabletEvent(self, a0: QTabletEvent | None)#
- classmethod testAttribute(self, attribute: Qt.WidgetAttribute) bool#
- classmethod thread(self) QThread | None#
- classmethod timerEvent(self, a0: QTimerEvent | None)#
- classmethod toolTip(self) str#
- classmethod toolTipDuration(self) int#
- classmethod tr(sourceText: str | None, disambiguation: str | None = None, n: int = -1) str#
- classmethod underMouse(self) bool#
- classmethod ungrabGesture(self, type: Qt.GestureType)#
- classmethod unsetCursor(self)#
- classmethod unsetLayoutDirection(self)#
- classmethod unsetLocale(self)#
- classmethod update(self)#
- classmethod update(self, a0: QRect)
- classmethod update(self, a0: QRegion)
- classmethod update(self, ax: int, ay: int, aw: int, ah: int)
- classmethod updateGeometry(self)#
- classmethod updateMicroFocus(self, query: Qt.InputMethodQuery = Qt.ImQueryAll)#
- update_alignment()[source]#
Give all labels the min width of the widest label, so that all forms are aligned even when in different group boxes
- classmethod updatesEnabled(self) bool#
- value_updated(key, value)[source]#
Update the value in the config file when it is updated in the widget Parameters ———- key value
- classmethod visibleRegion(self) QRegion#
- classmethod whatsThis(self) str#
- classmethod wheelEvent(self, a0: QWheelEvent | None)#
- classmethod width(self) int#
- classmethod widthMM(self) int#
- classmethod winId(self) PyQt6.sip.voidptr#
- classmethod window(self) QWidget | None#
- classmethod windowFilePath(self) str#
- classmethod windowFlags(self) Qt.WindowType#
- classmethod windowHandle(self) QWindow | None#
- classmethod windowIcon(self) QIcon#
- classmethod windowIconText(self) str#
- classmethod windowModality(self) Qt.WindowModality#
- classmethod windowOpacity(self) float#
- classmethod windowRole(self) str#
- classmethod windowState(self) Qt.WindowState#
- classmethod windowTitle(self) str#
- classmethod windowType(self) Qt.WindowType#
- classmethod x(self) int#
- classmethod y(self) int#