diff --git a/scim-wnn/src/scim_wnn_imengine_setup.cpp b/scim-wnn/src/scim_wnn_imengine_setup.cpp index fce51a5..48c475f 100644 --- a/scim-wnn/src/scim_wnn_imengine_setup.cpp +++ b/scim-wnn/src/scim_wnn_imengine_setup.cpp @@ -151,6 +151,7 @@ static String __config_preeditor = SCIM_DEFAULT_WNN_DEFAULT_PREEDITOR; static bool __config_yosoku = SCIM_DEFAULT_WNN_YOSOKU; static bool __config_numkeyselect = SCIM_DEFAULT_WNN_NUMKEY_SELECT; +static bool __config_autoconversion = SCIM_DEFAULT_WNN_AUTO_CONVERSION; static int __config_alp = SCIM_DEFAULT_WNN_ALP; static bool __have_changed = true; @@ -163,6 +164,7 @@ static GtkWidget * __widget_yosoku = 0; static GtkWidget * __widget_alp = 0; static GtkWidget * __widget_numkeyselect = 0; +static GtkWidget * __widget_autoconversion = 0; static GtkTooltips * __widget_tooltips = 0; static ListData __list_data [] = @@ -398,6 +400,15 @@ static KeyboardConfigData __config_keyboards_other [] = { { + SCIM_CONFIG_WNN_KEY_AUTO_CONVERSION, + SCIM_DEFAULT_WNN_KEY_AUTO_CONVERSION, + N_("auto conversion mode keys:"), + N_("Select auto conversion mode keys"), + N_("The key events to change auto conversion mode. "), + NULL, + NULL, + }, + { SCIM_CONFIG_WNN_KEY_SELECT_YOSOKU, SCIM_DEFAULT_WNN_KEY_SELECT_YOSOKU, N_("Yosoku keys:"), @@ -636,9 +647,8 @@ gtk_tooltips_set_tip (__widget_tooltips, __widget_numkeyselect, _("If you use the candidate selection by numkey, check this."), NULL); - - /* completion */ - label = gtk_label_new_with_mnemonic (_("_YOSOKU-input: ")); + /* auto conversion */ + label = gtk_label_new_with_mnemonic (_("Auto _conversion: ")); gtk_widget_show (label); gtk_misc_set_alignment (GTK_MISC (label), 1.0, 0.5); gtk_misc_set_padding (GTK_MISC (label), 4, 0); @@ -646,9 +656,28 @@ (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_FILL), 4, 4); + __widget_autoconversion = gtk_check_button_new(); + gtk_widget_show (__widget_autoconversion); + gtk_table_attach (GTK_TABLE (table), __widget_autoconversion, 1, 2, 6, 7, + (GtkAttachOptions) (GTK_FILL), + (GtkAttachOptions) (GTK_FILL), 4, 4); + gtk_label_set_mnemonic_widget (GTK_LABEL (label), __widget_autoconversion); + gtk_tooltips_set_tip (__widget_tooltips, __widget_autoconversion, + _("If you set default to the auto conversion mode use, check this."), NULL); + + + /* completion */ + label = gtk_label_new_with_mnemonic (_("_YOSOKU-input: ")); + gtk_widget_show (label); + gtk_misc_set_alignment (GTK_MISC (label), 1.0, 0.5); + gtk_misc_set_padding (GTK_MISC (label), 4, 0); + gtk_table_attach (GTK_TABLE (table), label, 0, 1, 7, 8, + (GtkAttachOptions) (GTK_FILL), + (GtkAttachOptions) (GTK_FILL), 4, 4); + __widget_yosoku = gtk_check_button_new(); gtk_widget_show (__widget_yosoku); - gtk_table_attach (GTK_TABLE (table), __widget_yosoku, 1, 2, 6, 7, + gtk_table_attach (GTK_TABLE (table), __widget_yosoku, 1, 2, 7, 8, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_FILL), 4, 4); gtk_label_set_mnemonic_widget (GTK_LABEL (label), __widget_yosoku); @@ -678,6 +707,9 @@ g_signal_connect ((gpointer) __widget_numkeyselect, "toggled", G_CALLBACK (on_default_toggle_button_toggled), &__config_numkeyselect); + g_signal_connect ((gpointer) __widget_autoconversion, "toggled", + G_CALLBACK (on_default_toggle_button_toggled), + &__config_autoconversion); g_signal_connect ((gpointer) __widget_yosoku, "toggled", G_CALLBACK (on_default_toggle_button_toggled), &__config_yosoku); @@ -827,6 +859,12 @@ __config_numkeyselect); } + if (__widget_autoconversion) { + gtk_toggle_button_set_active ( + GTK_TOGGLE_BUTTON (__widget_autoconversion), + __config_autoconversion); + } + if (__widget_yosoku) { gtk_toggle_button_set_active ( GTK_TOGGLE_BUTTON (__widget_yosoku), @@ -869,6 +907,9 @@ __config_numkeyselect = config->read (String (SCIM_CONFIG_WNN_NUMKEY_SELECT), __config_numkeyselect); + __config_autoconversion = + config->read (String (SCIM_CONFIG_WNN_AUTO_CONVERSION), + __config_autoconversion); __config_yosoku = config->read (String (SCIM_CONFIG_WNN_YOSOKU), __config_yosoku); @@ -905,6 +946,8 @@ __config_alp); config->write (String (SCIM_CONFIG_WNN_NUMKEY_SELECT), __config_numkeyselect); + config->write (String (SCIM_CONFIG_WNN_AUTO_CONVERSION), + __config_autoconversion); config->write (String (SCIM_CONFIG_WNN_YOSOKU), __config_yosoku);