From 672fe023160c30220531b5c3d2285600dda0e18f Mon Sep 17 00:00:00 2001 From: Anne Haley Date: Thu, 4 Aug 2022 11:30:37 -0400 Subject: [PATCH] Window widget 2 (#552) * Use ww and wl on one range slider * Redo preset selection for new bar * Change range slider values when window is edited by render interaction * Change functions should respect lock state * Locks can be selected to persist for the current scan, experiment, or project * Use a custom range slider for dragging the middle * Use colored locks with letters as lock icon * Flip RAS Axial --- web_client/public/E.png | Bin 0 -> 8558 bytes web_client/public/P.png | Bin 0 -> 10378 bytes web_client/public/S.png | Bin 0 -> 14850 bytes .../src/components/CustomRangeSlider.vue | 68 ++++ web_client/src/components/VtkViewer.vue | 2 +- web_client/src/components/WindowWidget.vue | 328 +++++++++--------- web_client/src/store/index.ts | 39 ++- web_client/src/vtk/constants.js | 25 +- 8 files changed, 292 insertions(+), 170 deletions(-) create mode 100644 web_client/public/E.png create mode 100644 web_client/public/P.png create mode 100644 web_client/public/S.png create mode 100644 web_client/src/components/CustomRangeSlider.vue diff --git a/web_client/public/E.png b/web_client/public/E.png new file mode 100644 index 0000000000000000000000000000000000000000..46da89646a306a4a761145416a94e1402b682932 GIT binary patch literal 8558 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 literal 0 HcmV?d00001 diff --git a/web_client/public/P.png b/web_client/public/P.png new file mode 100644 index 0000000000000000000000000000000000000000..b4870bf3f501a9f77c8749676063065227a0dd83 GIT binary patch literal 10378 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 literal 0 HcmV?d00001 diff --git a/web_client/public/S.png b/web_client/public/S.png new file mode 100644 index 0000000000000000000000000000000000000000..8762e8d943fa4f3b1ff1ec8bd02602ce691be94f GIT binary patch literal 14850 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 literal 0 HcmV?d00001 diff --git a/web_client/src/components/CustomRangeSlider.vue b/web_client/src/components/CustomRangeSlider.vue new file mode 100644 index 00000000..3d4fa7fc --- /dev/null +++ b/web_client/src/components/CustomRangeSlider.vue @@ -0,0 +1,68 @@ + + + diff --git a/web_client/src/components/VtkViewer.vue b/web_client/src/components/VtkViewer.vue index b08bdc8c..12dd8b60 100644 --- a/web_client/src/components/VtkViewer.vue +++ b/web_client/src/components/VtkViewer.vue @@ -158,7 +158,7 @@ export default { representationProperty.setColorLevel(this.currentWindowLevel); representationProperty.onModified( (property) => { - if (!this.windowLocked) { + if (!this.windowLocked.lock) { this.setCurrentWindowWidth(property.getColorWindow()); this.setCurrentWindowLevel(property.getColorLevel()); } else { diff --git a/web_client/src/components/WindowWidget.vue b/web_client/src/components/WindowWidget.vue index 63ae0107..7bc7a2ce 100644 --- a/web_client/src/components/WindowWidget.vue +++ b/web_client/src/components/WindowWidget.vue @@ -1,12 +1,17 @@