From 3e1127fc783719e1d2f888b6d7b3fea4d6721562 Mon Sep 17 00:00:00 2001 From: Erik Ziegler Date: Mon, 16 Jan 2017 21:04:36 +0100 Subject: [PATCH] Fixes to make Viewer load --- LesionTracker/package.json | 2 +- .../components/toolbarSection/toolbarSection.js | 7 ++++--- OHIFViewer/client/components/viewer/viewer.js | 3 ++- .../ohif-study-list/client/lib/getStudyMetadata.js | 3 ++- Packages/ohif-study-list/client/lib/studylist.js | 4 +++- .../client/active-entry/activeEntry.styl | 2 +- .../client/components/viewer/cineDialog/cineDialog.js | 6 ++++++ .../displaySetNavigation/displaySetNavigation.js | 5 +++++ .../viewer/imageViewerViewport/imageViewerViewport.js | 4 ++-- Packages/ohif-viewerbase/client/index.js | 5 +++++ .../client/lib/classes/LayoutManager.js | 11 ++++------- 11 files changed, 35 insertions(+), 17 deletions(-) diff --git a/LesionTracker/package.json b/LesionTracker/package.json index 4b1229585..2a12ae603 100644 --- a/LesionTracker/package.json +++ b/LesionTracker/package.json @@ -9,7 +9,7 @@ "version": "1.0.0", "description": "", "dependencies": { - "babel-runtime": "^6.18.0", + "babel-runtime": "^6.20.0", "bcrypt": "^0.8.7", "meteor-node-stubs": "^0.2.3" }, diff --git a/OHIFViewer/client/components/toolbarSection/toolbarSection.js b/OHIFViewer/client/components/toolbarSection/toolbarSection.js index 67291da24..a423b9de7 100644 --- a/OHIFViewer/client/components/toolbarSection/toolbarSection.js +++ b/OHIFViewer/client/components/toolbarSection/toolbarSection.js @@ -1,6 +1,7 @@ import { OHIF } from 'meteor/ohif:core'; import { Template } from 'meteor/templating'; import { $ } from 'meteor/jquery'; +import { Viewerbase } from 'meteor/ohif:viewerbase'; Template.toolbarSection.onCreated(() => { const instance = Template.instance(); @@ -181,7 +182,7 @@ Template.toolbarSection.helpers({ title: 'CINE', classes: 'imageViewerCommand', iconClasses: 'fa fa-youtube-play', - disableFunction: hasMultipleFrames + disableFunction: Viewerbase.viewportUtils.hasMultipleFrames }); } @@ -231,11 +232,11 @@ Template.toolbarSection.onRendered(function() { instance.$('#layout').dropdown(); if (OHIF.uiSettings.displayEchoUltrasoundWorkflow) { - toggleCineDialog(); + Viewerbase.viewportUtils.toggleCineDialog(); } // Set disabled/enabled tool buttons that are set in toolManager - const states = toolManager.getToolDefaultStates(); + const states = Viewerbase.toolManager.getToolDefaultStates(); const disabledToolButtons = states.disabledToolButtons; const allToolbarButtons = $('#toolbar').find('button'); if (disabledToolButtons && disabledToolButtons.length > 0) { diff --git a/OHIFViewer/client/components/viewer/viewer.js b/OHIFViewer/client/components/viewer/viewer.js index cf26126a5..ada9b6885 100644 --- a/OHIFViewer/client/components/viewer/viewer.js +++ b/OHIFViewer/client/components/viewer/viewer.js @@ -1,4 +1,5 @@ import { OHIF } from 'meteor/ohif:core'; +import { Viewerbase } from 'meteor/ohif:viewerbase'; OHIF.viewer = OHIF.viewer || {}; OHIF.viewer.defaultTool = 'wwwc'; @@ -52,7 +53,7 @@ Template.viewer.onCreated(() => { ViewerData[contentId].studyInstanceUids = []; instance.data.studies.forEach(study => { study.selected = true; - study.displaySets = createStacks(study); + study.displaySets = Viewerbase.createStacks(study); ViewerStudies.insert(study); ViewerData[contentId].studyInstanceUids.push(study.studyInstanceUid); }); diff --git a/Packages/ohif-study-list/client/lib/getStudyMetadata.js b/Packages/ohif-study-list/client/lib/getStudyMetadata.js index b22e667cc..e141f0ff6 100644 --- a/Packages/ohif-study-list/client/lib/getStudyMetadata.js +++ b/Packages/ohif-study-list/client/lib/getStudyMetadata.js @@ -1,4 +1,5 @@ import { OHIF } from 'meteor/ohif:core'; +import { Viewerbase } from 'meteor/ohif:viewerbase'; // Define the StudyMetaData object. This is used as a cache // to store study meta data information to prevent unnecessary @@ -55,7 +56,7 @@ getStudyMetadata = function(studyInstanceUid, doneCallback, failCallback) { // Once we have retrieved the data, we sort the series' by series // and instance number in ascending order - sortStudy(study); + Viewerbase.sortStudy(study); // Add additional metadata to our study from the studylist var studylistStudy = StudyListStudies.findOne({ diff --git a/Packages/ohif-study-list/client/lib/studylist.js b/Packages/ohif-study-list/client/lib/studylist.js index bef5a7ba6..b217d2a3a 100644 --- a/Packages/ohif-study-list/client/lib/studylist.js +++ b/Packages/ohif-study-list/client/lib/studylist.js @@ -1,3 +1,5 @@ +import { Viewerbase } from 'meteor/ohif:viewerbase'; + StudyList = { functions: {}, callbacks: {} @@ -8,7 +10,7 @@ StudyList.callbacks.middleClickOnStudy = dblClickOnStudy; function dblClickOnStudy(data) { // Use the formatPN template helper to clean up the patient name - var title = formatPN(data.patientName); + var title = Viewerbase.helpers.formatPN(data.patientName); openNewTab(data.studyInstanceUid, title); } diff --git a/Packages/ohif-user-management/client/active-entry/activeEntry.styl b/Packages/ohif-user-management/client/active-entry/activeEntry.styl index 3cfd5329c..4c7bfa26f 100644 --- a/Packages/ohif-user-management/client/active-entry/activeEntry.styl +++ b/Packages/ohif-user-management/client/active-entry/activeEntry.styl @@ -1,4 +1,4 @@ -@import "{design}/app.styl" +@import "{ohif:design}/app.styl" #entrySignIn.entryPage, #entrySignUp.entryPage, diff --git a/Packages/ohif-viewerbase/client/components/viewer/cineDialog/cineDialog.js b/Packages/ohif-viewerbase/client/components/viewer/cineDialog/cineDialog.js index 113b9cf44..b0525e6c0 100644 --- a/Packages/ohif-viewerbase/client/components/viewer/cineDialog/cineDialog.js +++ b/Packages/ohif-viewerbase/client/components/viewer/cineDialog/cineDialog.js @@ -274,6 +274,12 @@ Template.cineDialog.helpers({ displaySetDisabled(isNext) { Session.get('LayoutManagerUpdated'); + + // @TODO: Investigate why this is running while OHIF.viewerbase.layoutManager is undefined + if (!OHIF.viewerbase.layoutManager) { + return; + } + return !OHIF.viewerbase.layoutManager.canMoveDisplaySets(isNext) ? 'disabled' : ''; }, diff --git a/Packages/ohif-viewerbase/client/components/viewer/displaySetNavigation/displaySetNavigation.js b/Packages/ohif-viewerbase/client/components/viewer/displaySetNavigation/displaySetNavigation.js index 369fee6f6..66f40a47d 100644 --- a/Packages/ohif-viewerbase/client/components/viewer/displaySetNavigation/displaySetNavigation.js +++ b/Packages/ohif-viewerbase/client/components/viewer/displaySetNavigation/displaySetNavigation.js @@ -22,6 +22,11 @@ Template.displaySetNavigation.events({ Template.displaySetNavigation.helpers({ disableButton(isNext) { Session.get('LayoutManagerUpdated'); + + if (!OHIF.viewerbase.layoutManager) { + return; + } + return !OHIF.viewerbase.layoutManager.canMoveDisplaySets(isNext); } }); diff --git a/Packages/ohif-viewerbase/client/components/viewer/imageViewerViewport/imageViewerViewport.js b/Packages/ohif-viewerbase/client/components/viewer/imageViewerViewport/imageViewerViewport.js index 5b41ab426..f18ea807e 100644 --- a/Packages/ohif-viewerbase/client/components/viewer/imageViewerViewport/imageViewerViewport.js +++ b/Packages/ohif-viewerbase/client/components/viewer/imageViewerViewport/imageViewerViewport.js @@ -478,11 +478,11 @@ const loadDisplaySetIntoViewport = (data, templateData) => { */ const setDisplaySet = (data, displaySetInstanceUid, templateData) => { const study = data.study; - if (!study || !study.series) { + if (!study || !study.displaySets) { throw new OHIFError('Study does not exist or has no display sets'); } - study.series.every(displaySet => { + study.displaySets.every(displaySet => { if (displaySet.displaySetInstanceUid === displaySetInstanceUid) { data.displaySet = displaySet; return false; diff --git a/Packages/ohif-viewerbase/client/index.js b/Packages/ohif-viewerbase/client/index.js index 3323b92ef..3f60af6ae 100644 --- a/Packages/ohif-viewerbase/client/index.js +++ b/Packages/ohif-viewerbase/client/index.js @@ -131,6 +131,11 @@ Viewerbase.sortingManager = sortingManager; import { crosshairsSynchronizers } from './lib/crosshairsSynchronizers'; Viewerbase.crosshairsSynchronizers = crosshairsSynchronizers; +// createStacks.* +import { createStacks } from './lib/createStacks'; +Viewerbase.createStacks = createStacks; + + /** * Exported Singletons */ diff --git a/Packages/ohif-viewerbase/client/lib/classes/LayoutManager.js b/Packages/ohif-viewerbase/client/lib/classes/LayoutManager.js index deab056f4..5cf6601f2 100644 --- a/Packages/ohif-viewerbase/client/lib/classes/LayoutManager.js +++ b/Packages/ohif-viewerbase/client/lib/classes/LayoutManager.js @@ -55,13 +55,11 @@ export class LayoutManager { // Keep the displayed display sets self.viewportData = oldViewportData; currentViewportIndex = oldViewportData.length; - } - else if (viewportsAmount <= oldViewportData.length) { + } else if (viewportsAmount <= oldViewportData.length) { // Reduce the original displayed display sets self.viewportData = oldViewportData.slice(0, viewportsAmount); return; - } - else { + } else { // Reset all display sets self.viewportData = []; } @@ -69,7 +67,7 @@ export class LayoutManager { // Get all the display sets for the viewer studies let displaySets = []; this.studies.forEach(study => { - study.series.forEach(displaySet => { + study.displaySets.forEach(displaySet => { displaySet.images.length && displaySets.push(displaySet); }); }); @@ -82,8 +80,7 @@ export class LayoutManager { const beginIndex = sequenceMap.values().next().value[0].displaySetIndex + currentLength; const endIndex = beginIndex + (viewportsAmount - currentLength); appendix = displaySets.slice(beginIndex, endIndex); - } - else { + } else { // Get available display sets from the first to the grid size appendix = displaySets.slice(0, viewportsAmount); }