diff options
author | Matthew Barnes <mbarnes@redhat.com> | 2012-12-07 22:37:37 +0800 |
---|---|---|
committer | Matthew Barnes <mbarnes@redhat.com> | 2012-12-08 03:01:05 +0800 |
commit | 00b211b0f515d6b6d9147c1ca568d0c4b42af699 (patch) | |
tree | f12c1f0180a6c76918f0f6b379d64246f689105f /em-format/e-mail-formatter-headers.c | |
parent | 54455ca1ad6cae527544fed12d0de4ae95341082 (diff) | |
download | gsoc2013-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-headers.c')
-rw-r--r-- | em-format/e-mail-formatter-headers.c | 41 |
1 files changed, 12 insertions, 29 deletions
diff --git a/em-format/e-mail-formatter-headers.c b/em-format/e-mail-formatter-headers.c index 855f6a6320..135b24f586 100644 --- a/em-format/e-mail-formatter-headers.c +++ b/em-format/e-mail-formatter-headers.c @@ -37,30 +37,19 @@ #include <string.h> -typedef struct _EMailFormatterHeaders { - GObject parent; -} EMailFormatterHeaders; +typedef EMailFormatterExtension EMailFormatterHeaders; +typedef EMailFormatterExtensionClass EMailFormatterHeadersClass; -typedef struct _EMailFormatterHeadersClass { - GObjectClass parent_class; -} EMailFormatterHeadersClass; +G_DEFINE_TYPE ( + EMailFormatterHeaders, + e_mail_formatter_headers, + E_TYPE_MAIL_FORMATTER_EXTENSION) static const gchar *formatter_mime_types[] = { "application/vnd.evolution.headers", NULL }; -static void e_mail_formatter_formatter_extension_interface_init (EMailFormatterExtensionInterface *iface); - -G_DEFINE_TYPE_EXTENDED ( - EMailFormatterHeaders, - e_mail_formatter_headers, - G_TYPE_OBJECT, - 0, - G_IMPLEMENT_INTERFACE ( - E_TYPE_MAIL_FORMATTER_EXTENSION, - e_mail_formatter_formatter_extension_interface_init)) - static void format_short_headers (EMailFormatter *formatter, GString *buffer, @@ -583,21 +572,15 @@ emfe_headers_get_description (EMailFormatterExtension *extension) } static void -e_mail_formatter_headers_class_init (EMailFormatterHeadersClass *class) +e_mail_formatter_headers_class_init (EMailFormatterExtensionClass *class) { + class->mime_types = formatter_mime_types; + class->format = emfe_headers_format; + class->get_display_name = emfe_headers_get_display_name; + class->get_description = emfe_headers_get_description; } static void -e_mail_formatter_formatter_extension_interface_init (EMailFormatterExtensionInterface *iface) +e_mail_formatter_headers_init (EMailFormatterExtension *extension) { - iface->mime_types = formatter_mime_types; - iface->format = emfe_headers_format; - iface->get_display_name = emfe_headers_get_display_name; - iface->get_description = emfe_headers_get_description; -} - -static void -e_mail_formatter_headers_init (EMailFormatterHeaders *formatter) -{ - } |