From f9ffe647231a7ba2bd5347d92d560b6a57fee786 Mon Sep 17 00:00:00 2001 From: Matthew Barnes Date: Wed, 15 May 2013 09:17:58 -0400 Subject: Convert EMailPart to a GObject. EMailPart is reference-counted, subclassed, and allows a custom finalize function. There's no excuse for it not to use GObject. --- em-format/e-mail-part-attachment-bar.h | 47 +++++++++++++++++++++++++++++----- 1 file changed, 40 insertions(+), 7 deletions(-) (limited to 'em-format/e-mail-part-attachment-bar.h') diff --git a/em-format/e-mail-part-attachment-bar.h b/em-format/e-mail-part-attachment-bar.h index 38e644f801..ca9f93185b 100644 --- a/em-format/e-mail-part-attachment-bar.h +++ b/em-format/e-mail-part-attachment-bar.h @@ -21,18 +21,51 @@ #include -#define E_MAIL_PART_ATTACHMENT_BAR(part) \ - ((EMailPartAttachmentBar *) part) -#define E_IS_MAIL_PART_ATTACHMENT_BAR(part) \ - (E_MAIL_PART_IS (part, EMailPartAttachmentBar)) +/* Standard GObject macros */ +#define E_TYPE_MAIL_PART_ATTACHMENT_BAR \ + (e_mail_part_attachment_bar_get_type ()) +#define E_MAIL_PART_ATTACHMENT_BAR(obj) \ + (G_TYPE_CHECK_INSTANCE_CAST \ + ((obj), E_TYPE_MAIL_PART_ATTACHMENT_BAR, EMailPartAttachmentBar)) +#define E_MAIL_PART_ATTACHMENT_BAR_CLASS(cls) \ + (G_TYPE_CHECK_CLASS_CAST \ + ((cls), E_TYPE_MAIL_PART_ATTACHMENT_BAR, EMailPartAttachmentBarClass)) +#define E_IS_MAIL_PART_ATTACHMENT_BAR(obj) \ + (G_TYPE_CHECK_INSTANCE_TYPE \ + ((obj), E_TYPE_MAIL_PART_ATTACHMENT_BAR)) +#define E_IS_MAIL_PART_ATTACHMENT_BAR_CLASS(cls) \ + (G_TYPE_CHECK_CLASS_TYPE \ + ((cls), E_TYPE_MAIL_PART_ATTACHMENT_BAR)) +#define E_MAIL_PART_ATTACHMENT_BAR_GET_CLASS(obj) \ + (G_TYPE_INSTANCE_GET_CLASS \ + ((obj), E_TYPE_MAIL_PART_ATTACHMENT_BAR, EMailPartAttachmentBarClass)) #define E_MAIL_PART_ATTACHMENT_BAR_MIME_TYPE \ "application/vnd.evolution.widget.attachment-bar" -typedef struct _EMailPartAttachmentBar { +G_BEGIN_DECLS + +typedef struct _EMailPartAttachmentBar EMailPartAttachmentBar; +typedef struct _EMailPartAttachmentBarClass EMailPartAttachmentBarClass; +typedef struct _EMailPartAttachmentBarPrivate EMailPartAttachmentBarPrivate; + +struct _EMailPartAttachmentBar { EMailPart parent; + EMailPartAttachmentBarPrivate *priv; +}; + +struct _EMailPartAttachmentBarClass { + EMailPartClass parent_class; +}; + +GType e_mail_part_attachment_bar_get_type + (void) G_GNUC_CONST; +EMailPart * e_mail_part_attachment_bar_new (CamelMimePart *mime_part, + const gchar *id); +EAttachmentStore * + e_mail_part_attachment_bar_get_store + (EMailPartAttachmentBar *part); - EAttachmentStore *store; -} EMailPartAttachmentBar; +G_END_DECLS #endif /* E_MAIL_PART_ATTACHMENT_BAR_H */ -- cgit