Data Structures | Typedefs | Enumerations | Functions
Gesture Layer

Data Structures

struct  _Elm_Gesture_Taps_Info
 Struct holds taps info for user. More...
 
struct  _Elm_Gesture_Momentum_Info
 Struct holds momentum info for user x1 and y1 are not necessarily in sync x1 holds x value of x direction starting point and same holds for y1. More...
 
struct  _Elm_Gesture_Line_Info
 Struct holds line info for user. More...
 
struct  _Elm_Gesture_Zoom_Info
 Struct holds zoom info for user. More...
 
struct  _Elm_Gesture_Rotate_Info
 Struct holds rotation info for user. More...
 

Typedefs

typedef struct _Elm_Gesture_Taps_Info Elm_Gesture_Taps_Info
 Holds taps info for user.
 
typedef struct _Elm_Gesture_Momentum_Info Elm_Gesture_Momentum_Info
 holds momentum info for user
 
typedef struct _Elm_Gesture_Line_Info Elm_Gesture_Line_Info
 Holds line info for user.
 
typedef struct _Elm_Gesture_Zoom_Info Elm_Gesture_Zoom_Info
 Holds zoom info for user.
 
typedef struct _Elm_Gesture_Rotate_Info Elm_Gesture_Rotate_Info
 Holds rotation info for user.
 
typedef Evas_Event_Flags(* Elm_Gesture_Event_Cb) (void *data, void *event_info)
 User callback used to stream gesture info from gesture layer. More...
 

Enumerations

enum  Elm_Gesture_Type { ,
  ELM_GESTURE_N_TAPS,
  ELM_GESTURE_N_LONG_TAPS,
  ELM_GESTURE_N_DOUBLE_TAPS,
  ELM_GESTURE_N_TRIPLE_TAPS,
  ELM_GESTURE_MOMENTUM,
  ELM_GESTURE_N_LINES,
  ELM_GESTURE_N_FLICKS,
  ELM_GESTURE_ZOOM,
  ELM_GESTURE_ROTATE
}
 Enum of supported gesture types. More...
 
enum  Elm_Gesture_State {
  ELM_GESTURE_STATE_UNDEFINED = -1,
  ELM_GESTURE_STATE_START,
  ELM_GESTURE_STATE_MOVE,
  ELM_GESTURE_STATE_END,
  ELM_GESTURE_STATE_ABORT
}
 Enum of gesture states. More...
 

Functions

double elm_config_glayer_long_tap_start_timeout_get (void)
 Get the duration for occurring long tap event of gesture layer. More...
 
void elm_config_glayer_long_tap_start_timeout_set (double long_tap_timeout)
 Set the duration for occurring long tap event of gesture layer. More...
 
double elm_config_glayer_double_tap_timeout_get (void)
 Get the duration for occurring double tap event of gesture layer. More...
 
void elm_config_glayer_double_tap_timeout_set (double double_tap_timeout)
 Set the duration for occurring double tap event of gesture layer. More...
 
EOAPI void elm_obj_gesture_layer_zoom_step_set (double step)
 This function sets step-value for zoom action. More...
 
EOAPI double elm_obj_gesture_layer_zoom_step_get (void)
 This function returns step-value for zoom action. More...
 
EOAPI void elm_obj_gesture_layer_tap_finger_size_set (Evas_Coord sz)
 This function sets the gesture layer finger-size for taps If not set, this size taken from elm_config. More...
 
EOAPI Evas_Coord elm_obj_gesture_layer_tap_finger_size_get (void)
 This function returns the gesture layer finger-size for taps. More...
 
EOAPI void elm_obj_gesture_layer_hold_events_set (Eina_Bool hold_events)
 This function is to make gesture-layer repeat events. More...
 
EOAPI Eina_Bool elm_obj_gesture_layer_hold_events_get (void)
 Call this function to get repeat-events settings. More...
 
EOAPI void elm_obj_gesture_layer_rotate_step_set (double step)
 This function sets step-value for rotate action. More...
 
EOAPI double elm_obj_gesture_layer_rotate_step_get (void)
 This function returns step-value for rotate action. More...
 
EOAPI void elm_obj_gesture_layer_cb_set (Elm_Gesture_Type idx, Elm_Gesture_State cb_type, Elm_Gesture_Event_Cb cb, void *data)
 Use function to set callbacks to be notified about change of state of gesture. More...
 
EOAPI Eina_Bool elm_obj_gesture_layer_attach (Evas_Object *target)
 Attach a given gesture layer widget to an Evas object, thus setting the widget's target. More...
 
