forked from enlightenment/efl
179 lines
8.3 KiB
Plaintext
179 lines
8.3 KiB
Plaintext
enum Efl.Pointer.Action
|
|
{
|
|
[[Pointer event type. Represents which kind of event this is.
|
|
|
|
@since 1.19
|
|
]]
|
|
none, [[Not a valid event, or nothing new happened (eg. when querying
|
|
current state of touch points).]]
|
|
move, [[Mouse or equivalent pointer moved.]]
|
|
down, [[Mouse button or equivalent pointer pressed down.
|
|
Always followed by up or cancel.]]
|
|
up, [[Mouse button or equivalent pointer released. See also cancel.]]
|
|
cancel, [[Special event happening after a down if the up counterpart
|
|
can not happen (eg. another window forcibly stole the focus).]]
|
|
in, [[Mouse or pointer entered the object.]]
|
|
out, [[Mouse or pointer exited the object.]]
|
|
wheel, [[Mouse wheel scroll, horizontally or vertically.]]
|
|
axis, [[Axis event (pen, stick, ...).]]
|
|
}
|
|
|
|
enum Efl.Pointer.Flags
|
|
{
|
|
[[Pointer flags indicating whether a double or triple click is under way.
|
|
|
|
@since 1.19
|
|
]]
|
|
none = 0, [[No extra mouse button data]]
|
|
double_click = (1 << 0), [[This mouse button press was the 2nd press of a double click]]
|
|
triple_click = (1 << 1), [[This mouse button press was the 3rd press of a triple click]]
|
|
}
|
|
|
|
enum Efl.Input.Flags
|
|
{
|
|
[[Special flags set during an input event propagation.
|
|
|
|
@since 1.19
|
|
]]
|
|
none = 0, [[No fancy flags set]]
|
|
processed = (1 << 0), [[This event is being delivered and has been processed,
|
|
so it should be put "on hold" until the flag is unset.
|
|
The event should be used for informational purposes
|
|
and maybe some indications visually, but not
|
|
actually perform anything.]]
|
|
scrolling = (1 << 1), [[This event flag indicates the event occurs while
|
|
scrolling; for example, DOWN event occurs during
|
|
scrolling. The event should be used for informational
|
|
purposes and maybe some indications visually, but not
|
|
actually perform anything.]]
|
|
}
|
|
|
|
enum @beta Efl.Input.Object_Pointer_Mode {
|
|
[[How the mouse pointer should be handled by EFL.
|
|
|
|
In the mode $autograb, when a mouse button is pressed down over an
|
|
object and held down, with the mouse pointer being moved outside of it,
|
|
the pointer still behaves as being bound to that object, albeit out
|
|
of its drawing region. When the button is released, the event will
|
|
be fed to the object, that may check if the final position is over it
|
|
or not and do something about it.
|
|
|
|
In the mode $nograb, the pointer will always be bound to the object
|
|
right below it.
|
|
|
|
@since 1.19
|
|
]]
|
|
auto_grab, [[Default, X11-like.]]
|
|
no_grab, [[Pointer always bound to the object right below it.]]
|
|
no_grab_no_repeat_updown [[Useful on object with "repeat events" enabled,
|
|
where mouse/touch up and down events WON'T be
|
|
repeated to objects and these objects wont be
|
|
auto-grabbed.
|
|
|
|
@since 1.2
|
|
]]
|
|
}
|
|
|
|
enum @beta Efl.Input.Value {
|
|
[[Keys for the generic values of all events.
|
|
|
|
@since 1.19
|
|
]]
|
|
none, [[Not a valid value type.]]
|
|
timestamp, [[Timestamp of this event in seconds.]]
|
|
button, [[ID of the button that triggered this event (unsigned int).
|
|
Prefer the method $button to read this value. Default: 0.]]
|
|
buttons_pressed, [[32-bit bit mask (unsigned int). Prefer the
|
|
method $buttons_pressed to read this value. Default: 0.]]
|
|
touch_id, [[ID of the finger or tool (eg. pen) that triggered this event.
|
|
Prefer the property $touch_id to read this value. Default: 0.]]
|
|
x, [[Absolute X position where this event occurred, in pixels.
|
|
Relative to the window. Default: last known position.
|
|
This value may be smoothed out or even extrapolated by EFL.]]
|
|
y, [[Absolute Y position where this event occurred, in pixels.
|
|
Relative to the window. Default: last known position.
|
|
This value may be smoothed out or even extrapolated by EFL.]]
|
|
dx, [[Relative X movement, in pixels. Range: unbounded. Default: 0.]]
|
|
dy, [[Relative Y movement, in pixels. Range: unbounded. Default: 0.]]
|
|
previous_x, [[Previous X position of the pointer, in pixels.
|
|
Default: last known position, may be equal to x.]]
|
|
previous_y, [[Previous Y position of the pointer, in pixels.
|
|
Default: last known position, may be equal to y.]]
|
|
raw_x, [[Absolute X position where this event occurred. Default: 0.
|
|
This value will be set from the hardware input without any
|
|
smoothing or extrapolation. For an axis input event, this is
|
|
the raw value set by the driver (undefined range and unit).]]
|
|
raw_y, [[Absolute X position where this event occurred. Default: 0.
|
|
This value will be set from the hardware input without any
|
|
smoothing or extrapolation. For an axis input event, this is
|
|
the raw value set by the driver (undefined range and unit).]]
|
|
radius, [[Average radius of the pressed area under a finger or tool,
|
|
in pixels. Default is 1.]]
|
|
radius_x, [[Spread over X of the pressed area under a finger or tool,
|
|
in pixels. Default is 1.]]
|
|
radius_y, [[Spread over Y of the pressed area under a finger or tool,
|
|
in pixels. Default is 1.]]
|
|
pressure, [[Pressure applied to the button, touch or pen tip.
|
|
Range: [0, 1]. Default is 1.]]
|
|
distance, [[Relative distance along physical Z axis. Range: [0, 1].
|
|
Default is 0.]]
|
|
azimuth, [[Angle of tool about the Z axis from positive X axis.
|
|
Range: [-PI, PI]. Unit: Radians.]]
|
|
tilt, [[Angle of tool about plane of sensor from positive Z axis.
|
|
Range: [0.0, PI]. Unit: Radians.]]
|
|
tilt_x, [[Current tilt along the X axis of the tablet's current logical
|
|
orientation, in radians off the tablet's Z axis.
|
|
Range: [-PI, PI]. Unit: Radians.]]
|
|
tilt_y, [[Current tilt along the Y axis of the tablet's current logical
|
|
orientation, in radians off the tablet's Z axis.
|
|
Range: [-PI, PI]. Unit: Radians.]]
|
|
twist, [[Rotation of tool about its major axis from its "natural"
|
|
position. Range: [-PI, PI] Unit: Radians.]]
|
|
wheel_delta, [[Delta movement of the wheel in discrete steps (int).
|
|
Default: 0.]]
|
|
wheel_angle, [[Delta movement of the wheel in radians. Default: 0.]]
|
|
wheel_horizontal, [[Direction of the wheel (horizontal = 1 or vertical = 0).
|
|
Default: 0. Prefer the property $wheel_horizontal to read.]]
|
|
slider, [[Current position of the slider on the tool. Range: [-1, 1].
|
|
Default: 0.]]
|
|
}
|
|
|
|
enum Efl.Input.Modifier {
|
|
[[Key modifiers such as Control, Alt, etc...
|
|
|
|
This enum may be used as a bitmask with OR operations, depending on the
|
|
API.
|
|
|
|
The available keys may vary depending on the physical keyboard layout, or
|
|
language and keyboard settings, or depending on the platform.
|
|
|
|
@since 1.20
|
|
]]
|
|
none = 0, [[No key modifier]]
|
|
alt = 1 << 0, [[Alt key modifier]]
|
|
control = 1 << 1, [[Control key modifier ("Ctrl" key)]]
|
|
shift = 1 << 2, [[Shift key modifier]]
|
|
meta = 1 << 3, [[Meta key modifier (often the "Windows" key)]]
|
|
altgr = 1 << 4, [[AltGr key modifier (not present on all keyboards)]]
|
|
hyper = 1 << 5, [[Hyper key modifier (may be "Windows" key)]]
|
|
super = 1 << 6, [[Super key modifier (may be "Windows" key)]]
|
|
}
|
|
|
|
enum Efl.Input.Lock {
|
|
[[Key locks such as Num Lock, Scroll Lock and Caps Lock.
|
|
|
|
This enum may be used as a bitmask with OR operations, depending on the
|
|
API.
|
|
|
|
The available keys may vary depending on the physical keyboard layout, or
|
|
language and keyboard settings, or depending on the platform.
|
|
|
|
@since 1.20
|
|
]]
|
|
none = 0, [[No key modifier]]
|
|
num = 1 << 0, [[Num Lock for numeric key pad use]]
|
|
caps = 1 << 1, [[Caps Lock for writing in all caps]]
|
|
scroll = 1 << 2, [[Scroll Lock]]
|
|
shift = 1 << 3, [[Shift Lock]]
|
|
}
|