Fix context usage in ModeRoute
This commit is contained in:
parent
17e2680da8
commit
3ce4b886ac
@ -352,8 +352,6 @@ function createDicomWebApi(dicomWebConfig) {
|
|||||||
|
|
||||||
StudyInstanceUIDs = urlUtil.paramString.parseParam(StudyInstanceUIDs);
|
StudyInstanceUIDs = urlUtil.paramString.parseParam(StudyInstanceUIDs);
|
||||||
|
|
||||||
debugger;
|
|
||||||
|
|
||||||
if (!StudyInstanceUIDs) {
|
if (!StudyInstanceUIDs) {
|
||||||
throw new Error(
|
throw new Error(
|
||||||
'Incomplete queryParams, missing StudyInstanceUIDs'
|
'Incomplete queryParams, missing StudyInstanceUIDs'
|
||||||
|
|||||||
@ -190,8 +190,6 @@ function viewerLayout({
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
debugger;
|
|
||||||
|
|
||||||
const leftPanelComponents = leftPanels.map(getPanelData);
|
const leftPanelComponents = leftPanels.map(getPanelData);
|
||||||
const rightPanelComponents = rightPanels.map(getPanelData);
|
const rightPanelComponents = rightPanels.map(getPanelData);
|
||||||
|
|
||||||
|
|||||||
@ -7,6 +7,8 @@ class DisplaySetManager {
|
|||||||
this.extensionManager = extensionManager;
|
this.extensionManager = extensionManager;
|
||||||
this.SOPClassHandlerIds = SOPClassHandlerIds;
|
this.SOPClassHandlerIds = SOPClassHandlerIds;
|
||||||
|
|
||||||
|
debugger;
|
||||||
|
|
||||||
const {
|
const {
|
||||||
displaySetInstanceUids,
|
displaySetInstanceUids,
|
||||||
setDisplaySetInstanceUids,
|
setDisplaySetInstanceUids,
|
||||||
@ -20,7 +22,6 @@ class DisplaySetManager {
|
|||||||
}
|
}
|
||||||
|
|
||||||
_addDisplaySets(displaySets) {
|
_addDisplaySets(displaySets) {
|
||||||
debugger;
|
|
||||||
//const displayInstanceUids = [...this.displaySetInstanceUids];
|
//const displayInstanceUids = [...this.displaySetInstanceUids];
|
||||||
|
|
||||||
const addedDisplaySetUids = [];
|
const addedDisplaySetUids = [];
|
||||||
@ -47,8 +48,6 @@ class DisplaySetManager {
|
|||||||
|
|
||||||
const instance = instances[0];
|
const instance = instances[0];
|
||||||
|
|
||||||
debugger;
|
|
||||||
|
|
||||||
const existingDisplaySets =
|
const existingDisplaySets =
|
||||||
this.getDisplaySetsForSeries(instance.SeriesInstanceUID) || [];
|
this.getDisplaySetsForSeries(instance.SeriesInstanceUID) || [];
|
||||||
|
|
||||||
@ -76,9 +75,7 @@ class DisplaySetManager {
|
|||||||
addedDisplaySetUids = this._addDisplaySets(displaySets);
|
addedDisplaySetUids = this._addDisplaySets(displaySets);
|
||||||
}
|
}
|
||||||
|
|
||||||
debugger;
|
this.setDisplaySetInstanceUids([
|
||||||
|
|
||||||
setDisplaySetInstanceUids([
|
|
||||||
...addedDisplaySetUids,
|
...addedDisplaySetUids,
|
||||||
...this.displaySetInstanceUids,
|
...this.displaySetInstanceUids,
|
||||||
]);
|
]);
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
import React, { useContext } from 'react';
|
import React, { useContext, useEffect, useCallback } from 'react';
|
||||||
import { displaySetManager } from '@ohif/core';
|
import { displaySetManager } from '@ohif/core';
|
||||||
import ViewModelContext from './ViewModelContext';
|
import ViewModelContext from './ViewModelContext';
|
||||||
import Compose from './Compose';
|
import Compose from './Compose';
|
||||||
@ -16,32 +16,16 @@ export default function ModeRoute({
|
|||||||
|
|
||||||
const dataSource = dataSources[0];
|
const dataSource = dataSources[0];
|
||||||
|
|
||||||
const viewModelContext = useContext(ViewModelContext);
|
const { displaySetInstanceUids, setDisplaySetInstanceUids } = useContext(
|
||||||
|
ViewModelContext
|
||||||
console.log(viewModelContext);
|
|
||||||
|
|
||||||
const { displaySetInstanceUids } = viewModelContext;
|
|
||||||
// Deal with toolbar.
|
|
||||||
|
|
||||||
// Only handling one route per mode for now
|
|
||||||
// You can test via http://localhost:3000/example-mode/dicomweb
|
|
||||||
const layoutTemplateData = routes[0].layoutTemplate({ location });
|
|
||||||
|
|
||||||
const layoutTemplateModuleEntry = extensionManager.getModuleEntry(
|
|
||||||
layoutTemplateData.id
|
|
||||||
);
|
);
|
||||||
|
|
||||||
const LayoutComponent = layoutTemplateModuleEntry.component;
|
const createDisplaySets = useCallback(() => {
|
||||||
|
|
||||||
// Add SOPClassHandlers to a new SOPClassManager.
|
// Add SOPClassHandlers to a new SOPClassManager.
|
||||||
|
displaySetManager.init(extensionManager, sopClassHandlers, {
|
||||||
debugger;
|
displaySetInstanceUids,
|
||||||
|
setDisplaySetInstanceUids,
|
||||||
displaySetManager.init(extensionManager, sopClassHandlers, viewModelContext);
|
});
|
||||||
|
|
||||||
// setInterval(() => {
|
|
||||||
// setDisplaySetInstanceUids(manager.displaySets);
|
|
||||||
// }, 5000);
|
|
||||||
|
|
||||||
const queryParams = location.search;
|
const queryParams = location.search;
|
||||||
|
|
||||||
@ -50,6 +34,21 @@ export default function ModeRoute({
|
|||||||
queryParams,
|
queryParams,
|
||||||
displaySetManager.makeDisplaySets
|
displaySetManager.makeDisplaySets
|
||||||
);
|
);
|
||||||
|
}, [displaySetInstanceUids, location]);
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
createDisplaySets();
|
||||||
|
}, [mode, dataSourceName, location]);
|
||||||
|
|
||||||
|
// Deal with toolbar.
|
||||||
|
|
||||||
|
// Only handling one route per mode for now
|
||||||
|
// You can test via http://localhost:3000/example-mode/dicomweb
|
||||||
|
const layoutTemplateData = routes[0].layoutTemplate({ location });
|
||||||
|
const layoutTemplateModuleEntry = extensionManager.getModuleEntry(
|
||||||
|
layoutTemplateData.id
|
||||||
|
);
|
||||||
|
const LayoutComponent = layoutTemplateModuleEntry.component;
|
||||||
|
|
||||||
// For each extension, look up their context modules
|
// For each extension, look up their context modules
|
||||||
// TODO: move to extension manager.
|
// TODO: move to extension manager.
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user