Skip to content

Conversation

tlambert03
Copy link
Member

yet another evolution of #446

Screen.Recording.2025-07-06.at.5.12.46.PM.mov

again, @marktsuchida ... would love your feedback. (anything you already noted in #446 (comment) doesn't need to be repeated here... I still intend to comb that for remaining todo items). But the interface has changed significantly. curious to hear your thoughts

…ConfigGroupsModel

fix: update icon names for AutoFocus and Magnifier device types
refactor: enhance PropertyValueDelegate and ConfigGroupsEditor for better structure and functionality
…and presets

- Added QConfigGroupsModel to handle a three-level model structure for configuration groups, presets, and settings.
- Implemented _Node class to represent tree nodes for groups, presets, and settings.
- Enhanced data handling and editing capabilities within the model.
- Updated related views and widgets to utilize the new model structure.
- Refactored existing code to improve clarity and maintainability, including renaming and restructuring imports.
- Adjusted tests to align with the new model and property handling.
tlambert03 added 17 commits July 4, 2025 20:57
- Removed the unused ConfigGroupsEditor import from __init__.py and updated the import for ConfigGroupsEditor from the correct module.
- Deleted the _config_views.py file, which contained the ConfigGroupsEditor class and related functionality, to streamline the codebase.
- Refactored the DevicePropertySelector to utilize a new DeviceTypeFilter class for filtering device types, improving code organization and readability.
- Introduced a new _device_type_filter_proxy.py file containing the DeviceTypeFilter class, which manages filtering based on allowed device types and property flags.
- Updated the DevicePropertySelector to connect the new filtering logic to the UI components, ensuring proper functionality with the new structure.
… editor

refactor: improve icon handling and toolbar actions in config groups editor
refactor: enhance QConfigGroupsModel to manage channel groups
refactor: streamline device property selector and view mode toggling
@tlambert03 tlambert03 changed the title Q config new model feat: yet another config group editor iteration Jul 6, 2025
Copy link

codecov bot commented Jul 6, 2025

Codecov Report

Attention: Patch coverage is 23.39515% with 1074 lines in your changes missing coverage. Please review.

Project coverage is 80.45%. Comparing base (bbacae1) to head (752317b).

Files with missing lines Patch % Lines
...ets/config_presets/_views/_config_groups_editor.py 17.88% 225 Missing ⚠️
...config_presets/_views/_device_property_selector.py 19.67% 196 Missing ⚠️
...c/pymmcore_widgets/_models/_q_device_prop_model.py 18.38% 182 Missing ⚠️
...re_widgets/config_presets/_views/_undo_commands.py 23.66% 171 Missing ⚠️
...ts/config_presets/_views/_group_preset_selector.py 18.82% 138 Missing ⚠️
...config_presets/_views/_device_type_filter_proxy.py 21.15% 41 Missing ⚠️
...e_widgets/config_presets/_views/_undo_delegates.py 28.00% 36 Missing ⚠️
src/pymmcore_widgets/_help/_config_groups_help.py 0.00% 22 Missing ⚠️
...config_presets/_views/_checked_properties_proxy.py 25.92% 20 Missing ⚠️
...idgets/device_properties/_device_property_table.py 69.23% 20 Missing ⚠️
... and 4 more

❌ Your patch check has failed because the patch coverage (23.39%) is below the target coverage (85.00%). You can increase the patch coverage or adjust the target coverage.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #451      +/-   ##
==========================================
- Coverage   87.45%   80.45%   -7.00%     
==========================================
  Files         105      114       +9     
  Lines       11477    12854    +1377     
==========================================
+ Hits        10037    10342     +305     
- Misses       1440     2512    +1072     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant