From 41fe23adc1d8a336c1c1c0792ea607b0db3787c1 Mon Sep 17 00:00:00 2001 From: Milan Crha Date: Mon, 3 Aug 2009 12:07:11 +0200 Subject: Bug #325278 - cannot access parts of "save calendar" without mouse --- plugins/save-calendar/csv-format.c | 13 ++++++++----- plugins/save-calendar/save-calendar.c | 17 +++++++++++++---- 2 files changed, 21 insertions(+), 9 deletions(-) (limited to 'plugins/save-calendar') diff --git a/plugins/save-calendar/csv-format.c b/plugins/save-calendar/csv-format.c index b296bb9736..04168695d9 100644 --- a/plugins/save-calendar/csv-format.c +++ b/plugins/save-calendar/csv-format.c @@ -520,14 +520,14 @@ static GtkWidget * create_options_widget (FormatHandler *handler) { GtkWidget *table = gtk_table_new (4, 2, FALSE), *label = NULL, - *csv_options = gtk_expander_new (_("Advanced options for the CSV format")), + *csv_options = gtk_expander_new_with_mnemonic (_("A_dvanced options for the CSV format")), *vbox = gtk_vbox_new (FALSE, 0); CsvPluginData *d = handler->data; d->delimiter_entry = gtk_entry_new (); d->newline_entry = gtk_entry_new (); d->quote_entry = gtk_entry_new (); - d->header_check = gtk_check_button_new_with_label (_("Prepend a header")); + d->header_check = gtk_check_button_new_with_mnemonic (_("Prepend a _header")); /* Advanced CSV options */ gtk_entry_set_text (GTK_ENTRY(d->delimiter_entry), ", "); @@ -536,20 +536,23 @@ create_options_widget (FormatHandler *handler) gtk_table_set_row_spacings (GTK_TABLE (table), 5); gtk_table_set_col_spacings (GTK_TABLE (table), 5); - label = gtk_label_new (_("Value delimiter:")); + label = gtk_label_new_with_mnemonic (_("_Value delimiter:")); gtk_misc_set_alignment (GTK_MISC (label), 0, 0.0); + gtk_label_set_mnemonic_widget (GTK_LABEL (label), d->delimiter_entry); gtk_table_attach (GTK_TABLE (table), label, 0, 1, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_table_attach (GTK_TABLE (table), d->delimiter_entry, 1, 2, 0, 1, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); - label = gtk_label_new (_("Record delimiter:")); + label = gtk_label_new_with_mnemonic (_("_Record delimiter:")); gtk_misc_set_alignment (GTK_MISC (label), 0, 0.0); + gtk_label_set_mnemonic_widget (GTK_LABEL (label), d->newline_entry); gtk_table_attach (GTK_TABLE (table), label, 0, 1, 1, 2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_table_attach (GTK_TABLE (table), d->newline_entry, 1, 2, 1, 2, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); - label = gtk_label_new (_("Encapsulate values with:")); + label = gtk_label_new_with_mnemonic (_("_Encapsulate values with:")); gtk_misc_set_alignment (GTK_MISC (label), 0, 0.0); + gtk_label_set_mnemonic_widget (GTK_LABEL (label), d->quote_entry); gtk_table_attach (GTK_TABLE (table), label, 0, 1, 2, 3, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_table_attach (GTK_TABLE (table), d->quote_entry, 1, 2, 2, 3, diff --git a/plugins/save-calendar/save-calendar.c b/plugins/save-calendar/save-calendar.c index 119009f69e..0959555db4 100644 --- a/plugins/save-calendar/save-calendar.c +++ b/plugins/save-calendar/save-calendar.c @@ -66,7 +66,7 @@ on_type_combobox_changed (GtkComboBox *combobox, gpointer data) GtkTreeModel *model = gtk_combo_box_get_model (combobox); gtk_container_foreach (GTK_CONTAINER (extra_widget), - extra_widget_foreach_hide, combobox); + extra_widget_foreach_hide, g_object_get_data (G_OBJECT (combobox), "format-box")); gtk_combo_box_get_active_iter (combobox, &iter); @@ -100,6 +100,8 @@ ask_destination_and_save (EPlugin *ep, ECalPopupTargetSource *target, ECalSource FormatHandler *handler = NULL; GtkWidget *extra_widget = gtk_vbox_new (FALSE, 0); + GtkWidget *hbox = gtk_hbox_new (FALSE, 0); + GtkLabel *label = GTK_LABEL (gtk_label_new_with_mnemonic (_("_Format:"))); GtkComboBox *combo = GTK_COMBO_BOX(gtk_combo_box_new ()); GtkTreeModel *model = GTK_TREE_MODEL (gtk_list_store_new (N_DEST_COLUMNS, G_TYPE_STRING, G_TYPE_POINTER)); @@ -119,9 +121,13 @@ ask_destination_and_save (EPlugin *ep, ECalPopupTargetSource *target, ECalSource format_handlers = g_list_append (format_handlers, rdf_format_handler_new ()); + gtk_box_pack_start (GTK_BOX (extra_widget), GTK_WIDGET (hbox), FALSE, FALSE, 0); + gtk_label_set_mnemonic_widget (label, GTK_WIDGET (combo)); + + gtk_box_pack_start (GTK_BOX (hbox), GTK_WIDGET (label), FALSE, FALSE, 0); + /* The Type GtkComboBox */ - gtk_box_pack_start (GTK_BOX (extra_widget), GTK_WIDGET (combo), - TRUE, TRUE, 0); + gtk_box_pack_start (GTK_BOX (hbox), GTK_WIDGET (combo), TRUE, TRUE, 0); gtk_combo_box_set_model (combo, model); gtk_list_store_clear (store); @@ -154,6 +160,7 @@ ask_destination_and_save (EPlugin *ep, ECalPopupTargetSource *target, ECalSource g_signal_connect (G_OBJECT(combo), "changed", G_CALLBACK (on_type_combobox_changed), extra_widget); + g_object_set_data (G_OBJECT (combo), "format-box", hbox); dialog = gtk_file_chooser_dialog_new (_("Select destination file"), NULL, @@ -165,7 +172,9 @@ ask_destination_and_save (EPlugin *ep, ECalPopupTargetSource *target, ECalSource gtk_dialog_set_default_response (GTK_DIALOG (dialog), GTK_RESPONSE_OK); gtk_file_chooser_set_extra_widget (GTK_FILE_CHOOSER (dialog), extra_widget); gtk_file_chooser_set_local_only (GTK_FILE_CHOOSER (dialog), FALSE); - gtk_widget_show (GTK_WIDGET(combo)); + gtk_widget_show (hbox); + gtk_widget_show (GTK_WIDGET (label)); + gtk_widget_show (GTK_WIDGET (combo)); gtk_widget_show (extra_widget); if (gtk_dialog_run (GTK_DIALOG (dialog)) == GTK_RESPONSE_OK) { -- cgit v1.2.3