diff options
author | Matthew Barnes <mbarnes@redhat.com> | 2013-05-15 21:17:58 +0800 |
---|---|---|
committer | Matthew Barnes <mbarnes@redhat.com> | 2013-05-20 01:07:22 +0800 |
commit | f9ffe647231a7ba2bd5347d92d560b6a57fee786 (patch) | |
tree | 6c1245d91a399647fc25521bc1f38cf564210979 /em-format/e-mail-part-attachment.h | |
parent | 0b4e7ec091c8bbe65dc2f2afd7da78b04da7c274 (diff) | |
download | gsoc2013-evolution-f9ffe647231a7ba2bd5347d92d560b6a57fee786.tar gsoc2013-evolution-f9ffe647231a7ba2bd5347d92d560b6a57fee786.tar.gz gsoc2013-evolution-f9ffe647231a7ba2bd5347d92d560b6a57fee786.tar.bz2 gsoc2013-evolution-f9ffe647231a7ba2bd5347d92d560b6a57fee786.tar.lz gsoc2013-evolution-f9ffe647231a7ba2bd5347d92d560b6a57fee786.tar.xz gsoc2013-evolution-f9ffe647231a7ba2bd5347d92d560b6a57fee786.tar.zst gsoc2013-evolution-f9ffe647231a7ba2bd5347d92d560b6a57fee786.zip |
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.
Diffstat (limited to 'em-format/e-mail-part-attachment.h')
-rw-r--r-- | em-format/e-mail-part-attachment.h | 40 |
1 files changed, 32 insertions, 8 deletions
diff --git a/em-format/e-mail-part-attachment.h b/em-format/e-mail-part-attachment.h index 24f0cf2f06..5c9fd617b0 100644 --- a/em-format/e-mail-part-attachment.h +++ b/em-format/e-mail-part-attachment.h @@ -21,28 +21,52 @@ #include <em-format/e-mail-part.h> -#define E_MAIL_PART_ATTACHMENT(part) \ - ((EMailPartAttachment *) part) -#define E_IS_MAIL_PART_ATTACHMENT(part) \ - (E_MAIL_PART_IS (part, EMailPartAttachment)) +/* Standard GObject macros */ +#define E_TYPE_MAIL_PART_ATTACHMENT \ + (e_mail_part_attachment_get_type ()) +#define E_MAIL_PART_ATTACHMENT(obj) \ + (G_TYPE_CHECK_INSTANCE_CAST \ + ((obj), E_TYPE_MAIL_PART_ATTACHMENT, EMailPartAttachment)) +#define E_MAIL_PART_ATTACHMENT_CLASS(cls) \ + (G_TYPE_CHECK_CLASS_CAST \ + ((cls), E_TYPE_MAIL_PART_ATTACHMENT, EMailPartAttachmentClass)) +#define E_IS_MAIL_PART_ATTACHMENT(obj) \ + (G_TYPE_CHECK_INSTANCE_TYPE \ + ((obj), E_TYPE_MAIL_PART_ATTACHMENT)) +#define E_IS_MAIL_PART_ATTACHMENT_CLASS(cls) \ + (G_TYPE_CHECK_CLASS_TYPE \ + ((cls), E_TYPE_MAIL_PART_ATTACHMENT)) +#define E_MAIL_PART_ATTACHMENT_GET_CLASS(obj) \ + (G_TYPE_INSTANCE_GET_CLASS \ + ((obj), E_TYPE_MAIL_PART_ATTACHMENT, EMailPartAttachmentClass)) #define E_MAIL_PART_ATTACHMENT_MIME_TYPE \ "application/vnd.evolution.attachment" G_BEGIN_DECLS -typedef struct _EMailPartAttachment { +typedef struct _EMailPartAttachment EMailPartAttachment; +typedef struct _EMailPartAttachmentClass EMailPartAttachmentClass; +typedef struct _EMailPartAttachmentPrivate EMailPartAttachmentPrivate; + +struct _EMailPartAttachment { EMailPart parent; + EMailPartAttachmentPrivate *priv; - EAttachment *attachment; gchar *attachment_view_part_id; gboolean shown; const gchar *snoop_mime_type; +}; -} EMailPartAttachment; +struct _EMailPartAttachmentClass { + EMailPartClass parent_class; +}; -void e_mail_part_attachment_free (EMailPartAttachment *empa); +GType e_mail_part_attachment_get_type (void) G_GNUC_CONST; +EMailPartAttachment * + e_mail_part_attachment_new (CamelMimePart *mime_part, + const gchar *id); EAttachment * e_mail_part_attachment_ref_attachment (EMailPartAttachment *part); |