Adapting Viewers to the new cornerstone structure

This commit is contained in:
Bruno Alves de Faria committed 2018-02-27 07:25:15 -03:00
1 parent 99b88f08b3
commit dc767e5c83
19 files changed
+82 -70

No files matched your search

@@ -1,6 +1,6 @@
import { Template } from 'meteor/templating';
import { ReactiveVar } from 'meteor/reactive-var';
import { OHIF } from 'meteor/ohif:core';
import { cornerstone, cornerstoneTools } from 'meteor/ohif:cornerstone';
import { toolManager } from '../../../lib/toolManager';
const toolTypes = ['length', 'simpleAngle', 'probe', 'ellipticalRoi', 'rectangleRoi', 'arrowAnnotate'];
@@ -14,33 +14,31 @@ const TypeToLabelMap = {
};
let dropdownItems = [{
actionType: 'Delete',
action: ({nearbyToolData, eventData}) => {
const element = eventData.element
action: ({ nearbyToolData, eventData }) => {
const element = eventData.element;
cornerstoneTools.removeToolState(element, nearbyToolData.toolType, nearbyToolData.tool);
cornerstone.updateImage(element);
}
}];
let timer = 0;
const getTypeText = function(toolData, actionType) {
const toolType = toolData.toolType;
let message = `${TypeToLabelMap[toolType]}`;
if (toolType === 'arrowAnnotate') {
message = `${message} "${toolData.tool.text}"`
message = `${message} "${toolData.tool.text}"`;
}
return `${actionType} ${message}`;
};
const createDropdown = function (event, eventData, isTouchEvent = false) {
const createDropdown = function(event, isTouchEvent = false) {
const eventData = event.detail;
const nearbyToolData = toolManager.getNearbyToolData(eventData.element, eventData.currentPoints.canvas, toolTypes);
// Annotate tools for touch events already have a press handle to edit it, has a better UX for deleting it
if (isTouchEvent && nearbyToolData.toolType === 'arrowAnnotate') {
return;
}
if (isTouchEvent && nearbyToolData.toolType === 'arrowAnnotate') return;
if (nearbyToolData) {
dropdownItems.forEach(function(item) {
@@ -59,13 +57,13 @@ const createDropdown = function (event, eventData, isTouchEvent = false) {
};
Template.viewerMain.events({
'CornerstoneToolsMouseClick .imageViewerViewport'(event, instance, eventData) {
'CornerstoneToolsMouseClick .imageViewerViewport'(event, instance) {
if (event.which === 3) {
createDropdown(event, eventData);
createDropdown(event);
}
},
'CornerstoneToolsTouchPress .imageViewerViewport'(event, instance, eventData) {
createDropdown(event, eventData, true);
'CornerstoneToolsTouchPress .imageViewerViewport'(event, instance) {
createDropdown(event, true);
}
});
});