EOAPI void elm_obj_gesture_layer_cb_del (Elm_Gesture_Type idx, Elm_Gesture_State cb_type, Elm_Gesture_Event_Cb cb, void *data)
 Use this function to remove a callback that has been added to be notified about change of state of gesture. More...
 
EOAPI void elm_obj_gesture_layer_cb_add (Elm_Gesture_Type idx, Elm_Gesture_State cb_type, Elm_Gesture_Event_Cb cb, void *data)
 Use function to add callbacks to be notified about change of state of gesture. More...
 
void elm_gesture_layer_zoom_step_set (Elm_Gesture_Layer *obj, double step)
 This function sets step-value for zoom action. More...
 
double elm_gesture_layer_zoom_step_get (const Elm_Gesture_Layer *obj)
 This function returns step-value for zoom action. More...
 
void elm_gesture_layer_tap_finger_size_set (Elm_Gesture_Layer *obj, Evas_Coord sz)
 This function sets the gesture layer finger-size for taps If not set, this size taken from elm_config. More...
 
Evas_Coord elm_gesture_layer_tap_finger_size_get (const Elm_Gesture_Layer *obj)
 This function returns the gesture layer finger-size for taps. More...
 
void elm_gesture_layer_hold_events_set (Elm_Gesture_Layer *obj, Eina_Bool hold_events)
 This function is to make gesture-layer repeat events. More...
 
Eina_Bool elm_gesture_layer_hold_events_get (const Elm_Gesture_Layer *obj)
 Call this function to get repeat-events settings. More...
 
void elm_gesture_layer_rotate_step_set (Elm_Gesture_Layer *obj, double step)
 This function sets step-value for rotate action. More...
 
double elm_gesture_layer_rotate_step_get (const Elm_Gesture_Layer *obj)
 This function returns step-value for rotate action. More...
 
void elm_gesture_layer_cb_set (Elm_Gesture_Layer *obj, Elm_Gesture_Type idx, Elm_Gesture_State cb_type, Elm_Gesture_Event_Cb cb, void *data)
 Use function to set callbacks to be notified about change of state of gesture. More...
 
Eina_Bool elm_gesture_layer_attach (Elm_Gesture_Layer *obj, Evas_Object *target)
 Attach a given gesture layer widget to an Evas object, thus setting the widget's target. More...
 
void elm_gesture_layer_cb_del (Elm_Gesture_Layer *obj, Elm_Gesture_Type idx, Elm_Gesture_State cb_type, Elm_Gesture_Event_Cb cb, void *data)
 Use this function to remove a callback that has been added to be notified about change of state of gesture. More...
 
void elm_gesture_layer_cb_add (Elm_Gesture_Layer *obj, Elm_Gesture_Type idx, Elm_Gesture_State cb_type, Elm_Gesture_Event_Cb cb, void *data)
 Use function to add callbacks to be notified about change of state of gesture. More...
 
void elm_gesture_layer_line_min_length_set (Evas_Object *obj, int line_min_length)
 This function sets the gesture layer line min length of an object. More...
 
int elm_gesture_layer_line_min_length_get (const Evas_Object *obj)
 This function returns the gesture layer line min length of an object. More...
 
void elm_gesture_layer_zoom_distance_tolerance_set (Evas_Object *obj, Evas_Coord zoom_distance_tolerance)
 This function sets the gesture layer zoom distance tolerance of an object. More...
 
Evas_Coord elm_gesture_layer_zoom_distance_tolerance_get (const Evas_Object *obj)
 This function returns the gesture layer zoom distance tolerance of an object. More...
 
void elm_gesture_layer_line_distance_tolerance_set (Evas_Object *obj, Evas_Coord line_distance_tolerance)
 This function sets the gesture layer line distance tolerance of an object. More...
 
Evas_Coord elm_gesture_layer_line_distance_tolerance_get (const Evas_Object *obj)
 This function returns the gesture layer line distance tolerance of an object. More...
 
void elm_gesture_layer_line_angular_tolerance_set (Evas_Object *obj, double line_angular_tolerance)
 This function sets the gesture layer line angular tolerance of an object. More...
 
double elm_gesture_layer_line_angular_tolerance_get (const Evas_Object *obj)
 This function returns the gesture layer line angular tolerance of an object. More...
 
void elm_gesture_layer_zoom_wheel_factor_set (Evas_Object *obj, double zoom_wheel_factor)
 This function sets the gesture layer zoom wheel factor of an object. More...
 
