22adf4638e40fd426eb40417bde45ee2d3cebd0d
[platform/core/uifw/at-spi2-atk.git] / test / keysynth-test.c
1 /*
2  * AT-SPI - Assistive Technology Service Provider Interface
3  * (Gnome Accessibility Project; http://developer.gnome.org/projects/gap)
4  *
5  * Copyright 2001, 2002 Sun Microsystems Inc.,
6  * Copyright 2001, 2002 Ximian, Inc.
7  *
8  * This library is free software; you can redistribute it and/or
9  * modify it under the terms of the GNU Library General Public
10  * License as published by the Free Software Foundation; either
11  * version 2 of the License, or (at your option) any later version.
12  *
13  * This library is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
16  * Library General Public License for more details.
17  *
18  * You should have received a copy of the GNU Library General Public
19  * License along with this library; if not, write to the
20  * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
21  * Boston, MA 02111-1307, USA.
22  */
23
24 #include <unistd.h>
25 #include <stdlib.h>
26 #include "../cspi/spi-private.h" /* A hack for now */
27 #include <glib-object.h>
28 #include <gtk/gtk.h>
29 #include <atk/atk.h>
30 #include <atk/atknoopobject.h>
31 #include <bonobo-activation/bonobo-activation-register.h>
32 #include <bonobo/bonobo-main.h>
33 #include <libspi/libspi.h>
34
35 typedef struct {
36         long int val;
37         char *string;
38         AccessibleKeySynthType type;
39 } TextTest;
40
41 static TextTest text[] = {
42         {65, NULL, SPI_KEY_PRESSRELEASE},
43         {64, NULL, SPI_KEY_SYM},
44         {0,  "--hello!", SPI_KEY_STRING},
45         {0, "StudlyCaps!", SPI_KEY_STRING}
46 };
47
48 static void
49 test_key_synthesis (void)
50 {
51         int i;
52         for (i = 0; i < G_N_ELEMENTS (text); ++i) {
53                 SPI_generateKeyboardEvent (text[i].val, text[i].string, text[i].type);
54         }
55 }
56
57 int
58 main (int argc, char **argv)
59 {
60         gtk_init (&argc, &argv);
61         SPI_init ();
62
63         test_key_synthesis ();
64
65         return SPI_exit ();
66 }
67