Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 | 34x 34x 108x 108x 159x 159x 34x 34x | import { eventTarget, EVENTS } from '@cornerstonejs/core'; import { Enums } from '@cornerstonejs/tools'; import { CommandsManager, CustomizationService } from '@ohif/core'; import { findNearbyToolData } from './utils/findNearbyToolData'; const cs3DToolsEvents = Enums.Events; /** * Generates a double click event name, consisting of: * * alt when the alt key is down * * ctrl when the cctrl key is down * * shift when the shift key is down * * 'doubleClick' */ function getDoubleClickEventName(evt: CustomEvent) { const nameArr = []; Iif (evt.detail.event.altKey) { nameArr.push('alt'); } Iif (evt.detail.event.ctrlKey) { nameArr.push('ctrl'); } Iif (evt.detail.event.shiftKey) { nameArr.push('shift'); } nameArr.push('doubleClick'); return nameArr.join(''); } export type initDoubleClickArgs = { customizationService: CustomizationService; commandsManager: CommandsManager; }; function initDoubleClick({ customizationService, commandsManager }: initDoubleClickArgs): void { const cornerstoneViewportHandleDoubleClick = (evt: CustomEvent) => { // Do not allow double click on a tool. const nearbyToolData = findNearbyToolData(commandsManager, evt); Iif (nearbyToolData) { return; } const eventName = getDoubleClickEventName(evt); // Allows for the customization of the double click on a viewport. const customizations = customizationService.getCustomization( 'cornerstoneViewportClickCommands' ); const toRun = customizations[eventName]; Iif (!toRun) { return; } commandsManager.run(toRun); }; function elementEnabledHandler(evt: CustomEvent) { const { element } = evt.detail; element.addEventListener( cs3DToolsEvents.MOUSE_DOUBLE_CLICK, cornerstoneViewportHandleDoubleClick ); } function elementDisabledHandler(evt: CustomEvent) { const { element } = evt.detail; element.removeEventListener( cs3DToolsEvents.MOUSE_DOUBLE_CLICK, cornerstoneViewportHandleDoubleClick ); } eventTarget.addEventListener(EVENTS.ELEMENT_ENABLED, elementEnabledHandler.bind(null)); eventTarget.addEventListener(EVENTS.ELEMENT_DISABLED, elementDisabledHandler.bind(null)); } export default initDoubleClick; |