void face_handle_send (EPlugin *ep, EMEventTargetComposer *target) { GtkhtmlEditor *editor; GtkAction *action; editor = GTKHTML_EDITOR (target->composer); action = gtkhtml_editor_get_action (editor, "face-plugin"); g_return_if_fail (action != NULL); if (gtk_toggle_action_get_active (GTK_TOGGLE_ACTION (action))) { gchar *face = get_face_base64 (); if (face) e_msg_composer_set_header (target->composer, "Face", face); g_free (face); } }
static void append_to_header (ExchangeSendOptionsDialog *dialog, gint state, gpointer data) { EMsgComposer *composer; CamelAddress *sender_address; const gchar *sender_id, *recipient_id; struct _camel_header_address *addr; struct _camel_header_address *sender_addr; composer = (EMsgComposer *) data; if (state == GTK_RESPONSE_OK) { if (dialog->options->importance) { switch (dialog->options->importance) { case E_IMP_HIGH : e_msg_composer_set_header (composer, "Importance", "high"); break; case E_IMP_LOW : e_msg_composer_set_header (composer, "Importance", "low"); break; default : g_print ("\nNo importance set"); break; } } else e_msg_composer_remove_header (composer, "Importance"); if (dialog->options->sensitivity) { switch (dialog->options->sensitivity) { case E_SENSITIVITY_CONFIDENTIAL : e_msg_composer_set_header (composer, "Sensitivity", "Company-Confidential"); break; case E_SENSITIVITY_PERSONAL : e_msg_composer_set_header (composer, "Sensitivity", "Personal"); break; case E_SENSITIVITY_PRIVATE : e_msg_composer_set_header (composer, "Sensitivity", "Private"); break; default : g_print ("\nNo importance set"); break; } } else e_msg_composer_remove_header (composer, "Sensitivity"); sender_address = (CamelAddress *) e_msg_composer_get_from (composer); sender_id = (const gchar *) camel_address_encode (sender_address); addr = camel_header_address_decode (dialog->options->delegate_address, NULL); sender_addr = camel_header_address_decode (sender_id, NULL); if (dialog->options->send_as_del_enabled && dialog->options->delegate_address && g_ascii_strcasecmp (addr->v.addr, sender_addr->v.addr)) { e_msg_composer_set_header (composer, "Sender" , sender_id); /* This block handles the case wherein the address to be added * in the "From" field has no name associated with it. * So for cases where there is no name we append the address * (only email) within angular braces. */ if (!g_ascii_strcasecmp (addr->name, "")) { recipient_id = g_strdup_printf ("<%s>", dialog->options->delegate_address); e_msg_composer_add_header (composer, "From", recipient_id); } else e_msg_composer_add_header (composer, "From", dialog->options->delegate_address); } else { e_msg_composer_remove_header (composer, "Sender"); e_msg_composer_add_header (composer, "From", sender_id); } if (dialog->options->delivery_enabled) { EComposerHeaderTable *table; EAccount *account; gchar *mdn_address; table = e_msg_composer_get_header_table (composer); account = e_composer_header_table_get_account (table); mdn_address = account->id->reply_to; if (!mdn_address || !*mdn_address) mdn_address = account->id->address; e_msg_composer_set_header (composer, "Return-Receipt-To", mdn_address); } else e_msg_composer_remove_header (composer, "Return-Receipt-To"); if (dialog->options->read_enabled) { EComposerHeaderTable *table; EAccount *account; gchar *mdn_address; table = e_msg_composer_get_header_table (composer); account = e_composer_header_table_get_account (table); mdn_address = account->id->reply_to; if (!mdn_address || !*mdn_address) mdn_address = account->id->address; e_msg_composer_set_header (composer, "Disposition-Notification-To", mdn_address); } else e_msg_composer_remove_header (composer, "Disposition-Notification-To"); } }