static void cb_button_sym(GtkButton *button, GtkWidget *label) { // dbg("cb_button_sym\n"); char *str = (char *) gtk_label_get_text(GTK_LABEL(label)); #if USE_TSIN if (current_method_type() == method_type_TSIN && current_CS->im_state == GCIN_STATE_CHINESE) { add_to_tsin_buf_str(str); if (tsin_cursor_end()) { flush_tsin_buffer(); output_buffer_call_back(); } else { force_preedit_shift(); } } else #endif if (gtab_phrase_on()) { insert_gbuf_nokey(str); if (gtab_cursor_end()) { output_gbuf(); output_buffer_call_back(); } else force_preedit_shift(); } else { send_text_call_back(str); } switch (current_method_type()) { case method_type_PHO: clr_in_area_pho(); break; #if USE_TSIN case method_type_TSIN: tsin_reset_in_pho(); break; #endif #if USE_ANTHY case method_type_ANTHY: break; #endif default: reset_gtab_all(); break; } if (gcin_win_sym_click_close) { win_sym_enabled=0; hide_win_sym(); } }
static void mouse_button_callback( GtkWidget *widget,GdkEventButton *event, gpointer data) { int v; switch (event->button) { case 1: v = GPOINTER_TO_INT(data); if (cb_sele_by_idx) cb_sele_by_idx(v); force_preedit_shift(); break; } }
static void mouse_button_callback( GtkWidget *widget,GdkEventButton *event, gpointer data) { int v; switch (event->button) { case 1: v = GPOINTER_TO_INT(data); #if 1 if (cb_sele_by_idx) cb_sele_by_idx(v); force_preedit_shift(); #else send_fake_key_eve(pho_selkey[v]); #endif break; } }