2019-03-08 06:55:43 -08:00
|
|
|
enum @beta Efl.Pointer.Action
|
2016-04-28 22:24:14 -07:00
|
|
|
{
|
2016-08-25 03:20:10 -07:00
|
|
|
[[Pointer event type. Represents which kind of event this is.
|
2016-04-28 22:24:14 -07:00
|
|
|
|
2016-08-25 03:20:10 -07:00
|
|
|
@since 1.19
|
2016-04-28 22:24:14 -07:00
|
|
|
]]
|
2016-08-30 23:41:12 -07:00
|
|
|
none, [[Not a valid event, or nothing new happened (eg. when querying
|
|
|
|
current state of touch points).]]
|
2016-05-11 04:13:19 -07:00
|
|
|
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.]]
|
2016-06-16 19:32:25 -07:00
|
|
|
axis, [[Axis event (pen, stick, ...).]]
|
2016-04-28 22:24:14 -07:00
|
|
|
}
|
|
|
|
|
2019-03-08 06:55:43 -08:00
|
|
|
enum @beta Efl.Pointer.Flags
|
2016-04-28 22:24:14 -07:00
|
|
|
{
|
2016-08-25 03:20:10 -07:00
|
|
|
[[Pointer flags indicating whether a double or triple click is under way.
|
|
|
|
|
|
|
|
@since 1.19
|
|
|
|
]]
|
2016-04-28 22:24:14 -07:00
|
|
|
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]]
|
|
|
|
}
|
|
|
|
|
efl: ensure legacy is only relying on stable types
Summary:
This commit changes the beta ness of a few types, those types are
looking quite stable. Edje types will likely not change. The
Efl.Gfx.Join types are actaully already stable since the last release,
since evas_vg was stable back then and those enums have been in there.
The elementary stuff looks a bit unthought, and we have the chance to
change the API in the backend, so maybe we want to not declare it
stable, but rather reintroduce the legacy types.
With this we can enable eolian generation of beta tags for types.
ref T7726
Depends on D8276
Reviewers: cedric, segfaultxavi, zmike, stefan_schmidt, q66
Reviewed By: segfaultxavi, q66
Subscribers: #reviewers, #committers
Tags: #efl
Maniphest Tasks: T7726
Differential Revision: https://phab.enlightenment.org/D8277
2019-03-09 07:36:21 -08:00
|
|
|
enum Efl.Input.Flags
|
2016-04-28 22:24:14 -07:00
|
|
|
{
|
2016-08-25 03:20:10 -07:00
|
|
|
[[Special flags set during an input event propagation.
|
|
|
|
|
|
|
|
@since 1.19
|
|
|
|
]]
|
2016-04-28 22:24:14 -07:00
|
|
|
none = 0, [[No fancy flags set]]
|
2016-06-09 21:10:22 -07:00
|
|
|
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.]]
|
2016-04-28 22:24:14 -07:00
|
|
|
}
|
2016-06-16 19:32:25 -07:00
|
|
|
|
efl: ensure legacy is only relying on stable types
Summary:
This commit changes the beta ness of a few types, those types are
looking quite stable. Edje types will likely not change. The
Efl.Gfx.Join types are actaully already stable since the last release,
since evas_vg was stable back then and those enums have been in there.
The elementary stuff looks a bit unthought, and we have the chance to
change the API in the backend, so maybe we want to not declare it
stable, but rather reintroduce the legacy types.
With this we can enable eolian generation of beta tags for types.
ref T7726
Depends on D8276
Reviewers: cedric, segfaultxavi, zmike, stefan_schmidt, q66
Reviewed By: segfaultxavi, q66
Subscribers: #reviewers, #committers
Tags: #efl
Maniphest Tasks: T7726
Differential Revision: https://phab.enlightenment.org/D8277
2019-03-09 07:36:21 -08:00
|
|
|
enum Efl.Input.Object_Pointer_Mode {
|
2016-06-16 19:32:25 -07:00
|
|
|
[[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.
|
2016-08-25 03:20:10 -07:00
|
|
|
|
|
|
|
@since 1.19
|
2016-06-16 19:32:25 -07:00
|
|
|
]]
|
|
|
|
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
|
|
|
|
]]
|
|
|
|
}
|
2016-08-23 02:12:10 -07:00
|
|
|
|
2019-03-08 06:55:43 -08:00
|
|
|
enum @beta Efl.Input.Value {
|
2016-08-23 02:12:10 -07:00
|
|
|
[[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.]]
|
|
|
|
tool, [[ID of the finger or tool (eg. pen) that triggered this event.
|
|
|
|
Prefer the property $tool to read this value. Default: 0.]]
|
|
|
|
x, [[Absolute X position where this event occurred, in pixels.
|
2016-09-01 02:34:10 -07:00
|
|
|
Relative to the window. Default: last known position.
|
|
|
|
This value may be smoothed out or even extrapolated by EFL.]]
|
2016-08-23 02:12:10 -07:00
|
|
|
y, [[Absolute Y position where this event occurred, in pixels.
|
2016-09-01 02:34:10 -07:00
|
|
|
Relative to the window. Default: last known position.
|
|
|
|
This value may be smoothed out or even extrapolated by EFL.]]
|
2016-08-23 02:12:10 -07:00
|
|
|
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.]]
|
2016-09-01 02:34:10 -07:00
|
|
|
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).]]
|
2016-08-23 02:12:10 -07:00
|
|
|
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.]]
|
2017-08-09 04:59:30 -07:00
|
|
|
wheel_horizontal, [[Direction of the wheel (horizontal = 1 or vertical = 0).
|
|
|
|
Default: 0. Prefer the property $wheel_horizontal to read.]]
|
2016-08-23 02:12:10 -07:00
|
|
|
slider, [[Current position of the slider on the tool. Range: [-1, 1].
|
|
|
|
Default: 0.]]
|
|
|
|
}
|
2017-05-15 19:16:28 -07:00
|
|
|
|
|
|
|
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]]
|
|
|
|
}
|