feat(grid): remove viewportIndex and only rely on viewportId (#3591)
Co-authored-by: Bill Wallace <wayfarer3130@gmail.com>
This commit is contained in:
1 parent
5dafac7c92
commit
4c6ff873e8
83 files changed
+1309
-1123
No files matched your search
@@ -19,22 +19,24 @@ const reuseCachedLayout = (
|
||||
hangingProtocolService: HangingProtocolService,
|
||||
syncService: StateSyncService
|
||||
): ReturnType => {
|
||||
const { activeViewportIndex, viewports, layout } = state;
|
||||
const { activeViewportId } = state;
|
||||
const { protocol } = hangingProtocolService.getActiveProtocol();
|
||||
const hpInfo = hangingProtocolService.getState();
|
||||
const { protocolId, stageIndex, activeStudyUID } = hpInfo;
|
||||
const { protocol } = hangingProtocolService.getActiveProtocol();
|
||||
|
||||
const syncState = syncService.getState();
|
||||
const viewportGridStore = { ...syncState.viewportGridStore };
|
||||
const displaySetSelectorMap = { ...syncState.displaySetSelectorMap };
|
||||
|
||||
const stage = protocol.stages[stageIndex];
|
||||
const storeId = `${activeStudyUID}:${protocolId}:${stageIndex}`;
|
||||
const syncState = syncService.getState();
|
||||
const cacheId = `${activeStudyUID}:${protocolId}`;
|
||||
const viewportGridStore = { ...syncState.viewportGridStore };
|
||||
const hangingProtocolStageIndexMap = {
|
||||
...syncState.hangingProtocolStageIndexMap,
|
||||
};
|
||||
const displaySetSelectorMap = { ...syncState.displaySetSelectorMap };
|
||||
const { rows, columns } = stage.viewportStructure.properties;
|
||||
const custom =
|
||||
stage.viewports.length !== state.viewports.length ||
|
||||
stage.viewports.length !== state.viewports.size ||
|
||||
state.layout.numRows !== rows ||
|
||||
state.layout.numCols !== columns;
|
||||
|
||||
@@ -44,18 +46,17 @@ const reuseCachedLayout = (
|
||||
viewportGridStore[storeId] = { ...state };
|
||||
}
|
||||
|
||||
for (let idx = 0; idx < state.viewports.length; idx++) {
|
||||
const viewport = state.viewports[idx];
|
||||
state.viewports.forEach((viewport, viewportId) => {
|
||||
const { displaySetOptions, displaySetInstanceUIDs } = viewport;
|
||||
if (!displaySetOptions) {
|
||||
continue;
|
||||
return;
|
||||
}
|
||||
for (let i = 0; i < displaySetOptions.length; i++) {
|
||||
const displaySetUID = displaySetInstanceUIDs[i];
|
||||
if (!displaySetUID) {
|
||||
continue;
|
||||
}
|
||||
if (idx === activeViewportIndex && i === 0) {
|
||||
if (viewportId === activeViewportId && i === 0) {
|
||||
displaySetSelectorMap[
|
||||
`${activeStudyUID}:activeDisplaySet:0`
|
||||
] = displaySetUID;
|
||||
@@ -67,7 +68,7 @@ const reuseCachedLayout = (
|
||||
] = displaySetUID;
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
return {
|
||||
hangingProtocolStageIndexMap,
|
||||
|
||||
Reference in new issue
Block a user