ohif-viewer/Packages/ohif-measurements/client/lib/toggleLabelButton.js

53 lines
1.4 KiB
JavaScript
Raw Normal View History

import { Template } from 'meteor/templating';
import { Blaze } from 'meteor/blaze';
import { _ } from 'meteor/underscore';
import { OHIF } from 'meteor/ohif:core';
const toolMap = {
bidirectional: 'targets'
};
OHIF.measurements.toggleLabelButton = options => {
const removeButtonView = () => {
if (!options.instance.buttonView) {
return;
}
Blaze.remove(options.instance.buttonView);
options.instance.buttonView = null;
};
if (options.instance.buttonView) {
removeButtonView();
}
2016-11-06 12:58:59 +01:00
const tool = toolMap[options.toolData.toolType];
const toolCollection = options.measurementApi[tool];
const measurement = toolCollection.findOne(options.toolData._id);
2016-11-06 12:58:59 +01:00
const data = {
2016-11-06 12:58:59 +01:00
measurement,
tool,
position: options.position,
threeColumns: true,
hideCommon: true,
2016-11-06 12:58:59 +01:00
toolType: options.toolData.toolType,
doneCallback(location, description) {
if (_.isFunction(options.callback)) {
options.callback(options, location, description);
}
2016-11-06 12:58:59 +01:00
toolCollection.update(measurement._id, {
$set: {
location,
description
}
});
removeButtonView();
}
};
const view = Blaze.renderWithData(Template.measureFlow, data, options.element);
options.instance.buttonView = view;
};