#define SCIM_TABLES_USE_GTK_FILE_CHOOSER
#endif
+#if GTK_CHECK_VERSION(3, 4, 0)
+ #define SCIM_TABLES_USE_GTK_GRID
+#endif
+
+#if GTK_CHECK_VERSION(3, 10, 0)
+#else
+ #define SCIM_TABLES_USE_GTK_STOCK
+#endif
+
+#if GTK_CHECK_VERSION(3, 14, 0)
+ #define SCIM_TABLES_USE_GTK_WIDGET_SET_ALIGN_MARGIN
+ #define SCIM_TABLES_USE_GTK_BUTTON_NEW_FROM_ICON_NAME
+#else
+ #define SCIM_TABLES_USE_GTK_TREE_VIEW_SET_RULES_HINT
+#endif
using namespace scim;
int i;
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ table = gtk_grid_new ();
+#else
table = gtk_table_new (3, 3, FALSE);
+#endif
gtk_widget_show (table);
// Create keyboard setting.
label = gtk_label_new (NULL);
gtk_label_set_text_with_mnemonic (GTK_LABEL (label), _(__config_keyboards[i].label));
gtk_widget_show (label);
+#ifdef SCIM_TABLES_USE_GTK_WIDGET_SET_ALIGN_MARGIN
+ gtk_widget_set_halign (label, GTK_ALIGN_END);
+ gtk_widget_set_valign (label, GTK_ALIGN_CENTER);
+ gtk_widget_set_margin_start (label, 4);
+ gtk_widget_set_margin_end (label, 4);
+#else
gtk_misc_set_alignment (GTK_MISC (label), 1.0, 0.5);
gtk_misc_set_padding (GTK_MISC (label), 4, 0);
+#endif
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (label, GTK_ALIGN_FILL);
+ gtk_widget_set_valign (label, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), label, 0, i, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), label, 0, 1, i, i+1,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (GTK_FILL), 4, 4);
+#endif
__config_keyboards [i].entry = gtk_entry_new ();
gtk_widget_show (__config_keyboards [i].entry);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (__config_keyboards [i].entry, GTK_ALIGN_FILL);
+ gtk_widget_set_valign (__config_keyboards [i].entry, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), __config_keyboards [i].entry, 1, i, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), __config_keyboards [i].entry, 1, 2, i, i+1,
(GtkAttachOptions) (GTK_FILL|GTK_EXPAND),
(GtkAttachOptions) (GTK_FILL), 4, 4);
+#endif
gtk_editable_set_editable (GTK_EDITABLE (__config_keyboards[i].entry), FALSE);
__config_keyboards[i].button = gtk_button_new_with_label ("...");
gtk_widget_show (__config_keyboards[i].button);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (__config_keyboards [i].button, GTK_ALIGN_FILL);
+ gtk_widget_set_valign (__config_keyboards [i].button, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), __config_keyboards [i].button, 2, i, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), __config_keyboards[i].button, 2, 3, i, i+1,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (GTK_FILL), 4, 4);
+#endif
gtk_label_set_mnemonic_widget (GTK_LABEL (label), __config_keyboards[i].button);
}
label = gtk_label_new (_("The installed tables:"));
gtk_widget_show (label);
gtk_box_pack_start (GTK_BOX (page), label, FALSE, FALSE, 2);
+#ifdef SCIM_TABLES_USE_GTK_WIDGET_SET_ALIGN_MARGIN
+ gtk_widget_set_halign (label, GTK_ALIGN_START);
+ gtk_widget_set_valign (label, GTK_ALIGN_CENTER);
+ gtk_widget_set_margin_start (label, 2);
+ gtk_widget_set_margin_end (label, 2);
+ gtk_widget_set_margin_top (label, 2);
+ gtk_widget_set_margin_bottom (label, 2);
+#else
gtk_misc_set_alignment (GTK_MISC (label), 0, 0.5);
gtk_misc_set_padding (GTK_MISC (label), 2, 2);
+#endif
#ifdef SCIM_TABLES_USE_GTK_BOX
hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0);
__widget_table_list_view = gtk_tree_view_new_with_model (GTK_TREE_MODEL (__widget_table_list_model));
gtk_widget_show (__widget_table_list_view);
gtk_tree_view_set_headers_visible (GTK_TREE_VIEW (__widget_table_list_view), TRUE);
+#if SCIM_TABLES_USE_GTK_TREE_VIEW_SET_RULES_HINT
gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (__widget_table_list_view), TRUE);
+#endif
gtk_container_add (GTK_CONTAINER (scrolledwindow), __widget_table_list_view);
// Create name column
_("Select an icon file"),
NULL,
GTK_FILE_CHOOSER_ACTION_OPEN,
- GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
- GTK_STOCK_OPEN, GTK_RESPONSE_OK,
+#ifdef SCIM_TABLES_USE_GTK_STOCK
+ GTK_STOCK_CANCEL,
+#else
+ _("_Cancel"),
+#endif
+ GTK_RESPONSE_CANCEL,
+#ifdef SCIM_TABLES_USE_GTK_STOCK
+ GTK_STOCK_OPEN,
+#else
+ _("_Open"),
+#endif
+ GTK_RESPONSE_OK,
NULL);
#else
GtkWidget *file_selection = gtk_file_selection_new (_("Select an icon file"));
_("Please select the table file to be installed."),
NULL,
GTK_FILE_CHOOSER_ACTION_OPEN,
- GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
- GTK_STOCK_OPEN, GTK_RESPONSE_OK,
+#ifdef SCIM_TABLES_USE_GTK_STOCK
+ GTK_STOCK_CANCEL,
+#else
+ _("_Cancel"),
+#endif
+ GTK_RESPONSE_CANCEL,
+#ifdef SCIM_TABLES_USE_GTK_STOCK
+ GTK_STOCK_OPEN,
+#else
+ _("_Open"),
+#endif
+ GTK_RESPONSE_OK,
NULL);
#else
file_selection = gtk_file_selection_new (_("Please select the table file to be installed."));
gtk_widget_show (viewport);
gtk_container_add (GTK_CONTAINER (scrolledwindow), viewport);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ table = gtk_grid_new ();
+#else
table = gtk_table_new (24, 2, FALSE);
+#endif
gtk_widget_show (table);
gtk_container_add (GTK_CONTAINER (viewport), table);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_grid_set_row_spacing (GTK_GRID (table), 2);
+ gtk_grid_set_column_spacing (GTK_GRID (table), 2);
+#else
gtk_table_set_row_spacings (GTK_TABLE (table), 2);
gtk_table_set_col_spacings (GTK_TABLE (table), 2);
+#endif
// Name
label = gtk_label_new (_("Name:"));
gtk_widget_show (label);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (label, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), label, 0, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), label, 0, 1, row, row+1,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
+#endif
+#ifdef SCIM_TABLES_USE_GTK_WIDGET_SET_ALIGN_MARGIN
+ gtk_widget_set_halign (label, GTK_ALIGN_END);
+ gtk_widget_set_valign (label, GTK_ALIGN_CENTER);
+#else
gtk_misc_set_alignment (GTK_MISC (label), 1, 0.5);
+#endif
entry_name = gtk_entry_new ();
gtk_widget_show (entry_name);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (entry_name, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), entry_name, 1, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), entry_name, 1, 2, row, row+1,
(GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
+#endif
const gchar *name_tooltip = _("The name of this table.");
#ifdef SCIM_TABLES_USE_GTK_TOOLTIPS
// Author
label = gtk_label_new (_("Author:"));
gtk_widget_show (label);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (label, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), label, 0, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), label, 0, 1, row, row+1,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
+#endif
+#ifdef SCIM_TABLES_USE_GTK_WIDGET_SET_ALIGN_MARGIN
+ gtk_widget_set_halign (label, GTK_ALIGN_END);
+ gtk_widget_set_valign (label, GTK_ALIGN_CENTER);
+#else
gtk_misc_set_alignment (GTK_MISC (label), 1, 0.5);
+#endif
entry_author = gtk_entry_new ();
gtk_widget_show (entry_author);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (entry_author, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), entry_author, 1, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), entry_author, 1, 2, row, row+1,
(GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
+#endif
const gchar *author_tooltip = _("The author of this table.");
#ifdef SCIM_TABLES_USE_GTK_TOOLTIPS
// UUID
label = gtk_label_new (_("UUID:"));
gtk_widget_show (label);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (label, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), label, 0, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), label, 0, 1, row, row+1,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
+#endif
+#ifdef SCIM_TABLES_USE_GTK_WIDGET_SET_ALIGN_MARGIN
+ gtk_widget_set_halign (label, GTK_ALIGN_END);
+ gtk_widget_set_valign (label, GTK_ALIGN_CENTER);
+#else
gtk_misc_set_alignment (GTK_MISC (label), 1, 0.5);
+#endif
entry_uuid = gtk_entry_new ();
gtk_widget_show (entry_uuid);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (entry_uuid, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), entry_uuid, 1, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), entry_uuid, 1, 2, row, row+1,
(GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
+#endif
const gchar *uuid_tooltip = _("The unique ID of this table.");
#ifdef SCIM_TABLES_USE_GTK_TOOLTIPS
// Serial Number
label = gtk_label_new (_("Serial Number:"));
gtk_widget_show (label);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (label, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), label, 0, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), label, 0, 1, row, row+1,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
+#endif
+#ifdef SCIM_TABLES_USE_GTK_WIDGET_SET_ALIGN_MARGIN
+ gtk_widget_set_halign (label, GTK_ALIGN_END);
+ gtk_widget_set_valign (label, GTK_ALIGN_CENTER);
+#else
gtk_misc_set_alignment (GTK_MISC (label), 1, 0.5);
+#endif
entry_serial = gtk_entry_new ();
gtk_widget_show (entry_serial);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (entry_serial, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), entry_serial, 1, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), entry_serial, 1, 2, row, row+1,
(GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
+#endif
const gchar *serial_tooltip = _("The serial number of this table.");
#ifdef SCIM_TABLES_USE_GTK_TOOLTIPS
// Icon file
label = gtk_label_new (_("Icon File:"));
gtk_widget_show (label);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (label, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), label, 0, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), label, 0, 1, row, row+1,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
+#endif
+#ifdef SCIM_TABLES_USE_GTK_WIDGET_SET_ALIGN_MARGIN
+ gtk_widget_set_halign (label, GTK_ALIGN_END);
+ gtk_widget_set_valign (label, GTK_ALIGN_CENTER);
+#else
gtk_misc_set_alignment (GTK_MISC (label), 1, 0.5);
+#endif
#ifdef SCIM_TABLES_USE_GTK_BOX
hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0);
hbox = gtk_hbox_new (FALSE, 0);
#endif
gtk_widget_show (hbox);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (hbox, GTK_ALIGN_FILL);
+ gtk_widget_set_valign (hbox, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), hbox, 1, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), hbox, 1, 2, row, row+1,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (GTK_FILL), 0, 0);
+#endif
entry_icon = gtk_entry_new ();
gtk_widget_show (entry_icon);
// Supported Languages
label = gtk_label_new (_("Supported Languages:"));
gtk_widget_show (label);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (label, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), label, 0, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), label, 0, 1, row, row+1,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
+#endif
+#ifdef SCIM_TABLES_USE_GTK_WIDGET_SET_ALIGN_MARGIN
+ gtk_widget_set_halign (label, GTK_ALIGN_END);
+ gtk_widget_set_valign (label, GTK_ALIGN_CENTER);
+#else
gtk_misc_set_alignment (GTK_MISC (label), 1, 0.5);
+#endif
entry_languages = gtk_entry_new ();
gtk_widget_show (entry_languages);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (entry_languages, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), entry_languages, 1, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), entry_languages, 1, 2, row, row+1,
(GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
+#endif
const gchar *languages_tooltip = _("The languages supported by this table.");
#ifdef SCIM_TABLES_USE_GTK_TOOLTIPS
// Status Prompts
label = gtk_label_new (_("Status Prompt:"));
gtk_widget_show (label);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (label, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), label, 0, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), label, 0, 1, row, row+1,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
+#endif
+#ifdef SCIM_TABLES_USE_GTK_WIDGET_SET_ALIGN_MARGIN
+ gtk_widget_set_halign (label, GTK_ALIGN_END);
+ gtk_widget_set_valign (label, GTK_ALIGN_CENTER);
+#else
gtk_misc_set_alignment (GTK_MISC (label), 1, 0.5);
+#endif
entry_status_prompt = gtk_entry_new ();
gtk_widget_show (entry_status_prompt);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (entry_status_prompt, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), entry_status_prompt, 1, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), entry_status_prompt, 1, 2, row, row+1,
(GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
+#endif
const gchar *status_prompt_tooltip = _("A prompt string to be shown in status area.");
#ifdef SCIM_TABLES_USE_GTK_TOOLTIPS
// Valid Input Chars
label = gtk_label_new (_("Valid Input Chars:"));
gtk_widget_show (label);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (label, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), label, 0, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), label, 0, 1, row, row+1,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
+#endif
+#ifdef SCIM_TABLES_USE_GTK_WIDGET_SET_ALIGN_MARGIN
+ gtk_widget_set_halign (label, GTK_ALIGN_END);
+ gtk_widget_set_valign (label, GTK_ALIGN_CENTER);
+#else
gtk_misc_set_alignment (GTK_MISC (label), 1, 0.5);
+#endif
entry_valid_input_chars = gtk_entry_new ();
gtk_widget_show (entry_valid_input_chars);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (entry_valid_input_chars, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), entry_valid_input_chars, 1, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), entry_valid_input_chars, 1, 2, row, row+1,
(GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
+#endif
const gchar *valid_input_chars_tooltip = _("The valid input chars of this table.");
#ifdef SCIM_TABLES_USE_GTK_TOOLTIPS
// Mulit Wildcard Char
label = gtk_label_new (_("Multi Wildcard Char:"));
gtk_widget_show (label);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (label, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), label, 0, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), label, 0, 1, row, row+1,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
+#endif
+#ifdef SCIM_TABLES_USE_GTK_WIDGET_SET_ALIGN_MARGIN
+ gtk_widget_set_halign (label, GTK_ALIGN_END);
+ gtk_widget_set_valign (label, GTK_ALIGN_CENTER);
+#else
gtk_misc_set_alignment (GTK_MISC (label), 1, 0.5);
+#endif
entry_multi_wildcard_chars = gtk_entry_new ();
gtk_widget_show (entry_multi_wildcard_chars);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (entry_multi_wildcard_chars, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), entry_multi_wildcard_chars, 1, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), entry_multi_wildcard_chars, 1, 2, row, row+1,
(GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
+#endif
const gchar *multi_wildcard_chars_tooltip =
_("The multi wildcard chars of this table. "
// Single Wildcard Char
label = gtk_label_new (_("Single Wildcard Char:"));
gtk_widget_show (label);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (label, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), label, 0, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), label, 0, 1, row, row+1,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
+#endif
+#ifdef SCIM_TABLES_USE_GTK_WIDGET_SET_ALIGN_MARGIN
+ gtk_widget_set_halign (label, GTK_ALIGN_END);
+ gtk_widget_set_valign (label, GTK_ALIGN_CENTER);
+#else
gtk_misc_set_alignment (GTK_MISC (label), 1, 0.5);
+#endif
entry_single_wildcard_chars = gtk_entry_new ();
gtk_widget_show (entry_single_wildcard_chars);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (entry_single_wildcard_chars, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), entry_single_wildcard_chars, 1, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), entry_single_wildcard_chars, 1, 2, row, row+1,
(GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
+#endif
const gchar *single_wildcard_chars_tooltip =
_("The single wildcard chars of this table."
for (int i = 0; all_keys [i]; ++i) {
label = gtk_label_new (all_keys [i]->label);
gtk_widget_show (label);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (label, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), label, 0, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), label, 0, 1, row, row+1,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
+#endif
+#ifdef SCIM_TABLES_USE_GTK_WIDGET_SET_ALIGN_MARGIN
+ gtk_widget_set_halign (label, GTK_ALIGN_END);
+ gtk_widget_set_valign (label, GTK_ALIGN_CENTER);
+#else
gtk_misc_set_alignment (GTK_MISC (label), 1, 0.5);
+#endif
#ifdef SCIM_TABLES_USE_GTK_BOX
hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0);
hbox = gtk_hbox_new (FALSE, 0);
#endif
gtk_widget_show (hbox);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (hbox, GTK_ALIGN_FILL);
+ gtk_widget_set_valign (hbox, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), hbox, 1, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), hbox, 1, 2, row, row+1,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (GTK_FILL), 0, 0);
+#endif
all_keys [i]->entry = gtk_entry_new ();
gtk_widget_show (all_keys [i]->entry);
// Max key length
label = gtk_label_new (_("Max Key Length:"));
gtk_widget_show (label);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (label, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), label, 0, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), label, 0, 1, row, row+1,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
+#endif
+#ifdef SCIM_TABLES_USE_GTK_WIDGET_SET_ALIGN_MARGIN
+ gtk_widget_set_halign (label, GTK_ALIGN_END);
+ gtk_widget_set_valign (label, GTK_ALIGN_CENTER);
+#else
gtk_misc_set_alignment (GTK_MISC (label), 1, 0.5);
+#endif
spin_max_key_length = gtk_spin_button_new_with_range (1, SCIM_GT_MAX_KEY_LENGTH, 1);
gtk_spin_button_set_digits (GTK_SPIN_BUTTON (spin_max_key_length), 0);
gtk_widget_show (spin_max_key_length);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (spin_max_key_length, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), spin_max_key_length, 1, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), spin_max_key_length, 1, 2, row, row+1,
(GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
+#endif
const gchar *max_key_length_tooltip = _("The maxmium length of key strings.");
#ifdef SCIM_TABLES_USE_GTK_TOOLTIPS
// Show key prompt.
label = gtk_label_new (_("Show Key Prompt:"));
gtk_widget_show (label);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (label, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), label, 0, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), label, 0, 1, row, row+1,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
+#endif
+#ifdef SCIM_TABLES_USE_GTK_WIDGET_SET_ALIGN_MARGIN
+ gtk_widget_set_halign (label, GTK_ALIGN_END);
+ gtk_widget_set_valign (label, GTK_ALIGN_CENTER);
+#else
gtk_misc_set_alignment (GTK_MISC (label), 1, 0.5);
+#endif
toggle_show_key_prompt = gtk_toggle_button_new_with_label (_("True"));
gtk_widget_show (toggle_show_key_prompt);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (toggle_show_key_prompt, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), toggle_show_key_prompt, 1, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), toggle_show_key_prompt, 1, 2, row, row+1,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
+#endif
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (toggle_show_key_prompt), TRUE);
g_signal_connect (G_OBJECT (toggle_show_key_prompt), "toggled",
G_CALLBACK (on_toggle_button_toggled),
// Auto Select
label = gtk_label_new (_("Auto Select:"));
gtk_widget_show (label);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (label, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), label, 0, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), label, 0, 1, row, row+1,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
+#endif
+#ifdef SCIM_TABLES_USE_GTK_WIDGET_SET_ALIGN_MARGIN
+ gtk_widget_set_halign (label, GTK_ALIGN_END);
+ gtk_widget_set_valign (label, GTK_ALIGN_CENTER);
+#else
gtk_misc_set_alignment (GTK_MISC (label), 1, 0.5);
+#endif
toggle_auto_select = gtk_toggle_button_new_with_label (_("True"));
gtk_widget_show (toggle_auto_select);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (toggle_auto_select, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), toggle_auto_select, 1, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), toggle_auto_select, 1, 2, row, row+1,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
+#endif
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (toggle_auto_select), TRUE);
g_signal_connect (G_OBJECT (toggle_auto_select), "toggled",
G_CALLBACK (on_toggle_button_toggled),
// Auto Wildcard
label = gtk_label_new (_("Auto Wildcard:"));
gtk_widget_show (label);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (label, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), label, 0, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), label, 0, 1, row, row+1,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
+#endif
+#ifdef SCIM_TABLES_USE_GTK_WIDGET_SET_ALIGN_MARGIN
+ gtk_widget_set_halign (label, GTK_ALIGN_END);
+ gtk_widget_set_valign (label, GTK_ALIGN_CENTER);
+#else
gtk_misc_set_alignment (GTK_MISC (label), 1, 0.5);
+#endif
toggle_auto_wildcard = gtk_toggle_button_new_with_label (_("True"));
gtk_widget_show (toggle_auto_wildcard);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (toggle_auto_wildcard, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), toggle_auto_wildcard, 1, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), toggle_auto_wildcard, 1, 2, row, row+1,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
+#endif
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (toggle_auto_wildcard), TRUE);
g_signal_connect (G_OBJECT (toggle_auto_wildcard), "toggled",
G_CALLBACK (on_toggle_button_toggled),
// Auto Commit
label = gtk_label_new (_("Auto Commit:"));
gtk_widget_show (label);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (label, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), label, 0, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), label, 0, 1, row, row+1,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
+#endif
+#ifdef SCIM_TABLES_USE_GTK_WIDGET_SET_ALIGN_MARGIN
+ gtk_widget_set_halign (label, GTK_ALIGN_END);
+ gtk_widget_set_valign (label, GTK_ALIGN_CENTER);
+#else
gtk_misc_set_alignment (GTK_MISC (label), 1, 0.5);
+#endif
toggle_auto_commit = gtk_toggle_button_new_with_label (_("True"));
gtk_widget_show (toggle_auto_commit);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (toggle_auto_commit, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), toggle_auto_commit, 1, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), toggle_auto_commit, 1, 2, row, row+1,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
+#endif
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (toggle_auto_commit), TRUE);
g_signal_connect (G_OBJECT (toggle_auto_commit), "toggled",
G_CALLBACK (on_toggle_button_toggled),
// Auto Split
label = gtk_label_new (_("Auto Split:"));
gtk_widget_show (label);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (label, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), label, 0, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), label, 0, 1, row, row+1,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
+#endif
+#ifdef SCIM_TABLES_USE_GTK_WIDGET_SET_ALIGN_MARGIN
+ gtk_widget_set_halign (label, GTK_ALIGN_END);
+ gtk_widget_set_valign (label, GTK_ALIGN_CENTER);
+#else
gtk_misc_set_alignment (GTK_MISC (label), 1, 0.5);
+#endif
toggle_auto_split = gtk_toggle_button_new_with_label (_("True"));
gtk_widget_show (toggle_auto_split);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (toggle_auto_split, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), toggle_auto_split, 1, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), toggle_auto_split, 1, 2, row, row+1,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
+#endif
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (toggle_auto_split), TRUE);
g_signal_connect (G_OBJECT (toggle_auto_split), "toggled",
G_CALLBACK (on_toggle_button_toggled),
// Discard Invalid Key
label = gtk_label_new (_("Discard Invalid Key:"));
gtk_widget_show (label);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (label, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), label, 0, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), label, 0, 1, row, row+1,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
+#endif
+#ifdef SCIM_TABLES_USE_GTK_WIDGET_SET_ALIGN_MARGIN
+ gtk_widget_set_halign (label, GTK_ALIGN_END);
+ gtk_widget_set_valign (label, GTK_ALIGN_CENTER);
+#else
gtk_misc_set_alignment (GTK_MISC (label), 1, 0.5);
+#endif
toggle_discard_invalid_key = gtk_toggle_button_new_with_label (_("True"));
gtk_widget_show (toggle_discard_invalid_key);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (toggle_discard_invalid_key, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), toggle_discard_invalid_key, 1, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), toggle_discard_invalid_key, 1, 2, row, row+1,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
+#endif
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (toggle_discard_invalid_key), TRUE);
g_signal_connect (G_OBJECT (toggle_discard_invalid_key), "toggled",
G_CALLBACK (on_toggle_button_toggled),
// Dynamic Adjust
label = gtk_label_new (_("Dynamic Adjust:"));
gtk_widget_show (label);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (label, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), label, 0, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), label, 0, 1, row, row+1,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
+#endif
+#ifdef SCIM_TABLES_USE_GTK_WIDGET_SET_ALIGN_MARGIN
+ gtk_widget_set_halign (label, GTK_ALIGN_END);
+ gtk_widget_set_valign (label, GTK_ALIGN_CENTER);
+#else
gtk_misc_set_alignment (GTK_MISC (label), 1, 0.5);
+#endif
toggle_dynamic_adjust = gtk_toggle_button_new_with_label (_("True"));
gtk_widget_show (toggle_dynamic_adjust);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (toggle_dynamic_adjust, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), toggle_dynamic_adjust, 1, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), toggle_dynamic_adjust, 1, 2, row, row+1,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
+#endif
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (toggle_dynamic_adjust), TRUE);
g_signal_connect (G_OBJECT (toggle_dynamic_adjust), "toggled",
G_CALLBACK (on_toggle_button_toggled),
// Auto Fill Preedit String
label = gtk_label_new (_("Auto Fill Preedit Area:"));
gtk_widget_show (label);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (label, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), label, 0, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), label, 0, 1, row, row+1,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
+#endif
+#ifdef SCIM_TABLES_USE_GTK_WIDGET_SET_ALIGN_MARGIN
+ gtk_widget_set_halign (label, GTK_ALIGN_END);
+ gtk_widget_set_valign (label, GTK_ALIGN_CENTER);
+#else
gtk_misc_set_alignment (GTK_MISC (label), 1, 0.5);
+#endif
toggle_auto_fill = gtk_toggle_button_new_with_label (_("True"));
gtk_widget_show (toggle_auto_fill);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (toggle_auto_fill, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), toggle_auto_fill, 1, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), toggle_auto_fill, 1, 2, row, row+1,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
+#endif
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (toggle_auto_fill), TRUE);
g_signal_connect (G_OBJECT (toggle_auto_fill), "toggled",
G_CALLBACK (on_toggle_button_toggled),
// Always Show Lookup
label = gtk_label_new (_("Always Show Lookup Table:"));
gtk_widget_show (label);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (label, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), label, 0, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), label, 0, 1, row, row+1,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
+#endif
+#ifdef SCIM_TABLES_USE_GTK_WIDGET_SET_ALIGN_MARGIN
+ gtk_widget_set_halign (label, GTK_ALIGN_END);
+ gtk_widget_set_valign (label, GTK_ALIGN_CENTER);
+#else
gtk_misc_set_alignment (GTK_MISC (label), 1, 0.5);
+#endif
toggle_always_show_lookup = gtk_toggle_button_new_with_label (_("True"));
gtk_widget_show (toggle_always_show_lookup);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (toggle_always_show_lookup, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), toggle_always_show_lookup, 1, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), toggle_always_show_lookup, 1, 2, row, row+1,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
+#endif
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (toggle_always_show_lookup), TRUE);
g_signal_connect (G_OBJECT (toggle_always_show_lookup), "toggled",
G_CALLBACK (on_toggle_button_toggled),
// Default full width punctuation
label = gtk_label_new (_("Default Full Width Punct:"));
gtk_widget_show (label);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (label, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), label, 0, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), label, 0, 1, row, row+1,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
+#endif
+#ifdef SCIM_TABLES_USE_GTK_WIDGET_SET_ALIGN_MARGIN
+ gtk_widget_set_halign (label, GTK_ALIGN_END);
+ gtk_widget_set_valign (label, GTK_ALIGN_CENTER);
+#else
gtk_misc_set_alignment (GTK_MISC (label), 1, 0.5);
+#endif
toggle_def_full_width_punct = gtk_toggle_button_new_with_label (_("True"));
gtk_widget_show (toggle_def_full_width_punct);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (toggle_def_full_width_punct, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), toggle_def_full_width_punct, 1, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), toggle_def_full_width_punct, 1, 2, row, row+1,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
+#endif
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (toggle_def_full_width_punct), TRUE);
g_signal_connect (G_OBJECT (toggle_def_full_width_punct), "toggled",
G_CALLBACK (on_toggle_button_toggled),
// Default full width letter
label = gtk_label_new (_("Default Full Width Letter:"));
gtk_widget_show (label);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (label, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), label, 0, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), label, 0, 1, row, row+1,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
+#endif
+#ifdef SCIM_TABLES_USE_GTK_WIDGET_SET_ALIGN_MARGIN
+ gtk_widget_set_halign (label, GTK_ALIGN_END);
+ gtk_widget_set_valign (label, GTK_ALIGN_CENTER);
+#else
gtk_misc_set_alignment (GTK_MISC (label), 1, 0.5);
+#endif
toggle_def_full_width_letter = gtk_toggle_button_new_with_label (_("True"));
gtk_widget_show (toggle_def_full_width_letter);
+#ifdef SCIM_TABLES_USE_GTK_GRID
+ gtk_widget_set_halign (toggle_def_full_width_letter, GTK_ALIGN_FILL);
+ gtk_grid_attach (GTK_GRID (table), toggle_def_full_width_letter, 1, row, 1, 1);
+#else
gtk_table_attach (GTK_TABLE (table), toggle_def_full_width_letter, 1, 2, row, row+1,
(GtkAttachOptions) (GTK_FILL),
(GtkAttachOptions) (0), 0, 0);
+#endif
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (toggle_def_full_width_letter), TRUE);
g_signal_connect (G_OBJECT (toggle_def_full_width_letter), "toggled",
G_CALLBACK (on_toggle_button_toggled),
// action buttons
#ifdef SCIM_TABLES_USE_GTK_DIALOG_GET_ACTION_AREA
+ G_GNUC_BEGIN_IGNORE_DEPRECATIONS
dialog_action_area = gtk_dialog_get_action_area (GTK_DIALOG (dialog));
+ G_GNUC_END_IGNORE_DEPRECATIONS
#else
dialog_action_area = GTK_DIALOG (dialog)->action_area;
#endif
gtk_widget_show (dialog_action_area);
gtk_button_box_set_layout (GTK_BUTTON_BOX (dialog_action_area), GTK_BUTTONBOX_END);
+#ifdef SCIM_TABLES_USE_GTK_BUTTON_NEW_FROM_ICON_NAME
+ cancelbutton = gtk_button_new_from_icon_name ("gtk-cancel", GTK_ICON_SIZE_BUTTON);
+#else
cancelbutton = gtk_button_new_from_stock ("gtk-cancel");
+#endif
gtk_widget_show (cancelbutton);
gtk_dialog_add_action_widget (GTK_DIALOG (dialog), cancelbutton, GTK_RESPONSE_CANCEL);
#ifdef SCIM_TABLES_USE_GTK_WIDGET_GET_CAN_DEFAULT
#endif
+#ifdef SCIM_TABLES_USE_GTK_BUTTON_NEW_FROM_ICON_NAME
+ okbutton = gtk_button_new_from_icon_name ("gtk-ok", GTK_ICON_SIZE_BUTTON);
+#else
okbutton = gtk_button_new_from_stock ("gtk-ok");
+#endif
gtk_widget_show (okbutton);
gtk_dialog_add_action_widget (GTK_DIALOG (dialog), okbutton, GTK_RESPONSE_OK);
#ifdef SCIM_TABLES_USE_GTK_WIDGET_GET_CAN_DEFAULT