1
0
Fork 0
mutter-performance-source/tests/test-events.c
Matthew Allum 1494a017c3 2007-06-18 Matthew Allum <mallum@openedhand.com>
* clutter/sdl/clutter-event-sdl.c:
        Seemingly fix SDL Event source.
        Add some very basic SDL keysym translation.
        (Thanks to Thomas Van Machelen for initial translation code)

        * tests/test-events.c:
        Dump some info on keysyms pressed.
2007-06-18 09:15:00 +00:00

72 lines
1.7 KiB
C

#include <clutter/clutter.h>
static void
input_cb (ClutterStage *stage,
ClutterEvent *event,
gpointer data)
{
gchar keybuf[9];
int len = 0;
switch (event->type)
{
case CLUTTER_KEY_PRESS:
len = g_unichar_to_utf8 (clutter_keysym_to_unicode (event->key.keyval),
keybuf);
keybuf[len] = '\0';
printf("- KEY PRESS '%s'\n", keybuf);
break;
case CLUTTER_KEY_RELEASE:
len = g_unichar_to_utf8 (clutter_keysym_to_unicode (event->key.keyval),
keybuf);
keybuf[len] = '\0';
printf("- KEY RELEASE '%s'\n");
break;
case CLUTTER_MOTION:
printf("- MOTION\n");
break;
case CLUTTER_BUTTON_PRESS:
printf("- BUTTON PRESS\n");
break;
case CLUTTER_2BUTTON_PRESS:
printf("- BUTTON 2 PRESS\n");
break;
case CLUTTER_3BUTTON_PRESS:
printf("- BUTTON 3 PRESS\n");
break;
case CLUTTER_BUTTON_RELEASE:
printf("- BUTTON RELEASE\n");
break;
case CLUTTER_SCROLL:
printf("- BUTTON SCROLL\n");
break;
case CLUTTER_STAGE_STATE:
printf("- STAGE STATE\n");
break;
case CLUTTER_DESTROY_NOTIFY:
printf("- DESTROY NOTIFY\n");
break;
case CLUTTER_CLIENT_MESSAGE:
printf("- CLIENT MESSAGE\n");
break;
case CLUTTER_DELETE:
printf("- DELETE\n");
break;
}
}
int
main (int argc, char *argv[])
{
ClutterActor *stage;
clutter_init (&argc, &argv);
stage = clutter_stage_get_default ();
g_signal_connect (stage, "event", G_CALLBACK (input_cb), NULL);
clutter_actor_show_all (CLUTTER_ACTOR (stage));
clutter_main();
return 0;
}