Enabling viewport enlargement again
This commit is contained in:
parent
daefd83be6
commit
5330ba5982
@ -167,6 +167,10 @@ function addNewMeasurement(mouseEventData) {
|
||||
// Bind the event listener for image rendering
|
||||
$element.on('CornerstoneImageRendered', imageRenderedHandler);
|
||||
|
||||
// Bind the tool deactivation and enlargement handlers
|
||||
$element.on('CornerstoneToolsToolDeactivated', cancelAction);
|
||||
$element.one('ohif.viewer.viewport.toggleEnlargement', cancelAction);
|
||||
|
||||
cornerstone.updateImage(element);
|
||||
|
||||
const timestamp = new Date().getTime();
|
||||
@ -192,6 +196,10 @@ function addNewMeasurement(mouseEventData) {
|
||||
// Unbind the event listener for image rendering
|
||||
$element.off('CornerstoneImageRendered', imageRenderedHandler);
|
||||
|
||||
// Unbind the tool deactivation and enlargement handlers
|
||||
$element.off('CornerstoneToolsToolDeactivated', cancelAction);
|
||||
$element.off('ohif.viewer.viewport.toggleEnlargement', cancelAction);
|
||||
|
||||
// perpendicular line is not connected to long-line
|
||||
measurementData.handles.perpendicularStart.locked = false;
|
||||
|
||||
|
||||
@ -61,16 +61,6 @@ Template.timepointBrowserQuickSwitch.onCreated(() => {
|
||||
Template.timepointBrowserQuickSwitch.onRendered(() => {
|
||||
const instance = Template.instance();
|
||||
|
||||
instance.autorun(() => {
|
||||
const selectedTimepoint = instance.selectedTimepoint.get();
|
||||
const selectedTimepointId = (selectedTimepoint && selectedTimepoint.timepointId) || '';
|
||||
const $allBrowserItems = instance.$('.timepoint-browser-item');
|
||||
const $browserItem = $allBrowserItems.filter(`[data-id=${selectedTimepointId}]`);
|
||||
if (!$browserItem.hasClass('active')) {
|
||||
$browserItem.find('.timepoint-item').trigger('click');
|
||||
}
|
||||
});
|
||||
|
||||
instance.updateActiveStudy = () => {
|
||||
const currentStudy = instance.data.currentStudy.get();
|
||||
const studyInstanceUid = (currentStudy && currentStudy.studyInstanceUid) || '';
|
||||
@ -81,6 +71,16 @@ Template.timepointBrowserQuickSwitch.onRendered(() => {
|
||||
});
|
||||
};
|
||||
|
||||
instance.autorun(() => {
|
||||
const selectedTimepoint = instance.selectedTimepoint.get();
|
||||
const selectedTimepointId = (selectedTimepoint && selectedTimepoint.timepointId) || '';
|
||||
const $allBrowserItems = instance.$('.timepoint-browser-item');
|
||||
const $browserItem = $allBrowserItems.filter(`[data-id=${selectedTimepointId}]`);
|
||||
if (!$browserItem.hasClass('active')) {
|
||||
$browserItem.find('.timepoint-item').trigger('click');
|
||||
}
|
||||
});
|
||||
|
||||
instance.autorun(instance.updateActiveStudy);
|
||||
});
|
||||
|
||||
|
||||
@ -2,7 +2,6 @@ import { Meteor } from 'meteor/meteor';
|
||||
import { Template } from 'meteor/templating';
|
||||
import { Tracker } from 'meteor/tracker';
|
||||
import { Session } from 'meteor/session';
|
||||
import { Random } from 'meteor/random';
|
||||
import { $ } from 'meteor/jquery';
|
||||
// OHIF Modules
|
||||
import { OHIF } from 'meteor/ohif:core';
|
||||
@ -382,7 +381,7 @@ const loadDisplaySetIntoViewport = (data, templateData) => {
|
||||
// If it was, no changes are necessary, so stop here.
|
||||
const activeViewportIndex = Session.get('activeViewport');
|
||||
if (viewportIndex === activeViewportIndex) {
|
||||
return;
|
||||
return true;
|
||||
}
|
||||
|
||||
// Reset the focus, even if we don't need to re-enable reference lines or prefetching
|
||||
@ -514,9 +513,10 @@ Template.imageViewerViewport.onRendered(function() {
|
||||
// When the imageViewerViewport template is rendered
|
||||
const element = this.find('.imageViewerViewport');
|
||||
this.element = element;
|
||||
this.$element = $(element);
|
||||
|
||||
// Display the loading indicator for this element
|
||||
$(element).siblings('.imageViewerLoadingIndicator').css('display', 'block');
|
||||
this.$element.siblings('.imageViewerLoadingIndicator').css('display', 'block');
|
||||
|
||||
// Get the current active viewport index, if this viewport has the same index,
|
||||
// add the CSS 'active' class to highlight this viewport.
|
||||
@ -548,8 +548,8 @@ Template.imageViewerViewport.onRendered(function() {
|
||||
// instructions and then stop here since we don't know what to display in the viewport.
|
||||
if (!displaySetInstanceUid) {
|
||||
element.classList.add('empty');
|
||||
$(element).siblings('.imageViewerLoadingIndicator').css('display', 'none');
|
||||
$(element).siblings('.viewportInstructions').show();
|
||||
this.$element.siblings('.imageViewerLoadingIndicator').css('display', 'none');
|
||||
this.$element.siblings('.viewportInstructions').show();
|
||||
return;
|
||||
}
|
||||
|
||||
@ -558,6 +558,34 @@ Template.imageViewerViewport.onRendered(function() {
|
||||
|
||||
data.study = study;
|
||||
setDisplaySet(data, displaySetInstanceUid, templateData);
|
||||
|
||||
// Double click event handlers to handle viewport enlargement
|
||||
this.$element.on('CornerstoneToolsMouseDoubleClick CornerstoneToolsDoubleTap', event => {
|
||||
this.$element.trigger('ohif.viewer.viewport.toggleEnlargement');
|
||||
|
||||
// Get the double clicked viewport index
|
||||
const viewportIndex = $('.imageViewerViewport').index(event.currentTarget);
|
||||
|
||||
// Enlarge the double clicked viewport
|
||||
const layoutManager = OHIF.viewerbase.layoutManager;
|
||||
layoutManager.toggleEnlargement(viewportIndex);
|
||||
|
||||
// Wait for DOM re-rendering and update the active viewport
|
||||
Tracker.afterFlush(() => {
|
||||
let viewportIndexToZoom;
|
||||
// Check if the viewer is zoomed
|
||||
if (layoutManager.isZoomed) {
|
||||
// Set the active viewport as the only one visible
|
||||
viewportIndexToZoom = 0;
|
||||
} else {
|
||||
// Set the active viewport as the previous zoomed viewport
|
||||
viewportIndexToZoom = layoutManager.zoomedViewportIndex || 0;
|
||||
}
|
||||
// Set zoomed viewport as active...
|
||||
const element = $('.imageViewerViewport').get(viewportIndexToZoom);
|
||||
setActiveViewport(element);
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
Template.imageViewerViewport.onDestroyed(function() {
|
||||
@ -607,30 +635,5 @@ Template.imageViewerViewport.events({
|
||||
'OHIFActivateViewport .imageViewerViewport'(event) {
|
||||
OHIF.log.info('imageViewerViewport OHIFActivateViewport');
|
||||
setActiveViewport(event.currentTarget);
|
||||
},
|
||||
|
||||
'CornerstoneToolsMouseDoubleClick .imageViewerViewport, CornerstoneToolsDoubleTap .imageViewerViewport'(event) {
|
||||
// Get the double clicked viewport index
|
||||
const viewportIndex = $('.imageViewerViewport').index(event.currentTarget);
|
||||
|
||||
// Enlarge the double clicked viewport
|
||||
const layoutManager = OHIF.viewerbase.layoutManager;
|
||||
layoutManager.toggleEnlargement(viewportIndex);
|
||||
|
||||
// Wait for DOM re-rendering and update the active viewport
|
||||
Tracker.afterFlush(() => {
|
||||
let viewportIndexToZoom;
|
||||
// Check if the viewer is zoomed
|
||||
if (layoutManager.isZoomed) {
|
||||
// Set the active viewport as the only one visible
|
||||
viewportIndexToZoom = 0;
|
||||
} else {
|
||||
// Set the active viewport as the previous zoomed viewport
|
||||
viewportIndexToZoom = layoutManager.zoomedViewportIndex || 0;
|
||||
}
|
||||
// Set zoomed viewport as active...
|
||||
const element = $('.imageViewerViewport').get(viewportIndexToZoom);
|
||||
setActiveViewport(element);
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
Loading…
Reference in New Issue
Block a user