All files / packages/tools/src/eventListeners/mouse mouseDoubleClickListener.ts

0% Statements 0/8
100% Branches 0/0
0% Functions 0/1
0% Lines 0/6

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                                                                                   
import { getEnabledElement, triggerEvent } from '@cornerstonejs/core';
import Events from '../../enums/Events';
import getMouseEventPoints from './getMouseEventPoints';
import { EventTypes, IPoints } from '../../types';
 
/**
 * Captures and normalizes the double click event. Emits as a cornerstoneTools3D
 * double click event.
 *
 * @param evt - The mouse event.
 */
function mouseDoubleClickListener(evt: MouseEvent): void {
  const element = <HTMLDivElement>evt.currentTarget;
 
  const { viewportId, renderingEngineId } = getEnabledElement(element);
 
  const startPoints = getMouseEventPoints(evt, element);
  const deltaPoints: IPoints = {
    page: [0, 0],
    client: [0, 0],
    canvas: [0, 0],
    world: [0, 0, 0],
  };
 
  const eventDetail: EventTypes.MouseDoubleClickEventDetail = {
    event: evt,
    eventName: Events.MOUSE_DOUBLE_CLICK,
    viewportId,
    renderingEngineId,
    camera: {},
    element,
    startPoints,
    lastPoints: startPoints,
    currentPoints: startPoints,
    deltaPoints,
  };
 
  triggerEvent(element, Events.MOUSE_DOUBLE_CLICK, eventDetail);
}
 
export default mouseDoubleClickListener;