From 2fba93b6904e22e46de66648d5c98af7512e1e1e Mon Sep 17 00:00:00 2001 From: Paul LeoNerd Evans Date: Tue, 2 Dec 2008 00:56:43 +0000 Subject: Added termkey_keyname2sym() to API --- termkey.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'termkey.c') diff --git a/termkey.c b/termkey.c index b8f06e1..4e0bb5a 100644 --- a/termkey.c +++ b/termkey.c @@ -824,6 +824,20 @@ const char *termkey_get_keyname(termkey_t *tk, termkey_keysym sym) return "UNKNOWN"; } +termkey_keysym termkey_keyname2sym(termkey_t *tk, const char *keyname) +{ + /* We store an array, so we can't do better than a linear search. Doesn't + * matter because user won't be calling this too often */ + + termkey_keysym sym; + + for(sym = 0; sym < tk->nkeynames; sym++) + if(tk->keynames[sym] && strcmp(keyname, tk->keynames[sym]) == 0) + return sym; + + return TERMKEY_SYM_UNKNOWN; +} + static termkey_keysym register_c0(termkey_t *tk, termkey_keysym sym, unsigned char ctrl, const char *name) { return register_c0_full(tk, sym, 0, 0, ctrl, name); -- cgit v1.2.3