aboutsummaryrefslogtreecommitdiffstats
path: root/em-format/e-mail-formatter-print-headers.c
diff options
context:
space:
mode:
authorMatthew Barnes <mbarnes@redhat.com>2012-12-07 22:37:37 +0800
committerMatthew Barnes <mbarnes@redhat.com>2012-12-08 03:01:05 +0800
commit00b211b0f515d6b6d9147c1ca568d0c4b42af699 (patch)
treef12c1f0180a6c76918f0f6b379d64246f689105f /em-format/e-mail-formatter-print-headers.c
parent54455ca1ad6cae527544fed12d0de4ae95341082 (diff)
downloadgsoc2013-evolution-00b211b0f515d6b6d9147c1ca568d0c4b42af699.tar
gsoc2013-evolution-00b211b0f515d6b6d9147c1ca568d0c4b42af699.tar.gz
gsoc2013-evolution-00b211b0f515d6b6d9147c1ca568d0c4b42af699.tar.bz2
gsoc2013-evolution-00b211b0f515d6b6d9147c1ca568d0c4b42af699.tar.lz
gsoc2013-evolution-00b211b0f515d6b6d9147c1ca568d0c4b42af699.tar.xz
gsoc2013-evolution-00b211b0f515d6b6d9147c1ca568d0c4b42af699.tar.zst
gsoc2013-evolution-00b211b0f515d6b6d9147c1ca568d0c4b42af699.zip
Convert EMailFormatterExtension to an abstract class.
With the previous changes, all formatter extensions derive from GObjectClass and implement the EMailFormatterExtensionInterface. Simplify things further by making EMailFormatterExtension an abstract base class so formatter extensions are now just direct subclasses and need not bother with implementing GObject interfaces.
Diffstat (limited to 'em-format/e-mail-formatter-print-headers.c')
-rw-r--r--em-format/e-mail-formatter-print-headers.c42
1 files changed, 12 insertions, 30 deletions
diff --git a/em-format/e-mail-formatter-print-headers.c b/em-format/e-mail-formatter-print-headers.c
index 1821268424..9ab407937b 100644
--- a/em-format/e-mail-formatter-print-headers.c
+++ b/em-format/e-mail-formatter-print-headers.c
@@ -35,31 +35,19 @@
#include <string.h>
-typedef struct _EMailFormatterPrintHeaders {
- GObject parent;
-} EMailFormatterPrintHeaders;
+typedef EMailFormatterExtension EMailFormatterPrintHeaders;
+typedef EMailFormatterExtensionClass EMailFormatterPrintHeadersClass;
-typedef struct _EMailFormatterPrintHeadersClass {
- GObjectClass parent_class;
-} EMailFormatterPrintHeadersClass;
+G_DEFINE_TYPE (
+ EMailFormatterPrintHeaders,
+ e_mail_formatter_print_headers,
+ E_TYPE_MAIL_FORMATTER_EXTENSION)
static const gchar *formatter_mime_types[] = {
"application/vnd.evolution.headers",
NULL
};
-static void e_mail_formatter_print_formatter_extension_interface_init
- (EMailFormatterExtensionInterface *iface);
-
-G_DEFINE_TYPE_EXTENDED (
- EMailFormatterPrintHeaders,
- e_mail_formatter_print_headers,
- G_TYPE_OBJECT,
- 0,
- G_IMPLEMENT_INTERFACE (
- E_TYPE_MAIL_FORMATTER_EXTENSION,
- e_mail_formatter_print_formatter_extension_interface_init))
-
static gboolean
emfpe_headers_format (EMailFormatterExtension *extension,
EMailFormatter *formatter,
@@ -231,21 +219,15 @@ emfpe_headers_get_description (EMailFormatterExtension *extension)
}
static void
-e_mail_formatter_print_headers_class_init (EMailFormatterPrintHeadersClass *class)
+e_mail_formatter_print_headers_class_init (EMailFormatterExtensionClass *class)
{
+ class->mime_types = formatter_mime_types;
+ class->format = emfpe_headers_format;
+ class->get_display_name = emfpe_headers_get_display_name;
+ class->get_description = emfpe_headers_get_description;
}
static void
-e_mail_formatter_print_formatter_extension_interface_init (EMailFormatterExtensionInterface *iface)
+e_mail_formatter_print_headers_init (EMailFormatterExtension *extension)
{
- iface->mime_types = formatter_mime_types;
- iface->format = emfpe_headers_format;
- iface->get_display_name = emfpe_headers_get_display_name;
- iface->get_description = emfpe_headers_get_description;
-}
-
-static void
-e_mail_formatter_print_headers_init (EMailFormatterPrintHeaders *formatter)
-{
-
}