double elm_gesture_layer_zoom_wheel_factor_get (const Evas_Object *obj)
 This function returns the gesture layer zoom wheel factor of an object. More...
 
void elm_gesture_layer_zoom_finger_factor_set (Evas_Object *obj, double zoom_finger_factor)
 This function sets the gesture layer zoom finger factor of an object. More...
 
double elm_gesture_layer_zoom_finger_factor_get (const Evas_Object *obj)
 This function returns the gesture layer zoom finger factor of an object. More...
 
void elm_gesture_layer_rotate_angular_tolerance_set (Evas_Object *obj, double rotate_angular_tolerance)
 This function sets the gesture layer rotate angular tolerance of an object. More...
 
double elm_gesture_layer_rotate_angular_tolerance_get (const Evas_Object *obj)
 This function returns the gesture layer rotate angular tolerance of an object. More...
 
void elm_gesture_layer_flick_time_limit_ms_set (Evas_Object *obj, unsigned int flick_time_limit_ms)
 This function sets the gesture layer flick time limit (in ms) of an object. More...
 
unsigned int elm_gesture_layer_flick_time_limit_ms_get (const Evas_Object *obj)
 This function returns the gesture layer flick time limit (in ms) of an object. More...
 
void elm_gesture_layer_long_tap_start_timeout_set (Evas_Object *obj, double long_tap_start_timeout)
 This function sets the gesture layer long tap start timeout of an object. More...
 
double elm_gesture_layer_long_tap_start_timeout_get (const Evas_Object *obj)
 this function returns the gesture layer long tap start timeout of an object More...
 
void elm_gesture_layer_continues_enable_set (Evas_Object *obj, Eina_Bool continues_enable)
 This function sets the gesture layer continues enable of an object. More...
 
Eina_Bool elm_gesture_layer_continues_enable_get (const Evas_Object *obj)
 This function returns the gesture layer continues enable of an object. More...
 
void elm_gesture_layer_double_tap_timeout_set (Evas_Object *obj, double double_tap_timeout)
 This function sets the gesture layer double tap timeout of an object. More...
 
double elm_gesture_layer_double_tap_timeout_get (const Evas_Object *obj)
 this function returns the gesture layer double tap timeout of an object More...
 
void elm_gesture_layer_tap_finger_size_set (Evas_Object *obj, Evas_Coord sz)
 This function sets the gesture layer finger-size for taps If not set, this size taken from elm_config. More...
 
Evas_Coord elm_gesture_layer_tap_finger_size_get (const Evas_Object *obj)
 This function returns the gesture layer finger-size for taps. More...
 
Evas_Object * elm_gesture_layer_add (Evas_Object *parent)
 Call this function to construct a new gesture-layer object. More...
 
void elm_gesture_layer_tap_longpress_cb_add (Evas_Object *obj, Elm_Gesture_State state, Elm_Gesture_Event_Cb cb, void *data)
 This function adds a callback called during Tap + Long Tap sequence. More...
 
void elm_gesture_layer_tap_longpress_cb_del (Evas_Object *obj, Elm_Gesture_State state, Elm_Gesture_Event_Cb cb, void *data)
 This function removes a callback called during Tap + Long Tap sequence. More...
 

Detailed Description

gesture_layer_inheritance_tree.png

Gesture Layer Usage:

Use Gesture Layer to detect gestures. The advantage is that you don't have to implement gesture detection, just set callbacks of gesture state. By using gesture layer we make standard interface.

In order to use Gesture Layer you start with elm_gesture_layer_add with a parent object parameter. Next 'activate' gesture layer with a elm_gesture_layer_attach call. Usually with same object as target (2nd parameter).

Now you need to tell gesture layer what gestures you follow. This is done with elm_gesture_layer_cb_set call. By setting the callback you actually saying to gesture layer: I would like to know when the gesture Elm_Gesture_Type switches to state Elm_Gesture_State.

Next, you need to implement the actual action that follows the input in your callback.

Note that if you like to stop being reported about a gesture, just set all callbacks referring this gesture to NULL. (again with elm_gesture_layer_cb_set)

The information reported by gesture layer to your callback is depending on Elm_Gesture_Type : Elm_Gesture_Taps_Info is the info reported for tap gestures: ELM_GESTURE_N_TAPS, ELM_GESTURE_N_LONG_TAPS, ELM_GESTURE_N_DOUBLE_TAPS, ELM_GESTURE_N_TRIPLE_TAPS.

