aboutsummaryrefslogtreecommitdiffstats
path: root/em-format/e-mail-parser-message-rfc822.c
diff options
context:
space:
mode:
authorMatthew Barnes <mbarnes@redhat.com>2012-12-08 01:32:32 +0800
committerMatthew Barnes <mbarnes@redhat.com>2012-12-08 03:01:05 +0800
commitcab6eac8f14974ea1c2fedaf9143e98cf630c489 (patch)
tree38cd8e6e510b6c461f7537c64aea88a11c385f4f /em-format/e-mail-parser-message-rfc822.c
parent3ae26f0ab68776e230a2be58939e5bf69c8fa2d5 (diff)
downloadgsoc2013-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 'em-format/e-mail-parser-message-rfc822.c')
-rw-r--r--em-format/e-mail-parser-message-rfc822.c35
1 files changed, 9 insertions, 26 deletions
diff --git a/em-format/e-mail-parser-message-rfc822.c b/em-format/e-mail-parser-message-rfc822.c
index ad50f59b49..d2cd7ee7fe 100644
--- a/em-format/e-mail-parser-message-rfc822.c
+++ b/em-format/e-mail-parser-message-rfc822.c
@@ -35,24 +35,13 @@
#include <string.h>
-typedef struct _EMailParserMessageRFC822 {
- GObject parent;
-} EMailParserMessageRFC822;
+typedef EMailParserExtension EMailParserMessageRFC822;
+typedef EMailParserExtensionClass EMailParserMessageRFC822Class;
-typedef struct _EMailParserMessageRFC822Class {
- GObjectClass parent_class;
-} EMailParserMessageRFC822Class;
-
-static void e_mail_parser_parser_extension_interface_init (EMailParserExtensionInterface *iface);
-
-G_DEFINE_TYPE_EXTENDED (
+G_DEFINE_TYPE (
EMailParserMessageRFC822,
e_mail_parser_message_rfc822,
- G_TYPE_OBJECT,
- 0,
- G_IMPLEMENT_INTERFACE (
- E_TYPE_MAIL_PARSER_EXTENSION,
- e_mail_parser_parser_extension_interface_init));
+ E_TYPE_MAIL_PARSER_EXTENSION)
static const gchar *parser_mime_types[] = {
"message/rfc822",
@@ -142,20 +131,14 @@ empe_msg_rfc822_get_flags (EMailParserExtension *extension)
}
static void
-e_mail_parser_message_rfc822_class_init (EMailParserMessageRFC822Class *class)
+e_mail_parser_message_rfc822_class_init (EMailParserExtensionClass *class)
{
+ class->mime_types = parser_mime_types;
+ class->parse = empe_msg_rfc822_parse;
+ class->get_flags = empe_msg_rfc822_get_flags;
}
static void
-e_mail_parser_parser_extension_interface_init (EMailParserExtensionInterface *iface)
+e_mail_parser_message_rfc822_init (EMailParserExtension *extension)
{
- iface->mime_types = parser_mime_types;
- iface->parse = empe_msg_rfc822_parse;
- iface->get_flags = empe_msg_rfc822_get_flags;
-}
-
-static void
-e_mail_parser_message_rfc822_init (EMailParserMessageRFC822 *parser)
-{
-
}