From 301528d84bf582d956c0e9b768e4f60259f0cf88 Mon Sep 17 00:00:00 2001 From: Srinivasa Ragavan Date: Sun, 8 Jul 2007 20:06:54 +0000 Subject: Commit for tnef attachment and attachment reminder svn path=/trunk/; revision=33769 --- mail/ChangeLog | 5 +++++ mail/em-composer-utils.c | 21 ++++++++++++++++++++- 2 files changed, 25 insertions(+), 1 deletion(-) (limited to 'mail') diff --git a/mail/ChangeLog b/mail/ChangeLog index 7a19402b3f..f1c7ced0d7 100644 --- a/mail/ChangeLog +++ b/mail/ChangeLog @@ -1,3 +1,8 @@ +2007-07-08 Johnny Jacob + + * em-composer-utils.c : Added composer.presendcheck event. Fixes + #334118. + 2007-07-07 Srinivasa Ragavan ** Fix for bug #317281 from Michael P. Lepore diff --git a/mail/em-composer-utils.c b/mail/em-composer-utils.c index 942ac1e897..ca24ac3db0 100644 --- a/mail/em-composer-utils.c +++ b/mail/em-composer-utils.c @@ -256,6 +256,8 @@ composer_get_message (EMsgComposer *composer, gboolean save_html_object_data) EAccount *account; int i; GList *postlist; + EMEvent *eme; + EMEventTargetMessage *target; gconf = mail_config_get_gconf_client (); @@ -355,11 +357,28 @@ composer_get_message (EMsgComposer *composer, gboolean save_html_object_data) goto finished; } + /** @Event: composer.presendchecks + * @Title: Composer PreSend Checks + * @Target: EMEventTargetMessage + * + * composer.presendchecks is emitted during pre-checks for the message just before sending. + * Since the e-plugin framework doesn't provide a way to return a value from the plugin, + * use 'presend_check_status' to set whether the check passed / failed. + */ + eme = em_event_peek(); + target = em_event_target_new_composer (eme, composer, 0); + g_object_set_data (composer, "presend_check_status", GINT_TO_POINTER(0)); + + e_event_emit((EEvent *)eme, "composer.presendchecks", (EEventTarget *)target); + + if (GPOINTER_TO_INT (g_object_get_data (composer, "presend_check_status"))) + goto finished; + /* actually get the message now, this will sign/encrypt etc */ message = e_msg_composer_get_message (composer, save_html_object_data); if (message == NULL) goto finished; - + /* Add info about the sending account */ account = e_msg_composer_get_preferred_account (composer); -- cgit v1.2.3