pyqt_reactive.protocols.widget_protocols
Functions
|
Return all capability tags declared by a widget class and its bases. |
|
Return whether a widget class declares a nominal capability tag. |
Classes
ABC for widgets that emit change signals. |
|
ABC for compound widgets that render chrome for their own child fields. |
|
ABC for compound widgets that expose nominal child ObjectState identity. |
|
ABC for compound widgets that expose concrete widgets for child fields. |
|
ABC for compound widgets that render semantic chrome for child leaves. |
|
ABC for compound widgets that expose structural descendant targets. |
|
ABC for widgets that can select from enum values. |
|
ABC for inline dataclass value widgets that contribute container title chrome. |
|
ABC for inline dataclass widgets that can reset their child fields. |
|
ABC for widgets that can display placeholder text. |
|
ABC for widgets that own placeholder chrome/cache state. |
|
ABC for widgets that support numeric range configuration. |
|
ABC for widgets that can atomically apply a raw value and resolved preview. |
|
ABC for widgets that render inherited/resolved values separately from raw edits. |
|
ABC for widgets that can return a value. |
|
ABC for widgets that can accept a value. |
|
|
Nominal widget capability tags for generic service-level queries. |
Base for widget contracts that advertise generic capability tags. |
- class pyqt_reactive.protocols.widget_protocols.WidgetCapability(*values)[source]
Nominal widget capability tags for generic service-level queries.
- PLACEHOLDER_STATE = 'placeholder_state'
- class pyqt_reactive.protocols.widget_protocols.WidgetCapabilityTagged[source]
Base for widget contracts that advertise generic capability tags.
- widget_capabilities: ClassVar[frozenset[WidgetCapability]] = frozenset({})
- pyqt_reactive.protocols.widget_protocols.widget_capability_tags(widget_or_type: Any) frozenset[WidgetCapability][source]
Return all capability tags declared by a widget class and its bases.
- pyqt_reactive.protocols.widget_protocols.widget_supports_capability(widget_or_type: Any, capability: WidgetCapability) bool[source]
Return whether a widget class declares a nominal capability tag.
- class pyqt_reactive.protocols.widget_protocols.ValueGettable[source]
ABC for widgets that can return a value.
All input widgets must implement this to participate in form value extraction.
- class pyqt_reactive.protocols.widget_protocols.ValueSettable[source]
ABC for widgets that can accept a value.
All input widgets must implement this to participate in form value updates.
- class pyqt_reactive.protocols.widget_protocols.ResolvedValuePreviewSettable[source]
ABC for widgets that render inherited/resolved values separately from raw edits.
Lazy dataclass container widgets may keep raw
Nonechild fields while previewing the resolved inherited dataclass. This contract lets form chrome refresh that preview without replacing the raw editable value.
- class pyqt_reactive.protocols.widget_protocols.RawResolvedValueSettable[source]
ABC for widgets that can atomically apply a raw value and resolved preview.
Lazy dataclass widgets can avoid rendering a raw intermediate state when a form refresh already has both ObjectState values available.
- class pyqt_reactive.protocols.widget_protocols.ChildFieldChromeRefreshable[source]
ABC for compound widgets that render chrome for their own child fields.
Inline dataclass widgets can own section labels/reset controls internally while still being edited as one form value. This contract lets the form manager refresh those child markers after ObjectState dirty/signature state changes without knowing widget-specific field names.
ABC for compound widgets that expose concrete widgets for child fields.
Inline dataclass widgets may render their own child sections internally instead of creating nested ParameterFormManager instances. This contract lets generic form navigation scroll to the concrete child section while keeping the widget-specific layout private to the inline editor.
Return the widget that visually represents a child field, if present.
- Parameters:
field_name – Direct child field name inside the compound widget.
- class pyqt_reactive.protocols.widget_protocols.ChildFieldIdentityProvider[source]
ABC for compound widgets that expose nominal child ObjectState identity.
- class pyqt_reactive.protocols.widget_protocols.ChildFieldSemanticChromeRefreshable[source]
ABC for compound widgets that render semantic chrome for child leaves.
ABC for compound widgets that expose structural descendant targets.
Return a concrete visual target for a child structural path.
An empty
relative_pathrepresents the child structural owner itself.
- class pyqt_reactive.protocols.widget_protocols.InlineDataclassGroupBoxChromeProvider[source]
ABC for inline dataclass value widgets that contribute container title chrome.
Regular nested dataclasses can move child widgets such as enableable checkboxes into the groupbox title row. Inline dataclass widgets do not have a nested ParameterFormManager, so they expose the same chrome through this contract while the container remains generic.
- class pyqt_reactive.protocols.widget_protocols.InlineDataclassRootResettable[source]
ABC for inline dataclass widgets that can reset their child fields.
- class pyqt_reactive.protocols.widget_protocols.PlaceholderCapable[source]
ABC for widgets that can display placeholder text.
Placeholders show inherited/default values without setting actual values.
- class pyqt_reactive.protocols.widget_protocols.PlaceholderStateTrackable[source]
ABC for widgets that own placeholder chrome/cache state.
- widget_capabilities: ClassVar[frozenset[WidgetCapability]] = frozenset({WidgetCapability.PLACEHOLDER_STATE})
- abstractmethod has_placeholder_state() bool[source]
Return whether placeholder chrome or cached placeholder data is present.
- abstractmethod mark_placeholder_state() None[source]
Mark the widget as currently displaying placeholder chrome.
- abstractmethod clear_placeholder_state() None[source]
Mark the widget as no longer displaying placeholder chrome.
- abstractmethod cached_placeholder_text() str | None[source]
Return cached placeholder text, if any.
- abstractmethod set_cached_placeholder_text(placeholder_text: str) None[source]
Cache placeholder text after a successful render.
- abstractmethod cached_placeholder_resolved_value() Any[source]
Return cached placeholder resolved value, if any.
- class pyqt_reactive.protocols.widget_protocols.RangeConfigurable[source]
ABC for widgets that support numeric range configuration.
Typically implemented by numeric input widgets (spinboxes, sliders).
- class pyqt_reactive.protocols.widget_protocols.EnumSelectable[source]
ABC for widgets that can select from enum values.
Typically implemented by dropdowns and radio button groups.
- class pyqt_reactive.protocols.widget_protocols.ChangeSignalEmitter[source]
ABC for widgets that emit change signals.
Provides explicit contract for signal connection, eliminating duck typing of signal names (textChanged vs valueChanged vs currentIndexChanged).
- abstractmethod connect_change_signal(callback: Callable[[Any], None]) None[source]
Connect callback to widget’s change signal.
The callback will be invoked whenever the widget’s value changes, receiving the new value as its argument.
- Parameters:
callback – Function to call when widget value changes. Signature: callback(new_value: Any) -> None