efl/src/lib/evas/canvas/efl_event_pointer.eo

146 lines
3.8 KiB
Plaintext
Raw Normal View History

import efl_orientation;
import efl_event_types;
class Efl.Event.Pointer (Efl.Object, Efl.Event, Efl.Input.State, Efl.Event.Input)
{
[[Event data carried over with any pointer event (mouse, touch, ...)
@since 1.18
]]
methods {
@property action {
[[The action represented by this event.]]
values {
act: Efl.Pointer.Action;
}
}
@property button {
[[The mouse button that triggered the event.]]
values {
but: int; [[1 to 32, 0 if not a button event.]]
}
}
@property button_pressed {
[[Whether a mouse button is pressed at the moment of the event.]]
keys {
button: int;
}
values {
pressed: bool;
}
}
@property position {
[[Position where the event happened, relative to the window.]]
values {
x: int;
y: int;
}
}
@property position_precise {
[[Position where the event happened, with subpixel precision
Note: Same value as @.position, relative to the window.
]]
values {
x: double;
y: double;
}
}
@property previous_position {
[[Position of the previous event, valid for move events.
Relative to the window. May be equal to @.position.
]]
values {
x: int;
y: int;
}
}
@property previous_position_precise {
[[Position of the previous event, with subpixel precision.
Valid for move events, may not be valid for other events.
Relative to the window. May be equal to @.position_precise.
]]
values {
x: double;
y: double;
}
}
@property finger {
[[Finger ID in case of a multi touch event.]]
values {
id: int;
}
}
@property touch {
[[Touch information about a specific finger or pointer.]]
values {
radius: double;
rad_x: double;
rad_y: double;
pressure: double;
angle: double;
}
}
@property source {
[[The object where this event first originated, in case of
propagation or repetition of the event.
]]
values {
src: Efl.Object; [[Source object: $Efl.Gfx]]
}
}
@property button_flags {
[[Double or triple click information.]]
values {
flags: Efl.Pointer.Flags;
}
}
@property double_click {
[[$true if @.button_flags indicates a double click (2nd press).
This is just a helper function around @.button_flags.
]]
values {
val: bool;
}
}
@property triple_click {
[[$true if @.button_flags indicates a triple click (3rd press).
This is just a helper function around @.button_flags.
]]
values {
val: bool;
}
}
@property wheel_direction {
values {
dir: Efl.Orient; [[Horizontal or Vertical only.]]
}
}
@property wheel_distance {
values {
dist: int;
}
}
}
implements {
Efl.Object.constructor;
class.destructor;
Efl.Event.instance_get;
Efl.Event.reset;
Efl.Event.dup;
Efl.Event.timestamp.set;
Efl.Event.timestamp.get;
Efl.Event.Input.fake.get;
Efl.Event.Input.event_flags.set;
Efl.Event.Input.event_flags.get;
Efl.Event.Input.device.set;
Efl.Event.Input.device.get;
Efl.Input.State.modifier_enabled.get;
Efl.Input.State.lock_enabled.get;
}
}