Elm_Gesture_Momentum_Info is info reported for momentum gestures: ELM_GESTURE_MOMENTUM.

Elm_Gesture_Line_Info is the info reported for line gestures: (this also contains Elm_Gesture_Momentum_Info internal structure) ELM_GESTURE_N_LINES, ELM_GESTURE_N_FLICKS. Note that we consider a flick as a line-gesture that should be completed in flick-time-limit as defined in Elementary Config.

Elm_Gesture_Zoom_Info is the info reported for ELM_GESTURE_ZOOM gesture.

Elm_Gesture_Rotate_Info is the info reported for ELM_GESTURE_ROTATE gesture.

Gesture Layer Tweaks:

Note that line, flick, gestures can start without the need to remove fingers from surface. When user fingers rests on same-spot gesture is ended and starts again when fingers moved.

Setting glayer_continues_enable to false in Elementary Config will change this behavior so gesture starts when user touches (a *DOWN event) touch-surface and ends when no fingers touches surface (a *UP event).

Supported elm_object common APIs.

Typedef Documentation

typedef Evas_Event_Flags(* Elm_Gesture_Event_Cb) (void *data, void *event_info)

User callback used to stream gesture info from gesture layer.

Parameters
datauser data
event_infogesture report info Returns a flag field to be applied on the causing event. You should probably return EVAS_EVENT_FLAG_ON_HOLD if your widget acted upon the event, in an irreversible way.

Enumeration Type Documentation

Enum of gesture states.

Enumerator
ELM_GESTURE_STATE_UNDEFINED 

Gesture not STARTed.

ELM_GESTURE_STATE_START 

Gesture STARTed.

ELM_GESTURE_STATE_MOVE 

Gesture is ongoing.

ELM_GESTURE_STATE_END 

Gesture completed.

ELM_GESTURE_STATE_ABORT 

Ongoing gesture was ABORTed.

Enum of supported gesture types.

Enumerator
ELM_GESTURE_N_TAPS 

N fingers single taps.

ELM_GESTURE_N_LONG_TAPS 

N fingers single long-taps.

ELM_GESTURE_N_DOUBLE_TAPS 

N fingers double-single taps.

ELM_GESTURE_N_TRIPLE_TAPS 

N fingers triple-single taps.

ELM_GESTURE_MOMENTUM 

Reports momentum in the direction of move.

ELM_GESTURE_N_LINES 

N fingers line gesture.

ELM_GESTURE_N_FLICKS 

N fingers flick gesture.

ELM_GESTURE_ZOOM 

Zoom.

ELM_GESTURE_ROTATE 

Rotate.

Function Documentation

double elm_config_glayer_double_tap_timeout_get ( void  )

Get the duration for occurring double tap event of gesture layer.

Returns
Timeout for double tap event of gesture layer.
Since
1.8
void elm_config_glayer_double_tap_timeout_set ( double  double_tap_timeout)

Set the duration for occurring double tap event of gesture layer.

Parameters
double_tap_timeoutTimeout for double tap event of gesture layer.
Since
1.8
double elm_config_glayer_long_tap_start_timeout_get ( void  )

Get the duration for occurring long tap event of gesture layer.

Returns
Timeout for long tap event of gesture layer.
Since
1.8
void elm_config_glayer_long_tap_start_timeout_set ( double  long_tap_timeout)

Set the duration for occurring long tap event of gesture layer.

Parameters
long_tap_timeoutTimeout for long tap event of gesture layer.
Since
1.8
Evas_Object* elm_gesture_layer_add ( Evas_Object *  parent)

Call this function to construct a new gesture-layer object.

Parameters
parentThe gesture layer's parent widget.
Returns
A new gesture layer object.

This does not activate the gesture layer. You have to call elm_gesture_layer_attach() in order to 'activate' gesture-layer.

Eina_Bool elm_gesture_layer_attach ( Elm_Gesture_Layer *  obj,
Evas_Object *  target 
)

Attach a given gesture layer widget to an Evas object, thus setting the widget's target.

A gesture layer target may be whichever Evas object one chooses. This will be object obj will listen all mouse and key events from, to report the gestures made upon it back.

Returns
EINA_TRUE, on success, EINA_FALSE otherwise.
Parameters
[in]targetObject to attach to obj (target)

References elm_obj_gesture_layer_attach().

void elm_gesture_layer_cb_add ( Elm_Gesture_Layer *  obj,
Elm_Gesture_Type  idx,
Elm_Gesture_State  cb_type,
Elm_Gesture_Event_Cb  cb,
void *  data 
)

