1 /* vim:set et sts=4: */
15 static IBusBus *bus = NULL;
16 static IBusFactory *factory = NULL;
19 static gboolean ibus = FALSE;
20 static gboolean verbose = FALSE;
22 static const GOptionEntry entries[] =
24 { "ibus", 'i', 0, G_OPTION_ARG_NONE, &ibus, "component is executed by ibus", NULL },
25 { "verbose", 'v', 0, G_OPTION_ARG_NONE, &verbose, "verbose", NULL },
31 ibus_disconnected_cb (IBusBus *bus,
34 g_debug ("bus disconnected");
40 start_component (void)
42 IBusComponent *component;
46 bus = ibus_bus_new ();
47 g_signal_connect (bus, "disconnected", G_CALLBACK (ibus_disconnected_cb), NULL);
49 ibus_hangul_init (bus);
51 component = ibus_component_new ("org.freedesktop.IBus.Hangul",
52 N_("Hangul input method"),
55 "Peng Huang <shawn.p.huang@gmail.com>",
56 "http://code.google.com/p/ibus/",
59 ibus_component_add_engine (component,
60 ibus_engine_desc_new ("hangul",
61 N_("Hangul Input Method"),
62 N_("Hangul Input Method"),
65 "Peng Huang <shawn.p.huang@gmail.com>",
66 PKGDATADIR"/icon/ibus-hangul.svg",
69 factory = ibus_factory_new (ibus_bus_get_connection (bus));
71 ibus_factory_add_engine (factory, "hangul", IBUS_TYPE_HANGUL_ENGINE);
74 ibus_bus_request_name (bus, "org.freedesktop.IBus.Hangul", 0);
77 ibus_bus_register_component (bus, component);
80 g_object_unref (component);
88 main (gint argc, gchar **argv)
91 GOptionContext *context;
93 setlocale (LC_ALL, "");
95 bindtextdomain(GETTEXT_PACKAGE, LOCALEDIR);
96 bind_textdomain_codeset(GETTEXT_PACKAGE, "UTF-8");
97 textdomain(GETTEXT_PACKAGE);
99 context = g_option_context_new ("- ibus hangul engine component");
101 g_option_context_add_main_entries (context, entries, "ibus-hangul");
103 if (!g_option_context_parse (context, &argc, &argv, &error)) {
104 g_print ("Option parsing failed: %s\n", error->message);