pointerEvent method

  1. @override
void pointerEvent(
  1. PointerEvent event,
  2. HitTestEntry<HitTestTarget> entry
)
override

Handle a pointer event.

Implementation

@override
void pointerEvent(PointerEvent event, HitTestEntry<HitTestTarget> entry) {
  final stateMachine = _stateMachine;
  final artboard = _artboard;
  if (stateMachine == null || artboard == null) return;

  final position = localToArtboard(
    position: event.localPosition,
    artboardBounds: artboard.bounds,
    fit: fit,
    alignment: alignment,
    size: _lastSize,
    scaleFactor: layoutScaleFactor,
  );

  if (event is PointerDownEvent) {
    stateMachine.pointerDown(position, pointerId: event.pointer);
  } else if (event is PointerUpEvent) {
    stateMachine.pointerUp(position, pointerId: event.pointer);
  } else if (event is PointerMoveEvent) {
    stateMachine.pointerMove(position, pointerId: event.pointer);
  } else if (event is PointerHoverEvent) {
    stateMachine.pointerMove(position, pointerId: event.pointer);
  } else if (event is PointerExitEvent) {
    stateMachine.pointerExit(position, pointerId: event.pointer);
  }
}