pyqt_reactive.widgets.shared.responsive_layout_widgets
Responsive layout widgets for PyQt6 - Uses layout config from manager
Functions
Check if responsive wrapping is globally enabled. |
|
|
Globally enable or disable responsive wrapping for all parameter rows. |
Classes
|
Header widget for config windows that dynamically switches between 1-row and 2-row layout. |
|
Row for PFM parameters. |
|
Layout mode for two-row responsive widgets. |
|
Widget that switches between 1-row (horizontal) and 2-row (vertical) layout. |
|
- pyqt_reactive.widgets.shared.responsive_layout_widgets.set_wrapping_enabled(enabled: bool)[source]
Globally enable or disable responsive wrapping for all parameter rows.
- pyqt_reactive.widgets.shared.responsive_layout_widgets.is_wrapping_enabled() → bool[source]
Check if responsive wrapping is globally enabled.
- class pyqt_reactive.widgets.shared.responsive_layout_widgets.ResponsiveRowLayoutMode(*values)[source]
Layout mode for two-row responsive widgets.
- HORIZONTAL = 'horizontal'
- VERTICAL = 'vertical'
- next_mode() → ResponsiveRowLayoutMode[source]
- class pyqt_reactive.widgets.shared.responsive_layout_widgets.ResponsiveTwoRowWidget(width_threshold: int = 400, parent=None, layout_config=None)[source]
Widget that switches between 1-row (horizontal) and 2-row (vertical) layout.
- class pyqt_reactive.widgets.shared.responsive_layout_widgets.ResponsiveParameterRow(width_threshold=350, parent=None, layout_config=None)[source]
Row for PFM parameters.
- class pyqt_reactive.widgets.shared.responsive_layout_widgets.ResponsiveConfigHeader(parent=None, color_scheme=None)[source]
Header widget for config windows that dynamically switches between 1-row and 2-row layout.
Title stays on row 1. Buttons start on row 1 (single row mode) or move to row 2 (narrow mode). Threshold is dynamically calculated based on actual content width.
- Usage:
header = ResponsiveConfigHeader(parent=self) header.set_title(“Configure PipelineConfig”) header.add_button(save_button) header.add_button(cancel_button) layout.addWidget(header)
- add_button(button: QWidget)[source]
Add a button to the right side (will wrap to second row when narrow).