1 /* -*- mode: C; c-basic-offset: 4; indent-tabs-mode: nil; -*- */
2 /* vim:set et sts=4: */
3 /* ibus - The Input Bus
4 * Copyright (C) 2011 Peng Huang <shawn.p.huang@gmail.com>
5 * Copyright (C) 2011 Google, Inc.
7 * This library is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU Lesser General Public
9 * License as published by the Free Software Foundation; either
10 * version 2 of the License, or (at your option) any later version.
12 * This library is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 * Lesser General Public License for more details.
17 * You should have received a copy of the GNU Lesser General Public
18 * License along with this library; if not, write to the
19 * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
20 * Boston, MA 02111-1307, USA.
23 #if !defined (__IBUS_H_INSIDE__) && !defined (IBUS_COMPILATION)
24 #error "Only <ibus.h> can be included directly"
27 #ifndef __IBUS_KEYS_H_
28 #define __IBUS_KEYS_H_
34 * @keyval: Key symbol.
35 * @returns: Corresponding key name. %NULL if no such key symbol.
37 * Return the name of a key symbol.
39 * Note that the returned string is used internally, so don't free it.
41 const gchar *ibus_keyval_name (guint keyval);
44 * ibus_keyval_from_name:
45 * @keyval_name: Key name in #gdk_keys_by_name.
46 * @returns: Corresponding key symbol.
48 * Return the key symbol that associate with the key name.
50 guint ibus_keyval_from_name (const gchar *keyval_name);
53 * ibus_unicode_to_keyval:
54 * @wc: a ISO10646 encoded character
56 * Convert from a ISO10646 character to a key symbol.
58 * Return value: the corresponding IBus key symbol, if one exists.
59 * or, if there is no corresponding symbol,
62 guint ibus_unicode_to_keyval (gunichar wc);
65 * ibus_keyval_to_unicode:
66 * @keyval: an IBus key symbol
68 * Convert from an IBus key symbol to the corresponding ISO10646 (Unicode)
71 * Return value: the corresponding unicode character, or 0 if there
72 * is no corresponding character.
74 gunichar ibus_keyval_to_unicode (guint keyval);
76 #endif // __IBUS_KEYS_H_