From 9d34f72ec1b99d58ee1c3a6d1a964a6dde166f79 Mon Sep 17 00:00:00 2001 From: Matthew Barnes Date: Thu, 6 Dec 2012 12:57:33 -0500 Subject: EMailExtension: Replace mime_types() method with a string array. In all implementations for EMailExtension, the MIME type list is a static string array -- with the single exception of the text-highlight module, where the MIME type list is dynamically assembled once. Replace the mime_types() method with a "mime_types" string array in the EMailExtensionInterface struct. Then the list of MIME types supported by the class implementing the EMailExtensionInterface can be obtained without requiring an instance of the class. --- .../audio-inline/e-mail-formatter-audio-inline.c | 44 ++++++++++++---------- modules/audio-inline/e-mail-parser-audio-inline.c | 42 ++++++++++++--------- 2 files changed, 49 insertions(+), 37 deletions(-) (limited to 'modules/audio-inline') diff --git a/modules/audio-inline/e-mail-formatter-audio-inline.c b/modules/audio-inline/e-mail-formatter-audio-inline.c index 76c70eb5cc..51d250067f 100644 --- a/modules/audio-inline/e-mail-formatter-audio-inline.c +++ b/modules/audio-inline/e-mail-formatter-audio-inline.c @@ -62,18 +62,30 @@ G_DEFINE_DYNAMIC_TYPE_EXTENDED ( E_TYPE_MAIL_FORMATTER_EXTENSION, e_mail_formatter_formatter_extension_interface_init)); -static const gchar * formatter_mime_types[] = { "application/vnd.evolution.widget.audio-inline", - "audio/ac3", "audio/x-ac3", - "audio/basic", "audio/mpeg", - "audio/x-mpeg", "audio/mpeg3", - "audio/x-mpeg3", "audio/mp3", - "audio/x-mp3", "audio/mp4", - "audio/flac", "audio/x-flac", - "audio/mod", "audio/x-mod", - "audio/x-wav", "audio/microsoft-wav", - "audio/x-wma", "audio/x-ms-wma", - "application/ogg", "application/x-ogg", - NULL }; +static const gchar *formatter_mime_types[] = { + "application/vnd.evolution.widget.audio-inline", + "audio/ac3", + "audio/x-ac3", + "audio/basic", + "audio/mpeg", + "audio/x-mpeg", + "audio/mpeg3", + "audio/x-mpeg3", + "audio/mp3", + "audio/x-mp3", + "audio/mp4", + "audio/flac", + "audio/x-flac", + "audio/mod", + "audio/x-mod", + "audio/x-wav", + "audio/microsoft-wav", + "audio/x-wma", + "audio/x-ms-wma", + "application/ogg", + "application/x-ogg", + NULL +}; static void pause_clicked (GtkWidget *button, @@ -316,12 +328,6 @@ emfe_audio_inline_get_description (EMailFormatterExtension *extension) return _("Play the attachment in embedded audio player"); } -static const gchar ** -emfe_audio_inline_mime_types (EMailExtension *extension) -{ - return formatter_mime_types; -} - static void e_mail_formatter_audio_inline_constructed (GObject *object) { @@ -359,7 +365,7 @@ e_mail_formatter_formatter_extension_interface_init (EMailFormatterExtensionInte static void e_mail_formatter_mail_extension_interface_init (EMailExtensionInterface *iface) { - iface->mime_types = emfe_audio_inline_mime_types; + iface->mime_types = formatter_mime_types; } static void diff --git a/modules/audio-inline/e-mail-parser-audio-inline.c b/modules/audio-inline/e-mail-parser-audio-inline.c index ca87693fe4..5fa4611a97 100644 --- a/modules/audio-inline/e-mail-parser-audio-inline.c +++ b/modules/audio-inline/e-mail-parser-audio-inline.c @@ -62,17 +62,29 @@ G_DEFINE_DYNAMIC_TYPE_EXTENDED ( E_TYPE_MAIL_PARSER_EXTENSION, e_mail_parser_parser_extension_interface_init)); -static const gchar * parser_mime_types[] = { "audio/ac3", "audio/x-ac3", - "audio/basic", "audio/mpeg", - "audio/x-mpeg", "audio/mpeg3", - "audio/x-mpeg3", "audio/mp3", - "audio/x-mp3", "audio/mp4", - "audio/flac", "audio/x-flac", - "audio/mod", "audio/x-mod", - "audio/x-wav", "audio/microsoft-wav", - "audio/x-wma", "audio/x-ms-wma", - "application/ogg", "application/x-ogg", - NULL }; +static const gchar *parser_mime_types[] = { + "audio/ac3", + "audio/x-ac3", + "audio/basic", + "audio/mpeg", + "audio/x-mpeg", + "audio/mpeg3", + "audio/x-mpeg3", + "audio/mp3", + "audio/x-mp3", + "audio/mp4", + "audio/flac", + "audio/x-flac", + "audio/mod", + "audio/x-mod", + "audio/x-wav", + "audio/microsoft-wav", + "audio/x-wma", + "audio/x-ms-wma", + "application/ogg", + "application/x-ogg", + NULL +}; static void mail_part_audio_inline_free (EMailPart *mail_part) @@ -144,12 +156,6 @@ empe_audio_inline_get_flags (EMailParserExtension *extension) return E_MAIL_PARSER_EXTENSION_INLINE_DISPOSITION; } -static const gchar ** -empe_mime_types (EMailExtension *extension) -{ - return parser_mime_types; -} - void e_mail_parser_audio_inline_type_register (GTypeModule *type_module) { @@ -159,7 +165,7 @@ e_mail_parser_audio_inline_type_register (GTypeModule *type_module) static void e_mail_parser_mail_extension_interface_init (EMailExtensionInterface *iface) { - iface->mime_types = empe_mime_types; + iface->mime_types = parser_mime_types; } static void -- cgit v1.2.3