aboutsummaryrefslogtreecommitdiffstats
path: root/modules/itip-formatter
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 /modules/itip-formatter
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 'modules/itip-formatter')
-rw-r--r--modules/itip-formatter/e-mail-formatter-itip.c32
1 files changed, 11 insertions, 21 deletions
diff --git a/modules/itip-formatter/e-mail-formatter-itip.c b/modules/itip-formatter/e-mail-formatter-itip.c
index 2aab01288b..41bf368227 100644
--- a/modules/itip-formatter/e-mail-formatter-itip.c
+++ b/modules/itip-formatter/e-mail-formatter-itip.c
@@ -34,24 +34,19 @@
#define d(x)
-typedef GObject EMailFormatterItip;
-typedef GObjectClass EMailFormatterItipClass;
+typedef EMailFormatterExtension EMailFormatterItip;
+typedef EMailFormatterExtensionClass EMailFormatterItipClass;
typedef EExtension EMailFormatterItipLoader;
typedef EExtensionClass EMailFormatterItipLoaderClass;
GType e_mail_formatter_itip_get_type (void);
GType e_mail_formatter_itip_loader_get_type (void);
-static void e_mail_formatter_formatter_extension_interface_init (EMailFormatterExtensionInterface *iface);
-G_DEFINE_DYNAMIC_TYPE_EXTENDED (
+G_DEFINE_DYNAMIC_TYPE (
EMailFormatterItip,
e_mail_formatter_itip,
- G_TYPE_OBJECT,
- 0,
- G_IMPLEMENT_INTERFACE_DYNAMIC (
- E_TYPE_MAIL_FORMATTER_EXTENSION,
- e_mail_formatter_formatter_extension_interface_init));
+ E_TYPE_MAIL_FORMATTER_EXTENSION)
G_DEFINE_DYNAMIC_TYPE (
EMailFormatterItipLoader,
@@ -154,26 +149,21 @@ emfe_itip_get_description (EMailFormatterExtension *extension)
}
static void
-e_mail_formatter_itip_class_init (EMailFormatterItipClass *class)
-{
-}
-
-static void
-e_mail_formatter_itip_class_finalize (EMailFormatterItipClass *class)
+e_mail_formatter_itip_class_init (EMailFormatterExtensionClass *class)
{
+ class->mime_types = formatter_mime_types;
+ class->format = emfe_itip_format;
+ class->get_display_name = emfe_itip_get_display_name;
+ class->get_description = emfe_itip_get_description;
}
static void
-e_mail_formatter_formatter_extension_interface_init (EMailFormatterExtensionInterface *iface)
+e_mail_formatter_itip_class_finalize (EMailFormatterExtensionClass *class)
{
- iface->mime_types = formatter_mime_types;
- iface->format = emfe_itip_format;
- iface->get_display_name = emfe_itip_get_display_name;
- iface->get_description = emfe_itip_get_description;
}
static void
-e_mail_formatter_itip_init (EMailFormatterItip *formatter)
+e_mail_formatter_itip_init (EMailFormatterExtension *extension)
{
}