From: Andrej Kacian Date: Thu, 16 Mar 2017 18:14:49 +0000 (+0100) Subject: Allow custom window title for the folder selection dialog. X-Git-Tag: 3.15.0~23 X-Git-Url: http://git.claws-mail.org/?p=claws.git;a=commitdiff_plain;h=bd8213fe Allow custom window title for the folder selection dialog. Fixes bug #3582 - Select folder dialogue does not tell what is selecting for. --- diff --git a/src/compose.c b/src/compose.c index 524e853ab..7cd072987 100644 --- a/src/compose.c +++ b/src/compose.c @@ -7446,7 +7446,8 @@ static void compose_savemsg_select_cb(GtkWidget *widget, Compose *compose) FolderItem *dest; gchar * path; - dest = foldersel_folder_sel(NULL, FOLDER_SEL_COPY, NULL, FALSE); + dest = foldersel_folder_sel(NULL, FOLDER_SEL_COPY, NULL, FALSE, + _("Select folder to save message to")); if (!dest) return; path = folder_item_get_identifier(dest); diff --git a/src/export.c b/src/export.c index 29bd524fe..74e465ee2 100644 --- a/src/export.c +++ b/src/export.c @@ -264,7 +264,8 @@ static void export_srcsel_cb(GtkWidget *widget, gpointer data) { FolderItem *src; - src = foldersel_folder_sel(NULL, FOLDER_SEL_ALL, NULL, FALSE); + src = foldersel_folder_sel(NULL, FOLDER_SEL_ALL, NULL, FALSE, + _("Select folder which to export")); if (src && src->path) gtk_entry_set_text(GTK_ENTRY(src_entry), src->path); } diff --git a/src/foldersel.c b/src/foldersel.c index faf829319..837763e8e 100644 --- a/src/foldersel.c +++ b/src/foldersel.c @@ -83,7 +83,7 @@ static GtkTreeStore *tree_store; static gboolean cancelled; static gboolean finished; -static void foldersel_create (void); +static void foldersel_create (const gchar *title); static void foldersel_init (void); static void foldersel_append_item (GtkTreeStore *store, @@ -133,13 +133,14 @@ static gboolean tree_view_folder_item_func (GtkTreeModel *model, FolderItemSearch *data); FolderItem *foldersel_folder_sel(Folder *cur_folder, FolderSelectionType type, - const gchar *default_folder, gboolean can_sel_mailbox) + const gchar *default_folder, gboolean can_sel_mailbox, + const gchar *title) { selected_item = NULL; root_selectable = can_sel_mailbox; if (!window) { - foldersel_create(); + foldersel_create(title); foldersel_init(); } @@ -234,7 +235,7 @@ static void foldersel_size_allocate_cb(GtkWidget *widget, prefs_common.folderselwin_height = allocation->height; } -static void foldersel_create(void) +static void foldersel_create(const gchar *title) { GtkWidget *vbox; GtkWidget *scrolledwin; @@ -245,7 +246,8 @@ static void foldersel_create(void) static GdkGeometry geometry; window = gtkut_window_new(GTK_WINDOW_TOPLEVEL, "foldersel"); - gtk_window_set_title(GTK_WINDOW(window), _("Select folder")); + gtk_window_set_title(GTK_WINDOW(window), + title ? title : _("Select folder")); gtk_container_set_border_width(GTK_CONTAINER(window), 4); gtk_window_set_position(GTK_WINDOW(window), GTK_WIN_POS_CENTER); gtk_window_set_resizable(GTK_WINDOW(window), TRUE); diff --git a/src/foldersel.h b/src/foldersel.h index 76d3ac267..4ab5b42fd 100644 --- a/src/foldersel.h +++ b/src/foldersel.h @@ -35,7 +35,8 @@ typedef enum FolderItem *foldersel_folder_sel(Folder *cur_folder, FolderSelectionType type, const gchar *default_folder, - gboolean can_sel_mailbox); + gboolean can_sel_mailbox, + const gchar *title); void foldersel_reflect_prefs_pixmap_theme(void); #endif /* __FOLDERSEL_H__ */ diff --git a/src/imap_gtk.c b/src/imap_gtk.c index 11f2d1ff2..26e3663a9 100644 --- a/src/imap_gtk.c +++ b/src/imap_gtk.c @@ -313,7 +313,12 @@ static void move_folder_cb(GtkAction *action, gpointer data) if (!from_folder || from_folder->folder->klass != imap_get_class()) return; - to_folder = foldersel_folder_sel(NULL, FOLDER_SEL_MOVE, NULL, TRUE); + to_folder = foldersel_folder_sel(NULL, FOLDER_SEL_MOVE, NULL, TRUE, + ngettext( + "Select folder to move selected message to", + "Select folder to move selected messages to", + summary_get_selection_count(folderview->summaryview)) + ); if (!to_folder) return; @@ -329,7 +334,12 @@ static void copy_folder_cb(GtkAction *action, gpointer data) if (!from_folder || from_folder->folder->klass != imap_get_class()) return; - to_folder = foldersel_folder_sel(NULL, FOLDER_SEL_MOVE, NULL, TRUE); + to_folder = foldersel_folder_sel(NULL, FOLDER_SEL_MOVE, NULL, TRUE, + ngettext( + "Select folder to copy selected message to", + "Select folder to copy selected messages to", + summary_get_selection_count(folderview->summaryview)) + ); if (!to_folder) return; diff --git a/src/import.c b/src/import.c index a0e513f2a..b573bb1d1 100644 --- a/src/import.c +++ b/src/import.c @@ -268,7 +268,8 @@ static void import_destsel_cb(GtkWidget *widget, gpointer data) FolderItem *dest; gchar *path; - dest = foldersel_folder_sel(NULL, FOLDER_SEL_COPY, NULL, FALSE); + dest = foldersel_folder_sel(NULL, FOLDER_SEL_COPY, NULL, FALSE, + _("Select folder to import to")); if (!dest) return; path = folder_item_get_identifier(dest); diff --git a/src/mainwindow.c b/src/mainwindow.c index 2c34dce0c..e01564220 100644 --- a/src/mainwindow.c +++ b/src/mainwindow.c @@ -4932,7 +4932,8 @@ static void goto_folder_cb(GtkAction *action, gpointer data) MainWindow *mainwin = (MainWindow *)data; FolderItem *to_folder; - to_folder = foldersel_folder_sel(NULL, FOLDER_SEL_ALL, NULL, FALSE); + to_folder = foldersel_folder_sel(NULL, FOLDER_SEL_ALL, NULL, FALSE, + _("Select folder to go to")); if (to_folder) folderview_select(mainwin->folderview, to_folder); diff --git a/src/messageview.c b/src/messageview.c index aaca56df3..68e90388b 100644 --- a/src/messageview.c +++ b/src/messageview.c @@ -2653,7 +2653,8 @@ static void goto_folder_cb(GtkAction *action, gpointer data) MessageView *messageview = (MessageView *)data; FolderItem *to_folder; - to_folder = foldersel_folder_sel(NULL, FOLDER_SEL_ALL, NULL, FALSE); + to_folder = foldersel_folder_sel(NULL, FOLDER_SEL_ALL, NULL, FALSE, + _("Select folder to go to")); if (to_folder) { folderview_select(messageview->mainwin->folderview, to_folder); diff --git a/src/mh_gtk.c b/src/mh_gtk.c index 985f05ecc..605ef13fa 100644 --- a/src/mh_gtk.c +++ b/src/mh_gtk.c @@ -303,7 +303,12 @@ static void move_folder_cb(GtkAction *action, gpointer data) if (!from_folder || from_folder->folder->klass != mh_get_class()) return; - to_folder = foldersel_folder_sel(NULL, FOLDER_SEL_MOVE, NULL, TRUE); + to_folder = foldersel_folder_sel(NULL, FOLDER_SEL_MOVE, NULL, TRUE, + ngettext( + "Select folder to move selected message to", + "Select folder to move selected messages to", + summary_get_selection_count(folderview->summaryview)) + ); if (!to_folder) return; @@ -319,7 +324,12 @@ static void copy_folder_cb(GtkAction *action, gpointer data) if (!from_folder || from_folder->folder->klass != mh_get_class()) return; - to_folder = foldersel_folder_sel(NULL, FOLDER_SEL_MOVE, NULL, TRUE); + to_folder = foldersel_folder_sel(NULL, FOLDER_SEL_MOVE, NULL, TRUE, + ngettext( + "Select folder to copy selected message to", + "Select folder to copy selected messages to", + summary_get_selection_count(folderview->summaryview)) + ); if (!to_folder) return; diff --git a/src/plugins/archive/archiver_gtk.c b/src/plugins/archive/archiver_gtk.c index 11c166f48..1f31ac499 100644 --- a/src/plugins/archive/archiver_gtk.c +++ b/src/plugins/archive/archiver_gtk.c @@ -913,7 +913,8 @@ static void foldersel_cb(GtkWidget *widget, gpointer data) gint newpos = 0; struct ArchivePage* page = (struct ArchivePage *) data; - item = foldersel_folder_sel(NULL, FOLDER_SEL_MOVE, NULL, FALSE); + item = foldersel_folder_sel(NULL, FOLDER_SEL_MOVE, NULL, FALSE, + _("Select folder to archive")); if (item && (item_id = folder_item_get_identifier(item)) != NULL) { gtk_editable_delete_text(GTK_EDITABLE(page->folder), 0, -1); gtk_editable_insert_text(GTK_EDITABLE(page->folder), diff --git a/src/plugins/bogofilter/bogofilter_gtk.c b/src/plugins/bogofilter/bogofilter_gtk.c index 10aadb824..fdae7f163 100644 --- a/src/plugins/bogofilter/bogofilter_gtk.c +++ b/src/plugins/bogofilter/bogofilter_gtk.c @@ -71,7 +71,7 @@ static void foldersel_cb(GtkWidget *widget, gpointer data) gchar *item_id; gint newpos = 0; - item = foldersel_folder_sel(NULL, FOLDER_SEL_MOVE, NULL, FALSE); + item = foldersel_folder_sel(NULL, FOLDER_SEL_MOVE, NULL, FALSE, NULL); if (item && (item_id = folder_item_get_identifier(item)) != NULL) { gtk_editable_delete_text(GTK_EDITABLE(entry), 0, -1); gtk_editable_insert_text(GTK_EDITABLE(entry), item_id, strlen(item_id), &newpos); diff --git a/src/plugins/bsfilter/bsfilter_gtk.c b/src/plugins/bsfilter/bsfilter_gtk.c index 9593378ac..c329d6808 100644 --- a/src/plugins/bsfilter/bsfilter_gtk.c +++ b/src/plugins/bsfilter/bsfilter_gtk.c @@ -69,7 +69,7 @@ static void foldersel_cb(GtkWidget *widget, gpointer data) gchar *item_id; gint newpos = 0; - item = foldersel_folder_sel(NULL, FOLDER_SEL_MOVE, NULL, FALSE); + item = foldersel_folder_sel(NULL, FOLDER_SEL_MOVE, NULL, FALSE, NULL); if (item && (item_id = folder_item_get_identifier(item)) != NULL) { gtk_editable_delete_text(GTK_EDITABLE(entry), 0, -1); gtk_editable_insert_text(GTK_EDITABLE(entry), item_id, strlen(item_id), &newpos); diff --git a/src/plugins/clamd/clamav_plugin_gtk.c b/src/plugins/clamd/clamav_plugin_gtk.c index 77d5d8f8d..e94a3a82f 100644 --- a/src/plugins/clamd/clamav_plugin_gtk.c +++ b/src/plugins/clamd/clamav_plugin_gtk.c @@ -68,7 +68,8 @@ static void foldersel_cb(GtkWidget *widget, gpointer data) gchar *item_id; gint newpos = 0; - item = foldersel_folder_sel(NULL, FOLDER_SEL_MOVE, NULL, FALSE); + item = foldersel_folder_sel(NULL, FOLDER_SEL_MOVE, NULL, FALSE, + _("Select folder to store infected messages in")); if (item && (item_id = folder_item_get_identifier(item)) != NULL) { gtk_editable_delete_text(GTK_EDITABLE(page->save_folder), 0, -1); gtk_editable_insert_text(GTK_EDITABLE(page->save_folder), item_id, strlen(item_id), &newpos); diff --git a/src/plugins/mailmbox/plugin_gtk.c b/src/plugins/mailmbox/plugin_gtk.c index 282c263e1..47b768411 100644 --- a/src/plugins/mailmbox/plugin_gtk.c +++ b/src/plugins/mailmbox/plugin_gtk.c @@ -368,7 +368,12 @@ static void move_folder_cb(GtkAction *action, gpointer data) if (!from_folder || from_folder->folder->klass != claws_mailmbox_get_class()) return; - to_folder = foldersel_folder_sel(NULL, FOLDER_SEL_MOVE, NULL, FALSE); + to_folder = foldersel_folder_sel(NULL, FOLDER_SEL_MOVE, NULL, FALSE, + ngettext( + "Select folder to move selected message to", + "Select folder to move selected messages to", + summary_get_selection_count(folderview->summaryview)) + ); if (!to_folder) return; @@ -384,7 +389,12 @@ static void copy_folder_cb(GtkAction *action, gpointer data) if (!from_folder || from_folder->folder->klass != claws_mailmbox_get_class()) return; - to_folder = foldersel_folder_sel(NULL, FOLDER_SEL_MOVE, NULL, FALSE); + to_folder = foldersel_folder_sel(NULL, FOLDER_SEL_MOVE, NULL, FALSE, + ngettext( + "Select folder to copy selected message to", + "Select folder to copy selected messages to", + summary_get_selection_count(folderview->summaryview)) + ); if (!to_folder) return; diff --git a/src/plugins/spamassassin/spamassassin_gtk.c b/src/plugins/spamassassin/spamassassin_gtk.c index d73a9c65a..102aaff1b 100644 --- a/src/plugins/spamassassin/spamassassin_gtk.c +++ b/src/plugins/spamassassin/spamassassin_gtk.c @@ -115,7 +115,8 @@ static void foldersel_cb(GtkWidget *widget, gpointer data) gchar *item_id; gint newpos = 0; - item = foldersel_folder_sel(NULL, FOLDER_SEL_MOVE, NULL, FALSE); + item = foldersel_folder_sel(NULL, FOLDER_SEL_MOVE, NULL, FALSE, + _("Select folder to save spam to")); if (item && (item_id = folder_item_get_identifier(item)) != NULL) { gtk_editable_delete_text(GTK_EDITABLE(page->save_folder), 0, -1); gtk_editable_insert_text(GTK_EDITABLE(page->save_folder), item_id, strlen(item_id), &newpos); diff --git a/src/prefs_account.c b/src/prefs_account.c index 185e24dee..59d904927 100644 --- a/src/prefs_account.c +++ b/src/prefs_account.c @@ -3882,7 +3882,7 @@ static void prefs_account_select_folder_cb(GtkWidget *widget, gpointer data) FolderItem *item; gchar *id; - item = foldersel_folder_sel(NULL, FOLDER_SEL_COPY, NULL, FALSE); + item = foldersel_folder_sel(NULL, FOLDER_SEL_COPY, NULL, FALSE, NULL); if (item && item->path) { id = folder_item_get_identifier(item); if (id) { diff --git a/src/prefs_filtering_action.c b/src/prefs_filtering_action.c index e105bddc7..fa1cb0884 100644 --- a/src/prefs_filtering_action.c +++ b/src/prefs_filtering_action.c @@ -1293,7 +1293,8 @@ static void prefs_filtering_action_select_dest(void) FolderItem *dest; gchar * path; - dest = foldersel_folder_sel(NULL, FOLDER_SEL_COPY, NULL, FALSE); + dest = foldersel_folder_sel(NULL, FOLDER_SEL_COPY, NULL, FALSE, + _("Select destination folder")); if (!dest) return; path = folder_item_get_identifier(dest); diff --git a/src/summaryview.c b/src/summaryview.c index b56329796..268047f4b 100644 --- a/src/summaryview.c +++ b/src/summaryview.c @@ -4617,7 +4617,12 @@ void summary_move_to(SummaryView *summaryview) if (!summaryview->folder_item || FOLDER_TYPE(summaryview->folder_item->folder) == F_NEWS) return; - to_folder = foldersel_folder_sel(NULL, FOLDER_SEL_MOVE, NULL, FALSE); + to_folder = foldersel_folder_sel(NULL, FOLDER_SEL_MOVE, NULL, FALSE, + ngettext( + "Select folder to move selected message to", + "Select folder to move selected messages to", + g_list_length(GTK_CMCLIST(summaryview->ctree)->selection)) + ); summary_move_selected_to(summaryview, to_folder); } @@ -4697,7 +4702,12 @@ void summary_copy_to(SummaryView *summaryview) if (!summaryview->folder_item) return; - to_folder = foldersel_folder_sel(NULL, FOLDER_SEL_COPY, NULL, FALSE); + to_folder = foldersel_folder_sel(NULL, FOLDER_SEL_COPY, NULL, FALSE, + ngettext( + "Select folder to copy selected message to", + "Select folder to copy selected messages to", + g_list_length(GTK_CMCLIST(summaryview->ctree)->selection)) + ); summary_copy_selected_to(summaryview, to_folder); }