aboutsummaryrefslogtreecommitdiffstats
path: root/mail/mail-display.h
diff options
context:
space:
mode:
authorDan Winship <danw@src.gnome.org>2000-04-25 22:59:08 +0800
committerDan Winship <danw@src.gnome.org>2000-04-25 22:59:08 +0800
commit9713f20bc88573b3716d1b0ba97ac2b4743d150b (patch)
treea51547aa57f535b0d92bb731ed129313c4c1a2fe /mail/mail-display.h
parent10fe02e0c606605fc26250cfbe099e443fb19101 (diff)
downloadgsoc2013-evolution-9713f20bc88573b3716d1b0ba97ac2b4743d150b.tar.gz
gsoc2013-evolution-9713f20bc88573b3716d1b0ba97ac2b4743d150b.tar.zst
gsoc2013-evolution-9713f20bc88573b3716d1b0ba97ac2b4743d150b.zip
Redo large chunks of this. The mail display now consists of a vbox in a
* mail-display.c, mail-format.c: Redo large chunks of this. The mail display now consists of a vbox in a scrolled window, in which we put multiple GtkHTML objects. This means broken HTML in one part can't corrupt other parts. The headers now scroll with the body. Unrecognized attachments look prettier, but still don't do anything, and will probably be changed later. We can also now display nested message/rfc822 parts and multipart/alternatives with multipart subparts. Oh, and text/{richtext,enriched}, since we had all these ancient sample messages that use it and the lack of support annoyed me. :) Bonobo embeddables are broken right now, but I don't think that's my fault. svn path=/trunk/; revision=2601
Diffstat (limited to 'mail/mail-display.h')
-rw-r--r--mail/mail-display.h41
1 files changed, 21 insertions, 20 deletions
diff --git a/mail/mail-display.h b/mail/mail-display.h
index 685bd4c8f8..5fff4ec3de 100644
--- a/mail/mail-display.h
+++ b/mail/mail-display.h
@@ -1,20 +1,9 @@
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
-
-
-
-
-
-
-
-
-
-
-
#ifndef _MAIL_DISPLAY_H_
#define _MAIL_DISPLAY_H_
-#include <gtk/gtktable.h>
+#include <gtk/gtkvbox.h>
#include <gtkhtml/gtkhtml.h>
#include "camel/camel-stream.h"
#include "camel/camel-mime-message.h"
@@ -28,26 +17,38 @@
#define IS_MAIL_DISPLAY_CLASS(k) (GTK_CHECK_CLASS_TYPE ((k), MAIL_DISPLAY_TYPE))
struct _MailDisplay {
- GtkTable parent;
+ GtkVBox parent;
- FolderBrowser *parent_folder_browser;
+ GtkScrolledWindow *scroll;
+ GtkBox *inner_box;
- GtkHTML * headers_html_widget;
- GtkHTML * body_html_widget;
-
+ FolderBrowser *parent_folder_browser;
CamelMimeMessage *current_message;
};
typedef struct {
- GtkTableClass parent_class;
+ GtkVBoxClass parent_class;
} MailDisplayClass;
-GtkType mail_display_get_type (void);
-GtkWidget * mail_display_new (FolderBrowser *parent_folder_browser);
+GtkType mail_display_get_type (void);
+GtkWidget * mail_display_new (FolderBrowser *parent_folder_browser);
void mail_display_set_message (MailDisplay *mail_display,
CamelMedium *medium);
+#define HTML_HEADER "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 TRANSITIONAL//EN\">\n<HTML>\n<HEAD>\n<META NAME=\"GENERATOR\" CONTENT=\"Evolution Mail Component\">\n</HEAD>\n"
+
+void mail_html_new (GtkHTML **html,
+ GtkHTMLStreamHandle **stream,
+ CamelMimeMessage *root,
+ gboolean init);
+void mail_html_write (GtkHTML *html,
+ GtkHTMLStreamHandle *stream,
+ const char *format, ...);
+void mail_html_end (GtkHTML *html,
+ GtkHTMLStreamHandle *stream,
+ gboolean finish,
+ GtkBox *box);
#endif /* _MAIL_DISPLAY_H_ */