aboutsummaryrefslogtreecommitdiffstats
path: root/em-format
diff options
context:
space:
mode:
authorMatthew Barnes <mbarnes@redhat.com>2013-02-01 21:44:50 +0800
committerMatthew Barnes <mbarnes@redhat.com>2013-02-01 21:44:50 +0800
commit9a0b1266b5686d4985fec8a0dae7fdf00b1b8dd9 (patch)
tree93260e90be18cae0abc1c18738c3b3fad9268dc2 /em-format
parente6a149efcee2aa45a4956d1e1da0e8f0b35b4cc7 (diff)
downloadgsoc2013-evolution-9a0b1266b5686d4985fec8a0dae7fdf00b1b8dd9.tar
gsoc2013-evolution-9a0b1266b5686d4985fec8a0dae7fdf00b1b8dd9.tar.gz
gsoc2013-evolution-9a0b1266b5686d4985fec8a0dae7fdf00b1b8dd9.tar.bz2
gsoc2013-evolution-9a0b1266b5686d4985fec8a0dae7fdf00b1b8dd9.tar.lz
gsoc2013-evolution-9a0b1266b5686d4985fec8a0dae7fdf00b1b8dd9.tar.xz
gsoc2013-evolution-9a0b1266b5686d4985fec8a0dae7fdf00b1b8dd9.tar.zst
gsoc2013-evolution-9a0b1266b5686d4985fec8a0dae7fdf00b1b8dd9.zip
Teach EMailExtensionRegistry to find extensions.
Restore this commit with a proper bug fix to follow.
Diffstat (limited to 'em-format')
-rw-r--r--em-format/Makefile.am2
-rw-r--r--em-format/e-mail-extension-registry.c152
-rw-r--r--em-format/e-mail-extension-registry.h9
-rw-r--r--em-format/e-mail-format-extensions.c144
-rw-r--r--em-format/e-mail-format-extensions.h88
-rw-r--r--em-format/e-mail-formatter-attachment-bar.c6
-rw-r--r--em-format/e-mail-formatter-attachment.c3
-rw-r--r--em-format/e-mail-formatter-error.c3
-rw-r--r--em-format/e-mail-formatter-headers.c3
-rw-r--r--em-format/e-mail-formatter-image.c3
-rw-r--r--em-format/e-mail-formatter-message-rfc822.c3
-rw-r--r--em-format/e-mail-formatter-print-headers.c3
-rw-r--r--em-format/e-mail-formatter-print.c6
-rw-r--r--em-format/e-mail-formatter-quote-attachment.c3
-rw-r--r--em-format/e-mail-formatter-quote-headers.c3
-rw-r--r--em-format/e-mail-formatter-quote-message-rfc822.c3
-rw-r--r--em-format/e-mail-formatter-quote-text-enriched.c3
-rw-r--r--em-format/e-mail-formatter-quote-text-html.c3
-rw-r--r--em-format/e-mail-formatter-quote-text-plain.c3
-rw-r--r--em-format/e-mail-formatter-quote.c6
-rw-r--r--em-format/e-mail-formatter-secure-button.c3
-rw-r--r--em-format/e-mail-formatter-source.c3
-rw-r--r--em-format/e-mail-formatter-text-enriched.c3
-rw-r--r--em-format/e-mail-formatter-text-html.c3
-rw-r--r--em-format/e-mail-formatter-text-plain.c3
-rw-r--r--em-format/e-mail-formatter.c5
-rw-r--r--em-format/e-mail-parser-application-mbox.c3
-rw-r--r--em-format/e-mail-parser-application-smime.c3
-rw-r--r--em-format/e-mail-parser-attachment-bar.c3
-rw-r--r--em-format/e-mail-parser-headers.c3
-rw-r--r--em-format/e-mail-parser-image.c3
-rw-r--r--em-format/e-mail-parser-inlinepgp-encrypted.c3
-rw-r--r--em-format/e-mail-parser-inlinepgp-signed.c3
-rw-r--r--em-format/e-mail-parser-message-deliverystatus.c3
-rw-r--r--em-format/e-mail-parser-message-external.c3
-rw-r--r--em-format/e-mail-parser-message-rfc822.c3
-rw-r--r--em-format/e-mail-parser-message.c3
-rw-r--r--em-format/e-mail-parser-multipart-alternative.c3
-rw-r--r--em-format/e-mail-parser-multipart-appledouble.c3
-rw-r--r--em-format/e-mail-parser-multipart-digest.c3
-rw-r--r--em-format/e-mail-parser-multipart-encrypted.c3
-rw-r--r--em-format/e-mail-parser-multipart-mixed.c3
-rw-r--r--em-format/e-mail-parser-multipart-related.c3
-rw-r--r--em-format/e-mail-parser-multipart-signed.c3
-rw-r--r--em-format/e-mail-parser-secure-button.c3
-rw-r--r--em-format/e-mail-parser-source.c3
-rw-r--r--em-format/e-mail-parser-text-enriched.c3
-rw-r--r--em-format/e-mail-parser-text-html.c3
-rw-r--r--em-format/e-mail-parser-text-plain.c3
-rw-r--r--em-format/e-mail-parser.c3
50 files changed, 201 insertions, 340 deletions
diff --git a/em-format/Makefile.am b/em-format/Makefile.am
index 51c7471cc9..f26a004d0a 100644
--- a/em-format/Makefile.am
+++ b/em-format/Makefile.am
@@ -40,8 +40,6 @@ libemformat_la_SOURCES = \
$(emformatinclude_HEADERS) \
e-mail-extension-registry.c \
e-mail-inline-filter.c \
- e-mail-format-extensions.c \
- e-mail-format-extensions.h \
e-mail-formatter.c \
e-mail-formatter-print.c \
e-mail-formatter-quote.c \
diff --git a/em-format/e-mail-extension-registry.c b/em-format/e-mail-extension-registry.c
index 158951f813..7e5f3a9b0b 100644
--- a/em-format/e-mail-extension-registry.c
+++ b/em-format/e-mail-extension-registry.c
@@ -22,7 +22,6 @@
#include <libebackend/libebackend.h>
-#include "e-mail-format-extensions.h"
#include "e-mail-formatter-extension.h"
#include "e-mail-parser-extension.h"
@@ -58,6 +57,49 @@ destroy_queue (GQueue *queue)
}
static void
+mail_extension_registry_add_extension (EMailExtensionRegistry *registry,
+ const gchar **mime_types,
+ GType extension_type)
+{
+ GObject *extension;
+ gint ii;
+
+ if (mime_types == NULL) {
+ g_critical (
+ "%s does not define any MIME types",
+ g_type_name (extension_type));
+ return;
+ }
+
+ extension = g_object_new (extension_type, NULL);
+
+ for (ii = 0; mime_types[ii] != NULL; ii++) {
+ GQueue *queue;
+
+ queue = g_hash_table_lookup (
+ registry->priv->table, mime_types[ii]);
+ if (queue == NULL) {
+ queue = g_queue_new ();
+ g_hash_table_insert (
+ registry->priv->table,
+ (gpointer) mime_types[ii],
+ queue);
+ }
+
+ g_queue_push_head (queue, g_object_ref (extension));
+
+ if (camel_debug ("emformat:registry")) {
+ printf (
+ "Added extension '%s' for type '%s'\n",
+ g_type_name (extension_type),
+ mime_types[ii]);
+ }
+ }
+
+ g_object_unref (extension);
+}
+
+static void
mail_extension_registry_finalize (GObject *object)
{
EMailExtensionRegistryPrivate *priv;
@@ -96,55 +138,6 @@ e_mail_extension_registry_init (EMailExtensionRegistry *registry)
}
/**
- * e_mail_extension_registry_add_extension:
- * @registry: an #EMailExtensionRegistry
- * @mime_types: a %NULL-terminated array of MIME types
- * @extension_type: the #GType of the extension being added
- *
- * Creates an instance of @extension_type and registers the instance for
- * all provided MIME types.
- */
-void
-e_mail_extension_registry_add_extension (EMailExtensionRegistry *registry,
- const gchar **mime_types,
- GType extension_type)
-{
- GObject *extension;
- gint ii;
-
- g_return_if_fail (E_IS_MAIL_EXTENSION_REGISTRY (registry));
- g_return_if_fail (mime_types != NULL);
- g_return_if_fail (extension_type != G_TYPE_INVALID);
-
- extension = g_object_new (extension_type, NULL);
-
- for (ii = 0; mime_types[ii] != NULL; ii++) {
- GQueue *queue;
-
- queue = g_hash_table_lookup (
- registry->priv->table, mime_types[ii]);
- if (queue == NULL) {
- queue = g_queue_new ();
- g_hash_table_insert (
- registry->priv->table,
- (gpointer) mime_types[ii],
- queue);
- }
-
- g_queue_push_head (queue, g_object_ref (extension));
-
- if (camel_debug ("emformat:registry")) {
- printf (
- "Added extension '%s' for type '%s'\n",
- g_type_name (extension_type),
- mime_types[ii]);
- }
- }
-
- g_object_unref (extension);
-}
-
-/**
* e_mail_extension_registry_get_for_mime_type:
* @regstry: An #EMailExtensionRegistry
* @mime_type: A string with mime-type to look up
@@ -224,6 +217,36 @@ e_mail_parser_extension_registry_init (EMailParserExtensionRegistry *registry)
{
}
+void
+e_mail_parser_extension_registry_load (EMailParserExtensionRegistry *registry)
+{
+ GType *children;
+ GType base_extension_type;
+ guint ii, n_children;
+
+ g_return_if_fail (E_IS_MAIL_PARSER_EXTENSION_REGISTRY (registry));
+
+ base_extension_type = E_TYPE_MAIL_PARSER_EXTENSION;
+ children = g_type_children (base_extension_type, &n_children);
+
+ for (ii = 0; ii < n_children; ii++) {
+ EMailParserExtensionClass *class;
+
+ if (G_TYPE_IS_ABSTRACT (children[ii]))
+ continue;
+
+ class = g_type_class_ref (children[ii]);
+
+ mail_extension_registry_add_extension (
+ E_MAIL_EXTENSION_REGISTRY (registry),
+ class->mime_types, children[ii]);
+
+ g_type_class_unref (class);
+ }
+
+ g_free (children);
+}
+
/******************************************************************************/
G_DEFINE_TYPE_WITH_CODE (
@@ -242,3 +265,32 @@ e_mail_formatter_extension_registry_init (EMailFormatterExtensionRegistry *regis
{
}
+void
+e_mail_formatter_extension_registry_load (EMailFormatterExtensionRegistry *registry,
+ GType base_extension_type)
+{
+ GType *children;
+ guint ii, n_children;
+
+ g_return_if_fail (E_IS_MAIL_FORMATTER_EXTENSION_REGISTRY (registry));
+
+ children = g_type_children (base_extension_type, &n_children);
+
+ for (ii = 0; ii < n_children; ii++) {
+ EMailFormatterExtensionClass *class;
+
+ if (G_TYPE_IS_ABSTRACT (children[ii]))
+ continue;
+
+ class = g_type_class_ref (children[ii]);
+
+ mail_extension_registry_add_extension (
+ E_MAIL_EXTENSION_REGISTRY (registry),
+ class->mime_types, children[ii]);
+
+ g_type_class_unref (class);
+ }
+
+ g_free (children);
+}
+
diff --git a/em-format/e-mail-extension-registry.h b/em-format/e-mail-extension-registry.h
index 21011ef286..7002eb0385 100644
--- a/em-format/e-mail-extension-registry.h
+++ b/em-format/e-mail-extension-registry.h
@@ -57,10 +57,6 @@ struct _EMailExtensionRegistryClass {
GType e_mail_extension_registry_get_type
(void) G_GNUC_CONST;
-void e_mail_extension_registry_add_extension
- (EMailExtensionRegistry *registry,
- const gchar **mime_types,
- GType extension_type);
GQueue * e_mail_extension_registry_get_for_mime_type
(EMailExtensionRegistry *registry,
const gchar *mime_type);
@@ -108,6 +104,8 @@ struct _EMailParserExtensionRegistryClass {
GType e_mail_parser_extension_registry_get_type
(void) G_GNUC_CONST;
+void e_mail_parser_extension_registry_load
+ (EMailParserExtensionRegistry *registry);
G_END_DECLS
@@ -149,6 +147,9 @@ struct _EMailFormatterExtensionRegistryClass {
GType e_mail_formatter_extension_registry_get_type
(void) G_GNUC_CONST;
+void e_mail_formatter_extension_registry_load
+ (EMailFormatterExtensionRegistry *registry,
+ GType base_extension_type);
G_END_DECLS
diff --git a/em-format/e-mail-format-extensions.c b/em-format/e-mail-format-extensions.c
deleted file mode 100644
index 8ba36702a8..0000000000
--- a/em-format/e-mail-format-extensions.c
+++ /dev/null
@@ -1,144 +0,0 @@
-/*
- * e-mail-format-extensions.c
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) version 3.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with the program; if not, see <http://www.gnu.org/licenses/>
- *
- */
-
-#include "e-mail-format-extensions.h"
-
-#include "em-format/e-mail-parser-extension.h"
-#include "em-format/e-mail-formatter-extension.h"
-
-typedef GType (*TypeFunc) (void);
-
-TypeFunc parser_funcs[] = {
- e_mail_parser_application_mbox_get_type,
- e_mail_parser_attachment_bar_get_type,
- e_mail_parser_headers_get_type,
- e_mail_parser_message_get_type,
- e_mail_parser_secure_button_get_type,
- e_mail_parser_source_get_type,
- e_mail_parser_image_get_type,
- e_mail_parser_inline_pgp_encrypted_get_type,
- e_mail_parser_inline_pgp_signed_get_type,
- e_mail_parser_message_delivery_status_get_type,
- e_mail_parser_message_external_get_type,
- e_mail_parser_message_rfc822_get_type,
- e_mail_parser_multipart_alternative_get_type,
- e_mail_parser_multipart_apple_double_get_type,
- e_mail_parser_multipart_digest_get_type,
- e_mail_parser_multipart_encrypted_get_type,
- e_mail_parser_multipart_mixed_get_type,
- e_mail_parser_multipart_related_get_type,
- e_mail_parser_multipart_signed_get_type,
- e_mail_parser_text_enriched_get_type,
- e_mail_parser_text_html_get_type,
- e_mail_parser_text_plain_get_type,
-#ifdef ENABLE_SMIME
- e_mail_parser_application_smime_get_type,
-#endif
- NULL
-};
-
-TypeFunc formatter_funcs[] = {
- e_mail_formatter_attachment_get_type,
- e_mail_formatter_attachment_bar_get_type,
- e_mail_formatter_error_get_type,
- e_mail_formatter_headers_get_type,
- e_mail_formatter_secure_button_get_type,
- e_mail_formatter_source_get_type,
- e_mail_formatter_image_get_type,
- e_mail_formatter_message_rfc822_get_type,
- e_mail_formatter_text_enriched_get_type,
- e_mail_formatter_text_html_get_type,
- e_mail_formatter_text_plain_get_type,
- NULL
-};
-
-TypeFunc quote_formatter_funcs[] = {
- e_mail_formatter_quote_attachment_get_type,
- e_mail_formatter_quote_headers_get_type,
- e_mail_formatter_quote_message_rfc822_get_type,
- e_mail_formatter_quote_text_enriched_get_type,
- e_mail_formatter_quote_text_html_get_type,
- e_mail_formatter_quote_text_plain_get_type,
- NULL
-};
-
-TypeFunc print_formatter_funcs[] = {
- e_mail_formatter_print_headers_get_type,
- NULL
-};
-
-static void
-load (EMailExtensionRegistry *ereg,
- TypeFunc *func_array)
-{
- gint ii;
-
- for (ii = 0; func_array[ii] != NULL; ii++) {
- GType extension_type;
- GType interface_type;
- gpointer extension_class;
- const gchar **mime_types = NULL;
-
- extension_type = func_array[ii]();
- extension_class = g_type_class_ref (extension_type);
-
- interface_type = E_TYPE_MAIL_FORMATTER_EXTENSION;
- if (g_type_is_a (extension_type, interface_type))
- mime_types = ((EMailFormatterExtensionClass *)
- extension_class)->mime_types;
-
- interface_type = E_TYPE_MAIL_PARSER_EXTENSION;
- if (g_type_is_a (extension_type, interface_type))
- mime_types = ((EMailParserExtensionClass *)
- extension_class)->mime_types;
-
- if (mime_types != NULL)
- e_mail_extension_registry_add_extension (
- ereg, mime_types, extension_type);
- else
- g_critical (
- "%s does not define any MIME types",
- g_type_name (extension_type));
-
- g_type_class_unref (extension_class);
- }
-}
-
-void
-e_mail_parser_internal_extensions_load (EMailExtensionRegistry *ereg)
-{
- load (ereg, parser_funcs);
-}
-
-void
-e_mail_formatter_internal_extensions_load (EMailExtensionRegistry *ereg)
-{
- load (ereg, formatter_funcs);
-}
-
-void
-e_mail_formatter_quote_internal_extensions_load (EMailExtensionRegistry *ereg)
-{
- load (ereg, quote_formatter_funcs);
-}
-
-void
-e_mail_formatter_print_internal_extensions_load (EMailExtensionRegistry *ereg)
-{
- load (ereg, print_formatter_funcs);
-}
diff --git a/em-format/e-mail-format-extensions.h b/em-format/e-mail-format-extensions.h
deleted file mode 100644
index 1756ee2411..0000000000
--- a/em-format/e-mail-format-extensions.h
+++ /dev/null
@@ -1,88 +0,0 @@
-/*
- * e-mail-format-extensions.h
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) version 3.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with the program; if not, see <http://www.gnu.org/licenses/>
- *
- */
-
-#ifndef E_MAIL_FORMAT_EXTENSIONS_H
-#define E_MAIL_FORMAT_EXTENSIONS_H
-
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
-
-#include <em-format/e-mail-extension-registry.h>
-#include <em-format/e-mail-part.h>
-#include <e-util/e-util.h>
-
-G_BEGIN_DECLS
-
-void e_mail_formatter_internal_extensions_load (EMailExtensionRegistry *ereg);
-void e_mail_parser_internal_extensions_load (EMailExtensionRegistry *ereg);
-void e_mail_formatter_quote_internal_extensions_load (EMailExtensionRegistry *ereg);
-void e_mail_formatter_print_internal_extensions_load (EMailExtensionRegistry *ereg);
-
-GType e_mail_formatter_attachment_get_type (void);
-GType e_mail_formatter_attachment_bar_get_type
- (void);
-GType e_mail_formatter_error_get_type (void);
-GType e_mail_formatter_headers_get_type (void);
-GType e_mail_formatter_secure_button_get_type
- (void);
-GType e_mail_formatter_source_get_type (void);
-GType e_mail_formatter_image_get_type (void);
-GType e_mail_formatter_message_rfc822_get_type (void);
-GType e_mail_formatter_text_enriched_get_type (void);
-GType e_mail_formatter_text_html_get_type (void);
-GType e_mail_formatter_text_plain_get_type (void);
-
-GType e_mail_parser_application_mbox_get_type (void);
-GType e_mail_parser_attachment_bar_get_type (void);
-GType e_mail_parser_headers_get_type (void);
-GType e_mail_parser_message_get_type (void);
-GType e_mail_parser_secure_button_get_type (void);
-GType e_mail_parser_source_get_type (void);
-GType e_mail_parser_image_get_type (void);
-GType e_mail_parser_inline_pgp_encrypted_get_type (void);
-GType e_mail_parser_inline_pgp_signed_get_type (void);
-GType e_mail_parser_message_delivery_status_get_type (void);
-GType e_mail_parser_message_external_get_type (void);
-GType e_mail_parser_message_rfc822_get_type (void);
-GType e_mail_parser_multipart_alternative_get_type (void);
-GType e_mail_parser_multipart_apple_double_get_type (void);
-GType e_mail_parser_multipart_digest_get_type (void);
-GType e_mail_parser_multipart_encrypted_get_type (void);
-GType e_mail_parser_multipart_mixed_get_type (void);
-GType e_mail_parser_multipart_related_get_type (void);
-GType e_mail_parser_multipart_signed_get_type (void);
-GType e_mail_parser_text_enriched_get_type (void);
-GType e_mail_parser_text_html_get_type (void);
-GType e_mail_parser_text_plain_get_type (void);
-#ifdef ENABLE_SMIME
-GType e_mail_parser_application_smime_get_type (void);
-#endif
-
-GType e_mail_formatter_quote_attachment_get_type (void);
-GType e_mail_formatter_quote_headers_get_type (void);
-GType e_mail_formatter_quote_message_rfc822_get_type (void);
-GType e_mail_formatter_quote_text_enriched_get_type (void);
-GType e_mail_formatter_quote_text_html_get_type (void);
-GType e_mail_formatter_quote_text_plain_get_type (void);
-
-GType e_mail_formatter_print_headers_get_type (void);
-
-G_END_DECLS
-
-#endif /* E_MAIL_FORMAT_EXTENSIONS_H */
diff --git a/em-format/e-mail-formatter-attachment-bar.c b/em-format/e-mail-formatter-attachment-bar.c
index 5633f4fb33..4591501331 100644
--- a/em-format/e-mail-formatter-attachment-bar.c
+++ b/em-format/e-mail-formatter-attachment-bar.c
@@ -20,15 +20,17 @@
#include <config.h>
#endif
+#include "e-mail-part-attachment-bar.h"
+
#include <glib/gi18n-lib.h>
-#include "e-mail-format-extensions.h"
#include "e-mail-formatter-extension.h"
-#include "e-mail-part-attachment-bar.h"
typedef EMailFormatterExtension EMailFormatterAttachmentBar;
typedef EMailFormatterExtensionClass EMailFormatterAttachmentBarClass;
+GType e_mail_formatter_attachment_bar_get_type (void);
+
G_DEFINE_TYPE (
EMailFormatterAttachmentBar,
e_mail_formatter_attachment_bar,
diff --git a/em-format/e-mail-formatter-attachment.c b/em-format/e-mail-formatter-attachment.c
index 993b261cca..f800ca2994 100644
--- a/em-format/e-mail-formatter-attachment.c
+++ b/em-format/e-mail-formatter-attachment.c
@@ -25,7 +25,6 @@
#include <shell/e-shell.h>
#include <shell/e-shell-window.h>
-#include "e-mail-format-extensions.h"
#include "e-mail-formatter-extension.h"
#include "e-mail-inline-filter.h"
#include "e-mail-part-attachment-bar.h"
@@ -37,6 +36,8 @@
typedef EMailFormatterExtension EMailFormatterAttachment;
typedef EMailFormatterExtensionClass EMailFormatterAttachmentClass;
+GType e_mail_formatter_attachment_get_type (void);
+
G_DEFINE_TYPE (
EMailFormatterAttachment,
e_mail_formatter_attachment,
diff --git a/em-format/e-mail-formatter-error.c b/em-format/e-mail-formatter-error.c
index 1535bef286..3adaab90be 100644
--- a/em-format/e-mail-formatter-error.c
+++ b/em-format/e-mail-formatter-error.c
@@ -19,7 +19,6 @@
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif
-#include "e-mail-format-extensions.h"
#include <glib/gi18n-lib.h>
@@ -30,6 +29,8 @@
typedef EMailFormatterExtension EMailFormatterError;
typedef EMailFormatterExtensionClass EMailFormatterErrorClass;
+GType e_mail_formatter_error_get_type (void);
+
G_DEFINE_TYPE (
EMailFormatterError,
e_mail_formatter_error,
diff --git a/em-format/e-mail-formatter-headers.c b/em-format/e-mail-formatter-headers.c
index f64f161571..3161d88db9 100644
--- a/em-format/e-mail-formatter-headers.c
+++ b/em-format/e-mail-formatter-headers.c
@@ -28,7 +28,6 @@
#include <e-util/e-util.h>
#include <shell/e-shell.h>
-#include "e-mail-format-extensions.h"
#include "e-mail-formatter-extension.h"
#include "e-mail-formatter-utils.h"
#include "e-mail-inline-filter.h"
@@ -36,6 +35,8 @@
typedef EMailFormatterExtension EMailFormatterHeaders;
typedef EMailFormatterExtensionClass EMailFormatterHeadersClass;
+GType e_mail_formatter_headers_get_type (void);
+
G_DEFINE_TYPE (
EMailFormatterHeaders,
e_mail_formatter_headers,
diff --git a/em-format/e-mail-formatter-image.c b/em-format/e-mail-formatter-image.c
index 7cfa85eb16..4cdd8443e6 100644
--- a/em-format/e-mail-formatter-image.c
+++ b/em-format/e-mail-formatter-image.c
@@ -24,7 +24,6 @@
#include <e-util/e-util.h>
-#include "e-mail-format-extensions.h"
#include "e-mail-formatter-extension.h"
#include "e-mail-inline-filter.h"
#include "e-mail-parser-extension.h"
@@ -33,6 +32,8 @@
typedef EMailFormatterExtension EMailFormatterImage;
typedef EMailFormatterExtensionClass EMailFormatterImageClass;
+GType e_mail_formatter_image_get_type (void);
+
G_DEFINE_TYPE (
EMailFormatterImage,
e_mail_formatter_image,
diff --git a/em-format/e-mail-formatter-message-rfc822.c b/em-format/e-mail-formatter-message-rfc822.c
index 70c3d20d5b..9e88986e98 100644
--- a/em-format/e-mail-formatter-message-rfc822.c
+++ b/em-format/e-mail-formatter-message-rfc822.c
@@ -25,7 +25,6 @@
#include <e-util/e-util.h>
-#include "e-mail-format-extensions.h"
#include "e-mail-formatter-extension.h"
#include "e-mail-part-list.h"
#include "e-mail-part-utils.h"
@@ -33,6 +32,8 @@
typedef EMailFormatterExtension EMailFormatterMessageRFC822;
typedef EMailFormatterExtensionClass EMailFormatterMessageRFC822Class;
+GType e_mail_formatter_message_rfc822_get_type (void);
+
G_DEFINE_TYPE (
EMailFormatterMessageRFC822,
e_mail_formatter_message_rfc822,
diff --git a/em-format/e-mail-formatter-print-headers.c b/em-format/e-mail-formatter-print-headers.c
index 1499837fba..c3f683f6b3 100644
--- a/em-format/e-mail-formatter-print-headers.c
+++ b/em-format/e-mail-formatter-print-headers.c
@@ -28,7 +28,6 @@
#include <e-util/e-util.h>
#include <libemail-engine/e-mail-utils.h>
-#include "e-mail-format-extensions.h"
#include "e-mail-formatter-print.h"
#include "e-mail-formatter-utils.h"
#include "e-mail-inline-filter.h"
@@ -36,6 +35,8 @@
typedef EMailFormatterExtension EMailFormatterPrintHeaders;
typedef EMailFormatterExtensionClass EMailFormatterPrintHeadersClass;
+GType e_mail_formatter_print_headers_get_type (void);
+
G_DEFINE_TYPE (
EMailFormatterPrintHeaders,
e_mail_formatter_print_headers,
diff --git a/em-format/e-mail-formatter-print.c b/em-format/e-mail-formatter-print.c
index 6ca91484a4..7e15b93e0f 100644
--- a/em-format/e-mail-formatter-print.c
+++ b/em-format/e-mail-formatter-print.c
@@ -237,9 +237,9 @@ e_mail_formatter_print_base_init (EMailFormatterPrintClass *class)
/* Register internal extensions. */
g_type_ensure (e_mail_formatter_print_headers_get_type ());
- e_mail_formatter_print_internal_extensions_load (
- E_MAIL_EXTENSION_REGISTRY (
- E_MAIL_FORMATTER_CLASS (class)->extension_registry));
+ e_mail_formatter_extension_registry_load (
+ E_MAIL_FORMATTER_CLASS (class)->extension_registry,
+ E_TYPE_MAIL_FORMATTER_PRINT_EXTENSION);
E_MAIL_FORMATTER_CLASS (class)->text_html_flags =
CAMEL_MIME_FILTER_TOHTML_CONVERT_NL |
diff --git a/em-format/e-mail-formatter-quote-attachment.c b/em-format/e-mail-formatter-quote-attachment.c
index df2977bfa1..628ef97ab0 100644
--- a/em-format/e-mail-formatter-quote-attachment.c
+++ b/em-format/e-mail-formatter-quote-attachment.c
@@ -26,7 +26,6 @@
#include <e-util/e-util.h>
-#include "e-mail-format-extensions.h"
#include "e-mail-formatter-quote.h"
#include "e-mail-part-attachment.h"
#include "e-mail-part-utils.h"
@@ -36,6 +35,8 @@
typedef EMailFormatterExtension EMailFormatterQuoteAttachment;
typedef EMailFormatterExtensionClass EMailFormatterQuoteAttachmentClass;
+GType e_mail_formatter_quote_attachment_get_type (void);
+
G_DEFINE_TYPE (
EMailFormatterQuoteAttachment,
e_mail_formatter_quote_attachment,
diff --git a/em-format/e-mail-formatter-quote-headers.c b/em-format/e-mail-formatter-quote-headers.c
index 6a6a8b8cce..8fed82d480 100644
--- a/em-format/e-mail-formatter-quote-headers.c
+++ b/em-format/e-mail-formatter-quote-headers.c
@@ -28,7 +28,6 @@
#include <e-util/e-util.h>
#include <libemail-engine/e-mail-utils.h>
-#include "e-mail-format-extensions.h"
#include "e-mail-formatter-quote.h"
#include "e-mail-formatter-utils.h"
#include "e-mail-inline-filter.h"
@@ -36,6 +35,8 @@
typedef EMailFormatterExtension EMailFormatterQuoteHeaders;
typedef EMailFormatterExtensionClass EMailFormatterQuoteHeadersClass;
+GType e_mail_formatter_quote_headers_get_type (void);
+
G_DEFINE_TYPE (
EMailFormatterQuoteHeaders,
e_mail_formatter_quote_headers,
diff --git a/em-format/e-mail-formatter-quote-message-rfc822.c b/em-format/e-mail-formatter-quote-message-rfc822.c
index 2e885d5f81..42b3ba5af8 100644
--- a/em-format/e-mail-formatter-quote-message-rfc822.c
+++ b/em-format/e-mail-formatter-quote-message-rfc822.c
@@ -27,7 +27,6 @@
#include <e-util/e-util.h>
-#include "e-mail-format-extensions.h"
#include "e-mail-formatter-quote.h"
#include "e-mail-part-list.h"
#include "e-mail-part-utils.h"
@@ -35,6 +34,8 @@
typedef EMailFormatterExtension EMailFormatterQuoteMessageRFC822;
typedef EMailFormatterExtensionClass EMailFormatterQuoteMessageRFC822Class;
+GType e_mail_formatter_quote_message_rfc822_get_type (void);
+
G_DEFINE_TYPE (
EMailFormatterQuoteMessageRFC822,
e_mail_formatter_quote_message_rfc822,
diff --git a/em-format/e-mail-formatter-quote-text-enriched.c b/em-format/e-mail-formatter-quote-text-enriched.c
index ce5170e1d5..031cc664db 100644
--- a/em-format/e-mail-formatter-quote-text-enriched.c
+++ b/em-format/e-mail-formatter-quote-text-enriched.c
@@ -26,13 +26,14 @@
#include <e-util/e-util.h>
-#include "e-mail-format-extensions.h"
#include "e-mail-formatter-quote.h"
#include "e-mail-inline-filter.h"
typedef EMailFormatterExtension EMailFormatterQuoteTextEnriched;
typedef EMailFormatterExtensionClass EMailFormatterQuoteTextEnrichedClass;
+GType e_mail_formatter_quote_text_enriched_get_type (void);
+
G_DEFINE_TYPE (
EMailFormatterQuoteTextEnriched,
e_mail_formatter_quote_text_enriched,
diff --git a/em-format/e-mail-formatter-quote-text-html.c b/em-format/e-mail-formatter-quote-text-html.c
index c4559a0d51..71c7d63554 100644
--- a/em-format/e-mail-formatter-quote-text-html.c
+++ b/em-format/e-mail-formatter-quote-text-html.c
@@ -27,7 +27,6 @@
#include <e-util/e-util.h>
-#include "e-mail-format-extensions.h"
#include "e-mail-formatter-quote.h"
#include "e-mail-part-utils.h"
#include "e-mail-stripsig-filter.h"
@@ -35,6 +34,8 @@
typedef EMailFormatterExtension EMailFormatterQuoteTextHTML;
typedef EMailFormatterExtensionClass EMailFormatterQuoteTextHTMLClass;
+GType e_mail_formatter_quote_text_html_get_type (void);
+
G_DEFINE_TYPE (
EMailFormatterQuoteTextHTML,
e_mail_formatter_quote_text_html,
diff --git a/em-format/e-mail-formatter-quote-text-plain.c b/em-format/e-mail-formatter-quote-text-plain.c
index e9383d49f1..71f1762991 100644
--- a/em-format/e-mail-formatter-quote-text-plain.c
+++ b/em-format/e-mail-formatter-quote-text-plain.c
@@ -26,7 +26,6 @@
#include <e-util/e-util.h>
-#include "e-mail-format-extensions.h"
#include "e-mail-formatter-quote.h"
#include "e-mail-part-utils.h"
#include "e-mail-stripsig-filter.h"
@@ -34,6 +33,8 @@
typedef EMailFormatterExtension EMailFormatterQuoteTextPlain;
typedef EMailFormatterExtensionClass EMailFormatterQuoteTextPlainClass;
+GType e_mail_formatter_quote_text_plain_get_type (void);
+
G_DEFINE_TYPE (
EMailFormatterQuoteTextPlain,
e_mail_formatter_quote_text_plain,
diff --git a/em-format/e-mail-formatter-quote.c b/em-format/e-mail-formatter-quote.c
index a8833eef9d..1a2d84deba 100644
--- a/em-format/e-mail-formatter-quote.c
+++ b/em-format/e-mail-formatter-quote.c
@@ -170,9 +170,9 @@ e_mail_formatter_quote_base_init (EMailFormatterQuoteClass *class)
g_type_ensure (e_mail_formatter_quote_text_html_get_type ());
g_type_ensure (e_mail_formatter_quote_text_plain_get_type ());
- e_mail_formatter_quote_internal_extensions_load (
- E_MAIL_EXTENSION_REGISTRY (
- E_MAIL_FORMATTER_CLASS (class)->extension_registry));
+ e_mail_formatter_extension_registry_load (
+ E_MAIL_FORMATTER_CLASS (class)->extension_registry,
+ E_TYPE_MAIL_FORMATTER_QUOTE_EXTENSION);
E_MAIL_FORMATTER_CLASS (class)->text_html_flags =
CAMEL_MIME_FILTER_TOHTML_PRE |
diff --git a/em-format/e-mail-formatter-secure-button.c b/em-format/e-mail-formatter-secure-button.c
index a3efbb28f7..8f66b2ee42 100644
--- a/em-format/e-mail-formatter-secure-button.c
+++ b/em-format/e-mail-formatter-secure-button.c
@@ -19,7 +19,6 @@
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif
-#include "e-mail-format-extensions.h"
#include <glib/gi18n-lib.h>
@@ -35,6 +34,8 @@
typedef EMailFormatterExtension EMailFormatterSecureButton;
typedef EMailFormatterExtensionClass EMailFormatterSecureButtonClass;
+GType e_mail_formatter_secure_button_get_type (void);
+
G_DEFINE_TYPE (
EMailFormatterSecureButton,
e_mail_formatter_secure_button,
diff --git a/em-format/e-mail-formatter-source.c b/em-format/e-mail-formatter-source.c
index 0753b4836e..e4ee288261 100644
--- a/em-format/e-mail-formatter-source.c
+++ b/em-format/e-mail-formatter-source.c
@@ -24,13 +24,14 @@
#include <e-util/e-util.h>
-#include "e-mail-format-extensions.h"
#include "e-mail-formatter-extension.h"
#include "e-mail-inline-filter.h"
typedef EMailFormatterExtension EMailFormatterSource;
typedef EMailFormatterExtensionClass EMailFormatterSourceClass;
+GType e_mail_formatter_source_get_type (void);
+
G_DEFINE_TYPE (
EMailFormatterSource,
e_mail_formatter_source,
diff --git a/em-format/e-mail-formatter-text-enriched.c b/em-format/e-mail-formatter-text-enriched.c
index 86ee917a9f..1ea46e8138 100644
--- a/em-format/e-mail-formatter-text-enriched.c
+++ b/em-format/e-mail-formatter-text-enriched.c
@@ -24,13 +24,14 @@
#include <e-util/e-util.h>
-#include "e-mail-format-extensions.h"
#include "e-mail-formatter-extension.h"
#include "e-mail-inline-filter.h"
typedef EMailFormatterExtension EMailFormatterTextEnriched;
typedef EMailFormatterExtensionClass EMailFormatterTextEnrichedClass;
+GType e_mail_formatter_text_enriched_get_type (void);
+
G_DEFINE_TYPE (
EMailFormatterTextEnriched,
e_mail_formatter_text_enriched,
diff --git a/em-format/e-mail-formatter-text-html.c b/em-format/e-mail-formatter-text-html.c
index b7a0175ed6..a70ec2b2f2 100644
--- a/em-format/e-mail-formatter-text-html.c
+++ b/em-format/e-mail-formatter-text-html.c
@@ -26,7 +26,6 @@
#include <e-util/e-util.h>
-#include "e-mail-format-extensions.h"
#include "e-mail-formatter-extension.h"
#include "e-mail-inline-filter.h"
#include "e-mail-part-utils.h"
@@ -34,6 +33,8 @@
typedef EMailFormatterExtension EMailFormatterTextHTML;
typedef EMailFormatterExtensionClass EMailFormatterTextHTMLClass;
+GType e_mail_formatter_text_html_get_type (void);
+
G_DEFINE_TYPE (
EMailFormatterTextHTML,
e_mail_formatter_text_html,
diff --git a/em-format/e-mail-formatter-text-plain.c b/em-format/e-mail-formatter-text-plain.c
index bda6e53ba1..278353b40b 100644
--- a/em-format/e-mail-formatter-text-plain.c
+++ b/em-format/e-mail-formatter-text-plain.c
@@ -24,7 +24,6 @@
#include <e-util/e-util.h>
-#include "e-mail-format-extensions.h"
#include "e-mail-formatter-extension.h"
#include "e-mail-inline-filter.h"
#include "e-mail-part-utils.h"
@@ -32,6 +31,8 @@
typedef EMailFormatterExtension EMailFormatterTextPlain;
typedef EMailFormatterExtensionClass EMailFormatterTextPlainClass;
+GType e_mail_formatter_text_plain_get_type (void);
+
G_DEFINE_TYPE (
EMailFormatterTextPlain,
e_mail_formatter_text_plain,
diff --git a/em-format/e-mail-formatter.c b/em-format/e-mail-formatter.c
index 83ba48d460..dcea08133e 100644
--- a/em-format/e-mail-formatter.c
+++ b/em-format/e-mail-formatter.c
@@ -526,8 +526,9 @@ e_mail_formatter_base_init (EMailFormatterClass *class)
class->extension_registry = g_object_new (
E_TYPE_MAIL_FORMATTER_EXTENSION_REGISTRY, NULL);
- e_mail_formatter_internal_extensions_load (
- E_MAIL_EXTENSION_REGISTRY (class->extension_registry));
+ e_mail_formatter_extension_registry_load (
+ class->extension_registry,
+ E_TYPE_MAIL_FORMATTER_EXTENSION);
e_extensible_load_extensions (
E_EXTENSIBLE (class->extension_registry));
diff --git a/em-format/e-mail-parser-application-mbox.c b/em-format/e-mail-parser-application-mbox.c
index c928debeb6..b0fde83b2e 100644
--- a/em-format/e-mail-parser-application-mbox.c
+++ b/em-format/e-mail-parser-application-mbox.c
@@ -25,13 +25,14 @@
#include <e-util/e-util.h>
-#include "e-mail-format-extensions.h"
#include "e-mail-parser-extension.h"
#include "e-mail-part-utils.h"
typedef EMailParserExtension EMailParserApplicationMBox;
typedef EMailParserExtensionClass EMailParserApplicationMBoxClass;
+GType e_mail_parser_application_mbox_get_type (void);
+
G_DEFINE_TYPE (
EMailParserApplicationMBox,
e_mail_parser_application_mbox,
diff --git a/em-format/e-mail-parser-application-smime.c b/em-format/e-mail-parser-application-smime.c
index a5ab0479c6..13c3d739c1 100644
--- a/em-format/e-mail-parser-application-smime.c
+++ b/em-format/e-mail-parser-application-smime.c
@@ -25,13 +25,14 @@
#include <e-util/e-util.h>
-#include "e-mail-format-extensions.h"
#include "e-mail-parser-extension.h"
#include "e-mail-part-utils.h"
typedef EMailParserExtension EMailParserApplicationSMIME;
typedef EMailParserExtensionClass EMailParserApplicationSMIMEClass;
+GType e_mail_parser_application_smime_get_type (void);
+
G_DEFINE_TYPE (
EMailParserApplicationSMIME,
e_mail_parser_application_smime,
diff --git a/em-format/e-mail-parser-attachment-bar.c b/em-format/e-mail-parser-attachment-bar.c
index ecc6be677d..44fbb9cc82 100644
--- a/em-format/e-mail-parser-attachment-bar.c
+++ b/em-format/e-mail-parser-attachment-bar.c
@@ -19,7 +19,6 @@
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif
-#include "e-mail-format-extensions.h"
#include "e-mail-part-attachment-bar.h"
@@ -42,6 +41,8 @@ mail_part_attachment_bar_free (EMailPart *part)
typedef EMailParserExtension EMailParserAttachmentBar;
typedef EMailParserExtensionClass EMailParserAttachmentBarClass;
+GType e_mail_parser_attachment_bar_get_type (void);
+
G_DEFINE_TYPE (
EMailParserAttachmentBar,
e_mail_parser_attachment_bar,
diff --git a/em-format/e-mail-parser-headers.c b/em-format/e-mail-parser-headers.c
index 009371fa1a..f2900945d1 100644
--- a/em-format/e-mail-parser-headers.c
+++ b/em-format/e-mail-parser-headers.c
@@ -26,12 +26,13 @@
#include <e-util/e-util.h>
#include <libemail-engine/e-mail-utils.h>
-#include "e-mail-format-extensions.h"
#include "e-mail-parser-extension.h"
typedef EMailParserExtension EMailParserHeaders;
typedef EMailParserExtensionClass EMailParserHeadersClass;
+GType e_mail_parser_headers_get_type (void);
+
G_DEFINE_TYPE (
EMailParserHeaders,
e_mail_parser_headers,
diff --git a/em-format/e-mail-parser-image.c b/em-format/e-mail-parser-image.c
index 5360bdb176..741daa7454 100644
--- a/em-format/e-mail-parser-image.c
+++ b/em-format/e-mail-parser-image.c
@@ -24,13 +24,14 @@
#include <e-util/e-util.h>
-#include "e-mail-format-extensions.h"
#include "e-mail-parser-extension.h"
#include "e-mail-part-utils.h"
typedef EMailParserExtension EMailParserImage;
typedef EMailParserExtensionClass EMailParserImageClass;
+GType e_mail_parser_image_get_type (void);
+
G_DEFINE_TYPE (
EMailParserImage,
e_mail_parser_image,
diff --git a/em-format/e-mail-parser-inlinepgp-encrypted.c b/em-format/e-mail-parser-inlinepgp-encrypted.c
index 99c787199f..624452c8b0 100644
--- a/em-format/e-mail-parser-inlinepgp-encrypted.c
+++ b/em-format/e-mail-parser-inlinepgp-encrypted.c
@@ -25,13 +25,14 @@
#include <e-util/e-util.h>
-#include "e-mail-format-extensions.h"
#include "e-mail-parser-extension.h"
#include "e-mail-part-utils.h"
typedef EMailParserExtension EMailParserInlinePGPEncrypted;
typedef EMailParserExtensionClass EMailParserInlinePGPEncryptedClass;
+GType e_mail_parser_inline_pgp_encrypted_get_type (void);
+
G_DEFINE_TYPE (
EMailParserInlinePGPEncrypted,
e_mail_parser_inline_pgp_encrypted,
diff --git a/em-format/e-mail-parser-inlinepgp-signed.c b/em-format/e-mail-parser-inlinepgp-signed.c
index faf7be6e22..fb65e5c447 100644
--- a/em-format/e-mail-parser-inlinepgp-signed.c
+++ b/em-format/e-mail-parser-inlinepgp-signed.c
@@ -25,13 +25,14 @@
#include <e-util/e-util.h>
-#include "e-mail-format-extensions.h"
#include "e-mail-parser-extension.h"
#include "e-mail-part-utils.h"
typedef EMailParserExtension EMailParserInlinePGPSigned;
typedef EMailParserExtensionClass EMailParserInlinePGPSignedClass;
+GType e_mail_parser_inline_pgp_signed_get_type (void);
+
G_DEFINE_TYPE (
EMailParserInlinePGPSigned,
e_mail_parser_inline_pgp_signed,
diff --git a/em-format/e-mail-parser-message-deliverystatus.c b/em-format/e-mail-parser-message-deliverystatus.c
index 88fa8ce448..d02bbf9149 100644
--- a/em-format/e-mail-parser-message-deliverystatus.c
+++ b/em-format/e-mail-parser-message-deliverystatus.c
@@ -24,12 +24,13 @@
#include <e-util/e-util.h>
-#include "e-mail-format-extensions.h"
#include "e-mail-parser-extension.h"
typedef EMailParserExtension EMailParserMessageDeliveryStatus;
typedef EMailParserExtensionClass EMailParserMessageDeliveryStatusClass;
+GType e_mail_parser_message_delivery_status_get_type (void);
+
G_DEFINE_TYPE (
EMailParserMessageDeliveryStatus,
e_mail_parser_message_delivery_status,
diff --git a/em-format/e-mail-parser-message-external.c b/em-format/e-mail-parser-message-external.c
index c6b6de13a7..d24bb657e1 100644
--- a/em-format/e-mail-parser-message-external.c
+++ b/em-format/e-mail-parser-message-external.c
@@ -26,12 +26,13 @@
#include <e-util/e-util.h>
-#include "e-mail-format-extensions.h"
#include "e-mail-parser-extension.h"
typedef EMailParserExtension EMailParserMessageExternal;
typedef EMailParserExtensionClass EMailParserMessageExternalClass;
+GType e_mail_parser_message_external_get_type (void);
+
G_DEFINE_TYPE (
EMailParserMessageExternal,
e_mail_parser_message_external,
diff --git a/em-format/e-mail-parser-message-rfc822.c b/em-format/e-mail-parser-message-rfc822.c
index bafdd62286..ca9dd67df9 100644
--- a/em-format/e-mail-parser-message-rfc822.c
+++ b/em-format/e-mail-parser-message-rfc822.c
@@ -25,7 +25,6 @@
#include <e-util/e-util.h>
-#include "e-mail-format-extensions.h"
#include "e-mail-parser-extension.h"
#include "e-mail-part-list.h"
#include "e-mail-part-utils.h"
@@ -33,6 +32,8 @@
typedef EMailParserExtension EMailParserMessageRFC822;
typedef EMailParserExtensionClass EMailParserMessageRFC822Class;
+GType e_mail_parser_message_rfc822_get_type (void);
+
G_DEFINE_TYPE (
EMailParserMessageRFC822,
e_mail_parser_message_rfc822,
diff --git a/em-format/e-mail-parser-message.c b/em-format/e-mail-parser-message.c
index 696c230876..9cd0a2d76c 100644
--- a/em-format/e-mail-parser-message.c
+++ b/em-format/e-mail-parser-message.c
@@ -26,13 +26,14 @@
#include <e-util/e-util.h>
#include <libemail-engine/e-mail-utils.h>
-#include "e-mail-format-extensions.h"
#include "e-mail-parser-extension.h"
#include "e-mail-part-utils.h"
typedef EMailParserExtension EMailParserMessage;
typedef EMailParserExtensionClass EMailParserMessageClass;
+GType e_mail_parser_message_get_type (void);
+
G_DEFINE_TYPE (
EMailParserMessage,
e_mail_parser_message,
diff --git a/em-format/e-mail-parser-multipart-alternative.c b/em-format/e-mail-parser-multipart-alternative.c
index 2e78d0667c..cc1c8724db 100644
--- a/em-format/e-mail-parser-multipart-alternative.c
+++ b/em-format/e-mail-parser-multipart-alternative.c
@@ -24,13 +24,14 @@
#include <e-util/e-util.h>
-#include "e-mail-format-extensions.h"
#include "e-mail-parser-extension.h"
#include "e-mail-part-utils.h"
typedef EMailParserExtension EMailParserMultipartAlternative;
typedef EMailParserExtensionClass EMailParserMultipartAlternativeClass;
+GType e_mail_parser_multipart_alternative_get_type (void);
+
G_DEFINE_TYPE (
EMailParserMultipartAlternative,
e_mail_parser_multipart_alternative,
diff --git a/em-format/e-mail-parser-multipart-appledouble.c b/em-format/e-mail-parser-multipart-appledouble.c
index e27bb78039..a866363717 100644
--- a/em-format/e-mail-parser-multipart-appledouble.c
+++ b/em-format/e-mail-parser-multipart-appledouble.c
@@ -20,12 +20,13 @@
#include <config.h>
#endif
-#include "e-mail-format-extensions.h"
#include "e-mail-parser-extension.h"
typedef EMailParserExtension EMailParserMultipartAppleDouble;
typedef EMailParserExtensionClass EMailParserMultipartAppleDoubleClass;
+GType e_mail_parser_multipart_apple_double_get_type (void);
+
G_DEFINE_TYPE (
EMailParserMultipartAppleDouble,
e_mail_parser_multipart_apple_double,
diff --git a/em-format/e-mail-parser-multipart-digest.c b/em-format/e-mail-parser-multipart-digest.c
index df1b680860..64d4882a8c 100644
--- a/em-format/e-mail-parser-multipart-digest.c
+++ b/em-format/e-mail-parser-multipart-digest.c
@@ -24,12 +24,13 @@
#include <e-util/e-util.h>
-#include "e-mail-format-extensions.h"
#include "e-mail-parser-extension.h"
typedef EMailParserExtension EMailParserMultipartDigest;
typedef EMailParserExtensionClass EMailParserMultipartDigestClass;
+GType e_mail_parser_multipart_digest_get_type (void);
+
G_DEFINE_TYPE (
EMailParserMultipartDigest,
e_mail_parser_multipart_digest,
diff --git a/em-format/e-mail-parser-multipart-encrypted.c b/em-format/e-mail-parser-multipart-encrypted.c
index f0e2e94b0b..c815ab543c 100644
--- a/em-format/e-mail-parser-multipart-encrypted.c
+++ b/em-format/e-mail-parser-multipart-encrypted.c
@@ -24,13 +24,14 @@
#include <libedataserver/libedataserver.h>
-#include "e-mail-format-extensions.h"
#include "e-mail-parser-extension.h"
#include "e-mail-part-utils.h"
typedef EMailParserExtension EMailParserMultipartEncrypted;
typedef EMailParserExtensionClass EMailParserMultipartEncryptedClass;
+GType e_mail_parser_multipart_encrypted_get_type (void);
+
G_DEFINE_TYPE (
EMailParserMultipartEncrypted,
e_mail_parser_multipart_encrypted,
diff --git a/em-format/e-mail-parser-multipart-mixed.c b/em-format/e-mail-parser-multipart-mixed.c
index 8fbd55febe..9e876eef4e 100644
--- a/em-format/e-mail-parser-multipart-mixed.c
+++ b/em-format/e-mail-parser-multipart-mixed.c
@@ -24,13 +24,14 @@
#include <e-util/e-util.h>
-#include "e-mail-format-extensions.h"
#include "e-mail-parser-extension.h"
#include "e-mail-part-utils.h"
typedef EMailParserExtension EMailParserMultipartMixed;
typedef EMailParserExtensionClass EMailParserMultipartMixedClass;
+GType e_mail_parser_multipart_mixed_get_type (void);
+
G_DEFINE_TYPE (
EMailParserMultipartMixed,
e_mail_parser_multipart_mixed,
diff --git a/em-format/e-mail-parser-multipart-related.c b/em-format/e-mail-parser-multipart-related.c
index 5d94f656a1..a1cbbf7a41 100644
--- a/em-format/e-mail-parser-multipart-related.c
+++ b/em-format/e-mail-parser-multipart-related.c
@@ -24,13 +24,14 @@
#include <e-util/e-util.h>
-#include "e-mail-format-extensions.h"
#include "e-mail-parser-extension.h"
#include "e-mail-part-utils.h"
typedef EMailParserExtension EMailParserMultipartRelated;
typedef EMailParserExtensionClass EMailParserMultipartRelatedClass;
+GType e_mail_parser_multipart_related_get_type (void);
+
G_DEFINE_TYPE (
EMailParserMultipartRelated,
e_mail_parser_multipart_related,
diff --git a/em-format/e-mail-parser-multipart-signed.c b/em-format/e-mail-parser-multipart-signed.c
index dc3262df34..514d40fafb 100644
--- a/em-format/e-mail-parser-multipart-signed.c
+++ b/em-format/e-mail-parser-multipart-signed.c
@@ -24,13 +24,14 @@
#include <libedataserver/libedataserver.h>
-#include "e-mail-format-extensions.h"
#include "e-mail-parser-extension.h"
#include "e-mail-part-utils.h"
typedef EMailParserExtension EMailParserMultipartSigned;
typedef EMailParserExtensionClass EMailParserMultipartSignedClass;
+GType e_mail_parser_multipart_signed_get_type (void);
+
G_DEFINE_TYPE (
EMailParserMultipartSigned,
e_mail_parser_multipart_signed,
diff --git a/em-format/e-mail-parser-secure-button.c b/em-format/e-mail-parser-secure-button.c
index 59d573ce9a..38368592c7 100644
--- a/em-format/e-mail-parser-secure-button.c
+++ b/em-format/e-mail-parser-secure-button.c
@@ -19,7 +19,6 @@
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif
-#include "e-mail-format-extensions.h"
#include <glib/gi18n-lib.h>
@@ -30,6 +29,8 @@
typedef EMailParserExtension EMailParserSecureButton;
typedef EMailParserExtensionClass EMailParserSecureButtonClass;
+GType e_mail_parser_secure_button_get_type (void);
+
G_DEFINE_TYPE (
EMailParserSecureButton,
e_mail_parser_secure_button,
diff --git a/em-format/e-mail-parser-source.c b/em-format/e-mail-parser-source.c
index d20051d9f3..ff8355db15 100644
--- a/em-format/e-mail-parser-source.c
+++ b/em-format/e-mail-parser-source.c
@@ -24,12 +24,13 @@
#include <e-util/e-util.h>
-#include "e-mail-format-extensions.h"
#include "e-mail-parser-extension.h"
typedef EMailParserExtension EMailParserSource;
typedef EMailParserExtensionClass EMailParserSourceClass;
+GType e_mail_parser_source_get_type (void);
+
G_DEFINE_TYPE (
EMailParserSource,
e_mail_parser_source,
diff --git a/em-format/e-mail-parser-text-enriched.c b/em-format/e-mail-parser-text-enriched.c
index 2c4edaa612..024d160196 100644
--- a/em-format/e-mail-parser-text-enriched.c
+++ b/em-format/e-mail-parser-text-enriched.c
@@ -24,13 +24,14 @@
#include <e-util/e-util.h>
-#include "e-mail-format-extensions.h"
#include "e-mail-parser-extension.h"
#include "e-mail-part-utils.h"
typedef EMailParserExtension EMailParserTextEnriched;
typedef EMailParserExtensionClass EMailParserTextEnrichedClass;
+GType e_mail_parser_text_enriched_get_type (void);
+
G_DEFINE_TYPE (
EMailParserTextEnriched,
e_mail_parser_text_enriched,
diff --git a/em-format/e-mail-parser-text-html.c b/em-format/e-mail-parser-text-html.c
index 3fa17acfc1..ccfc5d6eb3 100644
--- a/em-format/e-mail-parser-text-html.c
+++ b/em-format/e-mail-parser-text-html.c
@@ -25,13 +25,14 @@
#include <e-util/e-util.h>
-#include "e-mail-format-extensions.h"
#include "e-mail-parser-extension.h"
#include "e-mail-part-utils.h"
typedef EMailParserExtension EMailParserTextHTML;
typedef EMailParserExtensionClass EMailParserTextHTMLClass;
+GType e_mail_parser_text_html_get_type (void);
+
G_DEFINE_TYPE (
EMailParserTextHTML,
e_mail_parser_text_html,
diff --git a/em-format/e-mail-parser-text-plain.c b/em-format/e-mail-parser-text-plain.c
index bbe7e6e5e3..f0b34e4b2c 100644
--- a/em-format/e-mail-parser-text-plain.c
+++ b/em-format/e-mail-parser-text-plain.c
@@ -25,7 +25,6 @@
#include <e-util/e-util.h>
-#include "e-mail-format-extensions.h"
#include "e-mail-inline-filter.h"
#include "e-mail-parser-extension.h"
#include "e-mail-part-utils.h"
@@ -33,6 +32,8 @@
typedef EMailParserExtension EMailParserTextPlain;
typedef EMailParserExtensionClass EMailParserTextPlainClass;
+GType e_mail_parser_text_plain_get_type (void);
+
G_DEFINE_TYPE (
EMailParserTextPlain,
e_mail_parser_text_plain,
diff --git a/em-format/e-mail-parser.c b/em-format/e-mail-parser.c
index 762302ba80..359efe7d9b 100644
--- a/em-format/e-mail-parser.c
+++ b/em-format/e-mail-parser.c
@@ -233,8 +233,7 @@ e_mail_parser_base_init (EMailParserClass *class)
class->extension_registry = g_object_new (
E_TYPE_MAIL_PARSER_EXTENSION_REGISTRY, NULL);
- e_mail_parser_internal_extensions_load (
- E_MAIL_EXTENSION_REGISTRY (class->extension_registry));
+ e_mail_parser_extension_registry_load (class->extension_registry);
e_extensible_load_extensions (E_EXTENSIBLE (class->extension_registry));
}