Class InputEvent
An InputEvent represents a mouse or keyboard or touch event. The principal properties hold information about a particular input event. These properties include the documentPoint at which a mouse event occurred in document coordinates, the corresponding point in view/element coordinates, viewPoint, the key for keyboard events, and the modifiers and button at the time. Additional descriptive properties include clickCount, delta, timestamp, and the source event event (if available).
Many of its properties are provided for convenient access to the state of the input event, such as asking whether the control key was held down at the time, or the targetObject (a GraphObject) that the mouse was over .
When real events fire on the Diagram, InputEvents are created automatically set update the value of Diagram.lastInput. These events set the value of event with the backing browser-defined Event, which may be a MouseEvent, KeyboardEvent, PointerEvent, TouchEvent, and so on.
InputEvents backed by MouseEvents set both button, the button that caused the action, and buttons, the set of buttons currently pressed after the action has happened. By default a user-created InputEvent sets button and buttons as if the event was a left-click.
You can create InputEvents and set the value of Diagram.lastInput in order to simulate user actions in tools. This can be useful for testing. See the Robot extension sample for an example of creating InputEvents to simulate user input.
Constructor Summary Details
Name | Description |
---|---|
InputEvent()
|
The InputEvent class constructor produces an empty InputEvent.More... You should not need to call this constructor. |
Properties Summary Details
Name, Value Type | Description |
---|---|
alt
{boolean}
|
|
button
{number}
|
Gets or sets the numerical value representing the mouse button that caused this event.More... Only one mouse button can cause an event at a time, but the set of all buttons currently pressed is kept in buttons.
This property describes nothing during a Common values for this property:
Other values are possible if the mouse has additional buttons. If there is no associated event, setting this also sets the buttons flags to only this button. This property is valid if this is a mouse event. |
buttons
{number}
|
Gets or sets the set of buttons that are currently being held down.More...
If this is a Common values for this property:
Other values are possible if the mouse has additional buttons. This property is valid if this is a mouse event. |
clickCount
{number}
|
Gets or sets whether this event represents a click or a double-click.More... It is zero if not a click; one if a single-click; two if a double-click. This property is valid if this is a mouse event. |
control
{boolean}
|
|
delta
{number}
|
Gets or sets the amount of change associated with a mouse-wheel rotation.More... It is an abstract number, either positive or negative. This property is valid if this is a mouse-wheel event. |
diagram
{Diagram}
|
Gets the source diagram associated with the event. |
documentPoint
{Point}
|
Gets or sets the point at which this input event occurred, in document coordinates.More... The Point is in document coordinates, the same as the GraphObject.position for Parts in the diagram. This should be valid for mouse events. For keyboard events, this is the last available mouse point. See also:
|
down
{boolean}
1.1
|
Gets or sets whether the InputEvent represents a mouse-down or a key-down event.More... The default value is false. |
event
{Event}
|
|
handled
{boolean}
|
Gets or sets whether an InputEvent that applies to a GraphObject and bubbles up the chain of containing Panels is stopped from continuing up the chain.More... Some event handlers may set this to true to avoid getting any behavior from the containing Panels. The default value is false. |
isMultiTouch
{boolean}
1.5
|
This property is true when the InputEvent is caused by a touch event that registered more than one touch.More... See also:
|
isTouchEvent
{boolean}
1.5
|
This read-only property is true when the InputEvent is caused by a touch event.More... See also:
|
key
{string}
|
Gets or sets the key pressed or released as this event.More... This property is valid if this is a keyboard event. |
left
{boolean}
|
Gets or sets whether the logical left mouse button is being held down.More... This is true if the button was pressed at the time of the event. |
meta
{boolean}
|
|
middle
{boolean}
|
|
modifiers
{number}
|
|
right
{boolean}
|
|
shift
{boolean}
|
|
targetDiagram
{Diagram}
|
Gets or sets the diagram associated with the canvas that the event is currently targeting. |
targetObject
|
Gets or sets the GraphObject that is at the current mouse point, if any.More... For those events that are bubbled up the chain of parent Panels, this property provides access to the original GraphObject where the input event occurred. See also:
|
timestamp
{number}
|
Gets or sets the time at which the event occurred, in milliseconds. |
up
{boolean}
1.1
|
Gets or sets whether the InputEvent represents a mouse-up or a key-up event.More... The default value is false. |
viewPoint
{Point}
|
Gets or sets the point at which this input event occurred.More... The Point is in view coordinates within the viewport, not in document coordinates. This should be valid for mouse events. For keyboard events, this is the last available mouse point. See also:
|
Method Summary Details
Name, Return Type | Description |
---|---|
copy()
|
Make a copy of this InputEvent.
|