diff options
author | hiro <hiro@ee746299-78ed-0310-b773-934348b2243d> | 2013-05-14 09:20:58 +0000 |
---|---|---|
committer | hiro <hiro@ee746299-78ed-0310-b773-934348b2243d> | 2013-05-14 09:20:58 +0000 |
commit | 87d3ae9de4acc190cff396a41269c68ecba4203e (patch) | |
tree | a6f7dd83235c37d4eb620e44f398b5fefbd84118 /src | |
parent | 3b87da252f54406f6ded41f0b45f6f6d7dacc15b (diff) |
refactored MessageView/MimeView/
git-svn-id: svn://sylpheed.sraoss.jp/sylpheed/trunk@3254 ee746299-78ed-0310-b773-934348b2243d
Diffstat (limited to 'src')
-rw-r--r-- | src/messageview.c | 11 | ||||
-rw-r--r-- | src/messageview.h | 3 | ||||
-rw-r--r-- | src/mimeview.c | 64 | ||||
-rw-r--r-- | src/mimeview.h | 8 |
4 files changed, 42 insertions, 44 deletions
diff --git a/src/messageview.c b/src/messageview.c index 8112dbf0..0ccff0de 100644 --- a/src/messageview.c +++ b/src/messageview.c @@ -597,6 +597,10 @@ gint messageview_show(MessageView *messageview, MsgInfo *msginfo, if (!messageview->msginfo) messageview->msginfo = procmsg_msginfo_copy(msginfo); } + procmime_mimeinfo_free_all(messageview->mimeinfo); + messageview->mimeinfo = mimeinfo; + g_free(messageview->file); + messageview->file = file; if (messageview->window && msginfo->subject) { gchar *title; @@ -619,7 +623,6 @@ gint messageview_show(MessageView *messageview, MsgInfo *msginfo, } else { messageview_change_view_type(messageview, MVIEW_TEXT); textview_show_message(messageview->textview, mimeinfo, file); - procmime_mimeinfo_free_all(mimeinfo); } if (messageview->new_window) @@ -628,8 +631,6 @@ gint messageview_show(MessageView *messageview, MsgInfo *msginfo, syl_plugin_signal_emit("messageview-show", messageview, msginfo, all_headers); - g_free(file); - return 0; } @@ -780,6 +781,10 @@ static void messageview_set_encoding_menu(MessageView *messageview) void messageview_clear(MessageView *messageview) { messageview_set_tool_menu(messageview, NULL); + g_free(messageview->file); + messageview->file = NULL; + procmime_mimeinfo_free_all(messageview->mimeinfo); + messageview->mimeinfo = NULL; procmsg_msginfo_free(messageview->msginfo); messageview->msginfo = NULL; messageview_change_view_type(messageview, MVIEW_TEXT); diff --git a/src/messageview.h b/src/messageview.h index ef6abd12..eee37c41 100644 --- a/src/messageview.h +++ b/src/messageview.h @@ -74,6 +74,9 @@ struct _MessageView gboolean visible; gint current_page; + + MimeInfo *mimeinfo; + gchar *file; }; MessageView *messageview_create (void); diff --git a/src/mimeview.c b/src/mimeview.c index 2e53932c..d58788a4 100644 --- a/src/mimeview.c +++ b/src/mimeview.c @@ -300,7 +300,7 @@ static gboolean mimeview_is_signed(MimeView *mimeview) debug_print("mimeview_is_signed: open\n" ); - if (!mimeview->file) return FALSE; + if (!mimeview->messageview->file) return FALSE; debug_print("mimeview_is_signed: file\n" ); @@ -351,10 +351,6 @@ void mimeview_show_message(MimeView *mimeview, MimeInfo *mimeinfo, g_return_if_fail(file != NULL); g_return_if_fail(mimeinfo != NULL); - mimeview->mimeinfo = mimeinfo; - - mimeview->file = g_strdup(file); - #if USE_GPGME if (rfc2015_is_available() && prefs_common.auto_check_signatures) { FILE *fp; @@ -410,8 +406,6 @@ void mimeview_show_message(MimeView *mimeview, MimeInfo *mimeinfo, void mimeview_clear(MimeView *mimeview) { - procmime_mimeinfo_free_all(mimeview->mimeinfo); - mimeview->mimeinfo = NULL; mimeview->has_attach_file = FALSE; gtk_tree_store_clear(mimeview->store); @@ -421,9 +415,6 @@ void mimeview_clear(MimeView *mimeview) gtk_tree_path_free(mimeview->opened); mimeview->opened = NULL; - g_free(mimeview->file); - mimeview->file = NULL; - g_free(mimeview->drag_file); mimeview->drag_file = NULL; } @@ -432,9 +423,7 @@ void mimeview_destroy(MimeView *mimeview) { textview_destroy(mimeview->textview); imageview_destroy(mimeview->imageview); - procmime_mimeinfo_free_all(mimeview->mimeinfo); g_object_unref(mimeview->popupfactory); - g_free(mimeview->file); g_free(mimeview->drag_file); g_free(mimeview); } @@ -557,7 +546,7 @@ static void mimeview_show_message_part(MimeView *mimeview, MimeInfo *partinfo) if (!partinfo) return; - fname = mimeview->file; + fname = mimeview->messageview->file; if (!fname) return; if ((fp = g_fopen(fname, "rb")) == NULL) { @@ -566,7 +555,7 @@ static void mimeview_show_message_part(MimeView *mimeview, MimeInfo *partinfo) } if (fseek(fp, partinfo->fpos, SEEK_SET) < 0) { - FILE_OP_ERROR(mimeview->file, "fseek"); + FILE_OP_ERROR(fname, "fseek"); fclose(fp); return; } @@ -585,7 +574,7 @@ static void mimeview_show_image_part(MimeView *mimeview, MimeInfo *partinfo) filename = procmime_get_tmp_file_name(partinfo); - if (procmime_get_part(filename, mimeview->file, partinfo) < 0) + if (procmime_get_part(filename, mimeview->messageview->file, partinfo) < 0) alertpanel_error (_("Can't get the part of multipart message.")); else { @@ -1003,7 +992,7 @@ static void mimeview_drag_begin(GtkWidget *widget, GdkDragContext *drag_context, MimeInfo *partinfo; if (!mimeview->opened) return; - if (!mimeview->file) return; + if (!mimeview->messageview->file) return; partinfo = mimeview_get_selected_part(mimeview); if (!partinfo) return; @@ -1022,7 +1011,7 @@ static void mimeview_drag_begin(GtkWidget *widget, GdkDragContext *drag_context, filename = g_strconcat(get_mime_tmp_dir(), G_DIR_SEPARATOR_S, bname, NULL); - if (procmime_get_part(filename, mimeview->file, partinfo) < 0) { + if (procmime_get_part(filename, mimeview->messageview->file, partinfo) < 0) { g_warning(_("Can't save the part of multipart message.")); } else mimeview->drag_file = encode_uri(filename); @@ -1071,7 +1060,7 @@ void mimeview_save_as(MimeView *mimeview) MimeInfo *partinfo; if (!mimeview->opened) return; - if (!mimeview->file) return; + if (!mimeview->messageview->file) return; partinfo = mimeview_get_selected_part(mimeview); g_return_if_fail(partinfo != NULL); @@ -1086,7 +1075,7 @@ void mimeview_save_all(MimeView *mimeview) dir = filesel_select_dir(NULL); if (!dir) return; - if (procmime_get_all_parts(dir, mimeview->file, mimeview->mimeinfo) < 0) + if (procmime_get_all_parts(dir, mimeview->messageview->file, mimeview->messageview->mimeinfo) < 0) alertpanel_error(_("Can't save the attachments.")); g_free(dir); @@ -1097,7 +1086,7 @@ void mimeview_print(MimeView *mimeview) MimeInfo *partinfo; if (!mimeview->opened) return; - if (!mimeview->file) return; + if (!mimeview->messageview->file) return; partinfo = mimeview_get_selected_part(mimeview); g_return_if_fail(partinfo != NULL); @@ -1109,7 +1098,7 @@ void mimeview_print_part(MimeView *mimeview, MimeInfo *partinfo) { g_return_if_fail(partinfo != NULL); - if (!mimeview->file) return; + if (!mimeview->messageview->file) return; if (partinfo->mime_type == MIME_MESSAGE_RFC822) { gchar *filename; @@ -1117,7 +1106,7 @@ void mimeview_print_part(MimeView *mimeview, MimeInfo *partinfo) MsgFlags flags = {0, 0}; filename = procmime_get_tmp_file_name(partinfo); - if (procmime_get_part(filename, mimeview->file, partinfo) < 0) { + if (procmime_get_part(filename, mimeview->messageview->file, partinfo) < 0) { alertpanel_error (_("Can't save the part of multipart message.")); g_free(filename); @@ -1143,11 +1132,11 @@ void mimeview_launch_part(MimeView *mimeview, MimeInfo *partinfo) g_return_if_fail(partinfo != NULL); - if (!mimeview->file) return; + if (!mimeview->messageview->file) return; filename = procmime_get_tmp_file_name(partinfo); - if (procmime_get_part(filename, mimeview->file, partinfo) < 0) + if (procmime_get_part(filename, mimeview->messageview->file, partinfo) < 0) alertpanel_error (_("Can't save the part of multipart message.")); else @@ -1163,11 +1152,11 @@ void mimeview_open_part_with(MimeView *mimeview, MimeInfo *partinfo) g_return_if_fail(partinfo != NULL); - if (!mimeview->file) return; + if (!mimeview->messageview->file) return; filename = procmime_get_tmp_file_name(partinfo); - if (procmime_get_part(filename, mimeview->file, partinfo) < 0) { + if (procmime_get_part(filename, mimeview->messageview->file, partinfo) < 0) { alertpanel_error (_("Can't save the part of multipart message.")); g_free(filename); @@ -1202,7 +1191,7 @@ void mimeview_save_part_as(MimeView *mimeview, MimeInfo *partinfo) g_return_if_fail(partinfo != NULL); - if (!mimeview->file) return; + if (!mimeview->messageview->file) return; if (partinfo->filename) { filename = filesel_save_as(partinfo->filename); @@ -1216,9 +1205,10 @@ void mimeview_save_part_as(MimeView *mimeview, MimeInfo *partinfo) } else filename = filesel_save_as(NULL); - if (!filename) return; + if (!filename) + return; - if (procmime_get_part(filename, mimeview->file, partinfo) < 0) + if (procmime_get_part(filename, mimeview->messageview->file, partinfo) < 0) alertpanel_error (_("Can't save the part of multipart message.")); @@ -1230,7 +1220,7 @@ static void mimeview_launch(MimeView *mimeview) MimeInfo *partinfo; if (!mimeview->opened) return; - if (!mimeview->file) return; + if (!mimeview->messageview->file) return; partinfo = mimeview_get_selected_part(mimeview); g_return_if_fail(partinfo != NULL); @@ -1243,7 +1233,7 @@ static void mimeview_open_with(MimeView *mimeview) MimeInfo *partinfo; if (!mimeview->opened) return; - if (!mimeview->file) return; + if (!mimeview->messageview->file) return; partinfo = mimeview_get_selected_part(mimeview); g_return_if_fail(partinfo != NULL); @@ -1336,7 +1326,7 @@ static void mimeview_reply(MimeView *mimeview, guint action) ComposeMode mode = action; if (!mimeview->opened) return; - if (!mimeview->file) return; + if (!mimeview->messageview->file) return; partinfo = mimeview_get_selected_part(mimeview); g_return_if_fail(partinfo != NULL); @@ -1345,7 +1335,7 @@ static void mimeview_reply(MimeView *mimeview, guint action) return; filename = procmime_get_tmp_file_name(partinfo); - if (procmime_get_part(filename, mimeview->file, partinfo) < 0) { + if (procmime_get_part(filename, mimeview->messageview->file, partinfo) < 0) { alertpanel_error (_("Can't save the part of multipart message.")); g_free(filename); @@ -1419,13 +1409,13 @@ static void mimeview_check_signature(MimeView *mimeview) mimeinfo = mimeview_get_selected_part(mimeview); g_return_if_fail(mimeinfo != NULL); - g_return_if_fail(mimeview->file != NULL); + g_return_if_fail(mimeview->messageview->file != NULL); while (mimeinfo->parent) mimeinfo = mimeinfo->parent; - if ((fp = g_fopen(mimeview->file, "rb")) == NULL) { - FILE_OP_ERROR(mimeview->file, "fopen"); + if ((fp = g_fopen(mimeview->messageview->file, "rb")) == NULL) { + FILE_OP_ERROR(mimeview->messageview->file, "fopen"); return; } @@ -1436,6 +1426,6 @@ static void mimeview_check_signature(MimeView *mimeview) mimeview_update_signature_info(mimeview); textview_show_message(mimeview->messageview->textview, mimeinfo, - mimeview->file); + mimeview->messageview->file); } #endif /* USE_GPGME */ diff --git a/src/mimeview.h b/src/mimeview.h index 65f07cd2..3d5ff204 100644 --- a/src/mimeview.h +++ b/src/mimeview.h @@ -1,6 +1,6 @@ /* * Sylpheed -- a GTK+ based, lightweight, and fast e-mail client - * Copyright (C) 1999-2012 Hiroyuki Yamamoto + * Copyright (C) 1999-2013 Hiroyuki Yamamoto * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -66,9 +66,9 @@ struct _MimeView MessageView *messageview; - MimeInfo *mimeinfo; - - gchar *file; + /* deprecated: use MessageView */ + MimeInfo *mimeinfo__; + gchar *file__; gchar *drag_file; |