Files
evolution/mail/mail-display.h
Dan Winship 9713f20bc8 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
2000-04-25 14:59:08 +00:00

55 lines
1.7 KiB
C

/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
#ifndef _MAIL_DISPLAY_H_
#define _MAIL_DISPLAY_H_
#include <gtk/gtkvbox.h>
#include <gtkhtml/gtkhtml.h>
#include "camel/camel-stream.h"
#include "camel/camel-mime-message.h"
#include "folder-browser.h"
#define MAIL_DISPLAY_TYPE (mail_display_get_type ())
#define MAIL_DISPLAY(o) (GTK_CHECK_CAST ((o), MAIL_DISPLAY_TYPE, MailDisplay))
#define MAIL_DISPLAY_CLASS(k) (GTK_CHECK_CLASS_CAST((k), MAIL_DISPLAY_TYPE, MailDisplayClass))
#define IS_MAIL_DISPLAY(o) (GTK_CHECK_TYPE ((o), MAIL_DISPLAY_TYPE))
#define IS_MAIL_DISPLAY_CLASS(k) (GTK_CHECK_CLASS_TYPE ((k), MAIL_DISPLAY_TYPE))
struct _MailDisplay {
GtkVBox parent;
GtkScrolledWindow *scroll;
GtkBox *inner_box;
FolderBrowser *parent_folder_browser;
CamelMimeMessage *current_message;
};
typedef struct {
GtkVBoxClass parent_class;
} MailDisplayClass;
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_ */