Use viewportIndex from transition event to set viewportDialog placement

This commit is contained in:
dannyrb 2020-06-07 11:25:11 -04:00
parent 47b068afe4
commit 490eefdae0
2 changed files with 14 additions and 7 deletions

View File

@ -20,7 +20,8 @@ function TrackedMeasurementsContextProvider(
{ children } { children }
) { ) {
function promptUser(message, ctx, evt) { function promptUser(message, ctx, evt) {
const { StudyInstanceUID, SeriesInstanceUID } = evt; console.log('promput user:', evt);
const { viewportIndex, StudyInstanceUID, SeriesInstanceUID } = evt;
// TODO: ... ActiveViewport? Or Study + Series --> Viewport? // TODO: ... ActiveViewport? Or Study + Series --> Viewport?
// Let's just use zero for meow? // Let's just use zero for meow?
return new Promise(function(resolve, reject) { return new Promise(function(resolve, reject) {
@ -31,7 +32,7 @@ function TrackedMeasurementsContextProvider(
}; };
UIViewportDialogService.show({ UIViewportDialogService.show({
viewportIndex: 0, viewportIndex,
type: 'info', type: 'info',
message, message,
actions: [ actions: [

View File

@ -19,12 +19,14 @@ function PanelStudyBrowserTracking({
// doesn't have to have such an intense shape. This works well enough for now. // doesn't have to have such an intense shape. This works well enough for now.
// Tabs --> Studies --> DisplaySets --> Thumbnails // Tabs --> Studies --> DisplaySets --> Thumbnails
const [{ StudyInstanceUIDs }, dispatchImageViewer] = useImageViewer(); const [{ StudyInstanceUIDs }, dispatchImageViewer] = useImageViewer();
const [{ viewports }, dispatchViewportGrid] = useViewportGrid(); const [
{ activeViewportIndex, viewports },
dispatchViewportGrid,
] = useViewportGrid();
const [ const [
trackedMeasurements, trackedMeasurements,
sendTrackedMeasurementsEvent, sendTrackedMeasurementsEvent,
] = useTrackedMeasurements(); ] = useTrackedMeasurements();
console.warn('trackedMeasurementsState: ', trackedMeasurements);
const [activeTabName, setActiveTabName] = useState('primary'); const [activeTabName, setActiveTabName] = useState('primary');
const [expandedStudyInstanceUIDs, setExpandedStudyInstanceUIDs] = useState( const [expandedStudyInstanceUIDs, setExpandedStudyInstanceUIDs] = useState(
[] []
@ -44,6 +46,7 @@ function PanelStudyBrowserTracking({
} = measurement; } = measurement;
sendTrackedMeasurementsEvent('TRACK_SERIES', { sendTrackedMeasurementsEvent('TRACK_SERIES', {
viewportIndex: activeViewportIndex,
StudyInstanceUID, StudyInstanceUID,
SeriesInstanceUID, SeriesInstanceUID,
}); });
@ -54,7 +57,7 @@ function PanelStudyBrowserTracking({
); );
return unsubscribe; return unsubscribe;
}, [MeasurementService, sendTrackedMeasurementsEvent]); }, [MeasurementService, activeViewportIndex, sendTrackedMeasurementsEvent]);
const { trackedStudy, trackedSeries } = trackedMeasurements.context; const { trackedStudy, trackedSeries } = trackedMeasurements.context;
@ -188,8 +191,11 @@ function PanelStudyBrowserTracking({
StudyInstanceUID StudyInstanceUID
); );
const updatedExpandedStudyInstanceUIDs = shouldCollapseStudy const updatedExpandedStudyInstanceUIDs = shouldCollapseStudy
// eslint-disable-next-line prettier/prettier ? [
? [...expandedStudyInstanceUIDs.filter(stdyUid => stdyUid !== StudyInstanceUID)] ...expandedStudyInstanceUIDs.filter(
stdyUid => stdyUid !== StudyInstanceUID
),
]
: [...expandedStudyInstanceUIDs, StudyInstanceUID]; : [...expandedStudyInstanceUIDs, StudyInstanceUID];
setExpandedStudyInstanceUIDs(updatedExpandedStudyInstanceUIDs); setExpandedStudyInstanceUIDs(updatedExpandedStudyInstanceUIDs);