Class PointerEventAbstract

A pointer TricklingEvent.

Has a focus type decided by the child classes and does not need focus.

Hierarchy (view full)

Constructors

Properties

alt: boolean

Is alt being pressed?

ctrl: boolean

Is control being pressed?

focusType: null | FocusType

The focus type of this event. Can be null.

If null, this event cannot be focused, since events are focused by their FocusType as a group.

needsFocus

Can this event be dispatched without a target?

propagation: Trickling

Which event propagation model is this event type using?

reversed: boolean

Is this event dispatched in reverse-order?

shift: boolean

Is shift being pressed?

source: null | readonly [PointerDriver, number]

The source of this event. If null, this is an anonymous source, such as a virtual pointer. Not useful on its own, but is useful when passed along in feedback events; for example, in a feedback event that is dispatched whenever a button is hovered, the pointer event source could be used to provide haptic feedback, since the user knows which "real" pointer source each pointerID is mapped to.

target: null | Widget

The target of this event. Can be null

type: string

The type of this event instance. Compare this against the static WidgetEvent."type" in the class or a known string value. Comparing this value and doing an instanceof check must be equivalent.

userCapturable

Is this event capturable by user event handlers?

Note that if the event does not propagate, capturing the event still has an effect; events are handled in the order for which the handlers were added, meaning that if a handler captures the event, the other handlers won't be called.

x: number

Pointer event position's X coordinate in pixels. Not an integer.

y: number

Pointer event position's Y coordinate in pixels. Not an integer.

type: string

The type of this event class. Each event type should be unique, and have a unique class.

Due to Typescript limitations, no compile error is thrown when this static field is not set at a sub-class. Despite this, the type must be set to a unique string value.

Methods

  • Check if the type of this event instance matches the type of a given event class, asserting that the instance is of the class' type.

    Type Parameters

    Parameters

    • clazz: (new (...args: any[]) => E)
        • new (...args): E
        • Parameters

          • Rest...args: any[]

          Returns E

    Returns this is E