Use function to add callbacks to be notified about change of state of gesture.

When a user registers a callback with this function this means this gesture has to be tested.

When ALL callbacks for a gesture are set to NULL it means user isn't interested in gesture-state and it will not be tested.

If a function was already set for this gesture/type/state, it will be replaced by the new one. For ABI compat, callbacks added by elm_gesture_layer_cb_add will be removed. It is recommended to use only one of these functions for a gesture object.

Parameters
[in]idxThe gesture you would like to track its state.
[in]cb_typewhat event this callback tracks: START, MOVE, END, ABORT.
[in]cbcallback function pointer.
[in]datauser info to be sent to callback (usually, Smart Data)

References elm_obj_gesture_layer_cb_add().

Referenced by elm_gesture_layer_tap_longpress_cb_add().

void elm_gesture_layer_cb_del ( Elm_Gesture_Layer *  obj,
Elm_Gesture_Type  idx,
Elm_Gesture_State  cb_type,
Elm_Gesture_Event_Cb  cb,
void *  data 
)

Use this function to remove a callback that has been added to be notified about change of state of gesture.

Parameters
[in]idxThe gesture you would like to track its state.
[in]cb_typewhat event this callback tracks: START, MOVE, END, ABORT.
[in]cbcallback function pointer.
[in]datauser info for the callback (usually, Smart Data)

References elm_obj_gesture_layer_cb_del().

void elm_gesture_layer_cb_set ( Elm_Gesture_Layer *  obj,
Elm_Gesture_Type  idx,
Elm_Gesture_State  cb_type,
Elm_Gesture_Event_Cb  cb,
void *  data 
)

Use function to set callbacks to be notified about change of state of gesture.

When a user registers a callback with this function this means this gesture has to be tested.

When ALL callbacks for a gesture are set to NULL it means user isn't interested in gesture-state and it will not be tested.

Parameters
[in]idxThe gesture you would like to track its state.
[in]cb_typewhat event this callback tracks: START, MOVE, END, ABORT.
[in]cbcallback function pointer.
[in]datauser info to be sent to callback (usually, Smart Data)

References elm_obj_gesture_layer_cb_set().

Eina_Bool elm_gesture_layer_continues_enable_get ( const Evas_Object *  obj)

This function returns the gesture layer continues enable of an object.

Parameters
objgesture-layer.
Returns
continues enable
Since
1.8
void elm_gesture_layer_continues_enable_set ( Evas_Object *  obj,
Eina_Bool  continues_enable 
)

This function sets the gesture layer continues enable of an object.

Parameters
objgesture-layer.
continues_enablecontinues enable
Since
1.8
double elm_gesture_layer_double_tap_timeout_get ( const Evas_Object *  obj)

this function returns the gesture layer double tap timeout of an object

Parameters
objgesture-layer.
Returns
double tap timeout
Since
1.8
void elm_gesture_layer_double_tap_timeout_set ( Evas_Object *  obj,
double  double_tap_timeout 
)

This function sets the gesture layer double tap timeout of an object.

Parameters
objgesture-layer.
double_tap_timeoutdouble tap timeout
Since
1.8
unsigned int elm_gesture_layer_flick_time_limit_ms_get ( const Evas_Object *  obj)

This function returns the gesture layer flick time limit (in ms) of an object.

Parameters
objgesture-layer.
Returns
flick time limit (in ms)
Since
1.8
void elm_gesture_layer_flick_time_limit_ms_set ( Evas_Object *  obj,
unsigned int  flick_time_limit_ms 
)

This function sets the gesture layer flick time limit (in ms) of an object.

Parameters
objgesture-layer.
flick_time_limit_msflick time limit (in ms)
Since
1.8
Eina_Bool elm_gesture_layer_hold_events_get ( const Elm_Gesture_Layer *  obj)

Call this function to get repeat-events settings.

Returns
repeat events settings.
See also
elm_gesture_layer_hold_events_set()

References elm_obj_gesture_layer_hold_events_get().

void elm_gesture_layer_hold_events_set ( Elm_Gesture_Layer *  obj,
Eina_Bool  hold_events 
)

This function is to make gesture-layer repeat events.

Set this if you like to get the raw events only if gestures were not detected. Clear this if you like gesture layer to forward events as testing gestures.

Parameters
[in]hold_eventshold events or not.

References elm_obj_gesture_layer_hold_events_set().

double elm_gesture_layer_line_angular_tolerance_get ( const Evas_Object *  obj)

