fix(widget_state_manager):Adjustments to WidgetStateManager
Description
Adjustments have been made to the WidgetStateManager
to enhance its functionality and provide better control over which widget settings are saved to the INI file. The changes include the following:
-
Exclusion of Certain Widgets: By default,
QLabel
settings are now excluded from being saved. -
Customizable Exclusions: Specific
QProperty
attributes can be excluded from saving by marking them with@SafeProperty(stored=False)
. -
Hierarchical Exclusions: If a widget is excluded from saving (via the new
skip_settings
property), all its child widgets will also be excluded automatically. Previously, child widgets were added recursively regardless of the parent's exclusion status.
Type of Change
- Added a
skip_settings
property to exclude widgets from being saved to the INI file. - Automatically excluded
QLabel
widgets. - Allowed exclusion of
QProperty
attributes withstored=False
. - Updated default exclusions for various widget types in the INI settings.
Potential Side Effects
This utility is currently used exclusively for the development of the new plotting suite, so the impact should be limited to that context.