StandaloneViewer reconcile + Minor fix to ResizeViewportManager

This commit is contained in:
Emanuel F. Oliveira committed 2017-01-31 11:27:23 -02:00
1 parent 6ddc844945
commit 36def1e055
10 files changed
+63 -31

No files matched your search

@@ -20,7 +20,7 @@ Template.viewerMain.onCreated(() => {
// and change it to jQuery._data(window, 'events')['resize'].
// Otherwise this function will be probably overrided.
// See cineDialog instance.setResizeHandler function
window.addEventListener('resize', window.ResizeViewportManager.handleResize.bind(window.ResizeViewportManager));
window.addEventListener('resize', window.ResizeViewportManager.getResizeHandler());
// Add beforeUnload event handler to check for unsaved changes
window.addEventListener('beforeunload', unloadHandlers.beforeUnload);
@@ -113,7 +113,7 @@ Template.viewerMain.onDestroyed(() => {
OHIF.log.info('viewerMain onDestroyed');
// Remove the Window resize listener
window.removeEventListener('resize', window.ResizeViewportManager.handleResize.bind(window.ResizeViewportManager));
window.removeEventListener('resize', window.ResizeViewportManager.getResizeHandler());
// Remove beforeUnload event handler...
window.removeEventListener('beforeunload', unloadHandlers.beforeUnload);
+4
View File
@@ -176,6 +176,10 @@ Viewerbase.dicomTagDescriptions = dicomTagDescriptions;
import { ImageSet } from './lib/classes/ImageSet';
Viewerbase.ImageSet = ImageSet;
// LayoutManager
import { LayoutManager } from './lib/classes/LayoutManager';
Viewerbase.LayoutManager = LayoutManager;
// ResizeViewportManager
import { ResizeViewportManager } from './lib/classes/ResizeViewportManager';
Viewerbase.ResizeViewportManager = ResizeViewportManager;
@@ -6,6 +6,7 @@ import { getInstanceClassDefaultViewport } from '../instanceClassSpecificViewpor
// Manage resizing viewports triggered by window resize
export class ResizeViewportManager {
constructor() {
this._resizeHandler = null;
OHIF.log.info('ResizeViewportManager');
}
@@ -150,4 +151,18 @@ export class ResizeViewportManager {
this.resizeViewportElements();
}, 100);
}
/**
* Returns a unique event handler function associated with a given instance using lazy assignment.
* @return {function} Returns a unique copy of the event handler of this class.
*/
getResizeHandler() {
let resizeHandler = this._resizeHandler;
if (resizeHandler === null) {
resizeHandler = this.handleResize.bind(this);
this._resizeHandler = resizeHandler;
}
return resizeHandler;
}
}