ohif-viewer/extensions/default/src/commandsModule.js

63 lines
1.5 KiB
JavaScript
Raw Normal View History

const commandsModule = ({ servicesManager, commandsManager }) => {
const {
MeasurementService,
ViewportGridService,
ToolBarService,
HangingProtocolService,
CineService,
} = servicesManager.services;
const actions = {
clearMeasurements: () => {
MeasurementService.clear();
},
toggleCine: () => {
const { viewports } = ViewportGridService.getState();
const { isCineEnabled } = CineService.getState();
CineService.setIsCineEnabled(!isCineEnabled);
ToolBarService.setButton('Cine', { props: { isActive: !isCineEnabled } });
viewports.forEach((_, index) =>
CineService.setCine({ id: index, isPlaying: false })
);
},
nextStage: () => {
// next stage in hanging protocols
HangingProtocolService.nextProtocolStage();
},
previousStage: () => {
HangingProtocolService.previousProtocolStage();
},
};
const definitions = {
clearMeasurements: {
commandFn: actions.clearMeasurements,
storeContexts: [],
options: {},
},
toggleCine: {
commandFn: actions.toggleCine,
storeContexts: [],
options: {},
},
nextStage: {
commandFn: actions.nextStage,
storeContexts: [],
options: {},
},
previousStage: {
commandFn: actions.previousStage,
storeContexts: [],
options: {},
},
};
return {
actions,
definitions,
defaultContext: 'DEFAULT',
};
};
export default commandsModule;