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-image.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-image.c')
-rw-r--r-- | em-format/e-mail-formatter-image.c | 45 |
1 files changed, 14 insertions, 31 deletions
diff --git a/em-format/e-mail-formatter-image.c b/em-format/e-mail-formatter-image.c index cd4d2e1e93..2dbccf50df 100644 --- a/em-format/e-mail-formatter-image.c +++ b/em-format/e-mail-formatter-image.c @@ -33,6 +33,14 @@ #include <glib/gi18n-lib.h> #include <camel/camel.h> +typedef EMailFormatterExtension EMailFormatterImage; +typedef EMailFormatterExtensionClass EMailFormatterImageClass; + +G_DEFINE_TYPE ( + EMailFormatterImage, + e_mail_formatter_image, + E_TYPE_MAIL_FORMATTER_EXTENSION) + static const gchar *formatter_mime_types[] = { "image/gif", "image/jpeg", @@ -54,25 +62,6 @@ static const gchar *formatter_mime_types[] = { NULL }; -typedef struct _EMailFormatterImage { - GObject parent; -} EMailFormatterImage; - -typedef struct _EMailFormatterImageClass { - GObjectClass parent_class; -} EMailFormatterImageClass; - -static void e_mail_formatter_formatter_extension_interface_init (EMailFormatterExtensionInterface *iface); - -G_DEFINE_TYPE_EXTENDED ( - EMailFormatterImage, - e_mail_formatter_image, - G_TYPE_OBJECT, - 0, - G_IMPLEMENT_INTERFACE ( - E_TYPE_MAIL_FORMATTER_EXTENSION, - e_mail_formatter_formatter_extension_interface_init)); - static gboolean emfe_image_format (EMailFormatterExtension *extension, EMailFormatter *formatter, @@ -163,21 +152,15 @@ emfe_image_get_description (EMailFormatterExtension *extension) } static void -e_mail_formatter_image_class_init (EMailFormatterImageClass *class) +e_mail_formatter_image_class_init (EMailFormatterExtensionClass *class) { + class->mime_types = formatter_mime_types; + class->format = emfe_image_format; + class->get_display_name = emfe_image_get_display_name; + class->get_description = emfe_image_get_description; } static void -e_mail_formatter_formatter_extension_interface_init (EMailFormatterExtensionInterface *iface) +e_mail_formatter_image_init (EMailFormatterExtension *extension) { - iface->mime_types = formatter_mime_types; - iface->format = emfe_image_format; - iface->get_display_name = emfe_image_get_display_name; - iface->get_description = emfe_image_get_description; -} - -static void -e_mail_formatter_image_init (EMailFormatterImage *formatter) -{ - } |