static void cb_fast_phonetic_kbd_switch(GtkCheckMenuItem *checkmenuitem, gpointer dat) { char bak[128], cur[128]; get_hime_conf_fstr(PHONETIC_KEYBOARD, cur, ""); get_hime_conf_fstr(PHONETIC_KEYBOARD_BAK, bak, ""); save_hime_conf_str(PHONETIC_KEYBOARD, bak); save_hime_conf_str(PHONETIC_KEYBOARD_BAK, cur); load_setttings(); load_tab_pho_file(); update_win_kbm_inited(); }
void save_hime_conf_int(char *name, int val) { char tt[16]; sprintf(tt, "%d", val); save_hime_conf_str(name, tt); }
void save_kbm_conf() { if (kbm_widget == NULL) { fprintf(stderr, "save_kbm_conf: kbm_widget is NULL!\n"); return; } int idx = gtk_combo_box_get_active (GTK_COMBO_BOX (opt_kbm_opts)); int idx_selkeys = gtk_combo_box_get_active (GTK_COMBO_BOX (opt_selkeys)); pho_candicate_col_N = (int) gtk_spin_button_get_value(GTK_SPIN_BUTTON(spinner_pho_candicate_col_N)); if (pho_candicate_col_N > strlen(selkeys[idx_selkeys].kstr)) pho_candicate_col_N = strlen(selkeys[idx_selkeys].kstr); dbg("pho_candicate_col_N %d\n", pho_candicate_col_N); char tt[128]; sprintf(tt, "%s %s %d %d", kbm_sel[idx].kbm, selkeys[idx_selkeys].kstr, pho_candicate_col_N, selkeys[idx_selkeys].RL); char phokbm_name[128]; get_hime_conf_fstr(PHONETIC_KEYBOARD, phokbm_name, ""); if (strcmp(phokbm_name, tt)) { save_hime_conf_str(PHONETIC_KEYBOARD_BAK, phokbm_name); } save_hime_conf_str(PHONETIC_KEYBOARD, tt); save_tsin_eng_pho_key(); save_hime_conf_int(TSIN_SPACE_OPT, tsin_space_options[new_select_idx_tsin_space_opt].key); save_hime_conf_int(TSIN_PHRASE_PRE_SELECT, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(check_button_tsin_phrase_pre_select))); save_hime_conf_int(PHONETIC_CHAR_DYNAMIC_SEQUENCE, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(check_button_phonetic_char_dynamic_sequence))); save_hime_conf_int(PHO_HIDE_ROW2, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(check_button_pho_hide_row2))); save_hime_conf_int(PHO_IN_ROW1, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(check_button_pho_in_row1))); save_hime_conf_int(PHONETIC_HUGE_TAB, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(check_button_phonetic_huge_tab))); save_hime_conf_int(TSIN_TONE_CHAR_INPUT, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(check_button_tsin_tone_char_input))); save_hime_conf_int(TSIN_USE_PHO_NEAR, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(check_button_tsin_use_pho_near))); save_hime_conf_int(TSIN_TAB_PHRASE_END, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(check_button_tsin_tab_phrase_end))); save_hime_conf_int(TSIN_TAIL_SELECT_KEY, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(check_button_tsin_tail_select_key))); save_hime_conf_int(TSIN_BUFFER_EDITING_MODE, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(check_button_tsin_buffer_editing_mode))); tsin_buffer_size = (int) gtk_spin_button_get_value(GTK_SPIN_BUTTON(spinner_tsin_buffer_size)); save_hime_conf_int(TSIN_BUFFER_SIZE, tsin_buffer_size); #if 0 gchar *cstr; cstr = gtk_color_selection_palette_to_string(&tsin_phrase_line_gcolor, 1); dbg("color %s\n", cstr); save_hime_conf_str(TSIN_PHRASE_LINE_COLOR, cstr); g_free(cstr); #endif save_omni_config(); /* caleb- does found where "reload kbm" is used. * caleb- think the send_hime_message() here does nothing. */ send_hime_message(GDK_DISPLAY(), "reload kbm"); }
void save_appearance_conf() { if (appearance_widget == NULL) { fprintf(stderr, "save_appearance_conf: appearance_widget is NULL!\n"); return; } char fname[128]; strcpy(fname, gtk_font_button_get_font_name(GTK_FONT_BUTTON(font_sel))); int len = strlen(fname)-1; while (len > 0 && isdigit(fname[len])) { len--; } save_hime_conf_int(HIME_FONT_SIZE, atoi(&(fname[len+1]))); while (len > 0 && fname[len]==' ') { fname[len--]=0; } save_hime_conf_str(HIME_FONT_NAME, fname); int font_size_tsin_presel = (int) gtk_spin_button_get_value(GTK_SPIN_BUTTON(spinner_hime_font_size_tsin_presel)); save_hime_conf_int(HIME_FONT_SIZE_TSIN_PRESEL, font_size_tsin_presel); int font_size_symbol = (int) gtk_spin_button_get_value(GTK_SPIN_BUTTON(spinner_hime_font_size_symbol)); save_hime_conf_int(HIME_FONT_SIZE_SYMBOL, font_size_symbol); int font_size_tsin_pho_in = (int) gtk_spin_button_get_value(GTK_SPIN_BUTTON(spinner_hime_font_size_tsin_pho_in)); save_hime_conf_int(HIME_FONT_SIZE_TSIN_PHO_IN, font_size_tsin_pho_in); int font_size_pho_near = (int) gtk_spin_button_get_value(GTK_SPIN_BUTTON(spinner_hime_font_size_pho_near)); save_hime_conf_int(HIME_FONT_SIZE_PHO_NEAR, font_size_pho_near); int font_size_gtab_in = (int) gtk_spin_button_get_value(GTK_SPIN_BUTTON(spinner_hime_font_size_gtab_in)); save_hime_conf_int(HIME_FONT_SIZE_GTAB_IN, font_size_gtab_in); int font_size_win_kbm = (int) gtk_spin_button_get_value(GTK_SPIN_BUTTON(spinner_hime_font_size_win_kbm)); save_hime_conf_int(HIME_FONT_SIZE_WIN_KBM, font_size_win_kbm); int font_size_win_kbm_en = (int) gtk_spin_button_get_value(GTK_SPIN_BUTTON(spinner_hime_font_size_win_kbm_en)); save_hime_conf_int(HIME_FONT_SIZE_WIN_KBM_EN, font_size_win_kbm_en); int hime_pop_up_win = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(check_button_hime_pop_up_win)); save_hime_conf_int(HIME_POP_UP_WIN, hime_pop_up_win); int hime_root_x = (int) gtk_spin_button_get_value(GTK_SPIN_BUTTON(spinner_root_style_x)); save_hime_conf_int(HIME_ROOT_X, hime_root_x); int hime_root_y = (int) gtk_spin_button_get_value(GTK_SPIN_BUTTON(spinner_root_style_y)); save_hime_conf_int(HIME_ROOT_Y, hime_root_y); int style = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(check_button_root_style_use)) ? InputStyleRoot : InputStyleOverSpot; save_hime_conf_int(HIME_INPUT_STYLE, style); save_hime_conf_int(HIME_INNER_FRAME, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(check_button_hime_inner_frame))); #if TRAY_ENABLED save_hime_conf_int(HIME_STATUS_TRAY, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(check_button_hime_status_tray))); #endif save_hime_conf_int(HIME_WIN_COLOR_USE, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(check_button_hime_win_color_use))); save_hime_conf_str(HIME_WIN_COLOR_FG, hime_win_color_fg); save_hime_conf_str(HIME_WIN_COLOR_BG, hime_win_color_bg); save_hime_conf_str(HIME_SEL_KEY_COLOR, hime_sel_key_color); int idx = gtk_combo_box_get_active(GTK_COMBO_BOX(opt_hime_icon_dir_display)); save_hime_conf_str(HIME_ICON_DIR, icon_dir_sel[idx].path); save_hime_conf_str(TSIN_CURSOR_COLOR, tsin_cursor_color); save_hime_conf_int(HIME_ON_THE_SPOT_KEY, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(check_button_hime_on_the_spot_key))); save_hime_conf_int(KBM_TOGGLE, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(check_button_hime_show_win_kbm))); #if TRAY_ENABLED save_hime_conf_int(HIME_TRAY_HF_WIN_KBM, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(check_button_hime_tray_hf_win_kbm))); #endif idx = gtk_combo_box_get_active (GTK_COMBO_BOX (opt_hime_edit_display)); save_hime_conf_int(HIME_EDIT_DISPLAY, edit_disp[idx].keynum); #if TRAY_ENABLED idx = gtk_combo_box_get_active (GTK_COMBO_BOX (opt_hime_tray_display)); save_hime_conf_int(HIME_TRAY_DISPLAY, tray_disp[idx].keynum); #endif #if 0 save_hime_conf_int(HIME_SETUP_WINDOW_TYPE_UTILITY, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(check_button_hime_setup_window_type_utility))); #endif save_omni_config(); send_hime_message(GDK_DISPLAY(), CHANGE_FONT_SIZE); #if TRAY_ENABLED send_hime_message(GDK_DISPLAY(), UPDATE_TRAY); #endif }
static gboolean cb_ok( GtkWidget *widget, GdkEvent *event, gpointer data ) { int idx = gtk_combo_box_get_active (GTK_COMBO_BOX (opt_kbm_opts)); int idx_selkeys = gtk_combo_box_get_active (GTK_COMBO_BOX (opt_selkeys)); pho_candicate_col_N = (int) gtk_spin_button_get_value(GTK_SPIN_BUTTON(spinner_pho_candicate_col_N)); if (pho_candicate_col_N > strlen(selkeys[idx_selkeys].kstr)) pho_candicate_col_N = strlen(selkeys[idx_selkeys].kstr); dbg("pho_candicate_col_N %d\n", pho_candicate_col_N); char tt[128]; sprintf(tt, "%s %s %d %d", kbm_sel[idx].kbm, selkeys[idx_selkeys].kstr, pho_candicate_col_N, selkeys[idx_selkeys].RL); char phokbm_name[128]; get_hime_conf_fstr(PHONETIC_KEYBOARD, phokbm_name, ""); if (strcmp(phokbm_name, tt)) { save_hime_conf_str(PHONETIC_KEYBOARD_BAK, phokbm_name); } save_hime_conf_str(PHONETIC_KEYBOARD, tt); save_tsin_eng_pho_key(); save_hime_conf_int(TSIN_SPACE_OPT, tsin_space_options[new_select_idx_tsin_space_opt].key); save_hime_conf_int(TSIN_PHRASE_PRE_SELECT, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(check_button_tsin_phrase_pre_select))); save_hime_conf_int(PHONETIC_CHAR_DYNAMIC_SEQUENCE, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(check_button_phonetic_char_dynamic_sequence))); save_hime_conf_int(PHO_HIDE_ROW2, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(check_button_pho_hide_row2))); save_hime_conf_int(PHO_IN_ROW1, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(check_button_pho_in_row1))); save_hime_conf_int(PHONETIC_HUGE_TAB, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(check_button_phonetic_huge_tab))); save_hime_conf_int(TSIN_TONE_CHAR_INPUT, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(check_button_tsin_tone_char_input))); save_hime_conf_int(TSIN_USE_PHO_NEAR, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(check_button_tsin_use_pho_near))); save_hime_conf_int(TSIN_TAB_PHRASE_END, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(check_button_tsin_tab_phrase_end))); save_hime_conf_int(TSIN_TAIL_SELECT_KEY, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(check_button_tsin_tail_select_key))); save_hime_conf_int(TSIN_BUFFER_EDITING_MODE, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(check_button_tsin_buffer_editing_mode))); tsin_buffer_size = (int) gtk_spin_button_get_value(GTK_SPIN_BUTTON(spinner_tsin_buffer_size)); save_hime_conf_int(TSIN_BUFFER_SIZE, tsin_buffer_size); gchar *cstr; #if 0 cstr = gtk_color_selection_palette_to_string(&tsin_phrase_line_gcolor, 1); dbg("color %s\n", cstr); save_hime_conf_str(TSIN_PHRASE_LINE_COLOR, cstr); g_free(cstr); #endif cstr = gtk_color_selection_palette_to_string(&tsin_cursor_gcolor, 1); dbg("color %s\n", cstr); save_hime_conf_str(TSIN_CURSOR_COLOR, cstr); g_free(cstr); send_hime_message( #if UNIX GDK_DISPLAY(), #endif "reload kbm"); gtk_widget_destroy(hime_kbm_window); hime_kbm_window = NULL; return TRUE; }