ability to "untrack" a series from thumbnail list

This commit is contained in:
dannyrb 2020-06-07 12:31:18 -04:00
parent ffbf7b4a76
commit 3b7560a282
3 changed files with 18 additions and 9 deletions

View File

@ -129,18 +129,20 @@ const defaultOptions = {
trackedSeries: [...ctx.trackedSeries, evt.data.SeriesInstanceUID], trackedSeries: [...ctx.trackedSeries, evt.data.SeriesInstanceUID],
})), })),
removeTrackedSeries: assign((ctx, evt) => ({ removeTrackedSeries: assign((ctx, evt) => ({
trackedSeries: [ trackedSeries: ctx.trackedSeries
...ctx.trackedSeries(ser => ser !== evt.SeriesInstanceUID), .slice()
], .filter(ser => ser !== evt.SeriesInstanceUID),
})), })),
}, },
guards: { guards: {
promptAccepted: (ctx, evt) => evt.data && evt.data.userResponse === 1, promptAccepted: (ctx, evt) => evt.data && evt.data.userResponse === 1,
promptCanceled: (ctx, evt) => evt.data && evt.data.userResponse === 0, promptCanceled: (ctx, evt) => evt.data && evt.data.userResponse === 0,
promptDeclined: (ctx, evt) => evt.data && evt.data.userResponse === -1, promptDeclined: (ctx, evt) => evt.data && evt.data.userResponse === -1,
// Has more than 1, or SeriesInstanceUID is not in list
// --> Post removal would have non-empty trackedSeries array
hasRemainingTrackedSeries: (ctx, evt) => hasRemainingTrackedSeries: (ctx, evt) =>
ctx.trackedSeries.length === 1 && ctx.trackedSeries.length > 1 ||
ctx.trackedSeries.includes(evt.SeriesInstanceUID), !ctx.trackedSeries.includes(evt.SeriesInstanceUID),
isNewStudy: (ctx, evt) => ctx.trackedStudy !== evt.StudyInstanceUID, isNewStudy: (ctx, evt) => ctx.trackedStudy !== evt.StudyInstanceUID,
isNewSeries: (ctx, evt) => isNewSeries: (ctx, evt) =>
!ctx.trackedSeries.includes(evt.SeriesInstanceUID), !ctx.trackedSeries.includes(evt.SeriesInstanceUID),

View File

@ -211,9 +211,16 @@ function PanelStudyBrowserTracking({
onClickTab={clickedTabName => { onClickTab={clickedTabName => {
setActiveTabName(clickedTabName); setActiveTabName(clickedTabName);
}} }}
onClickUntrack={displaySetInstanceUID => onClickUntrack={displaySetInstanceUID => {
console.log(displaySetInstanceUID) const displaySet = DisplaySetService.getDisplaySetByUID(
} displaySetInstanceUID
);
// TODO: shift this somewhere else where we're centralizing this logic?
// Potentially a helper from displaySetInstanceUID to this
sendTrackedMeasurementsEvent('UNTRACK_SERIES', {
SeriesInstanceUID: displaySet.SeriesInstanceUID,
});
}}
/> />
); );
} }

View File

@ -104,7 +104,7 @@ function TrackedCornerstoneViewport({
// ); // );
// TODO: This display contains the meta for all instances. // TODO: This display contains the meta for all instances.
// That can't be right... // That can't be right...
console.log('DISPLAYSET', displaySet); // console.log('DISPLAYSET', displaySet);
// const seriesMeta = DicomMetadataStore.getSeries(this.props.displaySet.StudyInstanceUID, ''); // const seriesMeta = DicomMetadataStore.getSeries(this.props.displaySet.StudyInstanceUID, '');
// console.log(seriesMeta); // console.log(seriesMeta);