This function returns the gesture layer line angular tolerance of an object.

Parameters
objgesture-layer.
Returns
line angular tolerance
Since
1.8
void elm_gesture_layer_line_angular_tolerance_set ( Evas_Object *  obj,
double  line_angular_tolerance 
)

This function sets the gesture layer line angular tolerance of an object.

Parameters
objgesture-layer.
line_angular_toleranceline angular tolerance
Since
1.8
Evas_Coord elm_gesture_layer_line_distance_tolerance_get ( const Evas_Object *  obj)

This function returns the gesture layer line distance tolerance of an object.

Parameters
objgesture-layer.
Returns
line distance tolerance
Since
1.8
void elm_gesture_layer_line_distance_tolerance_set ( Evas_Object *  obj,
Evas_Coord  line_distance_tolerance 
)

This function sets the gesture layer line distance tolerance of an object.

Parameters
objgesture-layer.
line_distance_toleranceline distance tolerance
Since
1.8
int elm_gesture_layer_line_min_length_get ( const Evas_Object *  obj)

This function returns the gesture layer line min length of an object.

Parameters
objgesture-layer.
Returns
the length.
Since
1.8
void elm_gesture_layer_line_min_length_set ( Evas_Object *  obj,
int  line_min_length 
)

This function sets the gesture layer line min length of an object.

Parameters
objgesture-layer.
line_min_lengththe length.
Since
1.8
double elm_gesture_layer_long_tap_start_timeout_get ( const Evas_Object *  obj)

this function returns the gesture layer long tap start timeout of an object

Parameters
objgesture-layer.
Returns
long tap start timeout
Since
1.8
void elm_gesture_layer_long_tap_start_timeout_set ( Evas_Object *  obj,
double  long_tap_start_timeout 
)

This function sets the gesture layer long tap start timeout of an object.

Parameters
objgesture-layer.
long_tap_start_timeoutlong tap start timeout
Since
1.8
double elm_gesture_layer_rotate_angular_tolerance_get ( const Evas_Object *  obj)

This function returns the gesture layer rotate angular tolerance of an object.

Parameters
objgesture-layer.
Returns
rotate angular tolerance
Since
1.8
void elm_gesture_layer_rotate_angular_tolerance_set ( Evas_Object *  obj,
double  rotate_angular_tolerance 
)

This function sets the gesture layer rotate angular tolerance of an object.

Parameters
objgesture-layer.
rotate_angular_tolerancerotate angular tolerance
Since
1.8
double elm_gesture_layer_rotate_step_get ( const Elm_Gesture_Layer *  obj)

This function returns step-value for rotate action.

Returns
rotate step value.

References elm_obj_gesture_layer_rotate_step_get().

void elm_gesture_layer_rotate_step_set ( Elm_Gesture_Layer *  obj,
double  step 
)

This function sets step-value for rotate action.

Set step to any positive value. Cancel step setting by setting to 0

Parameters
[in]stepnew rotate step value.

References elm_obj_gesture_layer_rotate_step_set().

Evas_Coord elm_gesture_layer_tap_finger_size_get ( const Elm_Gesture_Layer *  obj)

This function returns the gesture layer finger-size for taps.

Returns
Finger size that is currently used by Gesture Layer for taps.
Since
1.8

References elm_obj_gesture_layer_tap_finger_size_get().

Evas_Coord elm_gesture_layer_tap_finger_size_get ( const Evas_Object *  obj)

This function returns the gesture layer finger-size for taps.

Parameters
objgesture-layer.
Returns
Finger size that is currently used by Gesture Layer for taps.
Since
1.8
void elm_gesture_layer_tap_finger_size_set ( Elm_Gesture_Layer *  obj,
Evas_Coord  sz 
)

This function sets the gesture layer finger-size for taps If not set, this size taken from elm_config.

Set to ZERO if you want GLayer to use system finger size value (default)

Since
1.8
Parameters
[in]szFinger size

References elm_obj_gesture_layer_tap_finger_size_set().

void elm_gesture_layer_tap_finger_size_set ( Evas_Object *  obj,
Evas_Coord  sz 
)

This function sets the gesture layer finger-size for taps If not set, this size taken from elm_config.

Set to ZERO if you want GLayer to use system finger size value (default)

Parameters
objgesture-layer.
szFinger size
Since
1.8
void elm_gesture_layer_tap_longpress_cb_add ( Evas_Object *  obj,
Elm_Gesture_State  state,
Elm_Gesture_Event_Cb  cb,
void *  data 
)

