/*
* ion/ioncore/binding.h
*
- * Copyright (c) Tuomo Valkonen 1999-2006.
+ * Copyright (c) Tuomo Valkonen 1999-2008.
*
- * Ion is free software; you can redistribute it and/or modify it under
- * the terms of the GNU Lesser General Public License as published by
- * the Free Software Foundation; either version 2.1 of the License, or
- * (at your option) any later version.
+ * See the included file LICENSE for details.
*/
#ifndef ION_IONCORE_BINDING_H
#include <libextl/extl.h>
-#define BINDING_KEYPRESS 0
-#define BINDING_BUTTONPRESS 1
-#define BINDING_BUTTONMOTION 2
-#define BINDING_BUTTONCLICK 3
-#define BINDING_BUTTONDBLCLICK 4
+enum{
+ BINDING_KEYPRESS,
+ BINDING_BUTTONPRESS,
+ BINDING_BUTTONMOTION,
+ BINDING_BUTTONCLICK,
+ BINDING_BUTTONDBLCLICK,
+ BINDING_SUBMAP_ENTER,
+ BINDING_SUBMAP_RELEASEMOD
+ /*BINDING_SUBMAP_LEAVE*/
+};
+#define BINDING_IS_PSEUDO(A) \
+ ((A)==BINDING_SUBMAP_ENTER || (A)==BINDING_SUBMAP_RELEASEMOD)
+
#define BINDMAP_INIT {0, NULL, NULL, NULL, NULL}
#define FOR_ALL_BINDINGS(B, NODE, MAP) \