pyqt_reactive.forms.parameter_form_constants
Parameter form constants for eliminating magic strings throughout the parameter form managers.
This module centralizes all hardcoded strings used in both PyQt and Textual parameter form implementations to improve maintainability and reduce duplication.
Classes
|
Centralized constants for parameter form implementations. |
- class pyqt_reactive.forms.parameter_form_constants.ParameterFormConstants(FIELD_ID_SEPARATOR: str = '_', NESTED_STATIC_PREFIX: str = 'nested_static_', MIXED_CLASS_PREFIX: str = 'Mixed', ENABLE_CHECKBOX_PREFIX: str = 'Enable ', RESET_BUTTON_PREFIX: str = 'reset_', DEFAULT_PLACEHOLDER_PREFIX: str = 'Pipeline default', PLACEHOLDER_WITH_COLON: str = 'Pipeline default:', PLACEHOLDER_NONE_TEXT: str = '(none)', RESET_BUTTON_TEXT: str = 'Reset', NONE_STRING_LITERAL: str = 'None', EMPTY_STRING: str = '', UNDERSCORE_REPLACEMENT: str = ' ', FIELD_LABEL_SUFFIX: str = ':', PARAMETER_DESCRIPTION_PREFIX: str = 'Parameter: ', DEBUG_PREFIX: str = '*** ', DEBUG_SUFFIX: str = ' ***', DEBUG_TARGET_PARAMS: FrozenSet[str] = frozenset({'output_dir_suffix', 'path_planning'}), NESTED_MANAGERS_ATTR: str = 'nested_managers', OPTIONAL_CHECKBOXES_ATTR: str = 'optional_checkboxes', ENABLED_SUFFIX: str = '_enabled', DATACLASS_FIELDS_ATTR: str = '__dataclass_fields__', RESOLVE_FIELD_VALUE_ATTR: str = '_resolve_field_value', BASES_ATTR: str = '__bases__', VALUE_ATTR: str = 'value', TRUE_STRINGS: FrozenSet[str] = frozenset({'1', 'on', 'true', 'yes'}), PARAM_LABEL_CLASS: str = 'param-label clickable', PLACEHOLDER_STYLE_PROPERTY: str = 'is_placeholder_state', AUTO_SIZE: str = 'auto', FLEXIBLE_WIDTH: str = '1fr', LEFT_ALIGN: str = 'left', UNKNOWN_CONFIG_KEY_MSG: str = 'Unknown config key: {}', INVALID_CONFIG_KEYS_MSG: str = 'Invalid config keys: {}', CONFIG_MUST_BE_DICT_MSG: str = 'Config must be a non-empty dictionary', NO_WIDGET_CREATOR_MSG: str = 'No widget creator registered for type: {}', CONVERSION_ERROR_MSG: str = "Cannot convert '{}' to {}: {}", NO_VALID_CONVERSION_MSG: str = 'No valid conversion found for Union type {}', GLOBAL_CONTEXT_LAZY_PREFIX: str = 'GlobalContextLazy', STATIC_LAZY_PREFIX: str = 'StaticLazy', DIFFERENT_VALUES_TYPE: str = 'different', TOOLTIP_SEPARATOR: str = ': ', HELP_PARAMETER_PREFIX: str = 'Parameter: ', COLLAPSED_STATE: bool = True, EXPANDED_STATE: bool = False, COMPACT_WIDGET: bool = True, NO_MARGIN: tuple = (0, 0, 0, 0), LEFT_MARGIN_ONLY: tuple = (0, 0, 0, 1), CURRENT_PIPELINE_CONFIG_ATTR: str = 'value', SET_PATH_METHOD: str = 'set_path', GET_VALUE_METHOD: str = 'get_value', SET_VALUE_METHOD: str = 'setValue', BLOCK_SIGNALS_METHOD: str = 'blockSignals', SET_TEXT_METHOD: str = 'setText', SET_CHECKED_METHOD: str = 'setChecked', NESTED_DEBUG_MSG: str = '*** NESTED DEBUG *** param_name={}, parent_nested_name={}', NESTED_UPDATE_MSG: str = '*** NESTED UPDATE *** Updating {}.{} = {}', RESET_DEBUG_MSG: str = '*** RESET DEBUG *** param_name={}, parent_nested_name={}', FALLBACK_DEBUG_MSG: str = '*** FALLBACK DEBUG *** Checking fallback for {}', TEXTUAL_UPDATE_DEBUG_MSG: str = '*** TEXTUAL UPDATE DEBUG *** {} update_parameter called with: {} (type: {})', DOT_SEPARATOR: str = '.', PATH_PLANNING_FIELD: str = 'path_planning', OUTPUT_DIR_SUFFIX_FIELD: str = 'output_dir_suffix', INPUT_TYPE_INTEGER: str = 'integer', INPUT_TYPE_NUMBER: str = 'number', INPUT_TYPE_TEXT: str = 'text', GLOBAL_CONFIG_EDITING_CONTEXT: str = 'global_config_editing', LAZY_CONTEXT: str = 'lazy_context', PYQT6_FRAMEWORK: str = 'pyqt6', TEXTUAL_FRAMEWORK: str = 'textual')[source]
Centralized constants for parameter form implementations.
This dataclass eliminates magic strings throughout the parameter form system by providing a single source of truth for all hardcoded values used in both PyQt and Textual implementations.
Categories: - UI text and formatting patterns - Widget identification and naming - Framework-specific constants - Debug and validation settings
- TEXTUAL_UPDATE_DEBUG_MSG: str = '*** TEXTUAL UPDATE DEBUG *** {} update_parameter called with: {} (type: {})'
- __init__(FIELD_ID_SEPARATOR: str = '_', NESTED_STATIC_PREFIX: str = 'nested_static_', MIXED_CLASS_PREFIX: str = 'Mixed', ENABLE_CHECKBOX_PREFIX: str = 'Enable ', RESET_BUTTON_PREFIX: str = 'reset_', DEFAULT_PLACEHOLDER_PREFIX: str = 'Pipeline default', PLACEHOLDER_WITH_COLON: str = 'Pipeline default:', PLACEHOLDER_NONE_TEXT: str = '(none)', RESET_BUTTON_TEXT: str = 'Reset', NONE_STRING_LITERAL: str = 'None', EMPTY_STRING: str = '', UNDERSCORE_REPLACEMENT: str = ' ', FIELD_LABEL_SUFFIX: str = ':', PARAMETER_DESCRIPTION_PREFIX: str = 'Parameter: ', DEBUG_PREFIX: str = '*** ', DEBUG_SUFFIX: str = ' ***', DEBUG_TARGET_PARAMS: FrozenSet[str] = frozenset({'output_dir_suffix', 'path_planning'}), NESTED_MANAGERS_ATTR: str = 'nested_managers', OPTIONAL_CHECKBOXES_ATTR: str = 'optional_checkboxes', ENABLED_SUFFIX: str = '_enabled', DATACLASS_FIELDS_ATTR: str = '__dataclass_fields__', RESOLVE_FIELD_VALUE_ATTR: str = '_resolve_field_value', BASES_ATTR: str = '__bases__', VALUE_ATTR: str = 'value', TRUE_STRINGS: FrozenSet[str] = frozenset({'1', 'on', 'true', 'yes'}), PARAM_LABEL_CLASS: str = 'param-label clickable', PLACEHOLDER_STYLE_PROPERTY: str = 'is_placeholder_state', AUTO_SIZE: str = 'auto', FLEXIBLE_WIDTH: str = '1fr', LEFT_ALIGN: str = 'left', UNKNOWN_CONFIG_KEY_MSG: str = 'Unknown config key: {}', INVALID_CONFIG_KEYS_MSG: str = 'Invalid config keys: {}', CONFIG_MUST_BE_DICT_MSG: str = 'Config must be a non-empty dictionary', NO_WIDGET_CREATOR_MSG: str = 'No widget creator registered for type: {}', CONVERSION_ERROR_MSG: str = "Cannot convert '{}' to {}: {}", NO_VALID_CONVERSION_MSG: str = 'No valid conversion found for Union type {}', GLOBAL_CONTEXT_LAZY_PREFIX: str = 'GlobalContextLazy', STATIC_LAZY_PREFIX: str = 'StaticLazy', DIFFERENT_VALUES_TYPE: str = 'different', TOOLTIP_SEPARATOR: str = ': ', HELP_PARAMETER_PREFIX: str = 'Parameter: ', COLLAPSED_STATE: bool = True, EXPANDED_STATE: bool = False, COMPACT_WIDGET: bool = True, NO_MARGIN: tuple = (0, 0, 0, 0), LEFT_MARGIN_ONLY: tuple = (0, 0, 0, 1), CURRENT_PIPELINE_CONFIG_ATTR: str = 'value', SET_PATH_METHOD: str = 'set_path', GET_VALUE_METHOD: str = 'get_value', SET_VALUE_METHOD: str = 'setValue', BLOCK_SIGNALS_METHOD: str = 'blockSignals', SET_TEXT_METHOD: str = 'setText', SET_CHECKED_METHOD: str = 'setChecked', NESTED_DEBUG_MSG: str = '*** NESTED DEBUG *** param_name={}, parent_nested_name={}', NESTED_UPDATE_MSG: str = '*** NESTED UPDATE *** Updating {}.{} = {}', RESET_DEBUG_MSG: str = '*** RESET DEBUG *** param_name={}, parent_nested_name={}', FALLBACK_DEBUG_MSG: str = '*** FALLBACK DEBUG *** Checking fallback for {}', TEXTUAL_UPDATE_DEBUG_MSG: str = '*** TEXTUAL UPDATE DEBUG *** {} update_parameter called with: {} (type: {})', DOT_SEPARATOR: str = '.', PATH_PLANNING_FIELD: str = 'path_planning', OUTPUT_DIR_SUFFIX_FIELD: str = 'output_dir_suffix', INPUT_TYPE_INTEGER: str = 'integer', INPUT_TYPE_NUMBER: str = 'number', INPUT_TYPE_TEXT: str = 'text', GLOBAL_CONFIG_EDITING_CONTEXT: str = 'global_config_editing', LAZY_CONTEXT: str = 'lazy_context', PYQT6_FRAMEWORK: str = 'pyqt6', TEXTUAL_FRAMEWORK: str = 'textual') None