This function adds a callback called during Tap + Long Tap sequence.

Parameters
statestate for the callback to add.
cbcallback pointer
datauser data for the callback.

The callbacks will be called as followed:

  • start cbs on single tap start
  • move cbs on long press move
  • end cbs on long press end
  • abort cbs whenever in the sequence. The event info will be NULL, because it can be triggered from multiple events (timer expired, abort single/long taps).

You can remove the callbacks by using elm_gesture_layer_tap_longpress_cb_del.

See also
elm_gesture_layer_tap_longpress_cb_del
Since
1.8

References elm_gesture_layer_cb_add(), ELM_GESTURE_N_LONG_TAPS, ELM_GESTURE_N_TAPS, ELM_GESTURE_STATE_ABORT, ELM_GESTURE_STATE_END, ELM_GESTURE_STATE_MOVE, and ELM_GESTURE_STATE_START.

void elm_gesture_layer_tap_longpress_cb_del ( Evas_Object *  obj,
Elm_Gesture_State  state,
Elm_Gesture_Event_Cb  cb,
void *  data 
)

This function removes a callback called during Tap + Long Tap sequence.

Parameters
statestate for the callback to add.
cbcallback pointer
datauser data for the callback.

The internal data used for the sequence will be freed ONLY when all the callbacks added via elm_gesture_layer_tap_longpress_cb_add are removed by this function.

See also
elm_gesture_layer_tap_longpress_cb_add
Since
1.8

References ELM_GESTURE_STATE_ABORT, ELM_GESTURE_STATE_END, ELM_GESTURE_STATE_MOVE, and ELM_GESTURE_STATE_START.

Evas_Coord elm_gesture_layer_zoom_distance_tolerance_get ( const Evas_Object *  obj)

This function returns the gesture layer zoom distance tolerance of an object.

Parameters
objgesture-layer.
Returns
zoom distance tolerance
Since
1.8
void elm_gesture_layer_zoom_distance_tolerance_set ( Evas_Object *  obj,
Evas_Coord  zoom_distance_tolerance 
)

This function sets the gesture layer zoom distance tolerance of an object.

Parameters
objgesture-layer.
zoom_distance_tolerancezoom distance tolerance
Since
1.8
double elm_gesture_layer_zoom_finger_factor_get ( const Evas_Object *  obj)

This function returns the gesture layer zoom finger factor of an object.

Parameters
objgesture-layer.
Returns
zoom finger factor
Since
1.8
void elm_gesture_layer_zoom_finger_factor_set ( Evas_Object *  obj,
double  zoom_finger_factor 
)

This function sets the gesture layer zoom finger factor of an object.

Parameters
objgesture-layer.
zoom_finger_factorzoom finger factor
Since
1.8
double elm_gesture_layer_zoom_step_get ( const Elm_Gesture_Layer *  obj)

This function returns step-value for zoom action.

Returns
zoom step value.
See also
elm_gesture_layer_zoom_step_set()

References elm_obj_gesture_layer_zoom_step_get().

void elm_gesture_layer_zoom_step_set ( Elm_Gesture_Layer *  obj,
double  step 
)

This function sets step-value for zoom action.

Set step to any positive value. Cancel step setting by setting to 0

See also
elm_gesture_layer_zoom_step_get()
Parameters
[in]stepnew zoom step value.

References elm_obj_gesture_layer_zoom_step_set().

double elm_gesture_layer_zoom_wheel_factor_get ( const Evas_Object *  obj)

This function returns the gesture layer zoom wheel factor of an object.

Parameters
objgesture-layer.
Returns
zoom wheel factor
Since
1.8
void elm_gesture_layer_zoom_wheel_factor_set ( Evas_Object *  obj,
double  zoom_wheel_factor 
)

This function sets the gesture layer zoom wheel factor of an object.

Parameters
objgesture-layer.
zoom_wheel_factorzoom wheel factor
Since
1.8
EOAPI Eina_Bool elm_obj_gesture_layer_attach ( Evas_Object *  target)

Attach a given gesture layer widget to an Evas object, thus setting the widget's target.

A gesture layer target may be whichever Evas object one chooses. This will be object obj will listen all mouse and key events from, to report the gestures made upon it back.

Returns
EINA_TRUE, on success, EINA_FALSE otherwise.
Parameters
[in]targetObject to attach to obj (target)

Referenced by elm_gesture_layer_attach().

EOAPI void elm_obj_gesture_layer_cb_add ( Elm_Gesture_Type  idx,
Elm_Gesture_State  cb_type,
Elm_Gesture_Event_Cb  cb,
void *  data 
)

