diff options
author | Jon Trowbridge <trow@ximian.com> | 2001-12-10 11:50:36 +0800 |
---|---|---|
committer | Jon Trowbridge <trow@src.gnome.org> | 2001-12-10 11:50:36 +0800 |
commit | b5e7713c8e99f2cddf309d3034108c18190fd3cb (patch) | |
tree | b6b22ff8bdbb379e0e4e939c09df54a8dd52c447 /mail/mail-callbacks.c | |
parent | 098db6b2ad41196ee43d68e7f4f7d879d97d93b7 (diff) | |
download | gsoc2013-evolution-b5e7713c8e99f2cddf309d3034108c18190fd3cb.tar.gz gsoc2013-evolution-b5e7713c8e99f2cddf309d3034108c18190fd3cb.tar.zst gsoc2013-evolution-b5e7713c8e99f2cddf309d3034108c18190fd3cb.zip |
Implements marking messages as "Need Reply".
Implements marking messages as "Need Reply".
2001-12-09 Jon Trowbridge <trow@ximian.com>
* mail-need-reply.xpm: Added a really, really ugly and
awful icon to symbolize "message needs a reply".
* Makefile.am (EXTRA_DIST): Added mail-need-reply.xpm.
2001-12-09 Jon Trowbridge <trow@ximian.com>
* camel-folder-summary.c: Add "NeedsReply" to the flag_names array
for CAMEL_MESSAGE_NEEDS_REPLY.
* camel-folder-summary.h: Added CAMEL_MESSAGE_NEEDS_REPLY flag.
2001-12-09 Jon Trowbridge <trow@ximian.com>
* vfoldertypes.xml: Add "Needs Reply" option to different status
types.
* filtertypes.xml: Add "Needs Reply" option to different status
types.
2001-12-09 Jon Trowbridge <trow@ximian.com>
* message-list.c: #include "art/mail-need-reply.xpm".
(ml_tree_value_at): Adjust magic numbers, show "Need Reply" icon
if the message needs reply.
(message_list_create_extras): Adjust magic numbers to add new
icon.
(on_click): Changed to toggle between unread, read, and need reply
when the status icon is clicked.
* mail-callbacks.c (mark_as_needing_reply): Added.
(mark_as_not_needing_reply): Added. Add "set" value to struct
post_send_data.
(composer_sent_cb): Use both "flags" and "set" elements of
post_send_data when setting message flags.
(mail_reply): Clear "Needs Reply" flag when we actually reply to a
message.
* folder-browser.c: Changed flag values to be given by
bit-shifting (1<<5) vs. base-ten (32). Added
CAN_MARK_DOESNT_NEED_REPLY flag. Added "Mark as Needing Reply"
and "Mark as Not Needing Reply" elements to context menu.
(on_right_click): Hide "Mark as (Not) Needing Reply" context menu
elements as appropriate.
svn path=/trunk/; revision=14946
Diffstat (limited to 'mail/mail-callbacks.c')
-rw-r--r-- | mail/mail-callbacks.c | 28 |
1 files changed, 24 insertions, 4 deletions
diff --git a/mail/mail-callbacks.c b/mail/mail-callbacks.c index ee30562111..8942aaf283 100644 --- a/mail/mail-callbacks.c +++ b/mail/mail-callbacks.c @@ -118,7 +118,7 @@ e_gnome_ok_cancel_dialog_parented (const char *message, GnomeReplyCallback callb struct post_send_data { CamelFolder *folder; gchar *uid; - guint32 flags; + guint32 flags, set; }; static void @@ -420,7 +420,7 @@ composer_sent_cb (char *uri, CamelMimeMessage *message, gboolean sent, void *dat if (sent) { if (send->psd) { camel_folder_set_message_flags (send->psd->folder, send->psd->uid, - send->psd->flags, send->psd->flags); + send->psd->flags, send->psd->set); } gtk_widget_destroy (GTK_WIDGET (send->composer)); } else { @@ -646,7 +646,7 @@ composer_postpone_cb (EMsgComposer *composer, gpointer data) camel_object_unref (CAMEL_OBJECT (message)); if (psd) - camel_folder_set_message_flags (psd->folder, psd->uid, psd->flags, psd->flags); + camel_folder_set_message_flags (psd->folder, psd->uid, psd->flags, psd->set); gtk_widget_destroy (GTK_WIDGET (composer)); } @@ -1024,7 +1024,8 @@ mail_reply (CamelFolder *folder, CamelMimeMessage *msg, const char *uid, int mod psd->folder = folder; camel_object_ref (CAMEL_OBJECT (psd->folder)); psd->uid = g_strdup (uid); - psd->flags = CAMEL_MESSAGE_ANSWERED; + psd->flags = CAMEL_MESSAGE_ANSWERED | CAMEL_MESSAGE_NEEDS_REPLY; + psd->set = CAMEL_MESSAGE_ANSWERED; composer = mail_generate_reply (folder, msg, uid, mode); if (!composer) @@ -1664,6 +1665,25 @@ toggle_as_important (BonoboUIComponent *uih, void *user_data, const char *path) } void +mark_as_needing_reply (BonoboUIComponent *uih, void *user_data, const char *path) +{ + flag_messages (FOLDER_BROWSER (user_data), CAMEL_MESSAGE_DELETED, 0); + flag_messages (FOLDER_BROWSER (user_data), CAMEL_MESSAGE_NEEDS_REPLY, CAMEL_MESSAGE_NEEDS_REPLY); +} + +void +mark_as_not_needing_reply (BonoboUIComponent *uih, void *user_data, const char *path) +{ + flag_messages (FOLDER_BROWSER (user_data), CAMEL_MESSAGE_NEEDS_REPLY, 0); +} + +void +toggle_need_reply (BonoboUIComponent *uih, void *user_data, const char *path) +{ + toggle_flags (FOLDER_BROWSER (user_data), CAMEL_MESSAGE_NEEDS_REPLY); +} + +void zoom_in (BonoboUIComponent *uih, void *user_data, const char *path) { FolderBrowser *fb = FOLDER_BROWSER (user_data); |