summaryrefslogtreecommitdiff
path: root/include/grail.h
diff options
context:
space:
mode:
authorHenrik Rydberg <rydberg@bitmath.org>2010-07-20 12:01:32 +0200
committerHenrik Rydberg <rydberg@euromail.se>2010-08-05 22:48:37 +0200
commit3b9c20f869a2f55bd9953665c9e7fd713db4ff43 (patch)
treee7cedff7354612d0dd97e2f0f7584d58bff3b223 /include/grail.h
parent49922aacc4e6361e2a11dd2ce8460c80b41ab493 (diff)
Merge in fix of dev package. This patch moves header files around, and does not contain any logic changes.
Signed-off-by: Henrik Rydberg <rydberg@bitmath.org>
Diffstat (limited to 'include/grail.h')
-rw-r--r--include/grail.h63
1 files changed, 61 insertions, 2 deletions
diff --git a/include/grail.h b/include/grail.h
index b2f4a0d..087cf0c 100644
--- a/include/grail.h
+++ b/include/grail.h
@@ -25,7 +25,66 @@
25#ifndef _GRAIL_H 25#ifndef _GRAIL_H
26#define _GRAIL_H 26#define _GRAIL_H
27 27
28#include <touch-engine.h> 28#include <grail-touch.h>
29#include <gesture-dev.h> 29
30#define DIM_GESTURE_PROP 8
31typedef int gesture_prop_t;
32
33enum gesture_type {
34 GE_MOVE,
35 GE_VSCROLL,
36 DIM_GESTURE_TYPE
37};
38
39enum gesture_state {
40 GS_CANCEL,
41 GS_BEGIN,
42 GS_END
43};
44
45struct gesture_flag {
46 enum gesture_type type;
47 touch_time_t time;
48 enum gesture_state state;
49};
50
51struct gesture_event {
52 enum gesture_type type;
53 touch_time_t time;
54 gesture_prop_t prop[DIM_GESTURE_PROP];
55};
56
57struct gesture_dev {
58 struct gedev_impl *impl;
59 void *priv;
60};
61
62struct gesture_client {
63 void (*gesture)(struct gesture_client *client,
64 const struct gesture_event *ev);
65 int priority[DIM_GESTURE_TYPE];
66 struct client_impl *impl;
67 void *priv;
68};
69
70int client_init(struct gesture_client *client, void *priv);
71void client_flag(struct gesture_client *client,
72 const struct gesture_flag *flag);
73void client_event(struct gesture_client *client,
74 const struct gesture_event *ev);
75void client_sync(struct gesture_client *client);
76void client_destroy(struct gesture_client *client);
77
78int gedev_init(struct gesture_dev *dev, void *priv);
79int gedev_attach_client(struct gesture_dev *dev,
80 struct gesture_client *client);
81
82void gedev_flag(struct gesture_dev *dev, const struct gesture_flag *flag);
83void gedev_event(struct gesture_dev *dev, const struct gesture_event *ev);
84void gedev_sync(struct gesture_dev *dev);
85
86void gedev_detach_client(struct gesture_dev *dev,
87 struct gesture_client *client);
88void gedev_destroy(struct gesture_dev *dev);
30 89
31#endif 90#endif