static void print_engines (const GList *engines) { for (; engines; engines = g_list_next (engines)) { IBusEngineDesc *engine_desc = IBUS_ENGINE_DESC (engines->data); g_assert (engine_desc); #if 0 g_debug ("%s (id:%s, icon:%s)", ibus_engine_desc_get_longname (engine_desc), ibus_engine_desc_get_name (engine_desc), ibus_engine_desc_get_icon (engine_desc)); #endif } }
static gchar * engine_get_display_name (IBusEngineDesc *engine_desc) { const gchar *name; const gchar *language_code; const gchar *language; gchar *display_name; name = ibus_engine_desc_get_longname (engine_desc); language_code = ibus_engine_desc_get_language (engine_desc); language = ibus_get_language_name (language_code); display_name = g_strdup_printf ("%s (%s)", language, name); return display_name; }
void global_engine_changed_cb (IBusBus *bus) { IBusEngineDesc *global_engine = ibus_bus_get_global_engine (bus); const gchar *name = NULL; g_assert (global_engine); name = ibus_engine_desc_get_name (global_engine); g_debug ("%s (id:%s, icon:%s)", ibus_engine_desc_get_longname (global_engine), name, ibus_engine_desc_get_icon (global_engine)); IBusEngineDesc *engine_desc = IBUS_ENGINE_DESC (current_engine->data); g_assert (strcmp (name, ibus_engine_desc_get_name (engine_desc)) == 0); g_object_unref (global_engine); }