-static void
-add_date_time_header (ModestMailHeaderView *mail_header, const gchar *name, time_t date)
-{
- const guint BUF_SIZE = 64;
- gchar date_buf [BUF_SIZE];
- gchar time_buf [BUF_SIZE];
-
- ModestMailHeaderViewPriv *priv = MODEST_MAIL_HEADER_VIEW_GET_PRIVATE (mail_header);
- GtkWidget *hbox, *date_hbox, *time_hbox;
- GtkWidget *label;
-
- modest_text_utils_strftime (date_buf, BUF_SIZE, "%x", date);
- modest_text_utils_strftime (time_buf, BUF_SIZE, "%X", date);
-
- hbox = gtk_hbox_new (FALSE, 48);
- date_hbox = gtk_hbox_new (FALSE, 12);
- time_hbox = gtk_hbox_new (FALSE, 12);
-
- label = gtk_label_new (NULL);
- gtk_label_set_markup (GTK_LABEL (label), name);
- gtk_misc_set_alignment (GTK_MISC (label), 1.0, 0.0);
- gtk_box_pack_start (GTK_BOX (date_hbox), label, FALSE, FALSE, 0);
- gtk_size_group_add_widget (priv->labels_size_group, label);
-
- label = gtk_label_new(date_buf);
- gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.0);
- gtk_box_pack_start (GTK_BOX (date_hbox), label, TRUE, TRUE, 0);
-
- gtk_box_pack_start (GTK_BOX (hbox), date_hbox, FALSE, FALSE, 0);
-
- label = gtk_label_new(NULL);
- gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.0);
- gtk_label_set_markup (GTK_LABEL (label), _("mail_va_time"));
- gtk_box_pack_start (GTK_BOX (time_hbox), label, FALSE, FALSE, 0);
-
- label = gtk_label_new(time_buf);
- gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.0);
- gtk_box_pack_start (GTK_BOX (time_hbox), label, TRUE, TRUE, 0);
-
- gtk_box_pack_start (GTK_BOX (hbox), time_hbox, TRUE, TRUE, 0);
-
- gtk_box_pack_start (GTK_BOX (priv->headers_vbox), hbox, FALSE, FALSE, 0);
- gtk_widget_show (hbox);
-}
-
-static void
-activate_recpt (GtkWidget *recpt_view, const gchar *address, gpointer user_data)
-{
- ModestMailHeaderView * view = MODEST_MAIL_HEADER_VIEW (user_data);
-
- g_signal_emit (G_OBJECT (view), signals[RECPT_ACTIVATED_SIGNAL], 0, address);
-}
-
-#if 0 /* This function is not used. murrayc. */
-static void
-add_header (ModestMailHeaderView *widget, const gchar *field, const gchar *value)
-{
- ModestMailHeaderViewPriv *priv = MODEST_MAIL_HEADER_VIEW_GET_PRIVATE (widget);
- GtkWidget *hbox;
- GtkWidget *label_field, *label_value;
- GtkWidget *scroll_text;
- GtkTextBuffer *text_buffer;
-
- hbox = gtk_hbox_new (FALSE, 12);
- label_field = gtk_label_new (NULL);
- gtk_label_set_markup (GTK_LABEL (label_field), field);
- gtk_misc_set_alignment (GTK_MISC (label_field), 1.0, 0.0);
- scroll_text = modest_scroll_text_new (NULL, 2);
- label_value = (GtkWidget *) modest_scroll_text_get_text_view (MODEST_SCROLL_TEXT (scroll_text));
- text_buffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (label_value));
- gtk_text_buffer_set_text (text_buffer, value, -1);
-
- gtk_box_pack_start (GTK_BOX (hbox), label_field, FALSE, FALSE, 0);
- gtk_box_pack_start (GTK_BOX (hbox), scroll_text, TRUE, TRUE, 0);
- gtk_size_group_add_widget (priv->labels_size_group, label_field);
-
- gtk_box_pack_start (GTK_BOX (priv->headers_vbox), hbox, FALSE, FALSE, 0);
- gtk_widget_show (hbox);
-
-}
-#endif
-
-
-static void
-add_recpt_header (ModestMailHeaderView *widget, const gchar *field, const gchar *value)
-{
- ModestMailHeaderViewPriv *priv = MODEST_MAIL_HEADER_VIEW_GET_PRIVATE (widget);
- GtkWidget *hbox;
- GtkWidget *label_field, *label_value;
-
- hbox = gtk_hbox_new (FALSE, 12);
- label_field = gtk_label_new (NULL);
- gtk_label_set_markup (GTK_LABEL (label_field), field);
- gtk_misc_set_alignment (GTK_MISC (label_field), 1.0, 0.0);
- label_value = modest_recpt_view_new ();
- modest_recpt_view_set_recipients (MODEST_RECPT_VIEW(label_value), value);
- g_signal_connect (G_OBJECT (label_value), "activate", G_CALLBACK (activate_recpt), widget);
-
- gtk_box_pack_start (GTK_BOX (hbox), label_field, FALSE, FALSE, 0);
- gtk_box_pack_start (GTK_BOX (hbox), label_value, TRUE, TRUE, 0);
- gtk_size_group_add_widget (priv->labels_size_group, label_field);
-
- gtk_box_pack_start (GTK_BOX (priv->headers_vbox), hbox, FALSE, FALSE, 0);
-
- gtk_widget_show (hbox);
-}
-
-static void
-clean_headers (GtkWidget *vbox)
-{
- GList *headers_list, *node;
-
- headers_list = gtk_container_get_children (GTK_CONTAINER (vbox));
-
- for (node = headers_list; node != NULL; node = g_list_next (node)) {
- gtk_widget_destroy (GTK_WIDGET (node->data));
- }
- g_list_free (headers_list);
-}
-
-static void
-modest_mail_header_view_set_header (TnyHeaderView *self, TnyHeader *header)
-{
- MODEST_MAIL_HEADER_VIEW_GET_CLASS (self)->set_header_func (self, header);
- return;
-}
-
-static void
-modest_mail_header_view_update_is_outgoing (TnyHeaderView *self)
-{
- ModestMailHeaderViewPriv *priv = MODEST_MAIL_HEADER_VIEW_GET_PRIVATE (self);
- TnyFolder *folder = NULL;
-
- priv->is_outgoing = FALSE;
-
- if (priv->header == NULL)
- return;
-
- folder = tny_header_get_folder (priv->header);
-
- if (folder) {
- TnyFolderType folder_type = tny_folder_get_folder_type (folder);
-
- switch (folder_type) {
- case TNY_FOLDER_TYPE_DRAFTS:
- case TNY_FOLDER_TYPE_OUTBOX:
- case TNY_FOLDER_TYPE_SENT:
- priv->is_outgoing = TRUE;
- break;
- default:
- priv->is_outgoing = FALSE;
- }
- priv->is_draft = (folder_type == TNY_FOLDER_TYPE_DRAFTS);
-
- g_object_unref (folder);
- }
-}
-
-static void
-modest_mail_header_view_set_header_default (TnyHeaderView *self, TnyHeader *header)
-{
- ModestMailHeaderViewPriv *priv = MODEST_MAIL_HEADER_VIEW_GET_PRIVATE (self);
-
- if (header)
- g_assert (TNY_IS_HEADER (header));
-
- if (G_LIKELY (priv->header))
- g_object_unref (G_OBJECT (priv->header));
- priv->header = NULL;
-
- clean_headers (priv->headers_vbox);
-
- if (header && G_IS_OBJECT (header))
- {
- const gchar *to, *from, *subject, *bcc, *cc;
- GtkWidget *subject_label;
-
- g_object_ref (G_OBJECT (header));
- priv->header = header;
-
- modest_mail_header_view_update_is_outgoing (self);
-
-
- to = tny_header_get_to (header);
- from = tny_header_get_from (header);
- subject = tny_header_get_subject (header);
- cc = tny_header_get_cc (header);
- bcc = tny_header_get_bcc (header);
-
- priv->subject_box = gtk_hbox_new (FALSE, 0);
- subject_label = gtk_label_new (NULL);
- if (subject && (subject[0] != '\0'))
- gtk_label_set_text (GTK_LABEL (subject_label), subject);
- else
- gtk_label_set_text (GTK_LABEL (subject_label), _("mail_va_no_subject"));
- gtk_label_set_single_line_mode (GTK_LABEL (subject_label), TRUE);
- gtk_label_set_ellipsize (GTK_LABEL (subject_label), PANGO_ELLIPSIZE_END);
- gtk_label_set_selectable (GTK_LABEL (subject_label), TRUE);
- gtk_misc_set_alignment (GTK_MISC (subject_label), 0.0, 0.0);
-
- /* TODO: code disabled until we can get real priority information from message */
-/* if (tny_header_get_priority (header)) { */
-/* GtkWidget *priority_icon = gtk_image_new_from_icon_name ("qgn_list_messaging_high", GTK_ICON_SIZE_MENU); */
-/* gtk_box_pack_start (GTK_BOX (subject_box), priority_icon, FALSE, FALSE, 0); */
-/* } */
- priv->priority_icon = NULL;
- gtk_box_pack_end (GTK_BOX (priv->subject_box), subject_label, TRUE, TRUE, 0);
- if (priv->is_outgoing) {
- gtk_label_set_markup (GTK_LABEL (priv->fromto_label), _("mail_va_to"));
- if (to)
- modest_recpt_view_set_recipients (MODEST_RECPT_VIEW (priv->fromto_contents), to);
- if (cc)
- add_recpt_header (MODEST_MAIL_HEADER_VIEW (self), _("mail_va_cc"), cc);
- if (bcc)
- add_recpt_header (MODEST_MAIL_HEADER_VIEW (self), _("mail_va_hotfix1"), bcc);
- if (priv->is_draft&& from)
- add_recpt_header (MODEST_MAIL_HEADER_VIEW (self), _("mail_va_from"), from);
- modest_mail_header_view_add_custom_header (MODEST_MAIL_HEADER_VIEW (self), _("mail_va_subject"),
- priv->subject_box, TRUE, TRUE);
- if (priv->is_draft)
- add_date_time_header (MODEST_MAIL_HEADER_VIEW (self), _("mcen_fi_message_properties_created"),
- tny_header_get_date_sent (header));
- else
- add_date_time_header (MODEST_MAIL_HEADER_VIEW (self), _("mcen_fi_message_properties_sent"),
- tny_header_get_date_sent (header));
- } else {
- gtk_label_set_markup (GTK_LABEL (priv->fromto_label), _("mail_va_from"));
- if (from)
- modest_recpt_view_set_recipients (MODEST_RECPT_VIEW (priv->fromto_contents), from);
- if (to)
- add_recpt_header (MODEST_MAIL_HEADER_VIEW (self), _("mail_va_to"), to);
- if (cc)
- add_recpt_header (MODEST_MAIL_HEADER_VIEW (self), _("mail_va_cc"), cc);
- if (bcc)
- add_recpt_header (MODEST_MAIL_HEADER_VIEW (self), _("mail_va_hotfix1"), bcc);
- modest_mail_header_view_add_custom_header (MODEST_MAIL_HEADER_VIEW (self), _("mail_va_subject"),
- priv->subject_box, TRUE, TRUE);
- add_date_time_header (MODEST_MAIL_HEADER_VIEW (self), _("mail_va_date"),
- tny_header_get_date_received (header));
- }
- }
-
- gtk_widget_show_all (GTK_WIDGET (self));
-
- return;
-}
-
-static void
-modest_mail_header_view_clear (TnyHeaderView *self)
-{
- MODEST_MAIL_HEADER_VIEW_GET_CLASS (self)->clear_func (self);
- return;
-}
-
-static void
-modest_mail_header_view_clear_default (TnyHeaderView *self)