efl/src/lib/efl/interfaces/efl_input_types.eot

179 lines
8.3 KiB
Plaintext

enum @beta 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 @beta 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 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.]]
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.
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]]
}