Commit Graph
90 Commits
Author SHA1 Message Date
Alireza 5f480ff746 feat: explicit layout apply via HangingProtocolService (#2936)
* feat: add more types to HP service

* change hp to have apply protocol

* feat: mpr initial work

* apply protocol by id

* feat: mode should be able to apply protocol directly

* fix: wrong inheritance for viewports drag and drop

* apply review comments
2022-09-20 23:40:26 -04:00
Bill Wallace 3900e62641 fix(datasource): configurability of additional data source extensions (#2931)
* feat(dataSource):Support more than one data source type.

* Add consumer type
2022-09-20 11:05:26 -04:00
Bill WallaceandAlireza e1d366e1e1 feat: make hanging protocol work on displaySets instead of series (#2837)
* feat(HP): Apply HP to display sets, fix race condition

* fix: displaySetService no event not needed (#2912)

* fix various styles and renamings

* feat: refactored hp service

* fix: use HP service event for viewport grid

* remove unnecessary doc

* fix test

* apply review comment

* fix: segmentation creation

Co-authored-by: Alireza <ar.sedghi@gmail.com>
2022-09-07 11:59:11 -04:00
Alireza 2639d90e5e fix: hanging protocol for the tmtv (#2882) 2022-08-19 19:35:29 -04:00
bd1c38c00c feat: cornerstone3D stack and volume viewports (#2787)
* feat: cs3d working stack viewport and tools (#19)

* Squashed everything

* fix weird react issue

* fix eslint / prettier stuff

* thumbnails work now with cpu rendering

* feat: use new loadImageToCanvas in cs3d

* make jump to measurement work

* fix active thumbnail

* fix measurement delete

* fix window level presets

* remove segmentation and sync groups for now

* fix the dicom pdf and dicom video

* fix cornerstone window assignment for cypress

* apply review comments

Co-authored-by: Erik <erik.sweed@gmail.com>

* feat: cs3d tools and toolGroups (#20)

* add more tools to work with cs3d mode

* fix hotkeys

* add stack manager usage for stach viewports

* add image scrollbar

* wip viewport overlay

* fix toAnnotation schema for tools

* fix the unnecessary size change that triggered resize

* hanging protocol improvement to allow unmatched errors

* study description matching for hanging protocol

* fix the displaysetOptions to work

* fix handle the active tool when a new viewport is added

* fix separate toolGroups for mode

* apply review comments

* apply review comments

* yarn lock

* feat: overlay component (#21)

* fix default displayset options

* add viewport overlay

* apply review comments

* feat: loading and orientation indicators (#22)

* add loading indicator

* add orientation marker initial work

* apply review comments

* fix: orientation markers (#23)

* finished the orientation markers

* fix various broken cypress tests

* apply review comments

* update yarn lock

* feat: re-working measurement tracking mode with cornerstone3d (#2805)

* feat: cs3d working stack viewport and tools (#19)

* Squashed everything

* fix weird react issue

* fix eslint / prettier stuff

* thumbnails work now with cpu rendering

* feat: use new loadImageToCanvas in cs3d

* make jump to measurement work

* fix active thumbnail

* fix measurement delete

* fix window level presets

* remove segmentation and sync groups for now

* fix the dicom pdf and dicom video

* fix cornerstone window assignment for cypress

* apply review comments

Co-authored-by: Erik <erik.sweed@gmail.com>

* feat: Add Measurement tracking mode with cs3D (#2789)

* feat: first render for cornerstone3d tracked viewport

* make tool active work

* wip for SR extension

* renamed dicom sr to cornerstone dicom sr

* remove cornerstone from dicom pdf and video

* move dicom sr logic to sr extension

* feat: Add hydration for the length tool

* fix SR display tool for length using cs3d

* fix default config

* fix: various bugs with sr viewport and tracking

* fix promptying to continue tracking for when SR is created

* feat: add keep trackign of unique identifiers

* fix hydration for same imageIds

* feat: Add SR toolGroup creation on modeEnter

* feat: remove the need for separate mapper for SR hydration

* add SR display for ellipse

* handle hydration of elliptical ROI tool

* remove cornerstone extension

* add arrow mapping

* feat: Add ArrowAnnotate SR display and hydration

* apply review comments

* apply review comments

* move viewport labels to the viewportData

* apply review comments

* fix: integration cypress tests with cornerstone3D and add CINE tool (#2795)

* fix: integration cypress tests with cornerstone3D

* revert to addOrUpdate as it makes more sense

* fix local drag and drop

* fix tests

* move dicomLoaderService to cornerstone extension

* fix various import bugs

* fix bug for local PT series

* fix various unit tests

* bump cs3d versions

* add angle and magnify tool

* bump dependencies to avoid broken peerDeps

* feat: add initial work for capture using cs3d

* feat: show annotations on the image capture

* feat: add svg layer export

* feat: Add CINE Tool

* feat: remove unnecessary viewport rendering for cine state changes

Co-authored-by: Erik Ziegler <erik.sweed@gmail.com>

* docs: modify and improve documentation (#2800)

* cleanup docs versionings

* feat: Add all version explanations

* version docs for 3.0

* wip for changing docs

* wip for updated docs

* add utility module documentation

* fix demo with nohoisting of history

* add slides and video to resources

* apply review comments

* fix: drag and drop SR into SR viewport (#2803)

* update yarn lock

Co-authored-by: Erik <erik.sweed@gmail.com>

* update pathnames to match v3-stable

* update the e2e pathname

* fix: various bugs with regard to tracking workflow (#2811)

* fix: various issues with measurement panel

* fix: update default tool style for annotations

* fix: annotatoin label getting removed

* feat: Add backward compatibility for SR hydration with legacy cornerstone

* fix: cursors and ellipse ROI max style

* fix: ArrowAnnotate SRDisplay

* apply review comments

* bump package versions

* fix: bugin rehydration of SR

* fix: e2e tests

* fix active viewport thickness and arrowTool ui

* add readme for measurement tracking

* use uploaded image for readme

* add back images

* try to fix e2e test

* fix: window level presets hotkeys

* Update README.md

* update yarn lock

* feat: volume api and TMTV mode (#2817)

* feat: volumeAPI and TMTV mode

* feat: use cs3d cache service to obtain viewportData

* wip for volume api

* wip: fusion viewport

* feat: add blend mode option

* wip for image scrollbar

* fix drag and drop thumbnail

* wip for image scrollbar for voluems

* fix: element mismatch bug for scroll

* feat: Add image scrollbar to volumes

* feat: add syncGroups to volume api

* feat: add tmtv mode initial setup

* feat: add initial image options for the stack viewports

* feat: Add custom load strategy for volume viewports via HP

* apply review comments

fix: Jump presets cs3d (#2812)

* feat: Add JumpPreset to OHIF for Cornerstone3D

* fix: accessing viewport service from servicesManager

feat: volume API and TMTV mode (#2814)

* fix: do not display overlays on mip viewports

* feat: add optional disableCommands for toggle buttons

* fix: toggleCrossharis

* feat: config the crosshairs

* feat: add PetSUV Panel for changing metadata

* feat: initial work for the rectangleROIThreshold panel

* wip: measurement service

* roi threshold working

* feat: Add displayText to segmentations

* feat: add remove segmentation

* feat: add csv export

* feat: add RT export for annotations in tmtv mode

* fix: fusion to use pt in tmtv mode and measuremet mappings

* fix: various bugs

* apply review comments

* apply review comments

* feat: add fusion color maps

* add readme to tmtv mode

* Update README.md

* fix: try to fix build

* fix unit tests

* Update README.md

* feat: add about to the panel

* fix: changing strategy in roi panel

* apply review comments

* update package versions

* wip for stackPrefetch

* fix: cornerstone3d hydration and renaming (#2818)

* update readme

* renamed cornerstone extension

* wip for renaming cornerstone3D variables

* wip for renaming cornerstone3D variables

* wip for fixing bugs for SR viewport

* fix: jumpToMeasurement and initial label after hydration

* fix: fileName capitalization

* feat: use the new prefetch stack in the cs3d (#2820)

* feat: use the new prefetch stack in the cs3d

* use viewport scroll api for stack viewport

* fix cine stop when scrollbar changes

* feat: use new prefetch events

* fix loading state to not show repeatedly

* fix: various bugs for tmtv mode thresholding and new icons (#2823)

* feat: make tmtv mode available in worklist

* feat: add new icons for tmtv mode

* feat: add fusion color icon

* fix: parallel scale calculation

* fix: bump Cornerstone to get large image support working

* fix: Fix issues with CPU viewport flipping, including config files

* fix: bump cornerstone to fix magnify tool

* fix: Bump Cornerstone version to fix resetCamera issue in StackViewport

* ci: Add _headers file to enable CORS headers for Netlify Drag/Drop deploys

* fix: WADO-URI was not working. PET Metadata was coming from the wrong place. Fixed some minor React errors

* feat(OHIF):Allow modes and extensions to be added after commpile time. (#2838)

Also works with the compile time add that the existing cli uses, so that both build types work.
Eric and I agreed this doesn't change existing functionality, but is almost entirely build issues/fixes.

* bump: dependency versions to fix hydration bugs (#2848)

* bump: dcmjs version to fix hydration bugs

* try to fix tests

* bump dependency versions

Co-authored-by: Alireza <ar.sedghi@gmail.com>
Co-authored-by: Bill Wallace <wayfarer3130@gmail.com>
2022-07-27 12:39:04 -04:00
Bill Wallace ca9ed62a5f feat(OHIF):Add DICOM Video Display
* feat(OHIFv3):Add a video viewport

* Fixed a couple of viewing issues

* fix(OHIF):If not all instances are used by a given provider, then continue to add items

* Added video data

* Add a basic e2e test for video display

* Adding a screen shot as requested
2022-02-24 11:55:12 -05:00
Daryl.Xu 1d0b310d92 fix: typo (#2592) 2021-10-25 10:55:13 +02:00
Erik Ziegler 7a9f113b91 Merge branch 'feat/v2-main' into feat/v2-main-docusaurus-netlify-monorepo 2021-07-20 15:55:21 +02:00
Alireza 3dec7cfcda fix: Address various layout and prompt bugs (#2472)
* fix: layout should not reset when opening a new study in studyBrowser

* fix: added state to handle ignored SR series for hydration
2021-07-19 14:31:40 +02:00
Erik Ziegler 825e13bcf3 chore: Upgrade to webpack 5, fix conflicting issues with react-router under docusaurus with yarn workspaces 2021-07-08 15:23:09 +02:00
Erik Ziegler 3a53479bb7 fix: OpenID Connect and Local route rendering 2021-07-08 10:29:41 +02:00
Alireza c654d0f69e fix: cine dialogue appearance 2021-07-08 10:04:23 +02:00
Erik Ziegler e7b32cc51e feat: Support for OpenID Connect (#2431)
* feat: Add OpenID Connect support, speed up docker rebuilds

* fix: Switch Google Cloud API URL to v1

* chore: Remove redux-oidc and use our own components instead
2021-06-23 20:41:27 +02:00
Alireza fdb6ca41d6 feat: Support for local DICOM drag and drop (#2445)
* Added drag and drop from local and local data source

* fix: dicom SR drag and drop from local
2021-06-15 10:19:45 -04:00
Erik ZieglerandAlireza Sedghi 99b8dc4759 feat: Add White Labelling, Hanging Protocols, and tons of Extensions / Mode fixes
* modified

* new files in existing extensions/libraries/modes

* fixed bugs and tests

* Clean up

* fix: viewport display fixed

* Fixed configs for deployment

* Removed unnecessary files and functions

* Fixed default HP module

* Added white labelling

* Fixed hash routing

* Removed unnecessary routers

Co-authored-by: Alireza Sedghi <ar.sedghi@gmail.com>
2021-05-28 14:32:48 -04:00
Erik Ziegler 0db81b30f3 chore: Clean up unused files, imports, and work on getting end-to-end tests and unit tests running (#2272) 2021-03-01 16:52:54 +01:00
Danny Brown cae54b0779 Fix/update branch cherry pick (#2039)
* Update all the icons

* Turn off global tool sync; watch as the world burns

* Shift a bunch of things around so we can start tracking/setting per element

* ToolBarService to initiate one of three different calls; callback passed to all button types

* SplitButton and Toolbar Button to use new `onInteraction` prop and new toolbar state

* Changes to toolbar button interface and config

* Fix broken layout selector

* Update SR viewport to activate tools in viewport component

* Duplicate activation logic in measurement tracking extension

* Add alternative/dashed variants for SR Viewport

* pass through "setToolActive" commands for other viewport types

* fix small overlay bugs (no wwwc or scale info)

* Show SpacingBetweenSlices instead of PixelSpacing in patient information dialog

* Fix prop-types

* Update tracked viewport to have alternative tracked styling

* alt styling for SR viewports

* Update to support isLocked + isRehydratable

* fix broken logic

* fix broken logic

* switch icon style

* fix icon styles

* hover and click to start flow

* expedited workflow when data is not dirty (just after SR hydration)

* fix: setting elliptical roi tool

* fix arrow annotate dialog

* fix: do not show learn more button for now

* remove dead code

* simpler cache invalidation

* simpler cache invalidation part 2

* Fix for unable to spand study cards on separate pages
2020-09-14 21:18:46 -04:00
James Petts 42b02a62d3 OHIF-326, export as CSV. (#1976) 2020-08-19 15:31:25 -04:00
68332701ab [OHIF-309] - Users should be able to delete an SR from the side panel when the behavior is supported by the data source (#1952)
* Remove trailing zeroes from patient age

* WIP reject + remove displaySet.

* ohif-316: Update DICOM SR thumbnail design to include a delete action (#1948)

* add "supportsReject" to netlify config

Co-authored-by: Igor Octaviano <igoroctaviano@gmail.com>
Co-authored-by: Danny Brown <danny.ri.brown@gmail.com>
2020-08-19 15:27:34 -04:00
Igor OctavianoandDanny Brown 760e2a62ae OHIF-323: Cine Dialog (#1961)
* ohif-323: add cineplayer flow

* ohif-323: improve toolbar flow of cine

* ohif-323: improve cine styles

* ohif-323: use toggle instead of set

* ohif-323: add compatibility comment

* ohif-323: move cine logic to command

* ohif-323: cr update

* ohif-323: remove typo and update svg title

* ohif-323: remove log

* ohif-323: update props and remove dead code

Co-authored-by: Danny Brown <danny.ri.brown@gmail.com>
2020-08-19 15:24:07 -04:00
James Petts 58c2c00663 Fix caching issues with related studies. (#1970) 2020-08-06 17:25:42 +02:00
401a2e38c8 [OHIF-193 + OHIF-313] (#1955)
* create context menu

* OHIF-193: Add context menu integration with measurement service

* OHIF-193: Update comments

* OHIF-CR Update: Add requested updates

* CR Update: Update measurement service remove function

* CR Update: Update casing

* CR Updates

* Update cornerstone measurments when the label is edited in the measurement service.

* Implement click outside behavior

* Address reviewer comments.

Co-authored-by: Rodrigo Antinarelli <rodrigoantinarelli@gmail.com>
Co-authored-by: igoroctaviano <igoroctaviano@gmail.com>
2020-08-05 14:56:02 +02:00
Danny BrownandJames A. Petts 2a51d75f77 [OHIF-339] - workflow changes (#1931)
* workflow changes

* Cherry pick OHIF-310 into this PR.

* fix label bug and dead code

* remove comment

* Wire up CreateReportButton

* fix additionalFindingTypes + save interaction

* Remove unused createReportAsync call

* stub for report hydration prompt

* Update PR

* Remove debuggers

* push updated code

* Push updates

* push

* fix sidebar save

* enable tracking of new study or series

* fix for duplicate created report series in sidebard

* fix for unexpected viewport dialog after visiting study list then a new study

* Fix for hydration not marking multiple series as active

* Reviewer changes.

* Respond to final review comment, add series description setting for export.

Co-authored-by: James A. Petts <jamesapetts@gmail.com>
2020-08-04 11:11:23 +02:00
Erik ZieglerandJames A. Petts 55cf9f2306 OHIF-285/OHIF-274: Fix default hanging of display sets into the ViewportGrid (#1917)
* OHIF-285/OHIF-274: Fix default hanging of display sets into the ViewportGrid

Co-authored-by: James A. Petts <jamesapetts@gmail.com>
2020-07-24 12:51:57 +02:00
James PettsandDanny Brown a4f286feee [OHIF 284] - JumpToMeasurement + prevent layout change on scroll Prevent layout change on scroll (#1889)
* No more setting on debounce, jumpToMeasurement service set up.

* Fix bug causing a race condition sometimes if you click super fast.

* Optimise rendering of Tracking viewport slightly.

* element => targetElement

* Remove complete TODO

* Respond to reviewer comments.

* Fix e2e workflow.

* Fix regression that removed highlighting on jump to.

* Make sure jump to works from panel as well as viewport.

* Fix typo and remove debugger.

Co-authored-by: Danny Brown <danny.ri.brown@gmail.com>
2020-07-22 19:40:40 +02:00
James Petts 25ded882ec Disable double click for now. (#1872) 2020-07-06 08:28:21 -04:00
James PettsandDanny Brown 14797a8973 [OHIF-261 & OHIF-262] (#1862)
* WIP

* Reset viewport grid on mode switch.

* Make lifecyclehooks distinct from modules. Add needed SR hydration state on creation.

* Update extensions/cornerstone/src/init.js

* Remove unused REMOVE_MEASUREMENT listener.

Co-authored-by: Danny Brown <danny.ri.brown@gmail.com>
2020-07-03 19:18:59 +02:00
James PettsandDanny Brown 4dfe144bf8 [OHIF-251] - Double click to maximise viewport/ revert to previous layout. (#1860)
* WIP

* double click to maximise implemented at the viewport grid layer.

* Remove memory of cached layout when the layout is changed, or a different displaySet is set.

* WIP fix double click for cornerstone.

* Update CST

* Prevent maximising when double clicking the action bar

* Update extensions/dicom-sr/src/OHIFCornerstoneSRViewport.js

* Apply suggestions from code review

* Fix conflicts.

Co-authored-by: Danny Brown <danny.ri.brown@gmail.com>
2020-07-03 19:12:33 +02:00
Igor Octaviano 11fbe4cf01 OHIF-223: Add "Clear" all measurements to annotation toolbar (#1861)
* Add clear button

* Use james event

* Create new commands module to default
2020-07-03 12:39:41 -04:00
Igor OctavianoandDanny Brown a156eadcb7 OHIF-208 (#1842)
* Set measurement as active

* Add basic dialog component

* Update styles and prop types

* Jump to image

* Update dialog

* Format date

* Update summary to use primary modalities

* delete empty studySummary page

* add missing PropTypes import

* fix for accidental sync'd viewports

* CR Updates

* CR Update avoid cache of measurements

* Use get measurement

* Add comment to edit function

* Remove request and merge modalities from series

* Update dependency: react-cornerstone-viewport@2.3.9

react-cornerstone-viewport
  * @ohif/extension-cornerstone: 2.3.8 → 2.3.9
  * @ohif/extension-dicom-sr: 2.3.8 → 2.3.9

* Update extensions/measurement-tracking/src/panels/PanelMeasurementTableTracking/index.js

Co-authored-by: Danny Brown <danny.ri.brown@gmail.com>

* Add debugs

* remove console.debug

* Update frameindex to imageindex

* Use new rcv debounced function

* Fix hovering

* Update dialog text

* Dismiss dialogs on esc

* Update dependency: react-cornerstone-viewport@3.0.0

react-cornerstone-viewport
  * @ohif/extension-cornerstone: 2.3.9 → 3.0.0
  * @ohif/extension-dicom-sr: 2.3.9 → 3.0.0

* OHIF-237

* remove console.debug

* Remove dead code brought in from rebase

* EmptyViewport should not display a message

* Remove more dead code from rebase

* fix variable naming

* remove unused hook

* bump yarn lock

* formatting

* Add arrow dialog

* Filter based on trackedSeries

Co-authored-by: Danny Brown <danny.ri.brown@gmail.com>
2020-07-02 16:53:38 -04:00
James Petts bc2bde890b OHIF-190 - Rehydrate PR (#1835)
* WIP rehydration.

* WIP OHIF-190 rehydrate.

* Remove debugger statements.

* Merge in and fix after OHIF-197 and OHIF-198

* Remove console.log

* Fix typo

* fix length tracking bug

* Respond to reviewer comments.
2020-07-01 11:08:56 +02:00
James Petts 2c11609c55 OHIF-198 - Jump to thumbnail when a new displaySet is added (#1834)
* Viewport letter only in multi-viewport layout.

* If SliceThickness not available print N/A

* Create displaySet in local session on SR generation.

* Jump to thumbnail when a new displaySet is added with the madeInClient property.

* Check if scrollIntoView exists.
2020-06-30 17:27:35 +02:00
James PettsandDanny Brown eb8f3a63f2 OHIF-197 (#1833)
* Viewport letter only in multi-viewport layout.

* If SliceThickness not available print N/A

* Create displaySet in local session on SR generation.

* remove empty line

* remove console log

* Give storeMeasurements an onSuccess handler instead of always creating dataSets.

Co-authored-by: Danny Brown <danny.ri.brown@gmail.com>
2020-06-30 16:10:27 +02:00
Danny Brown d5d219c271 Merge pull request #1831 from OHIF/feat/ohif-203
OHIF-203: Add new viewport overlay
2020-06-30 08:41:20 -04:00
dannyrb a0b0f365dd Handle for interaction outside of the ViewportDialog (default to cancel) 2020-06-29 23:29:40 -04:00
igoroctaviano 9e2ed50e79 add new overlay 2020-06-29 18:05:52 -03:00
Danny Brown 1931d45450 Merge branch 'feat/v2-main' into dannyrb/ohif-154/restore-command-functionality-for-toolbar 2020-06-26 14:26:35 -04:00
dannyrb 077143bd4a Update ViewportGridService interface 2020-06-26 13:28:50 -04:00
Rodrigo Antinarelli edd4a4118c feat: Modal + ViewportDownloadForm (#1799)
* feat: Modal + ViewportDownloadForm

* styles for image preview box

* modal update & close handler

* open modal for Learn More (search info)

* change modal default alignment

* Update platform/ui/src/components/InputNumber/InputNumber.mdx

* nuke inputNumber and use inputText with refactor

* make input more reusable

* revert inputText "number" stuff

* replace inputText to Input

* fix input spacing + label

* fix modal overlay classes

* fix inline styles

* fix onclick learn more

* fix close icon

* revert transition

* remove inline styles

* remove unecessary stuff
2020-06-26 17:34:43 +02:00
dannyrb 6e873cc92a Expose ViewportGridService API methods to extensions 2020-06-25 17:00:42 -04:00
igoroctaviano 5d89460326 Merge branch 'feat/v2-main' of github.com:OHIF/Viewers into feat/ohif-151 2020-06-25 16:13:47 -03:00
igoroctaviano 3f0619848b Update code to avoid intercepting onclick 2020-06-25 16:03:06 -03:00
Danny Brown 11932f460e Merge pull request #1813 from OHIF/feat/v2-main
catch-up
2020-06-25 14:39:45 -04:00
igoroctaviano 44297af965 Create window level dropdown menu 2020-06-25 15:27:42 -03:00
James Petts c01466762d WIP Measurements service. (#1808) 2020-06-25 18:13:31 +02:00
igoroctaviano 911f93d378 Update toolbar service and add active icon in nested button 2020-06-24 12:11:54 -03:00
dannyrb 9146a9ee32 Create new ToolbarButton type for Layout Selector; wire up custom UI; prep for viewportGridService usage 2020-06-15 00:51:36 -04:00
dannyrb 83eb24337c Syntax error 2020-06-14 23:45:55 -04:00
dannyrb 8c1a844558 Nested toolbar w/ "sticky" when clicked 2020-06-14 23:42:44 -04:00
dannyrb 83e191b850 Update toolbar service to use button types, update longitudinal flow to use new service api 2020-06-14 21:20:32 -04:00