Use function to add callbacks to be notified about change of state of gesture.

When a user registers a callback with this function this means this gesture has to be tested.

When ALL callbacks for a gesture are set to NULL it means user isn't interested in gesture-state and it will not be tested.

If a function was already set for this gesture/type/state, it will be replaced by the new one. For ABI compat, callbacks added by elm_gesture_layer_cb_add will be removed. It is recommended to use only one of these functions for a gesture object.

Parameters
[in]idxThe gesture you would like to track its state.
[in]cb_typewhat event this callback tracks: START, MOVE, END, ABORT.
[in]cbcallback function pointer.
[in]datauser info to be sent to callback (usually, Smart Data)

Referenced by elm_gesture_layer_cb_add().

EOAPI void elm_obj_gesture_layer_cb_del ( Elm_Gesture_Type  idx,
Elm_Gesture_State  cb_type,
Elm_Gesture_Event_Cb  cb,
void *  data 
)

Use this function to remove a callback that has been added to be notified about change of state of gesture.

Parameters
[in]idxThe gesture you would like to track its state.
[in]cb_typewhat event this callback tracks: START, MOVE, END, ABORT.
[in]cbcallback function pointer.
[in]datauser info for the callback (usually, Smart Data)

Referenced by elm_gesture_layer_cb_del().

EOAPI void elm_obj_gesture_layer_cb_set ( Elm_Gesture_Type  idx,
Elm_Gesture_State  cb_type,
Elm_Gesture_Event_Cb  cb,
void *  data 
)

Use function to set callbacks to be notified about change of state of gesture.

When a user registers a callback with this function this means this gesture has to be tested.

When ALL callbacks for a gesture are set to NULL it means user isn't interested in gesture-state and it will not be tested.

Parameters
[in]idxThe gesture you would like to track its state.
[in]cb_typewhat event this callback tracks: START, MOVE, END, ABORT.
[in]cbcallback function pointer.
[in]datauser info to be sent to callback (usually, Smart Data)

Referenced by elm_gesture_layer_cb_set().

EOAPI Eina_Bool elm_obj_gesture_layer_hold_events_get ( void  )

Call this function to get repeat-events settings.

Returns
repeat events settings.
See also
elm_gesture_layer_hold_events_set()

Referenced by elm_gesture_layer_hold_events_get().

EOAPI void elm_obj_gesture_layer_hold_events_set ( Eina_Bool  hold_events)

This function is to make gesture-layer repeat events.

Set this if you like to get the raw events only if gestures were not detected. Clear this if you like gesture layer to forward events as testing gestures.

Parameters
[in]hold_eventshold events or not.

Referenced by elm_gesture_layer_hold_events_set().

EOAPI double elm_obj_gesture_layer_rotate_step_get ( void  )

This function returns step-value for rotate action.

Returns
rotate step value.

Referenced by elm_gesture_layer_rotate_step_get().

EOAPI void elm_obj_gesture_layer_rotate_step_set ( double  step)

This function sets step-value for rotate action.

Set step to any positive value. Cancel step setting by setting to 0

Parameters
[in]stepnew rotate step value.

Referenced by elm_gesture_layer_rotate_step_set().

EOAPI Evas_Coord elm_obj_gesture_layer_tap_finger_size_get ( void  )

This function returns the gesture layer finger-size for taps.

Returns
Finger size that is currently used by Gesture Layer for taps.
Since
1.8

Referenced by elm_gesture_layer_tap_finger_size_get().

EOAPI void elm_obj_gesture_layer_tap_finger_size_set ( Evas_Coord  sz)

This function sets the gesture layer finger-size for taps If not set, this size taken from elm_config.

Set to ZERO if you want GLayer to use system finger size value (default)

Since
1.8
Parameters
[in]szFinger size

Referenced by elm_gesture_layer_tap_finger_size_set().

EOAPI double elm_obj_gesture_layer_zoom_step_get ( void  )

This function returns step-value for zoom action.

Returns
zoom step value.
See also
elm_gesture_layer_zoom_step_set()

Referenced by elm_gesture_layer_zoom_step_get().

EOAPI void elm_obj_gesture_layer_zoom_step_set ( double  step)

This function sets step-value for zoom action.

Set step to any positive value. Cancel step setting by setting to 0

See also
elm_gesture_layer_zoom_step_get()
Parameters
[in]stepnew zoom step value.

Referenced by elm_gesture_layer_zoom_step_set().