Commit Graph

1242 Commits

Author SHA1 Message Date
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-Baptiste
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
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
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 Son
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 Wallace
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
Bill Wallace
a97fb2fc9a
fix(hotkeys): fix the hotkey manager to not save the defaults (#3162) 2023-02-10 14:30:56 -05:00
Joe Boccanfuso
4558540357
fix(cypress test): remove the click at beginning of the window level test: (#3158)
'OHIF Cornerstone Toolbar'.'checks if Levels tool will change the window width and center of an image'.
2023-02-09 19:44:59 -05:00
wangxuan
390e439f38
feat: Fix the translation of the tab label on the right hand panel (#3153) 2023-02-08 11:54:34 -05:00
Bill Wallace
7f799b8e3d
fix: Create typed services and allow lower case access to agree with naming conventions (#3141)
* fix: Add typed services

* fix: Typed services - PR changes

* remaining of the cineService and toolbarService renaming

---------

Co-authored-by: Alireza <ar.sedghi@gmail.com>
2023-02-07 14:31:55 -05:00
Bill Wallace
0e1a58da79
fix: Use @cornerstonejs/adapters (#3116)
Also update the sort series to be consistent, using a single version of the series sort, and fix an issue with longitudinal mode export.
2023-02-06 17:05:13 -05:00
Bill Wallace
980b44f18c
fix(misc): Update the data source name, provide a /datasources example customization for debug (#3036)
* fix(misc):Update the data source name, provide  a /datasources

Update the imports for a few things to match, to avoid 2 versions

Fix the datasources name

pr:Make the data source selector configurable

* Updated data source selector page as requested

* PR fixes
2023-02-03 16:56:27 -05:00
wangxuan
7a3527dd4a
fix(typo): whiteLabelling to whiteLabeling (#3139)
* fix typo: whiteLabelling -> whiteLabeling

* fix resolvejsonmodule error
2023-02-03 10:28:05 -05:00
Alireza
123e3a569b
fix(Segmentation): bump packages to fix segmentation rendering (#3138)
* add test mode

* bump packages

* add reference lines

* update yarn lock

* fix netlify build

* fix num workers

* update year in doc
2023-02-03 09:33:28 -05:00
Ouwen Huang
a2bafaf100
feat(metadata): added voiLUTFunction to MetadataProvider (#2959) 2023-02-02 17:32:38 -05:00
ladeirarodolfo
b4881ab02e
fix(Panels): dicom seg panel sizing issue (#3125)
* Fix dicom seg panel sizing issue

* Set unecessary changes back

Co-authored-by: Rodolfo <rodolfo@radicalimaging.com>
2023-01-25 10:14:12 -05:00
Matthis Duclos
514ea3ccea
feat(HangingProtocol): add protocol generator back (#3128) 2023-01-25 10:11:08 -05:00
Joe Boccanfuso
b51c59016c
fix(MeasurementService): OHIF-433 Clicking on measurement should highlight the measuremen… (#3120)
Annotation selection update event originates from CS3D and as such should use the notUpdatedAtSource:false flag.
2023-01-16 20:38:37 -05:00
Joe Boccanfuso
58ae8690a7
fix: Clicking on measurement should highlight the measurement row in the measurement panel OHIF-433 (#3111)
* fix: OHIF-433 Clicking on measurement should highlight the measurement row in the measurement panel

Added selected flag to each OHIF measurement.
Listening to CS3D ANNOTATION_SELECTION_CHANGE to keep the selected flag in sync.

* fix: OHIF-433 Clicking on measurement should highlight the measurement row in the measurement panel

Fixed broken unit tests.

* PR feedback from Alireza:
- use MEASUREMENT_UPDATED event for selection changed
- added TODO to eventually have CS3D introduce the selected flag per annotation
- added MeasurementService._publishEvent

* PR feedback: now using _broadcastEvent
2023-01-13 13:57:18 -05:00
Joe Boccanfuso
a997198587
fix: app-config settings are ignored in OHIF v3 (#3114)
* fix: app-config settings are ignored in OHIF v3
github issue #3051

Remove default route from baked in routes if showStudyList is false.

* fix: app-config settings are ignored in OHIF v3
github issue #3051

PR feedback - simply remove default route from the baked in routes.

* fix: app-config settings are ignored in OHIF v3
github issue #3051

PR feedback - updated CS3D tools version
2023-01-12 16:38:12 -05:00
Gabriel Lebaudy
97dc2f9049
fix: Require all instances to have an ImagePositionPatient attribute (#3107)
This fixes cases when some instances don't have this attribute, which would break on platform/core/src/utils/sortInstancesByPosition.ts:52
2023-01-11 14:42:16 -05:00
Alireza
1d1b33224a
feat: use wadors instead of streaming wadors for volume loading (#3109) 2023-01-11 07:19:27 -05:00
Joe Boccanfuso
9b0d542526
fix: rework inconsistencies in split button implementation(#3086)
* feat: Combine the layout grid selector tool with the toggle MPR button into a split button.
The primary button will always be the layout grid selector and the MPR toggle is in the drop down menu.
This is the first step to later adding other (e.g. 3D) layout HPs to the menu.

Summary of changes/fixes:
- SplitButton now allows for its primary button to be any button component specified by a UI type.
- SplitButton passes a className to its primary button component to dictate how it should be rendered
based on its active/toggle status, hovering, menu visibility etc.
- The default menu item renderer for the SplitButton, renders acitve toggle items correctly.
- Items/buttons in the toolbar are now all the correct and same size.
- Added ToolbarService.getButtonComponentForUIType to fetch a button component for a given UI type.
- Spacing between toolbar items is now done at the Toolbar level to avoid double spacing and to ensure
uniform spacing.
- The drop down menu closes when clicking the primary button.
- Show a mouse down click effect when clicking the primary button.

Items to investigate still:
The following are all slightly contrary to the design specs of the UI:
- Is the click effect on the primary button satisfactory because with the hover border effect, the
button appears slightly smaller during the mouse down/up operation? (MEDIUM)
- On hover over the drop down button, the right-hand-side corners of the primary button appear
rounded and NOT square. Also the hover over the drop down button border effects make the primary
button appear smaller. (MEDIUM)
- Should there be hover effects when hovering over either tooltip of the SplitButton? (LOW)

* feat: Combine the layout grid selector tool with the toggle MPR button into a split button.

Fixed broken e2e tests.
data-cy and data-tool properties now passed down to primary button component.

* feat: Combine the layout grid selector tool with the toggle MPR button into a split button.

On drop down button hover, the primary button now stretches all the way right with no right border
and with square corners in the top and bottom right as per the toolbar spec.

The mouse down effect gives a full button look (i.e. no borders) with rounded corners all around and black text icon.

* feat: Combine the layout grid selector tool with the toggle MPR button into a split button.

Documented that the primary button of a split button can specify a UI type.

* feat: Combine the layout grid selector tool with the toggle MPR button into a split button.

Feedback from PR review to fix prettier formatting issue.

* feat: Combine the layout grid selector tool with the toggle MPR button into a split button.

Added TODOs as per Bill's request in the PR.

* feat: Combine the layout grid selector tool with the toggle MPR button into a split button.

Feedback from Alireza: reverted the layout selector and MPR tools to be separate toolbar items.

Co-authored-by: Joe Boccanfuso <joe.boccanfuso@radicalimaging.com>
2023-01-06 15:00:23 -05:00
Bill Wallace
fb2a60ae19
feat: Allow multiframe volumes (#3089)
* Allow multiframe volumes

* feat:Allow display of multiframe volume
2023-01-05 20:26:26 -05:00
Bill Wallace
00e797801d
feat(imageLoader):Add an nth image loader strategy (#10) (#3044)
* feat(imageLoader):Add an nth image loader strategy (#10)

* Updates for PR for nth menu

* performance:Prior implementation was O(n^2), taking about 50 ms

* feat:Nth image loader, added docs as requested
2022-12-29 11:00:13 -05:00
Bill Wallace
9a03bde0ae
Fix/sr hydration non tracking (#3080)
* fix:DICOM SR hydration - remove redundancies

feat:Allow save and restore on non-tracking view

* PR comments
2022-12-29 10:13:06 -05:00
jbocce
ec7cdba901
fix: Docker build and run were not working (#3081)
* fix: Use single quotes instead of backticks when specifying the environment variable that should be substituted for the envsubst command.
GitHub issue: #3079
Removed duplicate calls to envsubst.
Default nginx listen port is now 80.
Adde markdown documentation.

* fix: Fixed some typos and wording in markdown documentation.
GitHub issue: #3079

Co-authored-by: Joe Boccanfuso <joe.boccanfuso@radicalimaging.com>
2022-12-15 16:10:30 -05:00
Bill Wallace
beb4517450
fix(grid):Grid service wasn't being reset (#3068)
* fix(grid):Grid service wasn't being reset

* fix(service):Fix the initial service state

Services with mode specific state differed in internal state between
initial and subsequent load.  This fix address that structurally by
allows the mode to store/manage service state, but makes the
responsibility of service state central to the service.
2022-12-09 10:58:01 -05:00
Alireza
42dca11ae3
fix: various bugs with v33 re cine and colors (#3052)
* fix various bugs

* feat: initial work for debug page

* change throw to console error for color lookup table

* update packages

* apply review

* apply review comments
2022-12-05 09:53:59 -05:00
Tim
4c5d14c624
fix: Add support for showStudyList configuration setting (#3009)
I followed suit with how it was implemented in the v2 branch, on the 404
page I just hit the link back to the study list if we're not configured
to display it. See PR #2131
2022-12-02 09:23:44 -05:00
Alireza
bbd962f0b4
fix: remove lottie dependencies since it is not being used (#3040)
* remove lottie as it is not used

* update yarn lock
2022-11-24 17:32:08 -05:00
Bill Wallace
daa56a8449
feat(CustomizationService):Add a customization service (#2984)
* feat(customization):Add a customization service

Update UICustomizationService to v3-stable.

Also, adds an example customization for tab colors

* moved the customization service to ui category
2022-11-24 16:28:10 -05:00
Alireza
32bb7e4c1e
fix: sr module and add URL docs (#3034)
* fix sr module and add docs

* bump version
2022-11-23 11:43:46 -05:00
Bill Wallace
024aeae240
fix: button text colour to be more readable (#3031)
* Fix the button text colour to be more readable

* fix(button):Add the ability to set text to black to fix visibility
2022-11-22 09:11:03 -05:00
Bill Wallace
abd75b0ba1
feat(datasourcename):Allow specifying the datasourcename as a parameter (#3029) 2022-11-22 09:09:24 -05:00
Alireza
bbfdda7fe7
feat: enhanced notifications and toolbar hover states (#3032)
* fix: button hover state and overlay colors in tmtv

* fix: styles for notificaionts
2022-11-21 22:35:25 -05:00
HarmvZ
be6b8629be
fix: Correctly ignore directories in webpack config (#3025) 2022-11-21 17:46:55 -05:00
Alireza
87eab39768
fix: remaining bugs for MPR and toolbar icon colors (#3026)
* feat: warn for overlapping segments

* fix: typo

* refactor mpr toggle and stack sync

* fix: wip for more general mpr

* fix: tool groups for mpr

* fix: changing of viewport id

* fix: viewport Id for the seg viewports

* fix

* update cornerstone version
2022-11-21 10:44:19 -05:00
Alireza
6db4d7a917
fix: ui for dicom tag browswer (#3022)
* fix: ui for dicom tag browswer

* fix build
2022-11-16 22:35:23 -05:00
Michael Andersen
ccf010c0fe
feat: DicomTagBrowser tool (#2975)
* init bring v2 tag browser to v3, some small bug fixes

* moved tag browser to default extension, altered style to be more OHIF-v3-like

Co-authored-by: Michael Andersen <Michael.Andersen@rmp.uhn.ca>
2022-11-16 22:16:12 -05:00