static void KBType_set_callback(PropertyContext *ctx, GValue *value){ #ifdef IBUS_CHEWING_MAIN ChewingKbType kbType=kbType_id_get_index(g_value_get_string(value)); IBusChewingEngine *engine=(IBusChewingEngine *) ctx->userData; chewing_set_KBType(engine->context,kbType); #endif }
/*============================================ * Callback routines */ gboolean KBType_apply_callback(PropertyContext * ctx, gpointer userData) { GValue *value = &(ctx->value); IBUS_CHEWING_LOG(DEBUG, "KBType_apply_callback(%s,%s)", ctx->spec->key, mkdg_g_value_to_string(value)); ChewingKbType kbType = kbType_id_get_index(g_value_get_string(value)); IBusChewingPreEdit *icPreEdit = (IBusChewingPreEdit *) ctx->parent; chewing_set_KBType(icPreEdit->context, kbType); return TRUE; }