-
-
Notifications
You must be signed in to change notification settings - Fork 3.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
study item dropdown menu customizations #4668
base: feat/multi-monitor-take2
Are you sure you want to change the base?
Conversation
…y occur if target annotation ID is present
…d refactor context menu handling - Added a new `ThumbnailMenuItems` component to encapsulate dropdown menu functionality for thumbnail actions, including opening the DICOM Tag Viewer and deleting reports. - Removed the previous context menu handling from `PanelStudyBrowserTracking` and related components, streamlining the code. - Updated `StudyBrowser`, `StudyItem`, `Thumbnail`, and `ThumbnailList` components to utilize the new `ThumbnailMenuItems` for better modularity and maintainability. - Cleaned up unused context menu props and functions across components. This change enhances the user experience by providing a consistent and reusable dropdown menu for thumbnail interactions.
… dropdown menu - Introduced a new `ThumbnailMenuItems` component to provide a dropdown menu for thumbnail actions, including the option to open the DICOM Tag Viewer. - Replaced the previous context menu handling with a more modular approach, allowing for better customization through the `customizationService`. - Updated the `PanelStudyBrowser` to utilize the new dropdown menu, improving code maintainability and user experience. This change streamlines thumbnail interactions and enhances the overall functionality of the Study Browser.
…ions - Refactored `ThumbnailMenuItems` to `StudyMenuItems` for better clarity and consistency in naming. - Implemented `StudyMenuItems` in `PanelStudyBrowser`, `PanelStudyBrowserTracking`, `StudyBrowser`, and `StudyItem` components to provide a dropdown menu for study-related actions, including opening the DICOM Tag Viewer. - Updated the customization service to support the new `StudyMenuItems`, allowing for improved modularity and maintainability across components. - Enhanced the user experience by ensuring that study-specific actions are easily accessible and consistent throughout the application. This change streamlines study interactions and improves the overall functionality of the Study Browser.
…xecution - Refactored the `multimonitor` command to ensure commands are only executed if a new window is successfully launched. - Updated `loadStudy` to utilize `StudyInstanceUID` consistently and prevent unnecessary command execution if the study is already active. - Improved the `MultiMonitorService` to handle asynchronous command execution and window management more effectively. - Added support for multi-monitor commands in the `StudyMenuItems`, allowing users to execute study-related actions across multiple monitors. - Enhanced the `HangingProtocolService` to streamline display set management and ensure proper protocol execution. These changes improve the user experience by providing a more robust and responsive multi-monitor setup, ensuring commands are executed reliably across different screens.
- Updated the parameter name from 'studyInstanceUIDs' to 'StudyInstanceUIDs' for consistency in URL handling. - Added a debugger statement to assist in troubleshooting the retrieval of StudyInstanceUIDs. These changes ensure consistent parameter usage across the MultiMonitorService, improving reliability in multi-monitor operations.
…mizable dropdowns - Introduced new customizable menu items for the study browser, including 'Tag Browser', 'Show In Grid', and 'Show In Other Monitor'. - Refactored the `ThumbnailMenuItems` and `StudyMenuItems` components to utilize a shared `getMenuItems` function for improved modularity and maintainability. - Updated the `PanelStudyBrowserTracking` to integrate the new dropdown menus, enhancing user interactions with study-related actions. - Improved the customization service to support dynamic menu item rendering based on user-defined configurations. These changes streamline the user experience by providing a more flexible and consistent interface for managing study actions across the application.
…ctions - Introduced a new 'View Options' menu in the customization module, allowing users to select between 2D and 3D views. - Each view option is associated with specific commands to set the hanging protocol for the respective view. - Refactored the menu rendering logic in `PanelStudyBrowserTracking` to support submenus, enhancing the user interface and interaction experience. These changes improve the customization capabilities of the application, providing users with more flexible viewing options for their studies.
…udy browser - Enhanced the customization module by introducing a new dynamic dropdown menu rendering system for study-related actions. - Refactored the `PanelStudyBrowserTracking` to utilize the new `customizationService` for rendering menu items, improving modularity and maintainability. - Added support for submenus in the dropdown, allowing for a more organized and user-friendly interface when interacting with study items. - This update streamlines user interactions and enhances the overall functionality of the study browser, providing a more flexible and customizable experience.
…item retrieval - Added a comment in the `getMenuItems` function to express uncertainty about the current implementation, indicating a need for potential review or improvement. - This change aims to enhance code readability and maintainability by prompting further discussion on the menu item customization logic.
…ction and streamline study handling - Eliminated the `getStudiesfromDisplaySets` function to reduce code complexity and improve maintainability. - Updated the `setHangingProtocol` method to utilize a consistent `StudyInstanceUID` variable, enhancing clarity in study handling. - Refactored command execution in the customization module to use `commandsManager.runAsync` for better asynchronous handling. - Improved dropdown menu item definitions by simplifying command options, ensuring a more straightforward implementation for study-related actions. These changes enhance the overall code quality and user experience by providing a cleaner and more efficient approach to study management.
- Replaced 'View Options' menu with 'Apply Hanging Protocol' menu, introducing new options for 'Default Protocol' and 'MPR Protocol'. - Updated command options to utilize consistent protocol IDs, enhancing clarity and maintainability. - Added event handling to prevent dropdown menu click propagation in `PanelStudyBrowserTracking`, improving user interaction. These changes streamline the customization of hanging protocols and enhance the overall user experience in the study browser.
… unused options - Adjusted the styling of dropdown menu items by adding a margin class to the icon for better alignment. - Removed the 'Show In Grid' menu item to streamline the customization options available in the study browser. - These changes enhance the clarity and maintainability of the dropdown menu, improving the overall user experience.
…te protocol commands - Added conditional rendering for icons in dropdown menu items to prevent rendering of undefined icons, enhancing visual clarity. - Updated menu item labels for better consistency and user understanding, changing 'Default Protocol' to 'Default' and 'MPR Protocol' to '2x2 Grid'. - Streamlined command options for menu items to utilize a more consistent structure, improving maintainability and clarity in command execution. - Renamed 'Show In Other Monitor' to 'Launch In Monitor 2' for better alignment with user expectations. These changes enhance the user experience by providing clearer menu options and improving the overall functionality of the customization module.
…to feat/mm-some-customizations
Viewers Run #4654
Run Properties:
|
Project |
Viewers
|
Branch Review |
feat/mm-some-customizations
|
Run status |
Passed #4654
|
Run duration | 02m 05s |
Commit |
85fbb38df8: refactor(Customization): Update dropdown menu item labels and improve rendering ...
|
Committer | sedghi |
View all properties for this run ↗︎ |
Test results | |
---|---|
Failures |
0
|
Flaky |
0
|
Pending |
2
|
Skipped |
0
|
Passing |
44
|
View all changes introduced in this branch ↗︎ |
@@ -413,7 +409,7 @@ export default class HangingProtocolService extends PubSubService { | |||
*/ | |||
public run({ studies, displaySets, activeStudy, activeStudyUID }, protocolId, options = {}) { | |||
this.studies = [...(studies || this.studies)]; | |||
this.displaySets = displaySets || this.displaySets; | |||
this.displaySets = displaySets; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you revert this change? Defaulting to this.displaySets is useful sometimes when running an update.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We can add that change in a future PR when needed, if that's okay.
...ions/measurement-tracking/src/panels/PanelStudyBrowserTracking/PanelStudyBrowserTracking.tsx
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It LGTM except that the StudyBrowser base panel should also be able to have the context menu. We really need to add a test mode for non-tracked OHIF so that we make sure it all works.
… rendering logic - Renamed 'Launch On Other Monitor' to 'Launch On Second Monitor' for better clarity. - Refactored the dropdown menu item handling in `PanelStudyBrowser` to utilize a more consistent structure, enhancing maintainability. - Introduced a new `getMenuItems` function to streamline the rendering of menu items, improving user interaction and visual clarity. These changes enhance the user experience by providing clearer menu options and improving the overall functionality of the customization module.
some ideas