From 45f7541f42d696d02464973e74b2684f690a0cdd Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Thu, 3 Oct 2002 22:39:51 +0000 Subject: Support for separately installed loaders. (#77486) * Makefile.am gdk-pixbuf-animation.c gdk-pixbuf-data.c gdk-pixbuf-io.c gdk-pixbuf-io.h gdk-pixbuf-loader.c gdk-pixbuf-loader.h gdk-pixbuf-private.h gdk-pixbuf.h gdk-pixdata.c io-ani-animation.h io-ani.c io-bmp.c io-gif-animation.c io-gif-animation.h io-gif.c io-ico.c io-jpeg.c io-png.c io-pnm.c io-ras.c io-tga.c io-tiff.c io-wbmp.c io-xbm.c io-xpm.c pixbufloader_ani.def pixbufloader_bmp.def pixbufloader_gif.def pixbufloader_ico.def pixbufloader_jpeg.def pixbufloader_png.def pixbufloader_pnm.def pixbufloader_ras.def pixbufloader_tga.def pixbufloader_tiff.def pixbufloader_wbmp.def pixbufloader_xbm.def pixbufloader_xpm.def test-gdk-pixbuf.c gdk-pixbuf-animation.h queryloaders.c: Support for separately installed loaders. (#77486) --- gdk-pixbuf/io-gif.c | 46 +++++++++++++++++++++++++++++++++++----------- 1 file changed, 35 insertions(+), 11 deletions(-) (limited to 'gdk-pixbuf/io-gif.c') diff --git a/gdk-pixbuf/io-gif.c b/gdk-pixbuf/io-gif.c index b85e2ea958..b91e78af22 100644 --- a/gdk-pixbuf/io-gif.c +++ b/gdk-pixbuf/io-gif.c @@ -138,8 +138,8 @@ struct _GifContext FILE *file; /* progressive read, only. */ - ModulePreparedNotifyFunc prepare_func; - ModuleUpdatedNotifyFunc update_func; + GdkPixbufModulePreparedFunc prepare_func; + GdkPixbufModuleUpdatedFunc update_func; gpointer user_data; guchar *buf; guint ptr; @@ -1396,9 +1396,9 @@ gdk_pixbuf__gif_image_load (FILE *file, GError **error) } static gpointer -gdk_pixbuf__gif_image_begin_load (ModuleSizeFunc size_func, - ModulePreparedNotifyFunc prepare_func, - ModuleUpdatedNotifyFunc update_func, +gdk_pixbuf__gif_image_begin_load (GdkPixbufModuleSizeFunc size_func, + GdkPixbufModulePreparedFunc prepare_func, + GdkPixbufModuleUpdatedFunc update_func, gpointer user_data, GError **error) { @@ -1560,11 +1560,35 @@ gdk_pixbuf__gif_image_load_animation (FILE *file, } void -gdk_pixbuf__gif_fill_vtable (GdkPixbufModule *module) +MODULE_ENTRY (gif, fill_vtable) (GdkPixbufModule *module) { - module->load = gdk_pixbuf__gif_image_load; - module->begin_load = gdk_pixbuf__gif_image_begin_load; - module->stop_load = gdk_pixbuf__gif_image_stop_load; - module->load_increment = gdk_pixbuf__gif_image_load_increment; - module->load_animation = gdk_pixbuf__gif_image_load_animation; + module->load = gdk_pixbuf__gif_image_load; + module->begin_load = gdk_pixbuf__gif_image_begin_load; + module->stop_load = gdk_pixbuf__gif_image_stop_load; + module->load_increment = gdk_pixbuf__gif_image_load_increment; + module->load_animation = gdk_pixbuf__gif_image_load_animation; +} + +void +MODULE_ENTRY (gif, fill_info) (GdkPixbufFormat *info) +{ + static GdkPixbufModulePattern signature[] = { + { "GIF8", NULL, 100 }, + { NULL, NULL, 0 } + }; + static gchar * mime_types[] = { + "image/gif", + NULL + }; + static gchar * extensions[] = { + "gif", + NULL + }; + + info->name = "gif"; + info->signature = signature; + info->description = N_("The GIF image format"); + info->mime_types = mime_types; + info->extensions = extensions; + info->flags = 0; } -- cgit v1.2.1