1 2001-06-07 Havoc Pennington <hp@redhat.com>
3 * Makefile.am (gdk-pixbuf-marshal.c): fix up the glib-genmarshal path
5 2001-06-05 Havoc Pennington <hp@redhat.com>
7 * test-loaders.c (main): use putenv not setenv, reported by
10 2001-05-08 Havoc Pennington <hp@redhat.com>
12 * gdk-pixbuf-util.c (gdk_pixbuf_add_alpha): docs fixup,
13 and fix behavior to still subst color if the original image
16 2001-06-04 Havoc Pennington <hp@redhat.com>
18 * io-pnm.c (pnm_skip_whitespace): patch from Szekeres Istvan,
21 2001-06-01 Havoc Pennington <hp@redhat.com>
23 Apply patch from sandmann@daimi.au.dk, with some tweaks.
24 Makes things a bit more robust, and adds test-loaders.c
25 which is good for finding further robustness bugs to fix.
27 * io-tiff.c: Try to work around libtiff suckiness a bit;
28 put a giant thread lock on the whole loader,
29 paranoically check both whether error handlers were called and
30 also whether functions return false. Handle case where width or
31 height is 0. Various cleanups.
33 * io-png.c (gdk_pixbuf__png_image_stop_load): only unref pixbuf
35 (png_error_callback): apparently libpng expects you to longjmp out
38 * io-gif.c (struct _GifContext): remove unused "pixbuf" field
39 (lzw_read_byte): change "Mail jrb if this fails" g_warning
41 (gif_get_lzw): check for out-of-memory
42 (gif_prepare_lzw): catch/report an error
43 (new_context): use try_malloc, since GifContext is nearly 70K
44 (gdk_pixbuf__gif_image_load_increment): set context->buf to NULL
45 so we don't crash later.
47 * Makefile.am: Add test-loaders
49 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): handle context ==
52 2001-05-29 Darin Adler <darin@eazel.com>
54 * gdk-pixbuf.h: Fix prototype to use "(void)" instead of "()".
56 Mon May 28 14:21:35 2001 Jonathan Blandford <jrb@redhat.com>
58 * io-bmp.c: Patch from Helmethead <hoshem@mel.comcen.com.au> to
59 fix up bmp decoder to:
60 - adds 16 bpp bmp support (bug #53884)
61 - adds OS/2 1.x format bmp support (bug #54964)
62 - adds 4 bpp RLE compressed bmp support
63 - adds 1 bpp colormap support
64 - fixes negative height (top down) bmp support
66 2001-05-25 Hans Breuer <hans@breuer.org>
68 * gdk_pixbuf.def : reflect Havoc's recent api change
70 Sun May 20 12:53:49 2001 Owen Taylor <otaylor@redhat.com>
72 * Makefile.am (libgdk_pixbuf_1_3_la_LDFLAGS): Remove an
75 Sun May 13 11:59:11 2001 Owen Taylor <otaylor@redhat.com>
77 * Makefile.am: Make modules depend on libgdk_pixbuf.la.
79 2001-05-04 Havoc Pennington <hp@redhat.com>
81 * pixops/pixops.c (pixops_process): merge fix from stable: Patch
82 from hoshem@mel.comcen.com.au to fix nonzero X offsets. Fixes
85 * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest): merge
86 from stable: Patch from OKADA Mitsuru <m-okada@fjb.co.jp> to fix
87 confusion of using "src" instead of "p".
88 (pixops_composite_color_nearest): Use a more accurate (and
89 correct, to begin with) compositing method. This cures checks
90 showing through on images with no alpha.
92 * gdk-pixbuf.c (gdk_pixbuf_fill): fix bug that left some trailing
95 * gdk-pixbuf-io.h: fix UpdatedNotifyFunc to use signed ints
97 * gdk-pixbuf-loader.h (struct _GdkPixbufLoaderClass): Change
98 area_updated signal to use signed ints. Removed animation-related
101 * io-gif.c, io-gif-animation.h, io-gif-animation.c: Massive
104 * gdk-pixbuf-animation.c: Add GdkPixbufAnimationIter to abstract
105 all the pesky details. Remove old frame-based API. Make
106 GdkPixbufAnimation an abstract base class, derived by the loaders.
108 Sun Apr 22 15:51:32 2001 Owen Taylor <otaylor@redhat.com>
110 * Makefile.am (LDADDS): Add $(MATH_LIB).
112 2001-04-18 Havoc Pennington <hp@redhat.com>
114 * gdk-pixbuf.c (gdk_pixbuf_fill): Function to fill pixbuf with a
117 Wed Apr 4 01:41:02 2001 Tim Janik <timj@gtk.org>
119 * pixops/Makefile.am (noinst_LTLIBRARIES): include $top_srcdir
120 so we don't try to get <gtk/gtkobject.h> from standard search
123 * Makefile.am (gdk-pixbuf-marshal.c): use deps from srcdir.
124 add gdk-pixbuf-marshal.list to EXTRA_DIST.
125 take gdk-pixbuf-marshal.h out of _la sources.
127 2001-03-19 Tor Lillqvist <tml@iki.fi>
129 * makefile.mingw.in: Handle gdk-pixbuf-marshal.c.
131 * gdk_pixbuf.def: Update.
133 * pixbufloader_*.def: Just export the fill_vtable functions now.
135 2001-03-18 Mike Kestner <mkestner@ameritech.net>
137 * make-inline-pixbuf.c (main): Added logic to remove output when
140 2001-03-14 Havoc Pennington <hp@redhat.com>
142 * Makefile.am (gdk-pixbuf-marshal.c): Use different temporary file
143 from gdk-pixbuf-marshal.h, fixes parallel makes.
145 Thu Mar 1 04:01:57 2001 Tim Janik <timj@gtk.org>
147 * test-gdk-pixbuf.c: fixed includes.
149 2001-02-18 Havoc Pennington <hp@pobox.com>
151 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): prepend underscore
152 (gdk_pixbuf_get_named_module): prepend underscore
153 (gdk_pixbuf_get_module): prepend underscore
155 2001-02-19 Havoc Pennington <hp@redhat.com>
157 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): const fix
159 2001-02-17 Havoc Pennington <hp@pobox.com>
161 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_new_with_type): docs
163 2001-02-07 Alexander Larsson <alexl@redhat.com>
165 * io-xpm.c (free_buffer):
166 Use g_free, since the buffer is allocated with g_try_alloc().
168 2001-02-06 Christophe Merlet <redfox@eikonex.org>
170 * gdk-pixbuf-data.c: Fixes a minor typo.
172 Sun Feb 4 07:59:57 2001 Tim Janik <timj@gtk.org>
174 * gdk-pixbuf.h: DOH! don't include glib/gobject.h but glib-object.h,
175 we finally need the gobject->gruntime rename.
177 * *.c: scratched calls to g_type_init(), there's simply no point in
178 doing that, use gtk_init().
180 2001-02-01 Havoc Pennington <hp@pobox.com>
182 * gdk-pixbuf-loader.c, gdk-pixbuf-loader.h: rename "private" field
183 in struct to "priv" for C++
185 2001-01-31 Havoc Pennington <hp@pobox.com>
187 * gdk-pixbuf.c: include glib-object.h instead of gvaluetypes.h
189 2001-01-26 Havoc Pennington <hp@redhat.com>
191 * gdk-pixbuf-io.c (mname): fix included modules case.
193 2001-01-22 Havoc Pennington <hp@redhat.com>
195 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): check errors
196 from gdk_pixbuf_load_module
198 2001-01-22 Havoc Pennington <hp@redhat.com>
200 * Makefile.am: Add built marshaller files to support
201 GdkPixbufLoader signals
203 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): have
204 GDK_PIXBUF_MODULEDIR unconditionally replace the compiled-in
205 module location, rather than acting as a fallback, because we are
206 using GDK_PIXBUF_MODULEDIR to use gdk-pixbuf before installing it.
208 * gdk-pixbuf.h: include gdk-pixbuf-loader.h
210 * gdk-pixbuf-loader.h, gdk-pixbuf-loader.c: Move back over here
211 from gtk, and add error to close(), because stop_load may do
212 parsing of the image.
214 * pixops/have_mmx.S (_pixops_have_mmx): add newline at end of file
216 * io-*.c: make individual operations static, and add fill_vtable
217 functions which are exported. Fix the collection of type warnings
218 that surfaced, including a number of functions that didn't
219 properly take a GError and some that weren't
220 const-correct. Involved adding error handling for a few loaders.
222 * gdk-pixbuf-io.h: Add error reporting to stop_load function
224 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): change to just look up
225 a function that fills in the GdkPixbufModule vtable, instead of
226 looking up all the image functions individually; this means we
227 can get type safety within modules for the loader functions.
228 Also it means you don't have to keep the statically compiled and
229 GModule versions in sync.
231 * test-gdk-pixbuf.c (main): remove gdk_pixbuf_init()
233 * make-inline-pixbuf.c (main): remove call to gdk_pixbuf_init()
235 * gdk-pixbuf.h: nuke gdk_pixbuf_init()
237 * gdk-pixbuf-animation.c (gdk_pixbuf_frame_get_type): g_type_init
240 * gdk-pixbuf.c (gdk_pixbuf_get_type): g_type_init () here
242 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_get_type):
245 2001-01-20 John Harper <jsh@eazel.com>
247 * io-xbm.c: new pixbuf loader, for X bitmap files. Basically a
248 collision between Xlib's RdBitF.c and io-tiff.c
250 * gdk-pixbuf-io.c, Makefile.am, pixbufloader_xbm.def: added
253 [ merged from stable gdk-pixbuf module. Untested, but it
254 compiles, and works fine in the stable module ]
256 2001-01-18 Tor Lillqvist <tml@iki.fi>
258 * gdk-pixbuf-io.c (get_libdir): (Win32) Use the new
259 g_win32_get_package_installation_subdirectory() function. No need
260 to include windows.h.
261 (gtk_win32_get_installation_directory): Remove this then.
263 2001-01-01 Havoc Pennington <hp@redhat.com>
265 * Makefile.am (libgdk_pixbuf_1_3_la_LDFLAGS): add
266 @LIBTOOL_EXPORT_OPTIONS@
268 2000-12-30 Tor Lillqvist <tml@iki.fi>
270 * gdk_pixbuf.def: Update.
272 2000-12-16 Havoc Pennington <hp@pobox.com>
274 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file): ref
275 the pixbuf in the frame, so we can use gdk_pixbuf_frame_free
276 (gdk_pixbuf_frame_copy): new function
277 (gdk_pixbuf_frame_free): new function
278 (gdk_pixbuf_frame_get_type): new function
279 (GDK_TYPE_PIXBUF_FRAME): macro to get type for GdkPixbufFrame
281 Tue Nov 14 11:51:26 2000 Owen Taylor <otaylor@redhat.com>
283 * Makefile.am: Add -avoid-version for all modules.
285 2000-11-13 Havoc Pennington <hp@redhat.com>
287 * io-png.c (png_simple_error_callback): fix error message to not
288 say "save" since it's used for loading
290 2000-11-11 Hans Breuer <Hans@Breuer.Org>
292 * gdk-pixbuf-io.c : Fix all function prototype macros for self
293 contained image handlers (!USE_G_MODULE). Files to save should
294 be opened in binary mode, fopen(s, "wb").
296 * io-xpm.c : added HAVE_UNISTD_H condition
298 2000-11-11 Tor Lillqvist <tml@iki.fi>
300 * gdk_pixbuf.def: Add gdk_pixbuf_new_subpixbuf.
302 * io-tiff.c (gdk_pixbuf__tiff_image_begin_load): Use
303 g_file_open_tmp() (just added to GLib) instead of mkstemp() (or
304 mktemp() and open()).
306 * io-xpm.c (gdk_pixbuf__xpm_image_begin_load): Ditto.
308 2000-11-01 Havoc Pennington <hp@pobox.com>
310 * gdk-pixbuf.c (gdk_pixbuf_new_subpixbuf): New function to create
311 a pixbuf pointing to a subregion of another pixbuf.
313 2000-10-16 Tor Lillqvist <tml@iki.fi>
315 * gdk-pixbuf-io.c: Define also m_save (for the non-gmodule case).
317 2000-10-16 Havoc Pennington <hp@redhat.com>
319 * gdk-pixbuf-io.c (gdk_pixbuf_get_module)
320 (gdk_pixbuf_get_named_module) (gdk_pixbuf_load_module):
321 add error reporting here also
323 * make-inline-pixbuf.c (main): use GError
325 * io-xpm.c: include unistd.h
327 * gdk-pixbuf-util.c: include string.h
329 * io-*.c: add error reporting
331 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file): add
334 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file): Add error reporting
336 * gdk-pixbuf-io.h: Add GError** to load_increment and load
339 * gdk-pixbuf-io.c (gdk_pixbuf_save) (gdk_pixbuf_savev): return
340 a G_FILE_ERROR if we fail to write or close the file.
342 * gdk-pixbuf.h: remove GDK_PIXBUF_ERROR_IO, instead we'll use
343 G_FILE_ERROR_*. Rename enum to GdkPixbufError, properly following
344 the GError naming rules. Add GError** to load functions.
346 2000-10-06 Havoc Pennington <hp@redhat.com>
348 * gdk-pixbuf.h: add GdkPixbufAlphaMode
350 2000-10-06 Havoc Pennington <hp@redhat.com>
352 This entry is a summary of the merged-in changes from 1.0.
353 Relevant original ChangeLog entries are spliced in after
354 this entry; the files they refer to are from the 1.0
357 * pixops/pixops.c (pixops_composite_nearest): sync a small fix
360 * io-xpm.c (xpm_seek_string): add fscanf error check from 1.0
361 Add progressive loader from 1.0
363 * io-tiff.c (gdk_pixbuf__tiff_image_begin_load): mem leak fixes
366 * io-pnm.c: new version from 1.0 tree
368 * io-jpeg.c (gdk_pixbuf__jpeg_image_load): sync from 1.0, use
371 * io-gif.c (lzw_read_byte): sync from 1.0, change a g_error to
373 (gif_get_next_step): return 0 here, sync from 1.0
375 * gdk-pixbuf-util.c: sync email address change for Cody
378 2000-09-11 Jeffrey Stedfast <fejj@helixcode.com>
380 * gdk-pixbuf/io-pnm.c: Pretty much totally rewrote again because
381 last nights code was still "broken". Should now properly handle
382 all error conditions gracefully.
384 2000-09-10 Jeffrey Stedfast <fejj@helixcode.com>
386 * gdk-pixbuf/io-pnm.c: Rewrote.
388 2000-09-09 Federico Mena Quintero <federico@helixcode.com>
390 * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest): Compute
391 the correct dest offset.
393 2000-08-25 Federico Mena Quintero <federico@helixcode.com>
395 * gdk-pixbuf/io-xpm.c: #include <unistd.h>
397 2000-08-05 Larry Ewing <lewing@helixcode.com>
399 * gdk-pixbuf/io-tiff.c: stop leaking context->tempname.
401 * gdk-pixbuf/io-xpm.c: same as above.
403 2000-07-26 Michael Meeks <michael@helixcode.com>
405 * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_load): make
408 2000-07-21 Larry Ewing <lewing@helixcode.com>
410 * gdk-pixbuf/io-xpm.c: add a fake progressive loader so that
411 xpm at least supports the progressive interface like the one in
412 io-tiff.c. This should be reimplemented as an actual progressive
415 2000-07-19 Jonathan Blandford <jrb@redhat.com>
417 * demo/pixbuf-demo.c (update_timeout): changed scaling level to
419 * gdk-pixbuf/testpixbuf.c (update_timeout): Patch from michael
420 meeks to handle errors better.
422 2000-10-07 Tor Lillqvist <tml@iki.fi>
425 * pixbufloader_jpeg.def
426 * pixbufloader_png.def: Add new entry points.
428 * makefile.mingw.in: Use libintl.
430 2000-10-06 Havoc Pennington <hp@redhat.com>
432 * gdk-pixbuf-io.c (gdk_pixbuf_save): s/format/type/g to be
433 consistent with gdk_pixbuf_loader_new_with_type().
434 Return runtime error if a module is missing.
436 * gdk-pixbuf.h: add GDK_PIXBUF_ERROR_UNKNOWN_TYPE
438 2000-10-05 Havoc Pennington <hp@redhat.com>
440 Pixbuf saving, patch from David Welton.
442 * Makefile.am (GDK_PIXBUF_LIBS): add INTLLIBS
443 (libgdk_pixbuf_1_3_la_SOURCES): add gdk-pixbuf-i18n.h
445 * gdk-pixbuf-i18n.h: Add _() to gdk-pixbuf
447 * io-png.c (gdk_pixbuf__png_image_save): PNG save routine.
449 * io-jpeg.c (gdk_pixbuf__jpeg_image_save): JPEG save routine.
451 * gdk-pixbuf-io.c (gdk_pixbuf_save):
452 (gdk_pixbuf_savev): Implement pixbuf saving routines
454 * gdk-pixbuf.c (gdk_pixbuf_error_quark): pixbuf error quark
457 * gdk-pixbuf.h: Add public save routines; add pixbuf error
460 * gdk-pixbuf-io.h: Add save function to GdkPixbufModule
462 2000-10-05 Dan Winship <danw@helixcode.com>
464 * io-png.c, io-tiff.c, io-xpm.c: Fix comments to not claim that
465 all three of these files are the JPEG image loader. (From
468 2000-10-03 Tor Lillqvist <tml@iki.fi>
470 * makefile.mingw.in: Add rule for make-inline-pixbuf. Use
471 gdk-pixbuf's version number in the rule for makefile.mingw itself.
473 * gdk_pixbuf.def: Add new entry points.
475 2000-09-26 Havoc Pennington <hp@redhat.com>
477 * gdk-pixbuf-util.c (gdk_pixbuf_saturate_and_pixelate): Add this
478 function here, instead of putting it in a private GTK+ file.
480 * gdk-pixbuf-private.h (GdkPixbufInlineFormat): include an
481 enum here for the known formats of inlined pixbufs.
482 Also, #define our file magic here.
484 2000-06-23 Havoc Pennington <hp@redhat.com>
486 * make-inline-pixbuf.c: Small program that creates C variable
487 declarations of inline pixbuf data. This can be read
488 by gdk_pixbuf_new_from_inline.
490 * gdk-pixbuf.h (gdk_pixbuf_new_from_inline): New function to read
491 inline pixbuf data and create a pixbuf from it.
493 * gdk-pixbuf-data.c (gdk_pixbuf_new_from_inline): implement here
495 2000-09-07 Tor Lillqvist <tml@iki.fi>
497 * makefile.mingw.in: Use own version number for gdk-pixbuf DLLs,
500 2000-08-12 Tor Lillqvist <tml@iki.fi>
502 * gdk_pixbuf.def: Add missing entry point.
504 2000-08-10 Havoc Pennington <hp@redhat.com>
506 * Makefile.am (EXTRA_DIST): The *.def files had the wrong names
507 (s/pixbuf_/pixbufloader_)
509 2000-08-02 Tor Lillqvist <tml@iki.fi>
515 * io-wbmp.c: Conditionalise inclusion of <unistd.h>.
517 * makefile.mingw.in: List loaders alphabetically. Add the wbmp
518 one. Fix names of DLLs to have '-' instead of '_'.
520 2000-07-31 Elliot Lee <sopwith@redhat.com>
521 * io-wbmp.c: Some bug fixes - now tested to work.
523 2000-07-27 Elliot Lee <sopwith@redhat.com>
525 * gdk-pixbuf-io.h, gdk-pixbuf-io.c: Add
526 gdk_pixbuf_get_named_module() function to facilitate above change
527 * io-wbmp.c, pixbufloader_wbmp.defs, gdk-pixbuf-io.c, Makefile:
528 Implement loader for WBMP format.
529 * io-bmp.c: Don't malloc a temporary buffer - use stack instead.
531 2000-07-23 Tor Lillqvist <tml@iki.fi>
536 * pixops/makefile.mingw.in
537 * pixbuf_*.def: New files.
540 * pixops/Makefile.am: Add them. Add rule to generate makefile.mingw.
542 * gdk-pixbuf-io.c (gtk_win32_get_installation_directory):
543 New function, to get the GTK+ installation directory from
544 the Windows Registry, where the installation program
545 for whatever software includes GTK+ has stored it.
547 Used to avoid having hardcoding the directory where to look for
548 loaders. This function is needed by gtk, too, so it should
549 really be just in one place. Maybe a small static library
550 one level up from here?
552 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file)
553 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file):
554 Open file in binary mode. This *is* standard C. (No-op on Unix,
557 * io-jpeg.c: If we don't HAVE_SIGSETJMP, use normal setjmp().
559 * io-tiff.c: Use g_get_tmp_dir(). If we don't HAVE_MKSTEMP, use
561 (gdk_pixbuf__tiff_image_stop_load): g_free() also the tempname.
563 * pixops/*.S: The Gas from mingw32 doesn't like the .type
564 pseudo-op. Conditionalise on __MINGW32__, but probably
565 should conditionalise on Gas version instead? Or could we
566 do without .type on all systems?
568 * pixops/timescale.c: Use g_get_current_time()
569 instead of gettimeofday().
571 Sat Jul 22 10:57:22 2000 Owen Taylor <otaylor@redhat.com>
573 * Makefile.am (test_gdk_pixbuf_LDADD): Remove -lgmodule
575 Tue Jul 11 11:26:42 2000 Owen Taylor <otaylor@redhat.com>
577 * gdk-pixbuf.c: Add <string.h> include.
579 Tue Jul 11 06:20:14 2000 Tim Janik <timj@gtk.org>
581 * io-gif.c (gdk_pixbuf__gif_image_load_animation):
582 * gdk-pixbuf-data.c (gdk_pixbuf_new_from_data):
583 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file):
584 use g_object_new() instead of g_type_create_instance() which
585 is a private function for fundamental type implementations.
587 Thu Jul 6 11:49:47 2000 Owen Taylor <otaylor@redhat.com>
589 * Makefile.am (libgdk_pixbuf_la_LDFLAGS): Use GTK+ version
590 soname scheme for gdk-pixbuf.
592 2000-06-21 Havoc Pennington <hp@pobox.com>
594 * gdk-pixbuf.c: Convert GdkPixbuf to GObject, leaving it opaque
595 (i.e. derivation is not allowed, and there are no virtual methods
597 (gdk_pixbuf_preinit): Call g_type_init() here.
598 (gdk_pixbuf_init): Add a user-friendly init function, for users
599 of standalone gdk-pixbuf
601 * gdk-pixbuf-animation.c: Convert to GObject, in the same
602 way GdkPixbufAnimation was done.
604 * gdk-pixbuf.h: Remove gdk_pixbuf_set_unref_handler() and
605 gdk_pixbuf_finalize() from API, since these are broken and don't
606 make sense with new GObject stuff.
608 Wed Jun 21 16:02:48 2000 Owen Taylor <otaylor@redhat.com>
610 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): Add feature to
611 support a GDK_PIXBUF_MODULEDIR env variable as a secondary
614 2000-06-10 Federico Mena Quintero <federico@helixcode.com>
616 * demo/pixbuf-demo.c: It was cold and rainy this Saturday morning,
617 so I needed something to warm my thighs. Running plain infinite
618 loops on your laptop to make it hot is not very much fun. A demo
619 of the gdk-pixbuf scaling functions is way better, and looks
622 * configure.in (AC_OUTPUT): Added the demo Makefile.
624 * Makefile.am (SUBDIRS): Added the demo directory.
626 2000-06-09 Larry Ewing <lewing@helixcode.com>
628 * gdk-pixbuf/io-png.c (gdk_pixbuf__png_image_load_increment):
629 setjmp for the png error handler. It seems setting the error
630 handling functions does not avoid the jump, and so not calling
631 setjmp was causing the incremental loader to jump into lala land.
632 (gdk_pixbuf__png_image_begin_load): setjmp for error handling, I'm
633 not sure this one is actually required but the docs say it must be
634 set for every call to a png_* function.
635 Also changed the comment to reflect the fact that setting the
636 error handlers does _not_ avoid the longjmp.
638 2000-06-06 Larry Ewing <lewing@helixcode.com>
640 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
641 take frame offest into account when trying to calculate the
642 animation bbox. Also set the width to the width not the height.
643 (gdk_pixbuf_loader_animation_done): cycle over the frames to
644 calculate bbox because now we finally have all the offset
645 information for each frame.
647 2000-06-05 Mathieu Lacage <mathieu@gnome.org>
649 * configure.in: add some gtk parameters to the
650 GDK_PIXBUF_LIB²S and GDK_PIXBUG_INCLUDEDIR vars. One more
651 fight in my crusade for strange prefix compile...
653 2000-05-30 Not Zed <NotZed@HelixCode.com>
655 * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_begin_load):
656 Initialise the error handler exit routine to our own. Note this
657 means that every function that accesses the jpeg lib on this
658 object MUST do a setjmp.
659 (gdk_pixbuf__jpeg_image_stop_load): setjmp before accessing jpeg
660 lib for handling fatal error.
661 (gdk_pixbuf__jpeg_image_load_increment): And here too. So now
662 your applications dont quit if there's a jpeg error!
664 2000-05-30 Federico Mena Quintero <federico@helixcode.com>
666 * gdk-pixbuf.spec.in: Include all the loader libraries. Patch
667 from Frank de Lange <frank@unternet.org>.
669 2000-05-09 Darin Adler <darin@eazel.com>
671 * gdk-pixbuf/test-gdk-pixbuf.c:
672 Fixed includes to get rid of accidental GNOME dependency.
674 2000-05-26 Cody Russell <car0969@gamma2.uta.edu>
675 * Makefile.am: Added gdk-pixbuf.spec to EXTRA_DIST
677 2000-05-22 Federico Mena Quintero <federico@helixcode.com>
679 * configure.in: Bumped version number to 0.8.0.
681 * doc/Makefile.am (content_files): The toplevel gdk-pixbuf.sgml
682 file was not being distributed.
684 * gdk-pixbuf/pixops/Makefile.am (EXTRA_DIST): Added DETAILS.
686 2000-05-09 Darin Adler <darin@eazel.com>
688 * gdk-pixbuf/gdk-pixbuf-drawable.c: (rgb565lsb), (rgb565msb),
689 (rgb565alsb), (rgb565amsb), (rgb555lsb), (rgb555msb), (rgb555alsb),
690 (rgb555amsb), (convert_real_slow): Change all conversion from 16-bit
691 formats to 32-bit formats to re-use the high bits of the color values
692 so that white maps to full white.
694 Fri May 5 12:16:32 2000 Owen Taylor <otaylor@redhat.com>
696 * gdk-pixbuf/pixops/DETAILS: Add beginnings of file with
697 detailed information about the structure and algorithms
698 of pixops so people can fix it instead of breaking it.
700 2000-05-04 Darin Adler <darin@eazel.com>
702 * gdk-pixbuf/pixops/pixops.c: (pixops_composite_nearest),
703 (composite_pixel), (composite_line):
704 * gdk-pixbuf/test-gdk-pixbuf.c: (simple_composite_test_one_type):
705 Now that Owen explained the algorithm, I think I implemented it
706 right for the cases where the destination pixbuf is not opaque.
707 The test does seem to confirm it.
709 2000-05-04 Darin Adler <darin@eazel.com>
711 * gdk-pixbuf/.cvsignore:
712 * gdk-pixbuf/Makefile.am:
713 * gdk-pixbuf/test-gdk-pixbuf.c (store_pixel), (fill_with_pixel),
714 (load_pixel), (simple_composite_test_one),
715 (simple_composite_test_one_type), (simple_composite_test), (main):
716 Added some tests of composite to highlight problems in the old
717 implementation. These tests run without any user interaction.
718 Just do "make check".
720 * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest),
721 (composite_pixel), (composite_line): Fix composite to do a textbook
722 "A over B" composite. This was clearly the intent, and it was easy
723 to fix the code to do it. (Note to those that read my earlier tries
724 at a patch; this version fixes typos that were present in all
725 my patch attempts. I checked the final version by adding more tests.)
727 2000-04-22 05:27:43 2000 Owen Taylor <otaylor@redhat.com>
729 * gdk-pixbuf/pixops/pixops.c (pixops_scale_nearest): Properly
730 offset y coordinate accordining to render_y0.
732 * gdk-pixbuf/gdk-pixbuf-scale.c: Properly handle nonzero
735 2000-04-22 James Henstridge <james@daa.com.au>
737 * gdk-pixbuf.spec.in (%files): moved %{prefix}/bin/* from the main
738 package to the devel package. The only file installed in bin is
739 gdk-pixbuf-config, which belongs in -devel. This should allow having
740 multiple versions of the main gdk-pixbuf package installed.
742 2000-04-17 Karl Eichwalder <ke@suse.de>
744 * gdk-pixbuf/Makefile.am (INCLUDES): Add $(GNOME_CFLAGS).
745 Reported by Jens Finke.
747 2000-04-14 Tomasz K³opczko <kloczek@pld.org.pl>
749 * gdk-pixbuf/pixops/makefile.am: $(LIBART_CFLAGS) replaced by
750 $(GTK_CFLAGS) - now gdk-pixbuf compiles correctly.
752 2000-04-13 James Henstridge <james@daa.com.au>
754 * configure.in: when performing the configure check to see if
755 gmodule works, set CFLAGS to GLIB_CFLAGS and LIBS to GLIB_LIBS,
756 rather than the other way round. Also, call AC_MSG_RESULT in the
757 even that dynamic modules were not supported.
759 2000-04-12 Federico Mena Quintero <federico@helixcode.com>
761 This comes from an excellent idea by Tim Janik (timj@gtk.org) to
762 hook to the last unref operation.
764 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_set_last_unref_handler): New
765 function to set the last unref handler for a pixbuf.
766 (gdk_pixbuf_finalize): New function to actually finalize a pixbuf.
767 It calls the pixbuf's destroy notification function and frees the
768 GdkPixbuf structure itself.
769 (gdk_pixbuf_unref): Use the last unref function of the pixbuf if
772 * gdk-pixbuf/gdk-pixbuf-private.h (struct _GdkPixbuf): New fields
773 for the last unref handler and its user data.
775 * gdk-pixbuf/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Use
776 g_new0() to allocate the pixbuf.
778 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
779 Fixed the call to gtk_signal_new() for the "frame_done" signal; it
780 was not specifying the `frame' argument.
782 * gdk-pixbuf/gdk-pixbuf-animation.c
783 (gdk_pixbuf_animation_get_width): Fixed docstring.
784 (gdk_pixbuf_animation_get_height): Likewise.
785 (gdk_pixbuf_animation_get_num_frames): Likewise.
786 (gdk_pixbuf_animation_get_frames): Likewise.
788 * doc/gdk-pixbuf-sections.txt: Updated with the new functions and
791 * doc/tmpl/gdk-pixbuf.sgml: Added the description for GdkColorspace.
793 * doc/tmpl/scaling.sgml: Added the description for GdkInterpType.
795 * doc/tmpl/refcounting.sgml: Updated with the information about
796 the last unref handler.
798 * doc/tmpl/*.sgml: Markup tweaks.
800 * gdk-pixbuf/Makefile.am (libgnomecanvaspixbuf_la_LDFLAGS): Sigh,
801 update the libtool version number for libgnomecanvaspixbuf as
803 (libpixbufloader_*_la_LDFLAGS): The loaders need to be versioned
804 as well, or the old ones won't work with the new stuff. Also,
805 renamed the modules as follows.
807 * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_load_module): Now the
808 modules are called "libpixbufloader-<format>.so" instead of
809 "libpixbuf-<format>.so". They needed renaming so that the new
810 loaders won't overwrite the old ones; even with the versioning
811 stuff, the new .so symlink to the .so.1.0.0 would overwrite the
814 2000-04-12 Paolo Molaro <lupus@debian.org>
816 * .cvsignore, src/.cvsignore: shut up cvs.
818 2000-04-11 Federico Mena Quintero <federico@helixcode.com>
820 Most of this patch is based on a patch by Havoc Pennington
821 (hp@redhat.com) to make GdkPixbuf's structures opaque and to
822 remove the libart dependency.
824 * gdk-pixbuf/gdk-pixbuf.h: Removed the public structures.
825 (GdkColorspace): New enum that for now only contains
827 (GdkPixbufDestroyNotify): New type for the pixbuf's pixels destroy
828 notification function.
829 (GdkInterpType): New num with interpolation types.
831 * *.[ch]: Replace the libart stuff with our own stuff.
833 * pixops/*.[ch]: Likewise.
835 * gdk-pixbuf/gdk-pixbuf-private.h: New file with the private
836 declarations of the GdkPixbuf structures.
838 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_new_from_art_pixbuf):
840 (gdk_pixbuf_get_format): Constify.
841 (gdk_pixbuf_get_n_channels): Constify.
842 (gdk_pixbuf_get_has_alpha): Constify.
843 (gdk_pixbuf_get_bits_per_sample): Constify.
844 (gdk_pixbuf_get_pixels): Constify.
845 (gdk_pixbuf_get_width): Constify.
846 (gdk_pixbuf_get_height): Constify.
847 (gdk_pixbuf_get_rowstride): Constify.
849 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_copy): New function to copy
852 * gdk-pixbuf/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Added a
853 bits_per_sample argument; currently only 8 bits per sample are
856 * gdk-pixbuf/gdk-pixbuf-animation.c (gdk_pixbuf_frame_get_pixbuf):
858 (gdk_pixbuf_frame_get_x_offset): New accessor.
859 (gdk_pixbuf_frame_get_y_offset): New accessor.
860 (gdk_pixbuf_frame_get_delay_time): New accessor.
861 (gdk_pixbuf_frame_get_action): New accessor.
863 * gdk-pixbuf/gdk-pixbuf-render.c
864 (gdk_pixbuf_render_pixmap_and_mask): Instead of returning a solid
865 mask rectangle for pixbufs without an alpha channel, set the
866 *mask_return to NULL.
868 * gdk-pixbuf/gdk-pixbuf-util.c (gdk_pixbuf_add_alpha): Constify.
870 * gdk-pixbuf/gdk-pixbuf-scale.c: Fix includes.
872 * gdk-pixbuf/gdk-pixbuf-scale.c (gdk_pixbuf_scale): Added some
873 preconditions. Maybe we should also check for the colorspace,
874 bits per pixel, and such.
875 (gdk_pixbuf_composite): Likewise.
876 (gdk_pixbuf_composite_color): Likewise.
877 (gdk_pixbuf_scale_simple): Likewise, and fail gracefully if we
878 cannot allocate the new pixbuf.
879 (gdk_pixbuf_composite_color_simple): Likewise.
881 * gdk-pixbuf/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_render):
882 Use art_rgb_rgba_affine() or art_rgb_affine() since we no longer
885 * gdk-pixbuf/io-bmp.c: Fix includes.
887 * gdk-pixbuf/pixops/pixops.c (pixops_scale_nearest): Fixed cast in
892 * configure.in: Removed checks for libart.
894 * gdk-pixbuf/Makefile.am: Removed references to libart.
895 (noinst_HEADERS): Added gdk-pixbuf-private.h.
897 * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_LDFLAGS): Incremented
898 the version number of the libtool library to indicate that this
899 definitely is not compatible with the old usage. I know you love
902 * configure.in: Bumped version number to 0.7.0.
906 * gdk-pixbuf-config.in (--libs): We no longer require libart.
908 * DEPENDS.libgdk_pixbuf: We no longer depend on libart.
910 * gdk-pixbuf.spec.in: Updated, but I don't guarantee anything.
912 2000-04-06 Jonathan Blandford <jrb@redhat.com>
914 * gdk-pixbuf/testanimation.c (main): add more info to the
915 testanimation frames.
917 2000-04-04 Ettore Perazzoli <ettore@helixcode.com>
919 * gdk-pixbuf/gdk-pixbuf-animation.c
920 (gdk_pixbuf_animation_get_width): New accessor function.
921 (gdk_pixbuf_animation_get_height): New accessor function.
922 (gdk_pixbuf_animation_get_num_frames): New accessor function.
923 (gdk_pixbuf_animation_get_frames): New accessor function.
925 2000-04-01 Federico Mena Quintero <federico@helixcode.com>
927 * gdk-pixbuf/gdk-pixbuf.c: Reverted Mark's change. The refcount
928 is private information, and the art_pixbuf will go away soon.
930 2000-03-31 Mark Crichton <crichton@gimp.org>
932 * gdk-pixbuf/gdk-pixbuf.c: Added gdk_pixbuf_get_refcount
933 and gdk_pixbuf_get_artpixbuf accessor functions.
935 2000-03-29 Federico Mena Quintero <federico@helixcode.com>
937 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_get_has_alpha): Return
938 gboolean instead of int.
940 2000-03-29 Radek Doulik <rodo@helixcode.com>
942 * gdk-pixbuf/gdk-pixbuf-animation.c
943 (gdk_pixbuf_animation_new_from_file): same as below
945 * gdk-pixbuf/io-gif.c (gif_get_lzw): added update of width and
946 height in GdkPixbufAnimation
948 2000-03-28 Radek Doulik <rodo@helixcode.com>
950 * gdk-pixbuf/io-gif.c (gif_get_lzw): test also for
951 context->frame_done_func and context->anim_done_func to make
952 progressive animation loading work
954 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
955 added priv->pixbuf = NULL as pixbuf is now in frame (and to make
956 gdk_pixbuf_loader_prepare happy)
957 (gdk_pixbuf_loader_frame_done): update animation bbox
959 * gdk-pixbuf/gdk-pixbuf.h: added bbox size (width, height) to
962 2000-03-27 Radek Doulik <rodo@helixcode.com>
964 * gdk-pixbuf/io-gif.c (gif_get_lzw): use frame_len and frame_width
965 instead of width and height
967 2000-03-27 Owen Taylor <otaylor@redhat.com>
969 * gdk-pixbuf/pixops/pixops.c: Fix problem with
970 precendence of >> and & which was keeping composite_color
971 from working with non-gray images.
973 2000-03-08 Jonathan Blandford <jrb@redhat.com>
975 * gdk-pixbuf/io-gif.c (gdk_pixbuf__gif_image_load): free the context.
976 (gdk_pixbuf__gif_image_load_animation): free the context.
978 2000-03-06 Arjan van de Ven <arjan@fenrus.demon.nl>
980 * gdk-pixbuf/io-bmp.c: Fixed to pointer-bugs and a
981 mis-interpretation of the Microsoft documentation. Now
982 it can load .BMP files that are not generated by The Gimp
985 2000-03-01 Mark Crichton <crichton@gimp.org>
987 * configure.in: Added BUILD_CANVAS_ITEM stuff to (finally)
988 fix the last auto* build bug (where we have libart, but no
991 * gdk-pixbuf/Makefile.am: Same.
993 2000-02-28 Matt Wilson <msw@redhat.com>
995 * gdk-pixbuf/gdk-pixbuf-drawable.c: s/unsigned long/guint32/g,
996 s/unsigned short/guint16/g, s/unsigned char/guint8/g
998 2000-02-26 Federico Mena Quintero <federico@helixcode.com>
1000 * README: We don't require libgif/ungif nor libXpm.
1002 * NEWS: This was outdated, so updated it.
1004 2000-02-25 Federico Mena Quintero <federico@helixcode.com>
1006 * gdk-pixbuf.m4: Use the correct name for
1007 gdk-pixbuf/gdk-pixbuf.h. Thanks to Jacob Berkman for pointing
1010 2000-02-21 Federico Mena Quintero <federico@helixcode.com>
1012 * configure.in (GDK_PIXBUF_MINOR): Bumped version number to 0.6.0.
1014 * doc/compiling.sgml: New appendix documenting the gdk-pixbuf
1015 library's particular options to configure.in.
1017 * doc/gdk-pixbuf.sgml: Include compiling.sgml appendix via an
1020 * doc/Makefile.am (gdk-pixbuf.html): Added compiling.sgml.
1022 * gdk-pixbuf/io-ico.c (gdk_pixbuf__ico_image_load_increment):
1023 Fixed typo in prototype name.
1025 * configure.in: Changed duplicated AC_MSG_CHECKING message to
1026 something more meaningful; now it is "checking whether dynamic
1029 * gdk-pixbuf/pixops/Makefile.am (noinst_PROGRAMS): Do not install
1030 the timescale program.
1032 Integrated Miguel de Icaza's <miguel@gnu.org> patch for optionally
1033 creating a single static library with all the image format modules
1036 2000-02-20 Miguel de Icaza <miguel@gnu.org>
1038 * gdk-pixbuf/io-xpm.c (gdk_pixbuf__xpm_image_load): Add prefix.
1039 (gdk_pixbuf__xpm_image_load_xpm_data): Add prefix.
1041 * gdk-pixbuf/io-tiff.c (gdk_pixbuf__tiff_image_load_real): Add prefix.
1042 (gdk_pixbuf__tiff_image_stop_load): Add prefix.
1043 (gdk_pixbuf__tiff_image_load_increment): Add prefix.
1044 (gdk_pixbuf__tiff_image_load): Add prefix.
1045 (gdk_pixbuf__tiff_image_stop_load): Update invocation.
1046 (gdk_pixbuf__tiff_image_begin_load): Add prefix.
1048 * gdk-pixbuf/io-ras.c (gdk_pixbuf__ras_image_load): Add prefix.
1049 (gdk_pixbuf__ras_image_load): Updated invocation.
1050 (gdk_pixbuf__ras_image_begin_load): Add prefix.
1051 (gdk_pixbuf__ras_image_stop_load): Add prefix.
1052 (gdk_pixbuf__ras_image_load_increment): Add prefix.
1054 * gdk-pixbuf/io-pnm.c (gdk_pixbuf__pnm_image_begin_load): Add prefix.
1055 (gdk_pixbuf__pnm_image_stop_load): Add prefix.
1056 (gdk_pixbuf__pnm_image_load_increment): Add prefix
1057 (gdk_pixbuf__pnm_image_load): Add prefix.
1059 * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_load): Add prefix.
1060 (gdk_pixbuf__jpeg_image_load_increment): Add prefix.
1061 (gdk_pixbuf__jpeg_image_begin_load): Add prefix.
1062 (gdk_pixbuf__jpeg_image_stop_load): Add prefix.
1064 * gdk-pixbuf/io-ico.c (gdk_pixbuf__ico_image_load): Add prefix.
1065 (gdk_pixbuf__ico_image_load): update invocation.
1066 (gdk_pixbuf__ico_image_load_increment): Add prefix.
1067 (gdk_pixbuf__ico_image_load): update invocation.
1068 (gdk_pixbuf__ico_image_begin_load): Add prefix.
1069 (gdk_pixbuf__ico_image_load): update invocation.
1070 (gdk_pixbuf__ico_image_stop_load): Add prefix.
1072 * gdk-pixbuf/io-gif.c (gdk_pixbuf__gif_image_load_animation): Add prefix.
1073 (gdk_pixbuf__gif_image_load): Add prefix.
1074 (gdk_pixbuf__gif_image_begin_load): Add prefix.
1075 (gdk_pixbuf__gif_image_load_increment): Add prefix.
1076 (gdk_pixbuf__gif_image_load_animation): Add prefix.
1077 (gdk_pixbuf__gif_image_stop_load): Add prefix.
1079 * gdk-pixbuf/io-bmp.c (gdk_pixbuf__bmp_image_load): Add prefix.
1080 (gdk_pixbuf__bmp_image_load): Rename function called.
1081 (gdk_pixbuf__bmp_image_load_increment): Add prefix
1083 * gdk-pixbuf/io-png.c (gdk_pixbuf__png_image_load): Add prefix.
1084 (gdk_pixbuf__png_image_begin_load): Add prefix.
1085 (gdk_pixbuf__png_image_stop_load): Add prefix.
1086 (gdk_pixbuf__png_image_load_increment): Add prefix.
1088 * gdk-pixbuf/gdk-pixbuf-io.c (file_formats): Make this static.
1089 (gdk_pixbuf_load_module): Load the shared library entry points
1090 using a "gdk_pixbuf__$module_name" prefix.
1091 (pixbuf_module_symbol): Wrapper routine that uses the module
1092 prefix for the modules to load the information.
1094 * configure.in (GDK_PIXBUF_VERSION): New option --disable-modules
1095 lets the user specify that gdk-pixbuf should link all image loader
1096 code into the library instaed of creating shared library modules.
1098 (dynworks): Renamed the automake conditional DYNAMIC_MODULES_WORK
1099 to BUILD_DYNAMIC_MODULES.
1101 2000-02-19 Jonathan Blandford <jrb@redhat.com>
1103 * gdk-pixbuf/io-gif.c (new_context): fix case where initial
1104 colormap entry is Transparent.
1106 2000-02-19 Owen Taylor <otaylor@redhat.com>
1108 * gdk-pixbuf/pixops/pixops.c (scale_pixel): Fix error in
1109 scale factors for non-alpha case.
1111 2000-02-14 Mark Crichton <crichton@gimp.org>
1113 * gdk-pixbuf/io-xpm.c (xpm_extract_color): Added check for "g" color type.
1114 Imlib/libXpm handle this, but we didn't.
1116 2000-02-14 Darin Adler <darin@eazel.com>
1118 * gdk-pixbuf/testpixbuf.c: Remove now-unnecessary cast.
1119 * .cvsignore: gdk-pixbuf/.cvsignore: More to ignore.
1121 2000-02-14 Elliot Lee <sopwith@redhat.com>
1122 * gdk-pixbuf/gdk-pixbuf.h, gdk-pixbuf/gdk-pixbuf-data.c: Make passed-in argument 'const'.
1124 2000-02-04 Michael Meeks <mmeeks@gnu.org>
1126 * gdk-pixbuf/io-gif.c (struct _GifContext): add x,y_offset.
1127 (gif_get_frame_info): put the offsets on the context.
1128 (gif_get_lzw): copy them off into the frame.
1129 (new_context): no change required; will 0 offsets by default.
1131 2000-01-28 Michael Meeks <michael@mejm2.dow.cam.ac.uk>
1133 * gdk-pixbuf/pixops/pixops.c (pixops_process): const + nasty
1136 * gdk-pixbuf/pixops/pixops.h: const.
1138 * gdk-pixbuf/gdk-pixbuf-util.c: const.
1140 * gdk-pixbuf/gdk-pixbuf-scale.c: const.
1142 * gdk-pixbuf/gdk-pixbuf.h: constify lots of things.
1144 2000-02-03 Federico Mena Quintero <federico@helixcode.com>
1146 * gdk-pixbuf/gdk-pixbuf-render.c
1147 (gdk_pixbuf_render_threshold_alpha): Added sanity check for width
1148 and height being >= 0. Also, do nothing if either of them is
1149 zero. Thanks to Ettore for pointing this out.
1150 (gdk_pixbuf_render_to_drawable): Likewise.
1151 (gdk_pixbuf_render_to_drawable_alpha): Likewise.
1153 2000-02-02 Federico Mena Quintero <federico@helixcode.com>
1155 * gdk-pixbuf/io-gif.c (gif_get_lzw): Removed debugging g_print.
1156 Thanks to John Sullivan <sullivan@eazel.com> for the patch.
1158 * gdk-pixbuf/testpixbuf-drawable.c (configure_cb): Get a new area
1159 of the screen when the window is resized. Thanks to David
1160 N. Welton <davidw@linuxcare.com> for pointing this out.
1161 Misc. cleanups to the rest of the file.
1163 2000-02-01 Federico Mena Quintero <federico@helixcode.com>
1165 * doc/tmpl/rendering.sgml: gnome_init() does not call
1166 gdk_rgb_init(), so don't mention that it does in the
1167 documentation. Thanks to Alexander Kruuse <kruuse@home.se> for
1170 2000-01-31 Havoc Pennington <hp@redhat.com>
1172 * gdk-pixbuf/Makefile.am (noinst_PROGRAMS): no testpixbuf-foo target
1174 Mon Jan 31 12:38:50 2000 Owen Taylor <otaylor@redhat.com>
1176 * gdk-pixbuf/pixops/pixops.c (scale_line): Fix from Peter
1177 Wainwright to fix 4a => 4a scaling.
1179 2000-01-29 Mark Crichton <crichton@gimp.org>
1181 * gdk-pixbuf-config: Oh dear, we weren't Telsa/Alan proof...
1182 put `libart-config --libs` in instead of -lart_lgpl.
1184 2000-01-22 Federico Mena Quintero <federico@helixcode.com>
1186 * gdk-pixbuf/io-pnm.c (pnm_read_raw_scanline): Return an error on
1188 (pnm_read_ascii_scanline): Initialize data and mask.
1190 * gdk-pixbuf/io-xpm.c (pixbuf_create_from_xpm): Initialize
1191 fallbackcolor to keep gcc happy.
1193 * configure.in: Bumped version number to 0.5.0.
1195 * gdk-pixbuf/pixops/timescale.c (dump_array): Removed unused variable.
1198 * gdk-pixbuf/pixops/pixops.c (pixops_composite_color_nearest): Put
1199 parentheses around + in a shift to remove a compiler warning.
1200 (pixops_process): Likewise.
1202 Patch from Ross Golder <rossigee@bigfoot.com> to create an RPM
1205 * configure.in: Added gdk-pixbuf.spec to AC_OUTPUT.
1207 * Makefile.am (EXTRA_DIST): Added gdk-pixbuf.spec.in
1209 2000-01-22 Federico Mena Quintero <federico@helixcode.com>
1211 * gdk-pixbuf/gnome-canvas-pixbuf.c (PixbufPrivate): Removed the
1212 x_set and y_set arguments. Now they are always on and start with
1213 defaults of 0.0 in units.
1214 (gnome_canvas_pixbuf_class_init): Likewise.
1215 (gnome_canvas_pixbuf_set_arg): Likewise.
1216 (gnome_canvas_pixbuf_get_arg): Likewise.
1217 (compute_viewport_affine): Likewise; always use the priv->x and
1220 * doc/tmpl/gnome-canvas-pixbuf.sgml: Modified to reflect the
1221 removal of the x_set/y_set arguments.
1223 2000-01-21 Federico Mena Quintero <federico@helixcode.com>
1225 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_ref): Return the same pixbuf
1226 as the input parameter.
1228 * gdk-pixbuf/gdk-pixbuf-animation.c (gdk_pixbuf_animation_ref):
1229 Return the same animation as the input parameter.
1231 2000-01-16 Elliot Lee <sopwith@redhat.com>
1233 * gdk-pixbuf/Makefile.am: Don't link against libgnomecanvaspixbuf.la
1235 2000-01-16 Federico Mena Quintero <federico@helixcode.com>
1237 * configure.in: Removed the broken --enable-canvas-pixbuf option.
1238 Added the stuff necessary to substitute the variables in
1239 gnomecanvaspixbufConf.sh.in.
1241 * gnomecanvaspixbufConf.sh.in: New gnome-config handler for the
1242 tiny gnomecanvaspixbuf library.
1244 * Makefile.am: Build gnomecanvaspixbufConf.sh.
1246 * gdk-pixbuf/Makefile.am: Create a libgnomecanvaspixbuf and only
1247 build it if gdk-pixbuf is being built outside of gnome-libs.
1249 * doc/gdk-pixbuf-sections.txt: Added gdk_pixbuf_render_pixmap_and_mask().
1251 * gdk-pixbuf/gdk-pixbuf-render.c
1252 (gdk_pixbuf_render_pixmap_and_mask): Renamed from
1253 gdk_pixbuf_render_pixmap(). Do not create the mask if it is not
1254 needed, and do not use a clipping mask when rendering the pixmap.
1255 Tweaked documentation a little.
1257 * HACKING: New file with hacking policies for the gdk-pixbuf
1260 * doc/Makefile.am (tmpl_sources): Added missing backslash.
1262 * doc/Makefile.am: Use gnomecanvaspixbuf in gnome-config when
1263 scanning for docstrings.
1265 * gdk-pixbuf/gdk-pixbuf-util.c (gdk_pixbuf_copy_area): Made sanity
1266 checks more stringent. Removed "gint" abominations. Made
1267 documentation consistent with the rest of the functions.
1269 * doc/gdk-pixbuf-sections.txt: Added gdk_pixbuf_copy_area() to the
1272 2000-01-14 Jonathan Blandford <jrb@redhat.com>
1274 * gdk-pixbuf/gdk-pixbuf-render.c (gdk_pixbuf_render_pixmap): new
1275 function to let you create a gdk_pixmap from a gdk_pixbuf.
1277 2000-01-11 Jacob Berkman <jacob@helixcode.com>
1279 * gdk-pixbuf/pixops/Makefile.am (INCLUDES): added
1280 $LIBART_CFLAGS to $INCLUDES
1282 2000-01-10 Elliot Lee <sopwith@redhat.com>
1284 * configure.in, gdk-pixbuf/Makefile.am: Build a libcanvas_pixbuf.
1286 * configure.in: Define version macros. Generate
1287 gdk-pixbuf/gdk-pixbuf-features.h. Always INSIDE_GNOME.
1289 * gdk-pixbuf/Makefile.am: Add gdk-pixbuf-features.h
1291 * gdk-pixbuf/gdk-pixbuf.c: Add definitions of
1292 gdk-pixbuf-features.h declarations, plus some initialization
1295 2000-01-05 Owen Taylor <otaylor@redhat.com>
1297 * gdk-pixbuf/pixops/pixops.c: Fixed src_channels/dest_channels
1298 confusion. (Again caught by Tomas Ogren's Purify)
1300 2000-01-07 Jonathan Blandford <jrb@redhat.com>
1302 * gdk-pixbuf/gdk-pixbuf-xform.c (gdk_pixbuf_rotate): comment out
1305 * gdk-pixbuf/gdk-pixbuf-io.c: Added progressive animation loading.
1306 * gdk-pixbuf/gdk-pixbuf-io.h: Added progressive animation loading.
1307 * gdk-pixbuf/gdk-pixbuf-loader.c: Added progressive animation
1309 * gdk-pixbuf/gdk-pixbuf-loader.h: Added progressive animation
1311 * gdk-pixbuf/io-gif.c (image_load_increment): I think the
1312 ref-counting mess is finally fixed. Added progressive animation
1314 (gif_get_lzw): remove memory_leak
1316 * doc/tmpl/gdk-pixbuf-loader.sgml: much longer long description
1319 2000-01-05 Owen Taylor <otaylor@redhat.com>
1321 * gdk-pixbuf/pixops/pixops.c (pixops_process): Fix computation of end of run indices.
1323 * gdk-pixbuf/pixops/pixops.c: Fix double increments when dest_channels == 4.
1324 (Pointed out by Tomas Ogren)
1326 2000-01-05 Mark Crichton <crichton@gimp.org>
1328 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_eat_header_write):
1329 Return 0 if gdk_pixbuf_load_loader_module returns FALSE.
1331 2000-01-05 Elliot Lee <sopwith@redhat.com>
1333 * gdk-pixbuf/pixops/Makefile.am: Link with -lm (to get 'ceil' function)
1335 2000-01-05 Owen Taylor <otaylor@redhat.com>
1337 * doc/Makefile.am doc/gdk-pixbuf-sections.txt
1338 doc/gdk-pixbuf.sgml doc/tmpl/scaling.sgml:
1339 Added scaling functions into gtk-doc framework.
1341 * gdk-pixbuf/gdk-pixbuf-scale.c: Documentation fixes.
1343 * gdk-pixbuf/testpixbuf-scale.c (expose_cb): Simplify a bit.
1345 * gdk-pixbuf/pixops/pixops.c (pixops_composite_color): Return
1346 immediately if scale_x or scale_y is 0.
1348 2000-01-05 Owen Taylor <otaylor@redhat.com>
1350 * gdk-pixbuf/pixops/timescale.c: quick fix for initializing
1351 arrays in benchmark.
1353 2000-01-05 Jonathan Blandford <jrb@redhat.com>
1355 * gdk-pixbuf/gdk-pixbuf-io.h: Change the order of the update func
1356 to make it more compatible with the rest of GTK. Added animation
1357 framework for progressive loading.
1359 * gdk-pixbuf/io-bmp.c (image_begin_load): Modified to handle new
1361 * gdk-pixbuf/io-ico.c (image_begin_load): ditto
1362 * gdk-pixbuf/io-png.c (image_begin_load): ditto
1363 * gdk-pixbuf/io-ras.c (image_begin_load): ditto
1364 * gdk-pixbuf/io-jpeg.c (image_begin_load): ditto
1365 * gdk-pixbuf/io-pnm.c (image_begin_load): ditto
1366 * gdk-pixbuf/io-tiff.c (image_begin_load): ditto
1367 * gdk-pixbuf/io-gif.c (image_begin_load): ditto
1369 2000-01-05 Owen Taylor <otaylor@redhat.com>
1371 * gdk-pixbuf/pixops/README: Added a README with a TODO
1372 and some explainations of the algorithms.
1374 * gdk-pixbuf/testpixbuf-scale.c: Set a background pixmap of None
1375 to reduce flashing when resizing.
1377 2000-01-05 Owen Taylor <otaylor@redhat.com>
1379 * gdk-pixbuf/pixops/: Directory full of pixel data scaling
1380 code that will eventually migrate into libart.
1382 * configure.in acconfig.h: Add checks for MMX compiler support
1384 * gdk-pixbuf/gdk-pixbuf.h gdk-pixbuf/gdk-pixbuf-scale.c:
1385 Nice wrapper routines for the code in pixops that operate
1386 on pixbufs instead of raw data.
1388 * gdk-pixbuf/testpixbuf-scale: Test program for scaling
1391 2000-01-05 Jonathan Blandford <jrb@redhat.com>
1393 * doc/tmpl/animation.sgml: Documentation changes.
1395 2000-01-01 Federico Mena Quintero <federico@helixcode.com>
1397 * gdk-pixbuf/gdk-pixbuf.h (GdkPixbufAnimation): Added reference
1398 counting to animations. A web browser may want to share a single
1399 copy of an animated GIF if it appears multiple times in a web
1402 * gdk-pixbuf/gdk-pixbuf-animation.c: New file. Moved the
1403 animation functions here.
1404 (gdk_pixbuf_animation_new_from_file): Prettified. Return a NULL
1405 animation if the loader does not support multiframe loading and
1406 the single-frame load returned NULL. Check that the filename is
1407 not NULL. Updated inline documentation.
1408 (gdk_pixbuf_animation_ref): New function.
1409 (gdk_pixbuf_animation_unref): New function.
1410 Removed gdk_pixbuf_animation_destroy() in favor of reference
1413 * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_new_from_file):
1414 Prettified. Made ref_count assertion more paranoid. Check that
1415 the filename is not NULL.
1416 (gdk_pixbuf_get_module): Use guchar * and guint for buffer and
1418 (gdk_pixbuf_new_from_xpm_data): Changed the "data" argument to
1421 * gdk-pixbuf/io-gif.c (image_load_animation): Create the animation
1422 with a reference count of 1.
1424 * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_SOURCES): Added
1425 gdk-pixbuf-animation.c.
1427 * doc/tmpl/animation.sgml: Populated. It is still missing a
1428 description of the overlay modes.
1430 * doc/gdk-pixbuf-sections.txt: Added the animation section. Moved
1431 the canvas item section to the end, as it will be moved later to
1434 * doc/gdk-pixbuf.sgml: Added the animation section.
1436 * doc/Makefile.am (tmpl_sources): Added tmpl/animation.sgml.
1438 1999-12-26 Peter Teichman <pat@gnu.org>
1440 * gdk-pixbuf/Makefile.am (libpixbuf_tiff_la_LIBADD): add
1441 $(LIBTIFF) to libpixbuf_tiff_la_LIBADD, proxying for mmarker.
1442 This closes bug #4676.
1444 1999-12-23 Havoc Pennington <hp@pobox.com>
1446 * gdk-pixbuf/io-gif.c (image_load): Stuff that should have been
1447 set to NULL here (specifically context->animation) was not being
1448 set to NULL. use g_new0() to alloc the struct.
1450 1999-12-20 Jonathan Blandford <jrb@redhat.com>
1452 * gdk-pixbuf/io-gif.c: finished work to make animated gifs load
1453 correctly. Progressive loading needs some work, but that all
1454 needs doing from the gdk-pixbuf-loader end, not here.
1456 1999-12-17 Jonathan Blandford <jrb@redhat.com>
1458 * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_animation_new_from_file):
1459 moved the file here. It seems natural to put this function here,
1460 as that's where the gdk_pixbuf_new_from_file function is, but it's
1461 still a little convoluted. The source files might be played with
1464 1999-12-14 Jonathan Blandford <jrb@redhat.com>
1466 * gdk-pixbuf/gdk-pixbuf-loader.c
1467 (gdk_pixbuf_loader_get_animation): Gets the animation from the
1470 1999-12-16 Federico Mena Quintero <federico@redhat.com>
1472 * doc/tmpl/rendering.sgml: Added notice about initializing GdkRGB
1473 before using the GdkPixbuf rendering functions. Thanks to Joe
1474 Shaw <joe@off.net> for pointing this out.
1476 1999-12-13 Federico Mena Quintero <federico@redhat.com>
1478 * gdk-pixbuf/gnome-canvas-pixbuf.c
1479 (gnome_canvas_pixbuf_class_init): Renamed arguments to
1480 width_in_pixels, height_in_pixels, x_in_pixels, y_in_pixels, for
1481 consistency with the new canvas.
1482 (PixbufPrivate): Do the same renaming in the structure fields, for
1485 * doc/tmpl/gnome-canvas-pixbuf.sgml: Updated for new argument names.
1487 1999-12-12 Federico Mena Quintero <federico@redhat.com>
1489 * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_LDFLAGS): Use a
1490 conditional to see whether to link $(GNOME_LIBS) or not.
1492 1999-12-10 Jonathan Blandford <jrb@redhat.com>
1494 * gdk-pixbuf/gdk-pixbuf-io.h: thinking about the new loading API.
1496 * gdk-pixbuf/gdk-pixbuf-drawable.c (gdk_pixbuf_get_from_drawable):
1497 make a warning go away.
1499 * gdk-pixbuf/gdk-pixbuf.h: added new prototypes for animations.
1501 * gdk-pixbuf/gdk-pixbuf-loader.h: added new prototypes for
1504 1999-12-09 Michael Zucchi <zucchi@zedzone.mmc.com.au>
1506 * gdk-pixbuf/gdk-pixbuf.h: Enable gdk_pixbuf_get_from_drawable()
1509 * gdk-pixbuf/gdk-pixbuf-drawable.c (gdk_pixbuf_get_from_drawable):
1510 Filled in body of function.
1511 (rgbconvert): Added GdkColormap parameter, and to all conversion
1513 (convert_real_slow): New function - should convert ANY visual/data
1514 format properly, but it aint fast. Used as a fallback when an
1515 optimised routine wont match.
1516 (rgbconvert): Do very specific tests on the data format to verify
1517 properly if the optimised version will do, otherwise use the
1518 fallback function for all other data formats.
1520 * gdk-pixbuf/Makefile.am: Re-enabled building of
1521 textpixbuf-drawable.
1523 * gdk-pixbuf/testpixbuf-drawable.c (main): Changed to use
1524 gdk_pixbuf_get_from_drawable().
1526 1999-12-08 Arjan van de Ven <arjan@fenrus.demon.nl>
1528 * gdk-pixbuf/gdk-pixbuf-drawable.c : Fixed the red/green/red
1529 bug on two occasions.
1530 * gdk-pixbuf/io-ras.c: Changed from the custom be32_to_cpu
1531 function to the generic glib one.
1533 1999-12-08 Federico Mena Quintero <federico@redhat.com>
1535 * gdk-pixbuf/gdk-pixbuf-drawable.c: Fix includes.
1536 (gdk_pixbuf_get_from_drawable): Implemented the zillion sanity
1537 checks and API definition. The body needs filling in and it needs
1538 to do the Right Thing(tm) for pixmaps plus the given colormap and
1539 windows and their own colormaps.
1541 * gdk-pixbuf/gdk-pixbuf.h: Added prototype for
1542 gdk_pixbuf_get_from_drawable(). Killed gdk-pixbuf-drawable.h.
1544 * gdk-pixbuf/Makefile.am: Re-added the gdk-pixbuf-drawable sources.
1546 * doc/tmpl/from-drawables.sgml: Populated.
1548 * doc/gdk-pixbuf.sgml: Added the from-drawables section.
1550 * doc/Makefile.am (tmpl_sources): Added tmpl/from-drawables.sgml.
1552 * doc/gdk-pixbuf-sections.txt: Added a section for getting pixbufs
1555 1999-12-07 Federico Mena Quintero <federico@redhat.com>
1557 * doc/tmpl/gnome-canvas-pixbuf.sgml: Added clarification about
1558 reference counting for GdkPixbuf structures.
1560 1999-12-07 Martin Baulig <martin@home-of-linux.org>
1562 * gdk-pixbuf/Makefile.am (testpixbuf_LDADD): Conditionally
1563 include $(GNOME_LIBS) here.
1565 1999-12-05 Arjan van de Ven <arjan@fenrus.demon.nl>
1567 Added missing "include <string.h>" to:
1568 * gdk-pixbuf/io-ras.c
1569 * gdk-pixbuf/io-bmp.c
1570 * gdk-pixbuf/io-ico.c
1572 1999-12-06 Federico Mena Quintero <federico@redhat.com>
1574 * gdk-pixbuf/gdk-pixbuf-io.c (file_formats): Patch from Arjan to
1577 1999-12-05 Federico Mena Quintero <federico@redhat.com>
1579 * gdk-pixbuf/Makefile.am (testpixbuf_LDADD): Add back
1580 $(GNOME_LIBS). This must compile outside of gnome-libs. If you
1581 want, send me a patch to do the conditional stuff properly.
1582 Otherwise, please read the GNOME Programming Guidelines,
1583 especially the "CVS policies" section.
1585 1999-12-05 Jaka Mocnik <jaka.mocnik@kiss.uni-lj.si>
1587 * gdk-pixbuf/Makefile.am: removed GNOME_LIBS from testpixbuf_LDADD.
1589 1999-12-05 Arjan van de Ven <arjan@fenrus.demon.nl>
1591 * gdk-pixbuf/io-ico.c: Bug in palet-size
1594 1999-12-04 Arjan van de Ven <arjan@fenrus.demon.nl>
1596 * gdk-pixbuf/io-bmp.c: Major cleanup, added support for
1597 32 bpp and 4 bpp (uncompressed) images, fixed 1bpp.
1599 * gdk-pixbuf/io-ras.c: Minor cleanup, ran through lclint
1601 * gdk-pixbuf/io-ico.c: Minor cleanup, fixed 1bpp icons,
1604 * gdk-pixbuf/gdk-pixbuf-io.c: Added detection of .CUR files
1605 (Windows Cursor files). These are identical to .ICO files,
1606 except for the signature and 2 extra fields for the hotspot.
1608 1999-12-03 Federico Mena Quintero <federico@redhat.com>
1610 * gdk-pixbuf/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_get_arg):
1611 Removed unused variable `item'.
1613 1999-12-03 Jonathan Blandford <jrb@redhat.com>
1615 * gdk-pixbuf/io-gif.c (gif_fill_in_lines): added a comment to
1616 explain this function better.
1618 1999-12-02 Federico Mena Quintero <federico@redhat.com>
1620 Source files moved from src/ to gdk-pixbuf/, to be consistent with
1623 * doc/Makefile.am: Modified for the new source directory.
1625 * configure.in: Likewise.
1627 * Makefile.am: Likewise.
1629 * autogen.sh: Likewise.
1631 * gdk-pixbuf/Makefile.am: Likewise.
1633 1999-12-02 Federico Mena Quintero <federico@redhat.com>
1635 * src/testpixbuf.c: #include <config.h>, and fix includes.
1637 * src/testpixbuf-drawable.c: #include <config.h>, and fix includes.
1639 * src/io-xpm.c: Fix includes.
1641 * src/io-tiff.c: Fix includes.
1643 * src/io-ras.c: Fix includes, and do not include more stuff than needed.
1645 * src/io-pnm.c: Fix inlcudes, and do not include more stuff than needed.
1647 * src/io-png.c: Fix includes.
1649 * src/io-ico.c: Fix includes, and do not include more stuff than needed.
1651 * src/io-gif.c: Fix includes, and do not include more stuff than needed.
1653 * src/io-bmp.c: Fix includes, and do not include more stuff than needed.
1655 * src/gnome-canvas-pixbuf.c: Fix includes.
1657 * src/gdk-pixbuf.c: Fix includes.
1659 * src/gdk-pixbuf-util.c: Fix includes.
1661 * src/gdk-pixbuf-render.c: Fix includes.
1663 * src/gdk-pixbuf-io.h: Fix includes.
1665 * src/gdk-pixbuf-drawable.c: Fix includes.
1667 * src/gdk-pixbuf-drawable.h: Use angle brackets for the gdk-pixbuf
1670 * src/gdk-pixbuf-data.c: Fix includes.
1672 * src/gdk-pixbuf-loader.c: #include <config.h>
1674 * src/gdk-pixbuf-loader.h: Use angle brackets for the gdk-pixbuf
1677 * src/Makefile.am: Commented out the gdk-pixbuf-drawable stuff,
1678 since it is not finished.
1680 * src/gdk-pixbuf.h: Removed unused transformation prototypes.
1682 * src/gdk-pixbuf-util.c: New file with utility and convenience
1683 functions for pixbufs.
1685 * src/Makefile.am (libgdk_pixbuf_la_SOURCES): Added gdk-pixbuf-util.c.
1687 * doc/gdk-pixbuf-sections.txt: Added section for utility functions.
1689 * doc/Makefile.am (tmpl_sources): Added tmpl/util.sgml.
1691 * doc/gdk-pixbuf.sgml: Added the utilities section.
1693 * doc/tmpl/util.sgml: Documentation for the utility functions.
1695 1999-11-29 Owen Taylor <otaylor@redhat.com>
1697 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
1698 Keep the mask around until after we draw ... since
1699 the GC changes aren't flushed to the X server until we
1700 draw, destroying it before that may result in BadPixmap
1703 1999-11-30 Havoc Pennington <hp@pobox.com>
1705 * configure.in: Add AM_CONDITIONAL for inside gnome-libs
1707 * src/Makefile.am: conditionalize GnomeCanvasPixbuf
1709 1999-11-29 Federico Mena Quintero <federico@redhat.com>
1711 * src/Makefile.am: Uncomment the GnomeCanvasPixbuf sources. This
1712 should be made conditional, not blindly commented out.
1714 1999-11-29 Jonathan Blandford <jrb@redhat.com>
1716 * src/Makefile.am (ICO_LIB): Added another loader from Arjan to
1717 handle .ico files. Cool.
1719 1999-11-24 Jonathan Blandford <jrb@redhat.com>
1721 * src/io-bmp.c (OneLine24): new patch from Arjan to handle
1724 1999-11-24 James Henstridge <james@daa.com.au>
1726 * configure.in (AC_OUTPUT): altered hack to place the symlink in the
1727 top builddir rather than src. This still builds fine, and does not
1728 get gtk-doc into an infinite loop when trying to find all the source
1731 1999-11-23 Jonathan Blandford <jrb@redhat.com>
1733 * Removed #PRAGMA } from headers. Also, make compile if you don't
1734 have it installed, already.
1736 1999-11-22 Federico Mena Quintero <federico@redhat.com>
1738 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_draw): Create the
1739 temporary buffer to the size of the interesction of the bounding
1740 box and the expose area, not the whole expose area. This speeds
1743 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_threshold_alpha): Do
1744 not paint black on the mask, since we already cleared it in a
1745 single gdk_draw_rectangle() operation.
1747 1999-11-22 Raja R Harinath <harinath@cs.umn.edu>
1749 * configure.in (GDK_PIXBUF_DIR): Fix for srcdir != builddir.
1751 1999-11-22 Havoc Pennington <hp@pobox.com>
1753 * src/Makefile.am (GDK_PIXBUF_LIBS): Patch from Paul Fisher
1754 <pnfisher@redhat.com> adds all -lgdk-pixbuf and all other
1755 dependencies to LIBADD variables for loadable modules. Necessary
1756 for a Java dynamic loading thing to be able to figure it out.
1758 1999-11-22 Havoc Pennington <hp@pobox.com>
1760 * src/io-png.c (image_load_increment): Call the update_area
1761 callback depending on the number of rows loaded in this increment.
1763 * src/testpixbuf.c (main): slow down the progressive load demo
1765 1999-11-16 Havoc Pennington <hp@pobox.com>
1767 * src/gdk-pixbuf-drawable.h: Get the quotes right on the #include
1769 1999-11-22 Jonathan Blandford <jrb@redhat.com>
1771 * configure.in (GDK_PIXBUF_DIR): make the symlink. Does not work
1772 for srcdir != buildir != . Beats me why; I can't figure it out.
1773 AC_OUTPUT_COMMANDS doesn't seem to let me substitute it correctly.
1775 1999-11-21 Jonathan Blandford <jrb@redhat.com>
1777 * src/gdk-pixbuf-io.c: added io-bmp from Arjan
1778 <arjan@fenrus.demon.nl>
1780 1999-11-20 Michael Zucchi <zucchi@zedzone.mmc.com.au>
1782 * src/gdk-pixbuf-drawable.c (gdk_pixbuf_from_drawable_core):
1783 Rework/reorder of the code. Each case has been separated into
1784 another function; its big but it should be quick.
1785 gdk_pixbuf_rgba_from_drawable() will now return a pixbuf with
1786 opaque alpha information. Not all depths/formats have been
1787 tested, but 8, 15/16 and 24 (alinged 32) should work ok.
1789 1999-11-17 Larry Ewing <lewing@gimp.org>
1791 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_bounds):
1792 implement the bounds method correctly.
1793 (compute_viewport_affine): compute the affine need to fit the
1794 image within the viewport given by the args.
1795 (compute_render_affine): call compute_viewport_affine.
1797 1999-11-16 Havoc Pennington <hp@pobox.com>
1799 * src/gdk-pixbuf-drawable.h: Use includes from the current
1800 directory, not the system directory.
1802 Mon Nov 15 17:18:28 1999 George Lebl <jirka@5z.com>
1804 * src/testpixbuf-drawable.c: use includes from the current directory
1805 rather then from the system include directory as gdk-pixbuf
1806 includes are not yet installed when this is compiled.
1808 1999-11-13 Cody Russell <bratsche@dfw.net>
1809 * src/testpixbuf-drawable.c: Added a test program for drawable
1812 * src/Makefile.am: Build testpixbuf-drawable.
1814 1999-11-12 Cody Russell <bratsche@dfw.net>
1816 * src/gdk-pixbuf-drawable.c: Merged in Michael Zucchi's changes.
1818 1999-11-10 Federico Mena Quintero <federico@redhat.com>
1820 * doc/tmpl/gdk-pixbuf-loader.sgml: Populated.
1822 * doc/gdk-pixbuf.signals: Put in the real names of signal
1825 * src/gdk-pixbuf-loader.c: Improved documentation comments.
1827 1999-11-10 Jonathan Blandford <jrb@redhat.com>
1829 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): emit the
1832 * src/io-ras.c (OneLineMapped_file): Now can handle indexing
1833 correctly. Patch from Arjan to do so.
1835 1999-11-10 Michael Fulbright <drmike@redhat.com>
1837 * src/io-pnm.c (pnm_ascii_read_scanline): Fixed loading of ASCII PNM
1840 * src/testpixbuf.c: Added final queued draw when done loading image.
1842 1999-11-10 Jonathan Blandford <jrb@redhat.com>
1844 * src/gdk-pixbuf-io.c (gdk_pixbuf_load_module): removed spurious
1847 1999-11-10 Federico Mena Quintero <federico@redhat.com>
1849 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): Added
1852 1999-11-09 Federico Mena Quintero <federico@redhat.com>
1854 * src/io-png.c: Fixed some incompatible pointer initializations.
1856 * src/io-jpeg.c (image_load_increment): Remove unused variable.
1858 1999-11-09 Michael Fulbright <drmike@redhat.com>
1860 * src/testpixbuf.c: Fixed it to use timeout to read from file
1861 for progressive loading. Set TBF_KBPS=n, where n is the number of
1862 kilobytes/second to simulate in downloading. n has to be an integer.
1864 * src/io-jpeg.c: Slight cosmetic cleanup.
1866 * src/io-pnm.c: Fixed raw PNM loading bug. Also discovered that ASCII
1867 PBM loading has a similar problem and will address tomorrow.
1869 1999-11-09 Havoc Pennington <hp@pobox.com>
1871 * src/Makefile.am (libgdk_pixbuf_la_SOURCES): build the
1872 gdk-pixbuf-drawable stuff.
1874 1999-11-09 Federico Mena Quintero <federico@redhat.com>
1876 * configure.in: Bumped version number to 0.4.
1878 1999-11-09 Michael Fulbright <drmike@redhat.com>
1880 * src/io-pnm.c : Finished progressive PNM loading code. Should handle
1881 all types of PNM files now.
1883 * src/io-jpeg.c (image_load_increment): Figured out problem with
1884 loading Progressive JPEG's progressively (say that 10 times fast).
1885 Currently for Progressive JPEG's the entire image is loaded before
1886 it is displayed. libjpeg supports a fancier mechanism which I may
1889 With these changes all JPEG formats appear to load properly for me.
1891 1999-11-08 Jonathan Blandford <jrb@redhat.com>
1893 * src/io-ras.c (image_load_increment): Final patch from Arjan.
1894 Seems to do progressive loading.
1896 1999-11-08 Michael Fulbright <drmike@redhat.com>
1898 * src/io-pnm.c image_load (): Fixed so we do not create a separate
1899 pixel buffer when reading in image - we reuse the pixel data in
1900 the GdkPixbuf structure instead.
1902 1999-11-08 Michael Fulbright <drmike@redhat.com>
1904 * src/io-pnm.c pnm_read_ascii_scanline (): Added support for
1905 ASCII PNM files. Note I haven't tested loaded ASCII PBM files because
1906 I can't seem to find a utility to convert into this format.
1907 Next is to add progressive loading support for the PNM format.
1909 1999-11-07 Federico Mena Quintero <federico@redhat.com>
1911 * doc/tmpl/gnome-canvas-pixbuf.sgml: Finished detailed explanation
1912 of the width, height, x, and y setting and pixels arguments.
1914 1999-11-05 Jonathan Blandford <jrb@redhat.com>
1916 * src/io-ras.c (image_load): third patch. Now it seems to load.
1918 * src/gdk-pixbuf-io.c: second patch Arjan van de Ven
1919 <arjan@fenrus.demon.nl> to autodetect/load the sunras files.
1921 * src/io-ras.c (image_load): new file from Arjan van de Ven
1922 <arjan@fenrus.demon.nl> to begin the ras loader.
1924 1999-11-05 Federico Mena Quintero <federico@redhat.com>
1926 * doc/gdk-pixbuf-sections.txt: Removed gdk-pixbuf-io, since it is
1927 for internal use only.
1929 * doc/gdk-pixbuf.sgml: Likewise.
1931 * doc/tmpl/gnome-canvas-pixbuf.sgml: Finished docs.
1933 1999-11-05 Michael Fulbright <drmike@redhat.com>
1935 * src/io-pnm.c: Implemented support for reading raw PBM/PGM/PPM
1936 files from a file. Next step is support for ASCII files, and
1937 then incremental loading.
1939 1999-11-04 Federico Mena Quintero <federico@redhat.com>
1941 * Makefile.am: Added doc to SUBDIRS.
1943 1999-11-04 Michael Fulbright <drmike@redhat.com>
1945 * src/io-jpeg.c: Prettied up code slightly.
1946 * src/io-pnm.c: Start of pnm loader (from file and progressively).
1947 Doesn't do much yet (will finish tomorrow).
1948 * src/gdk-pixbuf-io.c: Added pnm to structure of known types.
1950 1999-11-04 Federico Mena Quintero <federico@redhat.com>
1952 * doc/tmpl/rendering.sgml: Populated.
1954 * doc/Makefile.am: Added the template files.
1956 1999-11-04 Havoc Pennington <hp@pobox.com>
1958 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable): In
1959 docs, explain what a dither offset is for.
1960 (gdk_pixbuf_render_to_drawable_alpha): Explain why you would use
1961 this function vs. gdk_pixbuf_render_to_drawable().
1963 1999-11-04 Havoc Pennington <hp@pobox.com>
1965 * configure.in: Use libart-config correctly; find gnome-config
1966 separately. Fix GNOME_LIBS to be correct in "no gnome installed
1969 * src/Makefile.am: Link to GNOME_LIBS instead of a hardcoded
1972 Patch untested in the inside-gnome-libs case, I need to commit
1973 then check out to the gnome-libs I'm using.
1975 1999-11-04 Michael Fulbright <drmike@redhat.com>
1977 * src/io-jpeg.c (image_begin_load): Add update_func callback.
1978 * src/io-jpeg.c (image_load_increment): Call updated callback when
1979 new graphic data decoded.
1981 1999-11-04 Jonathan Blandford <jrb@redhat.com>
1983 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_update): handle the
1985 * src/io-png.c (image_begin_load): add a update_func callback.
1986 * src/io-gif.c (image_begin_load): add a update_func callback.
1987 (gif_get_lzw): added the update_func ability
1989 * src/io-tiff.c (image_begin_load): add a update_func callback.
1991 1999-11-04 Federico Mena Quintero <federico@redhat.com>
1993 * doc/tmpl/gdk-pixbuf.sgml: Populated.
1995 * doc/tmpl/refcounting.sgml: Populated.
1997 * doc/tmpl/file-loading.sgml: Populated.
1999 * src/gdk-pixbuf.c: Added documentation comments.
2001 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_file): Added
2002 documentation comments.
2004 * doc/: Finished integrating the documentation framework.
2006 1999-11-03 Federico Mena Quintero <federico@redhat.com>
2008 * configure.in: Removed libgif stuff now that we do not depend on it.
2009 Added the necessary cruft for gtk-doc.
2011 * src/Makefile.am: Unconditionally build the GIF loader.
2013 1999-11-03 Jonathan Blandford <jrb@redhat.com>
2015 * src/io-gif.c (gif_read): renamed ReadOK to gif_read.
2016 Added a lot of comments to the file.
2018 * src/Makefile.am (libpixbuf_gif_la_LIBADD): Remove dependency on
2021 1999-11-03 Michael Fulbright <drmike@redhat.com>
2023 * src/io-jpeg.c (image_load_increment): Further removal of
2024 bugginess in local buffering code. Handles grayscale jpegs
2027 * src/io-jpeg.c (image_load_stop): Was freeing local context
2028 for jpeg library before calling jpeg_decompres_finish ().
2030 1999-11-03 Jonathan Blandford <jrb@redhat.com>
2032 * src/io-gif.c (image_load_increment): now handle arbitrary buffer
2034 (gif_get_lzw): set the transparency to the right val.
2036 1999-11-03 Federico Mena Quintero <federico@redhat.com>
2038 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_init):
2039 Initiailize the x and y fields.
2040 (gnome_canvas_pixbuf_destroy): Queue a redraw upon destruction.
2041 (PixbufPrivate): Renamed need_size_update to need_xform_update.
2042 (recompute_bounding_box): Do not use temporary values.
2044 1999-11-03 Jonathan Blandford <jrb@redhat.com>
2046 * src/io-gif.c (set_gif_lzw_clear_code): new state. Fixes
2049 * src/gnome-canvas-pixbuf.c (recompute_bounding_box): remove
2050 unneeded x,y,h,w vars.
2052 1999-11-03 Larry Ewing <lewing@gimp.org>
2054 * src/gnome-canvas-pixbuf.c (compute_render_affine): adjust
2055 render_affine calculation for x,y offsets.
2056 (gnome_canvas_pixbuf_set_arg): add x,y args.
2057 (gnome_canvas_pixbuf_get_arg): add x,y args.
2058 (recompute_bounding_box): simply code using ArtDrect and the
2059 render_affine. Removed compute_xform_vectors as it was no longer
2062 1999-11-03 Federico Mena Quintero <federico@redhat.com>
2064 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_point): I'm a
2065 doofus. Return a distance, not a boolean, for opaque images.
2067 * src/gnome-canvas-pixbuf.c (recompute_bounding_box): Do proper
2068 rounding of bounding box coordinates.
2069 (gnome_canvas_pixbuf_bounds): Implemented the ::bounds() method.
2070 (gnome_canvas_pixbuf_draw): Use the correct alpha threshold value.
2072 1999-11-03 Jonathan Blandford <jrb@redhat.com>
2074 * src/io-gif.c (gif_prepare_lzw): s/lwz/lzw/g
2076 1999-11-03 Michael Fulbright <drmike@redhat.com>
2078 * src/io-jpg.c (image_load_increment): Fixed code which moved
2079 buffer around as new data comes in to work properly. JPEG progressive
2080 loading should be working now except for grayscale JPEG's, which I
2081 will look into next.
2083 1999-11-03 <sopwith@redhat.com>
2084 * src/testpixbuf.c: A GtkFunction needs to return a value for deterministic behaviour.
2085 Also put dot printing back in.
2087 1999-11-03 <jrb@redhat.com>
2089 * src/io-gif.c (gif_get_extension): Read 'til the next empty block
2092 1999-11-02 Cody Russell <bratsche@dfw.net>
2093 * src/gdk-pixbuf-drawable.c: Changed the behavior to return NULL
2094 if part of the requested image is offscreen, rather than clipping
2097 1999-11-02 Jonathan Blandford <jrb@redhat.com>
2099 * src/io-gif.c (gif_fill_in_lines): Fill in the gif's blank areas
2100 for interlacing and progressive loading.
2102 1999-11-02 Cody Russell <bratsche@dfw.net>
2103 * src/gdk-pixbuf-drawable.c (gdk_pixbuf_from_drawable_core): Now
2104 calls gdk_pixbuf_new_from_art_pixbuf() instead of gdk_pixbuf_new().
2106 1999-11-02 Jonathan Blandford <jrb@redhat.com>
2108 * src/io-gif.c (gif_main_loop): Now progressive gif loading works!
2109 It's a little slow though. )-:
2111 1999-11-02 Elliot Lee <sopwith@redhat.com>
2112 * src/gdk-pixbuf-loader.[ch], src/gdk-pixbuf-io.h: Make the arguments to the
2113 write/load_increment operations const-correct.
2115 1999-11-02 Federico Mena Quintero <federico@redhat.com>
2117 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_point):
2118 Implemented the ::point() method. We do a simple containment test
2119 instead of a full distance calculation since the canvas is going
2120 to change to that scheme, anyways.
2122 1999-11-02 Elliot Lee <sopwith@redhat.com>
2124 * src/testpixbuf.c: Allow using $TBF_READLEN to specify the size of the chunks
2125 that are read from the input file.
2127 1999-11-02 Larry Ewing <lewing@gimp.org>
2129 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_render): add aa
2131 (gnome_canvas_pixbuf_class_init): add gnome_canvas_pixbuf_render
2134 1999-11-02 Federico Mena Quintero <federico@redhat.com>
2136 * src/gnome-canvas-pixbuf.c (compute_render_affine): Moved the
2137 affine computation code from ::draw() to here, since it is needed
2138 by ::point() as well.
2140 1999-11-02 Elliot Lee <sopwith@redhat.com>
2142 * src/gdk-pixbuf-loader.c: Reorganize gdk_pixbuf_loader_write into
2143 three functions, and eliminate duplication of code from write()
2144 and close(). Also fix bug where the 128-byte header was being
2147 1999-11-01 Federico Mena Quintero <federico@redhat.com>
2148 * src/gnome-canvas-pixbuf.c (recompute_bounding_box): Fixed
2149 bounding box computation.
2151 1999-11-01 Federico Mena Quintero <federico@redhat.com>
2153 * src/gnome-canvas-pixbuf.c: Start of the pixbuf canvas item.
2154 Drawing affines seem to work. Bounding box is fubared. ::point()
2155 is not implemented. This is a work in progress.
2157 * src/Makefile.am: Added gnome-canvas-pixbuf.[ch] to the list of
2160 * configure.in: Sigh. We need to link in libgnomeui for the
2161 canvas stuff. This mess will disappear when gdk-pixbuf gets
2162 folded into gnome-libs.
2164 1999-10-30 Jonathan Blandford <jrb@redhat.com>
2166 * src/io-gif.c: Some more work. Now it generates a gdk_pixbuf of
2167 the right size, at a minimum, even if the image is squished and
2169 (ReadImage): lets get the offset right. This will let transparent
2172 1999-10-29 Michael Fulbright <drmike@redhat.com>
2174 * src/io-jpeg.c: image_load_increment(): Fixed bug when
2175 image width was not a multiple of 4 - always use the
2176 gdk_pixbuf rowstride to increment pointers!
2178 1999-10-29 Michael Fulbright <drmike@redhat.com>
2180 * src/io-jpeg.c: Added first cut at progressive jpeg loading.
2181 Currently does not handle either progressive jpeg files (jpeg
2182 files with multiple scans at different quality settings), but
2183 I plan on adding this support soon. These are fairly rare in
2184 my experience, so it shouldn't slow people down too much.
2185 Grayscale jpegs also don't work but that should be easy to fix.
2187 1999-10-29 Michael Fulbright <drmike@redhat.com>
2189 * src/testpixbuf.c: Added title to windows so you can identify
2190 progressive and file windows.
2192 1999-10-29 Michael Fulbright <drmike@redhat.com>
2194 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): Actually
2195 load the image handler when we determine the image type.
2197 * src/gdk-pixbuf-io.[ch] (gdk_pixbuf_load_module): Changed the
2198 previously static function load_image_handler () to
2199 a public function gdk_pixbuf_load_module (). It is needed in
2200 gdk-pixbuf-loader.c to load image handler modules. This function
2201 is different from gdk_pixbuf_get_module (), which only returns
2202 a reference to the required handler, because it actually loads
2203 the handler into memory. Both actions should possibly be combined
2204 in a convenience function since one w/o the other doesn't seem to
2207 1999-10-28 Jonathan Blandford <jrb@redhat.com>
2209 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): don't send a
2212 1999-10-28 Federico Mena Quintero <federico@redhat.com>
2214 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable): New
2215 function to render a portion of a pixbuf to a drawable. Ignores
2216 alpha information and takes in a GC.
2217 (gdk_pixbuf_render_to_drawable_alpha): New function to render a
2218 portion of a pixbuf to a drawable. It automatically creates a GC
2219 and a clipping mask for alpha pixbufs.
2221 1999-10-28 Jonathan Blandford <jrb@redhat.com>
2223 * src/gdk-pixbuf.h: turned convenience macros into convenience
2224 functions so some error checking could be added.
2226 * src/io-tiff.c (image_load_increment): started work on the tiff
2227 non-incremental loader.
2228 (image_begin_load): Finished the incremental loader.
2230 * src/io-gif.c (image_load_increment): started work on the gif
2233 * src/gdk-pixbuf-io.h: Changed ModuleType to GdkPixbufModule.
2235 1999-10-27 Federico Mena Quintero <federico@redhat.com>
2237 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_threshold_alpha): New
2238 function to threshold a pixbuf's alpha channel into a bitmap.
2240 * src/gdk-pixbuf.c (gdk_pixbuf_new): Fixed so that it will
2241 contemplate future extensions to ArtPixBuf's formats.
2243 * src/io-png.c (png_info_callback): Use the new API of gdk_pixbuf_new().
2245 * src/gdk-pixbuf.h (gdk_pixbuf_get_height): Added some convenience
2246 macros to fetch the ArtPixBuf's fields.
2248 1999-10-27 Havoc Pennington <hp@pobox.com>
2250 * src/testpixbuf.c (main): Display the progressive load
2252 * src/io-png.c (setup_png_transformations): Break transformation
2253 code into separate function
2254 (png_info_callback): Use setup_png_transformations
2256 1999-10-27 Havoc Pennington <hp@pobox.com>
2258 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): Check
2259 properly whether the XPM module has already been loaded
2260 (gdk_pixbuf_new_from_file): Check properly if loader module
2261 was already loaded (was checking if load symbol was present
2262 in order to decide whether to re-load; should check module !=
2263 NULL, then load != NULL)
2264 (image_handler_load): Check in present working directory,
2265 makes it easier to debug for now
2266 (file_formats): This array initializer was seriously on crack,
2267 was assigning a function pointer to a GModule*
2269 * src/testpixbuf.c (main): Change type of pixbuf_loader to GdkPixbufLoader*
2271 1999-10-27 Havoc Pennington <hp@pobox.com>
2273 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_finalize):
2274 Fix typo that prevented compilation
2275 (gdk_pixbuf_loader_destroy): ditto
2277 1999-10-27 Federico Mena Quintero <federico@redhat.com>
2279 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_new): Return a
2280 GdkPixbufLoader, not a GtkObject.
2281 (gtk_marshal_NONE__INT_INT_INT_INT): Made static.
2282 (gdk_pixbuf_loader_get_type): Documented.
2283 (gdk_pixbuf_loader_class_init): Initialize the parent class
2285 (gdk_pixbuf_loader_destroy): Added sanity checks. Call the parent
2286 class destroy function.
2287 (gdk_pixbuf_loader_new): Documented.
2288 (gdk_pixbuf_loader_finalize): Call the parent class finalize
2290 (gdk_pixbuf_loader_write): Use size_t for count.
2292 1999-10-27 Michael Fulbright <drmike@redhat.com>
2294 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_destroy): Fixed
2295 logic so we only try to close loader if it wasn't previously closed.
2297 1999-10-27 Michael Fulbright <drmike@redhat.com>
2299 * src/gdk-pixbuf-loader.c: Made sure image_loader struct member of
2300 pixbuf_loader properly initialized.
2302 * src/testpixbuf.c: Made sure we cleanup pixbuf_loader properly
2305 1999-10-26 Jonathan Blandford <jrb@redhat.com>
2307 * src/gdk-pixbuf-io.c (image_handler_load): load the vtable fully.
2309 * src/gdk-pixbuf-loader.c: Finished initial cut at the object.
2311 1999-10-26 Havoc Pennington <hp@pobox.com>
2313 * src/gdk-pixbuf-loader.h: fix signals
2315 * src/gdk-pixbuf-io.h: add new vtable fields
2318 1999-10-26 Jonathan Blandford <jrb@redhat.com>
2320 * src/gdk-pixbuf-loader.h: New Class. Beginning of progrssive
2323 1999-10-25 Federico Mena Quintero <federico@redhat.com>
2325 * configure.in (CFLAGS): Patch from Uwe Koloska
2326 <koloska@Rcs1.urz.tu-dresden.de> to fix a stupid typo of mine.
2328 1999-10-22 Havoc Pennington <hp@pobox.com>
2330 * src/io-xpm.c (mem_buffer): Clean up stupid
2331 increment-inside-array-dereference thing
2333 * src/testpixbuf.c: Add XPM data tests.
2335 * src/io-xpm.c: Make the XPM data buffer const, fix const
2336 correctness throughout the code.
2338 1999-10-22 Havoc Pennington <hp@pobox.com>
2340 * src/gdk-pixbuf.h: Export gdk_pixbuf_new_from_xpm_data()
2342 1999-10-22 Havoc Pennington <hp@pobox.com>
2344 * src/io-xpm.c (image_load_xpm_data): Export this symbol for
2345 loading an XPM from memory.
2347 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): New
2348 function, loads pixbuf from xpm data
2349 (image_handler_load): Add g_return_if_fail() to ensure the same
2350 module isn't loaded twice. Add g_module_symbol() to scan for XPM
2353 1999-10-22 Federico Mena Quintero <federico@redhat.com>
2355 * src/io-png.c (image_load): Patch from Kristian Hogsberg
2356 Kristensen <hogsberg@daimi.au.dk> to avoid allocating extra row
2357 buffers; the rows can be read in directly into the main pixel
2360 1999-10-20 Federico Mena Quintero <federico@redhat.com>
2362 * src/gdk-pixbuf-io.c (image_handler_load): Free path.
2364 1999-10-20 Federico Mena Quintero <federico@redhat.com>
2366 * configure.in: Bumped version number to 0.3.
2368 * src/Makefile.am (lbgdk_pixbuf_la_LDFLAGS): Added a libtool
2369 version number for the library.
2371 1999-10-20 Federico Mena Quintero <federico@redhat.com>
2373 * src/gdk-pixbuf.h (GdkPixbuf): Removed the unref_fn field. Now
2374 all memory management of the buffer is done by libart.
2376 * src/gdk-pixbuf.c (gdk_pixbuf_unref): Do destruction here.
2377 Removed gdk_pixbuf_destroy, gdk_pixbuf_duplicate.
2379 * src/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Implemented in
2380 terms of the libart functions. Removed the old code.
2382 * src/gdk-pixbuf-io.c (image_handler_load): Removed the save
2383 symbols. Saving will not be implemented in GdkPixbuf.
2385 * src/io-gif.c: Removed the saving stub.
2386 (image_load): Fixed memory management to fail gracefully if we run
2387 out of memory while loading the image. Close the gif file when we
2388 are done. This still needs more error handling for the DGif
2391 * src/io-jpeg.c (image_load): Some robustness fixes.
2393 * src/io-png.c: Removed the saving stuff.
2394 (image_load): Some memory management fixes.
2396 * src/io-tiff.c (image_load): Ditto.
2398 * src/io-xpm.c (pixbuf_create_from_xpm): Ditto.
2400 1999-10-18 Havoc Pennington <hp@pobox.com>
2402 * subautogen.sh: New name for macros/autogen.sh
2404 * autogen.sh: use subautogen.sh
2406 1999-10-18 Federico Mena Quintero <federico@redhat.com>
2408 * src/*: Reindented to use the GNOME Indentation. Renamed
2409 GdkPixBuf to GdkPixbuf, for consistency with the function names
2410 (and it is also easier to type) :-)
2412 1999-10-18 Havoc Pennington <hp@pobox.com>
2414 * configure.in: Use AM_PATH_GLIB instead of glib-config directly
2416 * src/Makefile.am: Re-enable testpixbuf with GTK_CFLAGS/GTK_LIBS
2418 1999-10-18 Havoc Pennington <hp@pobox.com>
2420 * Makefile.am (SUBDIRS): Remove "macros"
2422 * configure.in: Don't use GNOME_INIT, handle case where we are
2423 inside gnome-libs. AM_PATH_GTK for the GIF test
2425 * src/Makefile.am: Change flags to work without libgnomeui,
2426 comment out testpixbuf for now
2428 1999-10-18 Federico Mena Quintero <federico@redhat.com>
2430 * configure.in: Use $GTK_LIBS as the extra libs when checking for
2431 libgif/libungif, as they need the X libraries. Fixes bug #2472.
2433 1999-10-10 Cody Russell <bratsche@dfw.net>
2434 * src/gdk-pixbuf-drawable.c: core function now determines whether
2435 the requested geometry is on screen or not, and if some is not
2436 then the request is clamped to geometry that is on the screen.
2438 Changed 'pixbuf' to 'art_pixbuf' in core function.
2440 1999-10-08 Michael Fulbright <drmike@redhat.com>
2442 * src/gdk-pixbuf-data.c: Added to load rgb data from const data.
2444 * src/testpifbuf: Changed test program to display cdrom from rgb data
2445 if no filename given to test program.
2447 1999-10-07 Cody Russell <bratsche@dfw.net>
2448 * src/gdk-pixbuf-drawable.[ch]: Added. (Actually, Miguel committed
2449 them, but I wrote them).
2451 * src/gdk-pixbuf-drawable.h: Added a missing ; so things will now
2454 * src/Makefile.am: Added gdk-pixbuf-drawable.[ch] to
2455 libgdk_pixbuf_la_SOURCES and libgdk_pixbufinclude_HEADERS.
2457 * src/gdk-pixbuf-drawable.c: Added #include "gdk-pixbuf-drawable.h"
2460 * src/gdk-pixbuf-drawable.[ch]: Changed functions to return
2461 GdkPixBuf* instead of ArtPixBuf*.
2463 1999-09-22 Michael Meeks <michael@nuclecu.unam.mx>
2465 * src/gdk-pixbuf.c (gdk_pixbuf_new): created.
2466 (gdk_pixbuf_scale): use gdk_pixbuf_new + return a new scaled image.
2468 * src/gdk-pixbuf.h (struct _GdkPixBuf): Re-organise struct, + add
2469 GdkPixBufUnrefFunc + gdk_pixbuf_new.
2471 * src/io-jpeg.c (image_load): clean to use gdk_pixbuf_new.
2473 * src/io-xpm.c (_pixbuf_create_from_xpm): ditto.
2475 * src/io-tiff.c (image_load): ditto + fix leak
2477 * src/io-png.c (image_load): ditto + add more exit points; monitor.png
2478 crashes this module ( add warning :-)
2480 * src/io-bmp.c (image_load): ditto.
2482 * src/io-gif.c (image_load): ditto.
2484 1999-09-18 Michael Meeks <michael@nuclecu.unam.mx>
2486 * src/gdk-pixbuf.c (gdk_pixbuf_scale): Hack rgba support in so
2487 it doesn't crash scaling with alpha.
2489 1999-09-17 Federico Mena Quintero <federico@redhat.com>
2491 * src/io-bmp.c (image_load): Set the initial ref_count to 1.
2493 * src/io-gif.c (image_load): Likewise.
2495 * src/io-jpeg.c (image_load): Likewise.
2497 * src/io-png.c (image_load): Likewise.
2499 * src/io-tiff.c (image_load): Likewise.
2501 * src/io-xpm.c (_pixbuf_create_from_xpm): Likewise.
2503 * src/gdk-pixbuf-io.c (gdk_pixbuf_load_image): Added an assertion
2504 for the ref_count to be != 0.
2506 * src/gdk-pixbuf.c (gdk_pixbuf_ref): Be more paranoid with sanity
2508 (gdk_pixbuf_unref): Fix incorrect sanity check and comparison.
2510 1999-08-09 Federico Mena Quintero <federico@nuclecu.unam.mx>
2512 * src/io-png.c (image_save): Fixed compiler warnings. Fixed write
2513 to unallocated memory (row_ptr), and fixed its type as well. Take
2514 into account the ArtPixbuf's rowstride when assigning the row
2517 * src/gdk-pixbuf.c: Fixup includes.
2519 * src/gdk-pixbuf-io.c: Likewise.
2521 Sat Jul 31 19:19:47 CEST 1999
2523 * src/gdk-pixbuf-io.c:
2524 * src/io-png.c: Fixed two obvious C syntax bugs
2526 1999-07-29 Mark Crichton <crichton@gimp.org>
2528 * src/io-png.c (image_save): Added PNG saving function
2530 * src/gdk-pixbuf-io.c: Changed image_save function format. Now it's
2531 image_save(GdkPixBuf *p, FILE *f, ...)
2534 1999-07-26 Michael Zucchi <mzucchi@denr.sa.gov.au>
2536 * src/Makefile.am (*_LIB): Only build the relevant loaders which
2537 require extra libraries if we actually have those libraries.
2539 1999-07-23 Richard Hestilow <hestgray@ionet.net>
2541 * src/gdk-pixbuf.h: Include glib.h as it uses g* datatypes
2542 * gdk_pixbufConf.sh.in: Added for gnome-config
2544 * configure.in: Modified to generate gdk_pixbufConf.sh
2546 1999-07-20 Mark Crichton <crichton@gimp.org>
2548 * src/gdk-pixbuf.c (gdk_pixbuf_rotate): Fixed rotation. Now a bbox
2549 calculation needs to be done.
2551 1999-07-18 Larry Ewing <lewing@gimp.org>
2556 * src/io-jpeg.c: Fix a few memory leaks in the, most of them in
2557 error cases but one or two in the common case. There are probably
2558 a few small ones left.
2560 1999-07-18 Mark Crichton <crichton@gimp.org>
2562 * configure.in: removed version.h.
2564 * src/gdk-pixbuf-io.c (pixbuf_check_tiff): Minor readability
2567 1999-07-17 Mark Crichton <crichton@gimp.org>
2569 * src/gdk-pixbuf.c: Removed gdk_pixbuf_free, redundant code.
2570 (gdk_pixbuf_rotate): Added pixbuf rotation code.
2571 (gdk_pixbuf_scale): Changed // comments to /* */
2573 * src/gdk-pixbuf.h (gdk_pixbuf_destroy): Added gdk_pixbuf_destroy
2576 1999-07-16 Larry Ewing <lewing@gimp.org>
2578 * src/testpixbuf.c (expose_func): reverted the expose everything
2579 changes, I'm not sure why these went in.
2580 (config_func): bring this up to date with the new pixbuf_scale
2583 * src/gdk-pixbuf-io.c: added a couple of warnings to the module
2584 loading code so that poeple can diagnose problems better.
2586 * src/gdk-pixbuf.c (gdk_pixbux_scale): fix the borkedness, also it
2587 no longer allocates a new pixbuf, which make things nicer for the
2588 rest of the code. Unfortunately there is still a problem with
2589 scaling rgba images.
2591 1999-07-16 Mark Crichton <crichton@gimp.org>
2593 * src/testpixbuf.c (config_func): ConfigureEvent handler. This
2594 calls gdk_pixbuf_scale. However, something is not working.
2595 N.B.: current pixmap is now stored in user_data with a key of
2598 * src/gdk-pixbuf.c (gdk_pixbuf_scale): Implemented scaling function.
2599 Something is still borked, however.
2601 1999-07-15 Larry Ewing <lewing@gimp.org>
2603 * src/io-jpeg.c (image_load): add raph@gimp.org's fix to the jpeg
2606 * src/testpixbuf.c (main): fix up the file routines a little so
2607 that you can load multiple files given the file names
2609 1999-07-14 Larry Ewing <lewing@gimp.org>
2611 * src/testpixbuf.c (expose_func): added an almost proper expose
2612 handler for testpixbuf
2614 1999-07-13 Mark Crichton <crichton@gimp.org>
2616 * configure.in: Fixed GIF check. Replaced " with '
2617 * src/gdk-pixbuf.c: More (minor) work on gdk_pixbuf_scale
2619 1999-07-13 Mark Crichton <crichton@gimp.org>
2621 * configure.in: I am a bonehead. Added gif-lib check.