diff options
Diffstat (limited to 'src/mimeview.c')
-rw-r--r-- | src/mimeview.c | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/src/mimeview.c b/src/mimeview.c index 10439bdd..1e3014d2 100644 --- a/src/mimeview.c +++ b/src/mimeview.c @@ -124,7 +124,8 @@ static GtkItemFactoryEntry mimeview_popup_entries[] = {N_("/_Open"), NULL, mimeview_launch, 0, NULL}, {N_("/Open _with..."), NULL, mimeview_open_with, 0, NULL}, {N_("/_Display as text"), NULL, mimeview_display_as_text, 0, NULL}, - {N_("/_Save as..."), NULL, mimeview_save_as, 0, NULL} + {N_("/_Save as..."), NULL, mimeview_save_as, 0, NULL}, + {N_("/Save _all..."), NULL, mimeview_save_all, 0, NULL} #if USE_GPGME , {N_("/_Check signature"), NULL, mimeview_check_signature, 0, NULL} @@ -1024,6 +1025,19 @@ void mimeview_save_as(MimeView *mimeview) g_free(filename); } +void mimeview_save_all(MimeView *mimeview) +{ + gchar *dir; + + dir = filesel_select_dir(NULL); + if (!dir) return; + + if (procmime_get_all_parts(dir, mimeview->file, mimeview->mimeinfo) < 0) + alertpanel_error(_("Can't save the attachments.")); + + g_free(dir); +} + static void mimeview_launch(MimeView *mimeview) { MimeInfo *partinfo; |