Closed jmurugan-fzj closed 1 month ago
This pull request implements significant changes to the data hierarchy editor dialog in the PASTA-ELN application. The changes focus on improving the functionality for creating and editing data types, enhancing the user interface, and refactoring the codebase for better maintainability.
journey
title User journey for data type row changes
section Data Type Row
User selects data type from combo-box: 5: User
User clicks Add button: 5: User
System displays form with data type, title, IRI, shortcut, icon: 5: System
User fills form and submits: 5: User
System saves new data type: 5: System
User clicks Edit button: 5: User
System displays form with read-only data type, icon, shortcut: 5: System
User modifies title and IRI: 5: User
System saves changes: 5: System
User clicks Delete button: 5: User
System checks if data type is structural: 5: System
System disables delete for structural types: 5: System
Change | Details | Files |
---|---|---|
Refactored and enhanced the data hierarchy editor dialog |
|
pasta_eln/GUI/data_hierarchy/data_hierarchy_editor_dialog.py pasta_eln/GUI/data_hierarchy/data_hierarchy_editor_dialog_base.py tests/unit_tests/test_data_hierarchy_editor_dialog.py |
Introduced new classes for managing data types and icons |
|
pasta_eln/dataverse/data_type_info.py pasta_eln/dataverse/data_type_info_validator.py pasta_eln/GUI/data_hierarchy/qtaicons_singleton.py pasta_eln/GUI/data_hierarchy/edit_type_dialog.py |
Updated utility functions and data structures |
|
pasta_eln/GUI/data_hierarchy/utility_functions.py pasta_eln/fixedStringsJson.py |
Expanded and updated test suite |
|
tests/unit_tests/test_data_hierarchy_create_type_dialog.py tests/unit_tests/test_data_hierarchy_edit_type_dialog.py tests/unit_tests/test_data_hierarchy_type_dialog.py tests/unit_tests/test_data_hierarchy_icon_names.py tests/unit_tests/test_data_hierarchy_data_type_info.py tests/unit_tests/test_data_hierarchy_data_type_info_validator.py |
@SteffenBrinckmann Could you please do the review, had fixed all the failing problems and addressed valid comments from Sourcery too!
Add functionality
Should show the existing form with following entries:
Removed "is structural type" checkbox from the form
Edit functionality
Edit form is an extension of add form, except for the data type entry which is read only. Also for "structure level type", icon and shortcut entries are read only items
Delete functionality
Structure level 0 & Structure level 1 are only supported, delete functionality should be disabled for both. Edit form for "structure level type" displays icon and shortcut as read only items
Summary by Sourcery
Refactor the data hierarchy editor to separate the creation and editing of data types into distinct dialogs, enhancing the user interface and validation. Introduce a singleton class for managing QTA icons and add comprehensive tests for the new features.
New Features:
Enhancements:
Tests:
Additional Info: Pyside6 version has been fixed to 6.7.3 since there is some incompatibility between the dependent libraries with the latest PySide6 6.8.0, The issue is already backlogged: PASTA APP crashes with segmentation fault