diff options
author | Matthew Barnes <mbarnes@redhat.com> | 2012-12-08 01:32:32 +0800 |
---|---|---|
committer | Matthew Barnes <mbarnes@redhat.com> | 2012-12-08 03:01:05 +0800 |
commit | cab6eac8f14974ea1c2fedaf9143e98cf630c489 (patch) | |
tree | 38cd8e6e510b6c461f7537c64aea88a11c385f4f /modules/tnef-attachment | |
parent | 3ae26f0ab68776e230a2be58939e5bf69c8fa2d5 (diff) | |
download | gsoc2013-evolution-cab6eac8f14974ea1c2fedaf9143e98cf630c489.tar gsoc2013-evolution-cab6eac8f14974ea1c2fedaf9143e98cf630c489.tar.gz gsoc2013-evolution-cab6eac8f14974ea1c2fedaf9143e98cf630c489.tar.bz2 gsoc2013-evolution-cab6eac8f14974ea1c2fedaf9143e98cf630c489.tar.lz gsoc2013-evolution-cab6eac8f14974ea1c2fedaf9143e98cf630c489.tar.xz gsoc2013-evolution-cab6eac8f14974ea1c2fedaf9143e98cf630c489.tar.zst gsoc2013-evolution-cab6eac8f14974ea1c2fedaf9143e98cf630c489.zip |
Convert EMailParserExtension to an abstract class.
With the previous changes, all parser extensions derive from
GObjectClass and implement the EMailParserExtensionInterface.
Simplify things further by making EMailParserExtension an abstract base
class so parser extensions are now just direct subclasses and need not
bother with implementing GObject interfaces.
Diffstat (limited to 'modules/tnef-attachment')
-rw-r--r-- | modules/tnef-attachment/e-mail-parser-tnef-attachment.c | 27 |
1 files changed, 10 insertions, 17 deletions
diff --git a/modules/tnef-attachment/e-mail-parser-tnef-attachment.c b/modules/tnef-attachment/e-mail-parser-tnef-attachment.c index 27d8c7019b..f2619ae1cc 100644 --- a/modules/tnef-attachment/e-mail-parser-tnef-attachment.c +++ b/modules/tnef-attachment/e-mail-parser-tnef-attachment.c @@ -50,7 +50,7 @@ #define d(x) typedef struct _EMailParserTnefAttachment { - GObject parent; + EMailParserExtension parent; GSettings *settings; gint mode; @@ -58,7 +58,7 @@ typedef struct _EMailParserTnefAttachment { } EMailParserTnefAttachment; typedef struct _EMailParserTnefAttachmentClass { - GObjectClass parent_class; + EMailParserExtensionClass parent_class; } EMailParserTnefAttachmentClass; typedef EExtension EMailParserTnefAttachmentLoader; @@ -66,16 +66,11 @@ typedef EExtensionClass EMailParserTnefAttachmentLoaderClass; GType e_mail_parser_tnef_attachment_get_type (void); GType e_mail_parser_tnef_attachment_loader_get_type (void); -static void e_mail_parser_parser_extension_interface_init (EMailParserExtensionInterface *iface); -G_DEFINE_DYNAMIC_TYPE_EXTENDED ( +G_DEFINE_DYNAMIC_TYPE ( EMailParserTnefAttachment, e_mail_parser_tnef_attachment, - G_TYPE_OBJECT, - 0, - G_IMPLEMENT_INTERFACE_DYNAMIC ( - E_TYPE_MAIL_PARSER_EXTENSION, - e_mail_parser_parser_extension_interface_init)); + E_TYPE_MAIL_PARSER_EXTENSION) G_DEFINE_DYNAMIC_TYPE ( EMailParserTnefAttachmentLoader, @@ -267,15 +262,13 @@ empe_tnef_attachment_parse (EMailParserExtension *extension, } static void -e_mail_parser_parser_extension_interface_init (EMailParserExtensionInterface *iface) -{ - iface->mime_types = parser_mime_types; - iface->parse = empe_tnef_attachment_parse; -} - -static void e_mail_parser_tnef_attachment_class_init (EMailParserTnefAttachmentClass *class) { + EMailParserExtensionClass *extension_class; + + extension_class = E_MAIL_PARSER_EXTENSION_CLASS (class); + extension_class->mime_types = parser_mime_types; + extension_class->parse = empe_tnef_attachment_parse; } void @@ -284,7 +277,7 @@ e_mail_parser_tnef_attachment_class_finalize (EMailParserTnefAttachmentClass *cl } static void -e_mail_parser_tnef_attachment_init (EMailParserTnefAttachment *parser) +e_mail_parser_tnef_attachment_init (EMailParserTnefAttachment *extension) { } |