summaryrefslogtreecommitdiff
path: root/src/keymap.h
diff options
context:
space:
mode:
authorRan Benita <ran234@gmail.com>2014-04-22 11:47:23 +0300
committerRan Benita <ran234@gmail.com>2014-04-22 14:56:01 +0300
commit6b1cdee107caaf8009037763a3cc3cd51132a1dd (patch)
tree7323ed92c74c361858c019baabcf268d31c63ced /src/keymap.h
parent0f6bca2b37cb67e9a76acd1c3117e19fb0a115df (diff)
downloadxorg-lib-libxkbcommon-6b1cdee107caaf8009037763a3cc3cd51132a1dd.tar.gz
keymap: add and use xkb_mods_{foreach,enumerate}()
To iterate over an xkb_mod_set. Slightly nicer interface and makes transitioning from darray easier. Signed-off-by: Ran Benita <ran234@gmail.com>
Diffstat (limited to 'src/keymap.h')
-rw-r--r--src/keymap.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/keymap.h b/src/keymap.h
index ae86f6b..ed2f8e7 100644
--- a/src/keymap.h
+++ b/src/keymap.h
@@ -402,6 +402,12 @@ struct xkb_keymap {
(iter) <= (keymap)->keys + (keymap)->max_key_code; \
(iter)++)
+#define xkb_mods_foreach(iter, mods_) \
+ darray_foreach((iter), (mods_)->mods)
+
+#define xkb_mods_enumerate(idx, iter, mods_) \
+ darray_enumerate((idx), (iter), (mods_)->mods)
+
static inline const struct xkb_key *
XkbKey(struct xkb_keymap *keymap, xkb_keycode_t kc)
{