summaryrefslogtreecommitdiff
path: root/c/hooks.h
diff options
context:
space:
mode:
Diffstat (limited to 'c/hooks.h')
-rw-r--r--c/hooks.h23
1 files changed, 23 insertions, 0 deletions
diff --git a/c/hooks.h b/c/hooks.h
new file mode 100644
index 00000000..477c8124
--- /dev/null
+++ b/c/hooks.h
@@ -0,0 +1,23 @@
+#ifndef __hooks_h
+#define __hooks_h
+
+#include "eventdata.h"
+
+void hooks_startup();
+void hooks_shutdown();
+
+void hooks_fire(EventData *data);
+
+void hooks_fire_keyboard(EventData *data);
+
+void hooks_fire_pointer(EventData *data);
+
+#define LOGICALHOOK(type, context, client) \
+{ EventData *data = eventdata_new_logical(Logical_##type, \
+ context, client); \
+ g_assert(data != NULL); \
+ hooks_fire(data); \
+ eventdata_free(data); \
+}
+
+#endif