summaryrefslogtreecommitdiff
path: root/src/lib/evas/gesture/efl_gesture_private.h
blob: e00faf6324806b6f97d48eb67666e7d6bf9ec721 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#ifndef EFL_GESTURE_PRIVATE_H_
#define EFL_GESTURE_PRIVATE_H_

#include "evas_common_private.h"
#include "evas_private.h"
#define EFL_INTERNAL_UNSTABLE
#include "interfaces/efl_common_internal.h"

#include <Ecore.h>

//private gesture classes
#include "efl_gesture_recognizer_tap.eo.h"
#include "efl_gesture_recognizer_long_tap.eo.h"

typedef struct _Efl_Gesture_Recognizer_Data             Efl_Gesture_Recognizer_Data;
typedef struct _Efl_Gesture_Data                        Efl_Gesture_Data;
typedef struct _Efl_Gesture_Tap_Data                    Efl_Gesture_Tap_Data;
typedef struct _Efl_Gesture_Long_Tap_Data               Efl_Gesture_Long_Tap_Data;

struct _Efl_Gesture_Recognizer_Data
{
   Eo *manager; // keeps a reference of the manager
};

struct _Efl_Gesture_Data
{
   const Efl_Event_Description    *type;
   Efl_Gesture_State               state;
   Eina_Vector2                    hotspot;
};

struct _Efl_Gesture_Tap_Data
{
   Eina_Vector2   pos;
};

struct _Efl_Gesture_Long_Tap_Data
{
   Eina_Vector2      pos;
   Ecore_Timer      *timeout;
   Eina_Bool         is_timeout;
};

#endif