1 /** 2 * @defgroup Elm_Gesture_Layer_Group Gesture Layer 3 * @ingroup Elementary 4 * 5 * @image html gesture_layer_inheritance_tree.png 6 * @image latex gesture_layer_inheritance_tree.eps 7 * 8 * Gesture Layer Usage: 9 * 10 * Use Gesture Layer to detect gestures. 11 * The advantage is that you don't have to implement 12 * gesture detection, just set callbacks of gesture state. 13 * By using gesture layer we make standard interface. 14 * 15 * In order to use Gesture Layer you start with @ref elm_gesture_layer_add 16 * with a parent object parameter. 17 * Next 'activate' gesture layer with a @ref elm_gesture_layer_attach 18 * call. Usually with same object as target (2nd parameter). 19 * 20 * Now you need to tell gesture layer what gestures you follow. 21 * This is done with @ref elm_gesture_layer_cb_set call. 22 * By setting the callback you actually saying to gesture layer: 23 * I would like to know when the gesture @ref Elm_Gesture_Type 24 * switches to state @ref Elm_Gesture_State. 25 * 26 * Next, you need to implement the actual action that follows the input 27 * in your callback. 28 * 29 * Note that if you like to stop being reported about a gesture, just set 30 * all callbacks referring this gesture to NULL. 31 * (again with @ref elm_gesture_layer_cb_set) 32 * 33 * The information reported by gesture layer to your callback is depending 34 * on @ref Elm_Gesture_Type : 35 * @ref Elm_Gesture_Taps_Info is the info reported for tap gestures: 36 * @ref ELM_GESTURE_N_TAPS, @ref ELM_GESTURE_N_LONG_TAPS, 37 * @ref ELM_GESTURE_N_DOUBLE_TAPS, @ref ELM_GESTURE_N_TRIPLE_TAPS. 38 * 39 * @ref Elm_Gesture_Momentum_Info is info reported for momentum gestures: 40 * @ref ELM_GESTURE_MOMENTUM. 41 * 42 * @ref Elm_Gesture_Line_Info is the info reported for line gestures: 43 * (this also contains @ref Elm_Gesture_Momentum_Info internal structure) 44 * @ref ELM_GESTURE_N_LINES, @ref ELM_GESTURE_N_FLICKS. 45 * Note that we consider a flick as a line-gesture that should be completed 46 * in flick-time-limit as defined in @ref Config. 47 * 48 * @ref Elm_Gesture_Zoom_Info is the info reported for @ref ELM_GESTURE_ZOOM gesture. 49 * 50 * @ref Elm_Gesture_Rotate_Info is the info reported for @ref ELM_GESTURE_ROTATE gesture. 51 * 52 * 53 * Gesture Layer Tweaks: 54 * 55 * Note that line, flick, gestures can start without the need to remove fingers from surface. 56 * When user fingers rests on same-spot gesture is ended and starts again when fingers moved. 57 * 58 * Setting glayer_continues_enable to false in @ref Config will change this behavior 59 * so gesture starts when user touches (a *DOWN event) touch-surface 60 * and ends when no fingers touches surface (a *UP event). 61 * 62 * Supported elm_object common APIs. 63 * @li @ref elm_object_disabled_set 64 * @li @ref elm_object_disabled_get 65 * 66 * @{ 67 * 68 */ 69 70 #include "elm_gesture_layer_common.h" 71 #ifndef EFL_NOLEGACY_API_SUPPORT 72 #include "elm_gesture_layer_legacy.h" 73 #endif 74 /** 75 * @} 76 */ 77