Commit Graph
4881 Commits
Author SHA1 Message Date
Bill Wallace 45a34ae0fe fix(URL): allow multi filter query (#3314) 2023-04-05 16:37:37 -04:00
Mateus Freira dos Santos 25b4f8ed97 feat(App): support async config function (#3313) 2023-04-05 16:20:14 -04:00
Ibrahim b5aa5df575 fix(SRTool): Ellipse Display for DICOMSR Tool (#3307) 2023-04-05 15:09:09 -04:00
Ouwen Huang af50815ebb fix(crosshairs): suppressed error for crosshair (#3237) 2023-04-05 14:29:20 -04:00
Bill Wallace 50ed96ff73 feat(URL): add param for initial series and sop uids to display (#3265)
* feat: Allow navigating to a specified series and sop instance

This was a feature in OHIF v2, so adding it to v3, albeit with new
parameters.

feat: Allow comma separated as well as repeated args params

* docs

* Test fixes

* feat: Navigate to SOP selected - PR fixes

* Updated docs

* PR fixes
2023-04-05 12:59:56 -04:00
Salim Kanoun 5b7dc9e9c3 Merge pull request #3 from OHIF/v3-stable
V3 stable
2023-04-05 14:02:23 +02:00
rodrigobasilio2022andAlireza 226244a26c feat(multiframe): enhanced support for multiframe dicom (#3164)
* Changes in cswil version and multiframe

* Minor changes

* wip

* Adding support for NM multiframe images

* Applying PR suggestions

* fixing package versions

* Restoring default.js config file

* Check if NM subtype is reconstructable

* Restore default.js values

* refactore code

* feat: add flag for strict zspacing

---------

Co-authored-by: Alireza <ar.sedghi@gmail.com>
2023-03-31 22:21:16 -04:00
Bill Wallace 5e42a42b5f fix(viewports): The display of linked viewports during drag and drop has a race (#3286)
* fix: The display of linked viewports during drag and drop has a race

* PR review comments

* fix: Segmentation display two up

* Removing console logs

* Fix the blank viewport can have stuff added to it

* Fix the null name on HP module

* Fix the navigate to initial image

* Fix the nth interleave loader

* Fix the unit tests

* PR comments - docs mostly

* fix: Exception thrown on change displayset after double click
2023-03-31 11:58:48 -04:00
Alireza ca3b83b2b6 feat(tmtv): add more stages to pt/ct (#3290)
* feat(tmtv): add more stages to pt/ct

* make error stage change to info

* apply review comments
2023-03-30 10:01:48 -04:00
Joe Boccanfuso d5ff590dfc feat(DoubleClick): double click a viewport to one up and back (#3285)
* feat(DoubleClick): double click a viewport to one up and back

Added a toggleOneUp command that puts the active viewport into a 1x1 grid layout
and it toggles out of 'one-up' by restoring its saved 'toggleOneUpViewportGridStore'
from the StateSyncService.
Added double click customization for the Cornerstone extension with the
default double click handling being the toggleOneUp command.
Added a cypress test for the double click functionality.

* PR feedback:
- tracked viewport measurements no longer show as dashed when toggling one up
- disallowed double clicking near a measurement
- updated cornerstone3D dependencies to fix double click of TMTV and volume viewport 3D
- created ViewportGridService.getLayoutOptionsFromState

* Updated the ViewportGridService docs.

* Switched to using 'cornerstoneViewportClickCommands' and consistency with the context menu clicks.
2023-03-29 15:39:51 -04:00
Alireza 4734b3bac6 fix(volumeLoad): should not have missing slices when loading (#3287)
* fix(volumeLoad): should not have missing slices when loading

* add review comments
2023-03-29 09:40:22 -04:00
Bill Wallace 2f33e42004 fix: Store hotkeys to specified name (#3280)
* fix: Store hotkeys to specified name

* fix: Move hotkey name into a new hotkey object
2023-03-28 12:15:55 -04:00
Bill Wallace b2128976a3 Fix/hp validate match offset 2 (#3279)
* fix: Validate provided display sets other than 0

* Build fix
2023-03-28 11:18:33 -04:00
Joe Boccanfuso ed7ded05db fix(Volume3DViewport): Replacing the volume 3D viewport with another reconstructable series (#3281)
* fix(Volume3DViewport) - Replacing the volume 3D viewport with another reconstructable series fails
- updated cornerstone3D core package dependency
- checked for null presentations when setting presentations
- added viewportIndex as a dependency for enabling and disabling an OHIFCornerstoneViewport

* PR feedback - removed viewportIndex useEffect dependency for enabling/disabling OHIFCornerstoneViewport
2023-03-27 15:03:16 -04:00
Joe Boccanfuso d3200a6383 fix(Volume3DViewport): Added pan and zoom (#3283) 2023-03-27 12:17:38 -04:00
Bill Wallace 8e9d7bd2bb feat(findingSite): Allow customizing the measurement panel and show site/finding (#3155)
* feat: Allow customizing the measurements panel.

Also includes default display of the site/finding values from the DICOM
SR object.

Update fixes

PR review comments - move the recordInteraction to COmmandsManager.run

PR fixes

fix: Dependency updates to allow right click to be recognized

PR fixes

* Use newer CSWIL

* Make both the base measurements and the tracking measurements show codes

* Fix the right click context menu bringing up menu
2023-03-24 16:45:21 -04:00
Bill Wallace dd22e37e4c fix(contextMenu): fixes for context menu icon (#3275) 2023-03-22 18:04:44 -04:00
Bill Wallace bc642fd2b6 feat: Allow configurable context menus (#2894)
* feat: Context menu

feat: Custom context menu

Adding documentation

PR updates

* fix: Capture tool exception

* PR updates

* Add fully worked out examples in the basic test mode/extension

* Fix the menu display

* fix: Make the commands on clicks much more configurable

* Wait for load before double clicking

* docs

* PR changes - nothing functional, just moving things endlessly

* PR comments

* PR changes - rename the default context menu

* Renamed the cornerstoneContextMenu to measurementsContextMenu

* Add chevron right to the sub-menus
2023-03-22 17:45:28 -04:00
Alireza 4e94b588a7 fix(SegmentationPanel): should be able to hide and only show one segment (#3270)
* fix(SegmentationPanel): should be able to hide and only show one segment

* fix imports

* bump package versions
2023-03-22 12:44:52 -04:00
Braden Morley 3b6822e7b6 fix(ui): autoscroll to new measurement on measurement table (#3223)
Fixed scrolling for measurement clicks

changed import
2023-03-21 21:36:53 -04:00
Joe Boccanfuso 550918dd31 feat(VolumeViewport3D): add volumeViewport3Dd sample hp (#3241)
* feat(VolumeViewport3D)
- importing and using Cornerstone 3D's VolumeViewport3D viewport
- added mprAnd3DVolumeViewport hanging protocol
- allowed for W/L preset to be applied to a viewport

* Updated cornerstone core dependency

* Removed pan and zoom from the volume3d tool group so that tackballrotate is never dropped for that viewport.
Removed overlays from 3D volume viewport.
Throw an error and display a message whenever an unapplicable tool is selected.

* The default/initial orientation for a 3D volume viewport can now be set.
Using the 'interleaveTopToBottom' image load strategy for the 'mprAnd3DVolumeViewport' hanging protocol.

* Do not set orientation for stack viewport.
2023-03-21 16:09:50 -04:00
Bill Wallace 5ad5bd232d fix(tmtv): hanging protocol state sync (#3269)
* fix: TMTV mode and message on drag and drop/toggle MPR

* Tweaked some packages to force a rebuild
2023-03-21 14:25:56 -04:00
Bill Wallace ee4e8a4105 fix: Hanging protocol state fixes (#3242)
* fix: Some residual issues with hanging protocol after state sync

fix: Some issues introduced by the state syncing changes

* fix: PR fixes, mostly code cleanup

* Improve a race condition in an automated test

* Remove obsolete code

* PR fixes
2023-03-20 15:11:21 -04:00
Edwin Chebii 544bf55a4f docs: Update sop-class-handler md (#3217)
i don't know if it was intentional but should their be a closing square brackets for sopClassUids
2023-03-15 15:44:34 -04:00
Bill Wallace 803f638401 feat: state sync service and hanging protocol updates to preserve state (#3131)
* feat: Add state sync and use it to remember viewport grid info

fix: Version updates

Fixes for toggling MPR mode

Fix the display when the interleaved load module fails

Fix the memory of the state to restore correctly

PR fixes for the state sync service

PR fixes

PR fixes

PR fixes

Added a hack warning to remove volumeDeactivate

Fixes for TMTV colormap setting

Fix the casing

Missed renames

fix: tests not running due to variance in ordering

Reverting some fixes to change case

PR changes - mostly comments and minor improvements

fix: All display sets were being updated on drag and drop

PR fixes - mostly renames

PR fixes

Test support for OHIF, for HP branch

test: Add at least a minimal set of automated tests for hanging protocols

Docs

PR fixes

Merge fixes

DOCS updates

Add an example of the mn hanging protocol

PR fixes

PR fixes

PR fixes

* Fix the drag and drop

PR fixes

* PR changes - update default keys for next/previous stage

* fix: Was storing the custom viewport grid too aggressively

Caused by a PR change misspelling a variable
2023-03-15 12:41:41 -04:00
Salim Kanoun 00099c0136 Merge remote-tracking branch 'upstream/v3-stable' into v3-stable 2023-03-12 08:01:06 +01:00
Bill Wallace b7fff77e17 fix(segmentation): failing to render SEG because it was on default tool group (#3222)
* fix: Segmentation service fixes for secondary volumes

* Remove toolgroupID in promptSeg
2023-03-10 13:57:23 -05:00
Alireza 3f20b41c17 fix(tmtv): there should be no CT range for max suv settings (#3232) 2023-03-10 13:07:56 -05:00
Joe Boccanfuso 5670a4d8d1 feat(PanelService): Left or right side panel to auto start as closed but auto open when needed (#3212)
* feat(SidePanel)
OHIF issue #3135
- Added a method to set a callback for a Panel to invoke when it is ready
to be shown (e.g. its data is loaded).
- Implemented such methods for both the segmentation and measurement panels.
- The SidePanel component now adds a callback to Panel components so that
it will automatically open a Panel that was initially closed and yet to
be opened.
- Updated the OHIF documentation accordingly.

* PR feedback
- added a PanelService that centralized much of the logic that existed in panel PanelModule
- the SidePanel subscribes to PanelService.EVENTS.ACTIVATE_PANEL for each of its child panels

* Removed the PanelMeasurementTableTracking setMeasurementPanelContentReadyCallback method.

* Made the forceActive flag in the PanelService optional and defaulted it to false.

* Fixed failing top level exports unit test.

* - PanelService subscriptions are now per panel (id) so subscribers do not
necessarily need to check the panel id in the event when it is fired
- PanelService activate panel trigger subscriptions are now returned
so that they can be (better) managed outside of the service
- updated/created the various documentation for panels and PanelService

* Clarified various documentation.
Moved the code to add the activate panel triggers out of the extensions
and into the longitudinal mode.

* Removed the openWhenPanelActivated flag.
PanelService now conforms to extending PubSubService like the other services.
Updated various documentation.

* Fixed failing e2e, mpr test.

* Renamed the ActivatePanelTriggers type properties.
The ExtensionManager now sets the id of various modules as a property on each of those modules.
2023-03-09 22:30:09 -05:00
md-prog e4e62e9e14 feat(customizableOverlay): Add customizable overlay info (#3061)
* overlay customization

* custom overlay definition and examples

* minor fix - import statement difference between cornerstone and cornerstone3D

* move "VOI" and "Zoom" calulation to the ViewportOverlay component, make OverlayItem fairly dull

* type specifications

* follow up fixes for CustomizationService changes on upstream

* [fix] various fixes related to custom overlays (formatting, toggling)

* [fix] various fixes related to custom overlays (formatting, toggling)

* right side overlay panels - align right

* [fix] remove "notification" from toggleOverlay command

* comments

* [refactor] remove unused imports

* documentation of customizable overlay configuration

* prettify

* review of documentation of customization service

* fix useCallback() dependencies

* fix useCallback dependencies

* documentation for customization service

* documentation for customization service
2023-03-09 17:12:08 -05:00
Braden Morley b9dbc5b3a5 fix(thumbnails): expand multi studies scrollbar (#3224)
made per study scrollbars visible
2023-03-09 14:25:05 -05:00
Alirezaandrodrigobasilio2022 7a591b87a2 feat(tmtv): add ct ranges for thresholding (#3225)
* Add CT volume in PET ROI Thresholding (#3053)

* Add CT volume in PET ROI Thresholding

* Change UI ROI Threshold config

* Refactoring ROI Threshold configuration Panel

* fix menus

* try to fix build preview

* try to fix build preview

---------

Co-authored-by: rodrigobasilio2022 <114958722+rodrigobasilio2022@users.noreply.github.com>
2023-03-07 22:47:16 -05:00
Alireza f14e23cb8b fix(ui): worklist had layout shift (#3218)
* fix(ui): worklist had layout shift

* apply review comments
2023-03-06 09:47:26 -05:00
Alireza 38d452e17d feat(measurementService): use the new api for annotation manager in cs3d (#3206)
* fix OHIF to use the new api for annotation manager in cs3d

* bump package versions

* fix tests

* remove unnecessary code
2023-03-02 17:11:51 -05:00
Joe Boccanfuso 35d0787211 feat(ViewportActionBar and CinePlayer): Add new design for action bar and cine player (#3204)
* feat(ViewportActionBar): OHIF issue #3123 (#3186)

* feat(ViewportActionBar): OHIF issue #3123

- Renamed previous viewport action bar to be LegacyViewportActionBar
- Components LegacyViewportActionBar depends on also renamed: LegacyCinePlayer and LegacyPatientInfo
- New Viewport coded to specs in issue
- added React hook useResizeObserver
- added some tailwind classes

* Updated tailwind to 3.2.7.
Put external imports like React at the top of the import list.

* feat(CinePlayer and ViewportActionBar) (#3198)

* feat(CinePlayer and ViewportActionBar)
- OHIF issue 3123

- new look cine control implemented
- new custom blue color in tailwind config for various hover backgrounds in the cine control
- new icons added for cine

- Tooltip component now can be placed top (center) on hover
- Tooltip component border colour now consistent with specs

- fixed NPE in ViewportActionBar

- upgraded tailwind to 3.2.7 in platform/ui
- fixed issues in various button components brought by tailwind 3.2.7 where classes now need important flag

- fixed issue with InputRange component so that the tracked value property can change externally
- InputRange component can now optionally show its label

- added new measurement tracking state service to hydrate SR without prompting
- segmentation can also now be hydrated without prompting

* PR feedback:
- cine centralized to OHIFCornerstoneViewport
- introduced a type for the CinePlayer properties

* Addressed PR comments and concerns...

The DOM ref for the root component of the ViewportActionBar is now added to state
so that the various callbacks and ResizeObserver are updated with it.
The CinePlayer FPS slider tooltip was moved up so that its arrow does not
intersect the FPS text.
The hover area for the CinePlayer slider tooltip is now the FPS < > buttons and text.
The tracked measurements are now filtered to only include those of the active
viewport series when the tracked measurement navigation arrows are used.

* Addressed PR comments...

The update to tailwind 3.2.7 caused several look-and-feel, UI regressions,
so we are rolling back to 3.2.4.
2023-02-28 15:57:19 -05:00
Juan Esparza Torregrosa c9125a0c0a fix(translation): errors in StudyList and StudyBrowser for es (#3170)
* Fix translations

* Fix errors and es new translations

* Fix errors and es new translations

* Fix errors and es new translations
2023-02-24 13:07:16 -05:00
Pierre-BaptisteandPierre-Baptiste Dupire 34d5873bae fix(init): servicesManager use before initialization (#3191)
Co-authored-by: Pierre-Baptiste Dupire <pierre-baptiste@omnidoc.fr>
2023-02-23 09:37:13 -05:00
Alireza 9b3f2e6638 chore: bump vtk version to fix rendering bug (#3192) 2023-02-22 21:51:33 -05:00
md-prog b15988359f feat(Calibration Tool): add a calibration tool that can manually recalibrate an image and measurements on it (#3136)
* minor bug fix - reading modalities

* react error log fix - button props

* react warn fix - Typography color prop

* calibration tool without persistence

* added toolbar button for calibration tool

* icon change for calibration tool

* important bug fix for calibration - length and calibration rate calculation

* fix weird autocorrection

* [fix] bugs after merging upstream

* [refactor] conform to the new service names
2023-02-22 21:01:36 -05:00
Alireza 7a36363735 docs: add percy acknowledgment (#3189)
* docs: add percy acknowledgment

* try to build
2023-02-22 12:15:30 -05:00
Bill Wallace 67fc3f733d feat(SR): Measurement adapter mappings and save to same series (#3140)
* feat: Add adapter mappings for RectangleROI and Angle and save same

PR comments

* fix: Rehydrate check on non core measurement adapters
2023-02-17 16:44:21 -05:00
Alireza 926290f69e feat: add more e2e tests for MPR and add test mode and extension (#3180)
* tests: add various e2e tests for MPR and measurements

wip

add cypress config

feat: add mode and extension for testing

add hp applied through search params

add MPR tests

apply review comments

add more e2e tests

update yarn lock

* fix unit tests failing
2023-02-17 15:04:07 -05:00
Joe Boccanfuso ae4183852f fix: Patient name handling as either Alphabetic object or simply string object
- formatPN should accept a string person name as well as an object with a Alphabetic field.
- For DICOM JSON data sources, spread in the patient data from the study object into the instance.
2023-02-16 13:50:59 -05:00
Joe Boccanfuso b67c7b23e8 fix(authentication): mode/datasource routes must be marked private so they can be protected via authentication. (#3178) 2023-02-16 13:10:08 -05:00
Joe Boccanfuso 94bb4c7d42 feat(ImageSet): Avoid exposing the images field by adding a getNumImagesMethod (#3179) 2023-02-16 13:07:12 -05:00
Alireza 95bf3a105b chore: update vtk js to 26.4.0 (#3174) 2023-02-14 14:17:13 -05:00
Joe Boccanfuso f791a4cafb fix(ViewportGrid) fill blank viewports with display sets not yet in grid. (#3154)
* fix(ViewportGrid): In ViewportGrid, fill blank viewports with display sets not yet in grid.
ViewportGridService now allows off-screen viewports to remain so that
so as to maintain continuity if they were filled by the UI/user.

* PR feedback: moved getNumViewportPanes into the ViewportGridService API.

* PR feedback:
- renamed some variables
- proper import/export of IDisplaySet
- added some comments for clarification
- fixed broken e2e tests

* Some missed rename of Services.
2023-02-14 10:01:39 -05:00
Edward Sonandedward65 5e66faa45d Remove unusued Types import (#3167)
Co-authored-by: edward65 <edward@afxmedical.com>
2023-02-13 09:14:48 -05:00
Bill Wallace ecfdc9a687 fix(typescript): Missed renames UIModalService and UserAuthenticationService (#3171) 2023-02-13 08:55:55 -05:00
Bill WallaceandAlireza 8af0362d12 fix(typescript): rename services to fix typescript (#3165)
* fix: Rename services to lower camel case, hp, measure

* fix: Rename DisplaySetService instances to displaySetService

* fix: Rename CornerstoneViewportService to lower camel case

* fix: Added lower case segmentationService rename

* rename other services (#3166)

* rename uiDialogService

* rename toolGroupService

* rename uiNotificationService

* rename viewportGridService

* rename syncGroupService

* rename CornerstoneCacheService

* Fix a syntax error in hotkeys

* Fix a couple of rename issues that were missed

---------

Co-authored-by: Alireza <ar.sedghi@gmail.com>
2023-02-10 16:46:09 -05:00