e08fb8935fdb9d93aa4f7c6b166f2b9a8c206032
eek - easy embedded keyboard -*- outline -*- *NOTE* This is not usable by now. The code has still a lot of bugs and lacks documentation. * Quick look http://ueno.fedorapeople.org/eek/eek-in-demo.ogv (2MB, Ogg Theora video) * How to test $ git clone git://github.com/ueno/eek.git $ cd eek $ ./autogen.sh --prefix=/usr --enable-gtk-doc $ make $ ./examples/eek-clutter-xkb-test --geometry=kinesis --symbols=in * API (not fixed) eek provides two different kinds of objects. One is "keyboard element" and another is "keyboard layout engine". A keyboard element represents either a keyboard, a section, or a key. Each element implements the Builder pattern[1] so that it can be converted into a UI widget (ClutterActor, GTK+ button, ...). A layout engine arranges keyboard elements using information from external configuration mechanisms (XKB, matchbox-keyboard layouts in XML, ...) Here is a sample code which utilizes Clutter-based keyboard elements and an XKB-based layout engine: 1: EekKeyboard *keyboard; 2: EekLayout *layout; 3: 4: /* Create a keyboard layout using XKB configuration. */ 5: layout = eek_xkb_layout_new (NULL, "kinesis", "in"); 6: 7: /* Create a keyboard implemented as ClutterActor. */ 8: keyboard = eek_clutter_keyboard_new (640, 480); 9: 10: /* Apply the layout to the keyboard. */ 11: eek_keyboard_set_layout (keyboard, layout); 12: 13: clutter_group_add (CLUTTER_GROUP(stage), 14: eek_clutter_keyboard_get_actor (EEK_CLUTTER_KEYBOARD(keyboard))); Footnotes: [1] http://en.wikipedia.org/wiki/Builder_pattern
Description
Languages
Rust
68.3%
C
25.7%
Meson
2.7%
Python
1.9%
CSS
1.1%
Other
0.3%