1 Sat Mar 2 22:11:10 2002 Owen Taylor <otaylor@redhat.com>
3 * gdk-pixbuf-io.c (_gdk_pixbuf_load_module): If we
4 can't load the module using the g_module_build_path()
5 filename, try loading it as a .la file.
7 * test-loaders.c: Look for modules in current directory
8 rather than .libs, so we find the right .la files.
10 * test-loaders.c: Back out some accidental commits.
12 Sat Mar 2 21:28:03 2002 Owen Taylor <otaylor@redhat.com>
14 * gdk-pixbuf.c (gdk_pixbuf_new): Bullet-proof against integer
17 2002-03-03 Tor Lillqvist <tml@iki.fi>
19 * gtk-pixbuf.rc.in: Remove.
21 * gdk_pixbuf.rc.in: Name like this instead (wrong name used by
24 * makefile.msc: Corresponding changes.
26 * Makefile.am: Use gdk_pixbuf.rc on Win32. Distribute it.
28 2002-02-28 Matthias Clasen <maclas@gmx.de>
30 * pixops/pixops.c (tile_make_weights): Move the call to
31 correct_total() to the right spot. (#72732)
33 Wed Feb 27 18:33:04 2002 Owen Taylor <otaylor@redhat.com>
35 * gdk-pixdata.c (gdk_pixdata_to_csource): Use {} not
36 () to group around string assigned to char[]. (#72767,
39 2002-02-21 Havoc Pennington <hp@pobox.com>
41 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_load_module): remove
42 C++-commented debug spew, reported by David L. Cooper
44 2002-02-15 Matthias Clasen <maclas@gmx.de>
46 * pixops/pixops.c (correct_total): New function to make sure
47 that the weights sum up to the correct total without introducing
49 (tile_make_weights, bilinear_make_fast_weights,
50 bilinear_make_weights): Use correct_total.
52 2002-02-10 Matthias Clasen <maclas@gmx.de>
54 * test-images.h (tiff1_test_3), test-loaders.c (main): Add a
55 (#ifdef 0'ed) test provoking a segfault in TIFFReadDirectory().
57 * io-ico.c (DecodeHeader): Check that pixbuf could be allocated.
59 * test-images.h (ico_test_2), test-loaders.c (main): Test the
62 * io-wbmp.c (gdk_pixbuf__wbmp_image_load_increment): Don't write
63 beyond the end of buffer if width % 8 != 0.
65 * io-tga.c (try_preload): Enforce that ctx->hdr->type is one of
66 the supported types, otherwise parse_data_for_row () will not make
67 any progress, leading to an infinite loop.
69 Mon Feb 11 14:31:53 2002 Owen Taylor <otaylor@redhat.com>
71 * pixops/pixops.c (bilinear_make_weights): Fix handing of
74 2002-02-10 Matthias Clasen <maclas@gmx.de>
76 * test-loaders.c (main): Enable some tests which should work
79 * io-wbmp.c (gdk_pixbuf__wbmp_image_load_increment): Detect
80 invalid image dimensions and insufficient memory.
82 * io-tga.c (try_preload): Detect invalid image dimensions.
83 (gdk_pixbuf__tga_stop_load): Don't try to unref NULL pointers.
85 * io-ico.c (DecodeHeader): Detect some invalid headers and
88 Fri Feb 8 23:11:15 2002 Owen Taylor <otaylor@redhat.com>
90 * pixops/pixops.c: Force all weight arrays to sum exactly
91 to 65535. (Fixes #70971, reported by Federico Mena Quintero)
93 * Makefile.am (libgdk_pixbuf_1_3_la_DEPENDENCIES): Add
96 2002-02-08 Federico Mena Quintero <federico@ximian.com>
98 * pixops/pixops.h: Fix comment; PixopsInterpType -> GdkInterpType.
100 2002-02-08 Darin Adler <darin@bentspoon.com>
102 * io-xbm.c: (next_int): Wean this from <ctype.h>.
104 2002-02-01 Matthias Clasen <matthiasc@poet.de>
106 * Makefile.am: Build the tga loader as a static library. (#70157)
108 * io-ico.c: Merge 16- and 32-bit ico support from the stable
111 * io-gif.c: Recomposite all images if the animation size changes
112 while loading. (#70055)
114 * gdk-pixbuf.c (gdk-pixbuf-fill): Make it work for subpixbufs.
117 Sat Jan 19 20:49:20 2002 Manish Singh <yosh@gimp.org>
119 * io-jpeg.c, io-png.c: Made sure all the error cases involving
120 jpeg or png load/saves clean themselves up properly. Marked some
121 variables needed for cleanup volatile so they aren't clobbered by
124 Fri Jan 11 18:05:07 2002 Owen Taylor <otaylor@redhat.com>
126 * pixops/pixops.c: Fix integer overflow for the values
127 passed to the pixel functions. (#55148, fix from Michael Hore)
129 Fri Jan 11 17:53:58 2002 Owen Taylor <otaylor@redhat.com>
131 * pixops/pixops.c (pixops_scale_nearest): Remove meaningless
134 * pixops/pixops.c (pixops_process): Comment the computation
135 of run_end_index and fix some edge cases.
137 * pixops/{scale_line_22_33_mmx.S, composite_line_22_4a4_mmx.S:
138 composite_line_color_22_4a4_mmx.S}: Handle the case where
139 dest <= dest_end properly. (#52001, fix from Michael Hore)
141 Thu Jan 10 16:48:30 2002 Owen Taylor <otaylor@redhat.com>
143 * pixops/pixops.c: Replace some hardcoded values with the
144 SUBSAMPLE constant used elsewhere. (#51033)
146 Wed Jan 9 11:29:44 2002 Owen Taylor <otaylor@redhat.com>
148 * Makefile.am (s-enum-types-h): Include glib-object.h,
149 Add G_BEGIN_DECLS/END_DECLS to gdk-pixbuf-enum-types.h. (#68325,
152 * *.h: G_BEGIN_DECLS cleanups.
154 Tue Jan 8 10:58:04 2002 Owen Taylor <otaylor@redhat.com>
156 * gdk-pixbuf-util.c (gdk_pixbuf_saturate_and_pixelate):
157 - Massive cleanup, make actually legible.
158 - Fix some clamp-to-range bugs found by Jim Cape (#68231).
159 - Add a g_return_if_fail() if src and dest alpha don't match.
160 - Allow for src_rowstride != dest_rowstride.
162 2002-01-04 Hans Breuer <hans@breuer.org>
164 * gdk_pixbuf.def : don't export functions prefixed
167 * makefile.msc : use -FImsvc_recommende_pragmas.h
169 Thu Jan 3 19:31:58 2002 Owen Taylor <otaylor@redhat.com>
171 * pixops/pixops.c (scale_line_22_33): Fix and uncomment
174 * pixops/pixops.c (pixops_composite_nearest): Remove a
177 * pixops/pixops.c (pixops_composite): Add some docs
178 about the parameters.
180 * pixops/README: Add notes about the correct algorithms
181 for alpha compositing and how to implement them quickly.
183 2001-12-29 Tor Lillqvist <tml@iki.fi>
185 * Makefile.am (EXTRA_DIST): Add makefile.msc.
187 Sat Dec 22 15:31:20 2001 Owen Taylor <otaylor@redhat.com>
189 * gdk-pixdata.h: Fix trailing "," in enumeration.
191 2001-12-17 Matthias Clasen <matthiasc@poet.de>
193 * gdk-pixbuf.c, gdk-pixbuf-io.c, gdk-pixbuf-animation.c,
194 gdk-pixbuf-data.c, gdk-pixbuf-loader.c, gdk-pixbuf-scale.c,
195 gdk-pixbuf-util.c, gdk-pixdata.c: Markup fixes.
197 2001-12-16 Havoc Pennington <hp@pobox.com>
199 * gdk-pixbuf-scale.c: docs enhancements
201 2001-12-14 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
203 * io-xpm.c: Use g_ascii_strcasecmp() instead of g_strcasecmp().
205 2001-12-13 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
207 * gdk-pixbuf-animation.c, gdk-pixbuf-loader.c, gdk-pixpuf.c,
208 io-gif-animation.c, io-gif.c, io-tiff.c, test-loaders.c: Remove
209 assorted G_OBJECT casts where unnecessary.
211 * gdk-pixbuf-loader.c: Call g_object_ref and g_object_unref
212 instead of gdk_pixbuf_animation_ref and gdk_pixbuf_animation_unref
215 * gdk-pixbuf-csource.c, io-bmp.c, io-gif-animation.c, io-ico.c,
216 io-jpeg.c, io-png.c, io-pnm.c, io-ras.c, io-tga.c, io-wbmp.c,
217 io-xbm.c, io-xpm.c, test-gdk-pixbuf.c: Dito for gdk_pixbuf_ref and
220 * Makefile.am, pixops/Makefile.am: Compile everything with
221 -DG_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED
223 * gdk-pixdata.c: Use g_ascii_strup() instead of g_strup().
225 * io-xpm.c: Use g_ascii_strcasecmp() instead of g_strcasecmp().
227 2001-12-12 Matthias Clasen <matthiasc@poet.de>
229 * gdk-pixbuf-io.c: Markup fixes.
231 2001-12-12 Matthias Clasen <matthiasc@poet.de>
233 * Makefile.am (INCLUDES): Define G_LOG_DOMAIN. (#66412)
235 * gdk-pixbuf-loader.c, gdk-pixbuf-util.c: Markup fixes.
237 2001-12-11 Michael Natterer <mitch@gimp.org>
239 * io-png.c: gdk_pixbuf__png_image_save: removed wrong endian
240 conversion stuff; don't copy RGB pixbufs' lines around before
243 2001-12-05 Matthias Clasen <matthiasc@poet.de>
245 * gdk-pixbuf.h (gdk_pixbuf_ref, gdk_pixbuf_unref,
246 gdk_pixbuf_animation_ref, gdk_pixbuf_animation_unref):
249 Tue Dec 4 11:45:45 2001 Owen Taylor <otaylor@redhat.com>
251 * io-xpm.c (pixbuf_create_from_xpm): Fill in color
252 fields to black for transparent colors since we'll
253 later initialize pixels from them. (Fixes purify
254 errors, #66093, HideToshi Tajima)
256 2001-11-30 Tor Lillqvist <tml@iki.fi>
258 * gdk_pixbuf.def: Add gdk_pixbuf_get_option.
260 Fri Nov 30 15:55:34 2001 Owen Taylor <otaylor@redhat.com>
262 * gdk-pixdata.c (gdk_pixdata_deserialize): Fix
263 alignment problem in deserialization, (#65785,
264 reported by Hidetoshi Tajima)
266 2001-11-28 Manish Singh <yosh@gimp.org>
268 * gdk-pixbuf/io-bmp.c (gdk_pixbuf__bmp_image_load_increment): Fill
269 in missing error parameters to DecodeHeader and DecodeColormap.
271 2001-11-21 Federico Mena Quintero <federico@ximian.com>
273 Fix Ximian bug #12125; merged from gdk-pixbuf stable.
275 * gdk-pixbuf/io-bmp.c (gdk_pixbuf__bmp_image_load_increment): Use
276 a simple state machine instead of a scary if/else chain.
277 (DecodeHeader): Set the reading state.
278 (DecodeColormap): Set the reading state.
279 (decode_bitmasks): New function, decodes the bitmasks for
281 (OneLine32): Handle BI_BITFIELDS coding.
282 (OneLine16): Likewise.
284 2001-11-18 Hans Breuer <hans@breuer.org>
286 * io-xpm.c : use g_strcasecmp(), some poor platforms
287 don't have strcasecmp()
289 * makefile.msc : do INCLUDE_png etc. definition here to avoid
290 my temporary 'gdk-pixbuf-io-include.h' hack
292 Sun Nov 18 07:54:22 2001 Owen Taylor <otaylor@redhat.com>
294 * gdk-pixbuf-loader.c: Remove include of gobject/signal.h.
296 2001-11-03 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
298 * gdk-pixbuf-loader.c, gdk-pixbuf-scale.c: Documentation fixes.
300 2001-10-29 Tor Lillqvist <tml@iki.fi>
302 * Makefile.am: Use -no-undefined on Win32. Make
303 libgdk_pixbuf_1_3_la_OBJECTS depend on
304 gdk-pixbuf-marshal.c. Install import libraries.
306 * gdk_pixbuf.def: Update.
308 * gdk-pixbuf-io.c: (Win32) Use G_WIN32_DLLMAIN_FOR_DLL_NAME, saves
309 the actual DLL name of libgdk_pixbuf.
310 (get_libdir): Use it instead of guessing.
312 * io-xbm.c (gdk_pixbuf__xbm_image_begin_load): Use
313 g_file_open_tmp() insread of mkstemp().
315 2001-10-18 Matthias Clasen <matthiasc@poet.de>
317 * io-xbm.c (gdk_pixbuf__xbm_image_load_real): Don't dereference
318 context when it may be NULL. (#62344)
320 2001-10-16 Matthias Clasen <matthiasc@poet.de>
322 * gdk-pixdata.c, gdk-pixdata.h: Documentation.
324 * gdk-pixbuf-csource.1: Spelling fixes.
326 Wed Oct 10 11:52:17 2001 Owen Taylor <otaylor@redhat.com>
328 * gdk-pixdata.c gdk-pixbuf.h: Get rid of
329 GDK_PIXBUF_ERROR_HEADER/PIXEL_CORRUPT and use CORRUPT_IMAGE.
330 Get rid fo GD_PIXBUF_ERROR_UNKNOWN_FORMAT and use the
331 existing UKNOWN_TYPE error. (#58308)
333 * gdk-pixbuf.h, gdk-pixdata.c: Rename gdk_pixbuf_new_from_stream()
334 back to gdk_pixbuf_new_from_inline(). Rework docs to try
335 and be helpful for the common case. (#58308)
337 2001-10-05 Sven Neumann <sven@gimp.org>
339 * gdk-pixbuf/gdk-pixbuf-io.c
340 * gdk-pixbuf/gdk-pixbuf-private.h
341 * gdk-pixbuf/gdk-pixbuf.c
342 * gdk-pixbuf/gdk-pixbuf.h
343 * gdk-pixbuf/io-jpeg.c
344 * gdk-pixbuf/io-png.c: changed GDK_PIXBUF_ERROR_BAD_OPTION_VALUE to
345 GDK_PIXBUF_ERROR_BAD_OPTION to we can use it for bad keys too. Added
346 new public API gdk_pixbuf_get_option() to retrieve key/value pairs
347 set by an image loader. Added support for saving and reading PNG tEXt
348 chunks in PNG images.
350 Tue Oct 2 11:29:50 2001 Owen Taylor <otaylor@redhat.com>
352 * gdk-pixdata.c (gdk_pixdata_to_csource): Fix indentation
353 use a macro to make code a bit more readable.
355 2001-10-02 Sven Neumann <sven@gimp.org>
357 * gdk-pixdata.c: g_string_printfa => g_string_append_printf.
359 Wed Sep 26 18:08:19 2001 Owen Taylor <otaylor@redhat.com>
361 * Makefile.am (s-enum-types-h): Fix a typo in the include
362 guards. (#61254, Skip Montaro)
364 2001-09-21 Matthias Clasen <matthiasc@poet.de>
366 * io-xpm.c (xpm_extract_color): Rewritten to handle
367 xpm colormap entries more thoroughly. (#59939)
369 2001-09-21 Hans Breuer <hans@breuer.org>
371 * gdk-pixbuf.def : updated externals
373 * makefile.msc : generate gdk-pixbuf-enum-types.[hc]
375 Thu Sep 20 17:22:48 2001 Owen Taylor <otaylor@redhat.com>
377 * io-tiff.c (gdk_pixbuf__tiff_image_load): On OSF, apparently fseek()
378 works in some on-demand way, so the fseek gdk_pixbuf_new_from_file() doesn't
379 work here since we are using the raw file descriptor. So, we call lseek()
380 on the fileno(f) before using it. (#60840).
382 2001-09-20 James Henstridge <james@daa.com.au>
384 * Makefile.am (gdk-pixbuf-enum-types.c): same change as in pango,
385 so that flags types are registered as flags rather than enums (not
386 that there are any flags here at the moment).
388 Wed Sep 19 00:28:24 2001 Owen Taylor <otaylor@redhat.com>
390 * Makefile.am (gdk_pixbuf_headers): Don't include
391 gkd-pixbuf-features.h here since is in builddir
392 and confuses autogen rules.
394 * Makefile.am: Don't += variables before they have values,
395 automake-1.5 doesn't like it.
397 * Makefile.am: Fix srcdir != builddir for gdk-pixbuf-enum-types.c.
399 * Makefile.am: The whitespace strikes back.
401 2001-09-17 Matt Wilson <msw@redhat.com>
403 * Makefile.am (libpixbufloader_xbm_la_LDFLAGS): removed duplicate
404 LDFLAGS definition, use the -avoid-version one.
405 (libpixbufloader_tga_la_LDFLAGS): likewise
407 Mon Sep 17 11:49:02 2001 Owen Taylor <otaylor@redhat.com>
409 * pixops/*: Mirror GdkInterpType to PixopsInterpType
410 to avoid including gdk-pixbuf headers.
412 2001-09-16 James Henstridge <james@daa.com.au>
414 * .cvsignore: add generated files to ignore list.
416 * gdk-pixbuf.h: include gdk-pixbuf-enum-types.h
418 * Makefile.am: add rules to build gdk-pixbuf-enum-types.[ch]
420 Fri Sep 14 23:22:12 2001 Matthias Clasen <matthiasc@poet.de>
422 * io-pnm.c (pnm_read_header): Use GDK_PIXBUF_ERROR_CORRUPT_IMAGE,
423 not GDK_PIXBUF_ERROR_HEADER_CORRUPT. (#58308)
425 Fri Sep 14 22:53:45 2001 Matthias Clasen <matthiasc@poet.de>
427 * io-jpeg.c (gdk_pixbuf__jpeg_image_begin_load): Handle
428 out-of-memory situation better.
430 * io-pnm.c: Robustness fixes for pnm loader
432 * io-gif.c: Make gif loader survive TEST_RANDOMLY_MODIFY
434 * io-xpm.c (parse_color): detect very long color strings
436 All of the above from Matthias Clasen <matthiasc@poet.de>,
437 the remaining from Soeren Sandmann <sandmann@daimi.au.dk>.
439 * test-images.h: add tests:
440 - four valid ppm's, eight invalid (matthiasc@poet.de)
441 - one invalid xpm (matthiasc@poet.de)
442 - one valid tga, one invalid (sandmann@daimi.au.dk)
443 - one invalid tiff (sandmann@daimi.au.dk
445 * test-loaders.c: enable tests for ppm, png, gif, tga, tiff, xpm
447 * io-tiff.c (gdk_pixbuf__tiff_image_stop_load): TIFFClientOpen can
448 fail - detect it when it happens
450 * io-tga.c (gdk_pixbuf__tga_load_increment): Fail if there is too
453 * gdk-pixbuf-io.c: moved wbmb check after ico check to avoid false
456 Fri Sep 14 00:30:48 2001 Tim Janik <timj@gtk.org>
458 * Makefile.am: don't used BUILT_SOURCES to build marshal
459 files, as in conjunction with stamp files, this can
460 lead to endless rebuilding loops.
462 Tue Sep 4 00:22:07 2001 Owen Taylor <otaylor@redhat.com>
464 * Makefile.am: Fix EXTRA_DIST for gdk-pixbuf-csource.1
466 Tue Sep 4 03:09:52 2001 Tim Janik <timj@gtk.org>
468 * gdk-pixbuf-csource.1: new file, manual page for
469 the publically installed gdk-pixbuf-csource utility.
471 Thu Aug 30 08:30:03 2001 Matthias Clasen <matthiasc@poet.de>
473 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Propagate
474 errors from gdk_pixbuf_loader_load_module.
476 Thu Aug 30 08:27:37 2001 Matthias Clasen <matthiasc@poet.de>
478 * io-png.c (png_row_callback): Check that row_num is valid.
480 Tue Aug 28 21:05:26 2001 Matthias Clasen <matthiasc@poet.de>
482 * io-bmp.c (OneLine): Emit area_updated signal with proper
483 area information. (#52002)
485 Tue Aug 28 20:03:43 2001 Matthias Clasen <matthiasc@poet.de>
487 * test-loaders.c (test_loader): Catch errors at close time.
488 * test-loaders.c (main): Remove C++ comments.
490 2001-08-21 Matthias Clasen <matthiasc@poet.de>
492 * Makefile.am, gdk-pixbuf-io.c, pixbufloader_tga.def,
493 io-tga.c: Add tga loader, patch by Nicola Girardi. (#56067)
495 2001-08-20 Matthias Clasen <matthiasc@poet.de>
497 * test-images.h, test-loaders.c: Add ico and wbmp tests.
498 * io-jpeg.c (gdk_pixbuf__jpeg_image_save): Fail with a suitable
499 error if buffer allocation fails.
500 * io-ico.c: Make .ICO loader more robust.
501 All of these are due to sandmann@daimi.au.dk (#50187)
503 2001-08-19 Sven Neumann <sven@gimp.org>
505 * pixops/pixops.c: applied some simple but effective optimizations
506 to pixops_composite_nearest() and pixops_composite_color_nearest().
508 2001-08-07 Sven Neumann <sven@gimp.org>
510 * gdk-pixbuf.c (gdk_pixbuf_fill): a comment asked to optimize this
511 function, so that's what I did.
513 2001-08-06 Kjartan Maraas <kmaraas@gnome.org>
515 * gdk-pixdata.c: Fix a typo.
517 2001-07-30 Hans Breuer <hans@breuer.org>
519 * pixops/makefile.msc : new file
520 * makefile.msc : use it to complete the build
522 2001-07-20 Hans Breuer <hans@breuer.org>
524 * gdk-pixdata.c : don't 'g_tohl (*istream++)', but move
525 pointer increment out of the macro, because at least one
526 compiler (msvc 5.0) gets confused otherwise (applies the
529 * gdk_pixbuf.def : updated exports
531 * makefile.msc : reflect gdk-pixbuf-csource changes
533 2001-07-17 Darin Adler <darin@bentspoon.com>
535 * gdk-pixbuf-csource.c: Add missing <stdlib.h> include.
536 * io-png.c: (setup_png_transformations): Add ifdef so we compile
537 without warnings with G_DISABLE_CHECKS on.
538 * io-pnm.c: (gdk_pixbuf__pnm_image_load_increment): Add a missing
540 * io-wbmp.c: (getin), (get_mbi): Add a missing const.
541 * io-xbm.c: (gdk_pixbuf__xbm_image_load_real): Get rid of some
542 unused locals and add an initial value to quiet the compiler's
543 unintialized variable warning.
544 * pixops/pixops.c: Put an ifdef around some dead code.
546 Thu Jul 5 10:17:15 2001 Owen Taylor <otaylor@redhat.com>
548 * pixops/Makefile.am (noinst_LTLIBRARIES): Switch
549 over to the new include flags AC_SUBST(). (Problem
550 pointed out by Mikael Hermansson.)
552 2001-06-29 Havoc Pennington <hp@redhat.com>
554 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): fix for
557 Thu Jun 28 21:54:19 2001 Owen Taylor <otaylor@redhat.com>
559 * make-inline-pixbuf.c test-gdk-pixbuf.c test-loaders.c
560 gdk-pixbuf-csource.c: Fix args to g_type_init ().
562 2001-06-28 Havoc Pennington <hp@pobox.com>
564 * gdk-pixdata.c: <string.h>
566 * gdk-pixbuf-io.c (get_libdir): fix typo in dll name (aren't we
567 also leaking memory here from g_strdup_printf?)
569 Tue Jun 26 09:48:02 2001 Tim Janik <timj@gtk.org>
571 * Makefile.am (noinst_PROGRAMS): get rid of make-inline-pixbuf
573 * gdk-pixbuf-data.[hc]: provide gdk_pixbuf_new_from_stream()
574 instead from gdk_pixbuf_new_from_inline().
576 * gdk-pixdata.[hc]: auxillary GdkPixdata structure, public
577 installed API for applications that need to serialize/deserialize
578 on their own (gimp, BEAST).
580 * gdk-pixbuf/gdk-pixbuf-csource.c: provide publically installed
581 program that can dump images in CSource format and Pixbuf
582 stream format. supports RLE encoding, MACRO formatting etc...
585 Mon Jun 25 00:28:11 2001 Owen Taylor <otaylor@redhat.com>
587 * Makefile.am: Actually update timestamps, so rules don't
590 2001-06-11 Havoc Pennington <hp@redhat.com>
592 * Makefile.am (stamp-gdk-pixbuf-marshal.c): glib_genmarshal
593 already includes top_builddir
595 2001-06-08 Havoc Pennington <hp@redhat.com>
597 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_load_module): remove
598 bogus g_return_if_fail
600 * io-gif.c (gif_get_lzw): if delay time is 0 or smaller than
601 likely timeout resolution, set it to an arbitrarily-chosen short
603 Fixes bug #55953 from warmenhoven@yahoo.com
605 2001-06-07 Havoc Pennington <hp@redhat.com>
607 * Makefile.am: use Owen's new way of doing stampfiles/generated
610 2001-06-07 Havoc Pennington <hp@redhat.com>
612 * Makefile.am (gdk-pixbuf-marshal.c): fix up the glib-genmarshal path
614 2001-06-05 Havoc Pennington <hp@redhat.com>
616 * test-loaders.c (main): use putenv not setenv, reported by
619 2001-05-08 Havoc Pennington <hp@redhat.com>
621 * gdk-pixbuf-util.c (gdk_pixbuf_add_alpha): docs fixup,
622 and fix behavior to still subst color if the original image
625 2001-06-04 Havoc Pennington <hp@redhat.com>
627 * io-pnm.c (pnm_skip_whitespace): patch from Szekeres Istvan,
630 2001-06-01 Havoc Pennington <hp@redhat.com>
632 Apply patch from sandmann@daimi.au.dk, with some tweaks.
633 Makes things a bit more robust, and adds test-loaders.c
634 which is good for finding further robustness bugs to fix.
636 * io-tiff.c: Try to work around libtiff suckiness a bit;
637 put a giant thread lock on the whole loader,
638 paranoically check both whether error handlers were called and
639 also whether functions return false. Handle case where width or
640 height is 0. Various cleanups.
642 * io-png.c (gdk_pixbuf__png_image_stop_load): only unref pixbuf
644 (png_error_callback): apparently libpng expects you to longjmp out
647 * io-gif.c (struct _GifContext): remove unused "pixbuf" field
648 (lzw_read_byte): change "Mail jrb if this fails" g_warning
650 (gif_get_lzw): check for out-of-memory
651 (gif_prepare_lzw): catch/report an error
652 (new_context): use try_malloc, since GifContext is nearly 70K
653 (gdk_pixbuf__gif_image_load_increment): set context->buf to NULL
654 so we don't crash later.
656 * Makefile.am: Add test-loaders
658 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): handle context ==
661 2001-05-29 Darin Adler <darin@eazel.com>
663 * gdk-pixbuf.h: Fix prototype to use "(void)" instead of "()".
665 Mon May 28 14:21:35 2001 Jonathan Blandford <jrb@redhat.com>
667 * io-bmp.c: Patch from Helmethead <hoshem@mel.comcen.com.au> to
668 fix up bmp decoder to:
669 - adds 16 bpp bmp support (bug #53884)
670 - adds OS/2 1.x format bmp support (bug #54964)
671 - adds 4 bpp RLE compressed bmp support
672 - adds 1 bpp colormap support
673 - fixes negative height (top down) bmp support
675 2001-05-25 Hans Breuer <hans@breuer.org>
677 * gdk_pixbuf.def : reflect Havoc's recent api change
679 Sun May 20 12:53:49 2001 Owen Taylor <otaylor@redhat.com>
681 * Makefile.am (libgdk_pixbuf_1_3_la_LDFLAGS): Remove an
684 Sun May 13 11:59:11 2001 Owen Taylor <otaylor@redhat.com>
686 * Makefile.am: Make modules depend on libgdk_pixbuf.la.
688 2001-05-04 Havoc Pennington <hp@redhat.com>
690 * pixops/pixops.c (pixops_process): merge fix from stable: Patch
691 from hoshem@mel.comcen.com.au to fix nonzero X offsets. Fixes
694 * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest): merge
695 from stable: Patch from OKADA Mitsuru <m-okada@fjb.co.jp> to fix
696 confusion of using "src" instead of "p".
697 (pixops_composite_color_nearest): Use a more accurate (and
698 correct, to begin with) compositing method. This cures checks
699 showing through on images with no alpha.
701 * gdk-pixbuf.c (gdk_pixbuf_fill): fix bug that left some trailing
704 * gdk-pixbuf-io.h: fix UpdatedNotifyFunc to use signed ints
706 * gdk-pixbuf-loader.h (struct _GdkPixbufLoaderClass): Change
707 area_updated signal to use signed ints. Removed animation-related
710 * io-gif.c, io-gif-animation.h, io-gif-animation.c: Massive
713 * gdk-pixbuf-animation.c: Add GdkPixbufAnimationIter to abstract
714 all the pesky details. Remove old frame-based API. Make
715 GdkPixbufAnimation an abstract base class, derived by the loaders.
717 Sun Apr 22 15:51:32 2001 Owen Taylor <otaylor@redhat.com>
719 * Makefile.am (LDADDS): Add $(MATH_LIB).
721 2001-04-18 Havoc Pennington <hp@redhat.com>
723 * gdk-pixbuf.c (gdk_pixbuf_fill): Function to fill pixbuf with a
726 Wed Apr 4 01:41:02 2001 Tim Janik <timj@gtk.org>
728 * pixops/Makefile.am (noinst_LTLIBRARIES): include $top_srcdir
729 so we don't try to get <gtk/gtkobject.h> from standard search
732 * Makefile.am (gdk-pixbuf-marshal.c): use deps from srcdir.
733 add gdk-pixbuf-marshal.list to EXTRA_DIST.
734 take gdk-pixbuf-marshal.h out of _la sources.
736 2001-03-19 Tor Lillqvist <tml@iki.fi>
738 * makefile.mingw.in: Handle gdk-pixbuf-marshal.c.
740 * gdk_pixbuf.def: Update.
742 * pixbufloader_*.def: Just export the fill_vtable functions now.
744 2001-03-18 Mike Kestner <mkestner@ameritech.net>
746 * make-inline-pixbuf.c (main): Added logic to remove output when
749 2001-03-14 Havoc Pennington <hp@redhat.com>
751 * Makefile.am (gdk-pixbuf-marshal.c): Use different temporary file
752 from gdk-pixbuf-marshal.h, fixes parallel makes.
754 Thu Mar 1 04:01:57 2001 Tim Janik <timj@gtk.org>
756 * test-gdk-pixbuf.c: fixed includes.
758 2001-02-18 Havoc Pennington <hp@pobox.com>
760 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): prepend underscore
761 (gdk_pixbuf_get_named_module): prepend underscore
762 (gdk_pixbuf_get_module): prepend underscore
764 2001-02-19 Havoc Pennington <hp@redhat.com>
766 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): const fix
768 2001-02-17 Havoc Pennington <hp@pobox.com>
770 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_new_with_type): docs
772 2001-02-07 Alexander Larsson <alexl@redhat.com>
774 * io-xpm.c (free_buffer):
775 Use g_free, since the buffer is allocated with g_try_alloc().
777 2001-02-06 Christophe Merlet <redfox@eikonex.org>
779 * gdk-pixbuf-data.c: Fixes a minor typo.
781 Sun Feb 4 07:59:57 2001 Tim Janik <timj@gtk.org>
783 * gdk-pixbuf.h: DOH! don't include glib/gobject.h but glib-object.h,
784 we finally need the gobject->gruntime rename.
786 * *.c: scratched calls to g_type_init(), there's simply no point in
787 doing that, use gtk_init().
789 2001-02-01 Havoc Pennington <hp@pobox.com>
791 * gdk-pixbuf-loader.c, gdk-pixbuf-loader.h: rename "private" field
792 in struct to "priv" for C++
794 2001-01-31 Havoc Pennington <hp@pobox.com>
796 * gdk-pixbuf.c: include glib-object.h instead of gvaluetypes.h
798 2001-01-26 Havoc Pennington <hp@redhat.com>
800 * gdk-pixbuf-io.c (mname): fix included modules case.
802 2001-01-22 Havoc Pennington <hp@redhat.com>
804 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): check errors
805 from gdk_pixbuf_load_module
807 2001-01-22 Havoc Pennington <hp@redhat.com>
809 * Makefile.am: Add built marshaller files to support
810 GdkPixbufLoader signals
812 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): have
813 GDK_PIXBUF_MODULEDIR unconditionally replace the compiled-in
814 module location, rather than acting as a fallback, because we are
815 using GDK_PIXBUF_MODULEDIR to use gdk-pixbuf before installing it.
817 * gdk-pixbuf.h: include gdk-pixbuf-loader.h
819 * gdk-pixbuf-loader.h, gdk-pixbuf-loader.c: Move back over here
820 from gtk, and add error to close(), because stop_load may do
821 parsing of the image.
823 * pixops/have_mmx.S (_pixops_have_mmx): add newline at end of file
825 * io-*.c: make individual operations static, and add fill_vtable
826 functions which are exported. Fix the collection of type warnings
827 that surfaced, including a number of functions that didn't
828 properly take a GError and some that weren't
829 const-correct. Involved adding error handling for a few loaders.
831 * gdk-pixbuf-io.h: Add error reporting to stop_load function
833 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): change to just look up
834 a function that fills in the GdkPixbufModule vtable, instead of
835 looking up all the image functions individually; this means we
836 can get type safety within modules for the loader functions.
837 Also it means you don't have to keep the statically compiled and
838 GModule versions in sync.
840 * test-gdk-pixbuf.c (main): remove gdk_pixbuf_init()
842 * make-inline-pixbuf.c (main): remove call to gdk_pixbuf_init()
844 * gdk-pixbuf.h: nuke gdk_pixbuf_init()
846 * gdk-pixbuf-animation.c (gdk_pixbuf_frame_get_type): g_type_init
849 * gdk-pixbuf.c (gdk_pixbuf_get_type): g_type_init () here
851 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_get_type):
854 2001-01-20 John Harper <jsh@eazel.com>
856 * io-xbm.c: new pixbuf loader, for X bitmap files. Basically a
857 collision between Xlib's RdBitF.c and io-tiff.c
859 * gdk-pixbuf-io.c, Makefile.am, pixbufloader_xbm.def: added
862 [ merged from stable gdk-pixbuf module. Untested, but it
863 compiles, and works fine in the stable module ]
865 2001-01-18 Tor Lillqvist <tml@iki.fi>
867 * gdk-pixbuf-io.c (get_libdir): (Win32) Use the new
868 g_win32_get_package_installation_subdirectory() function. No need
869 to include windows.h.
870 (gtk_win32_get_installation_directory): Remove this then.
872 2001-01-01 Havoc Pennington <hp@redhat.com>
874 * Makefile.am (libgdk_pixbuf_1_3_la_LDFLAGS): add
875 @LIBTOOL_EXPORT_OPTIONS@
877 2000-12-30 Tor Lillqvist <tml@iki.fi>
879 * gdk_pixbuf.def: Update.
881 2000-12-16 Havoc Pennington <hp@pobox.com>
883 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file): ref
884 the pixbuf in the frame, so we can use gdk_pixbuf_frame_free
885 (gdk_pixbuf_frame_copy): new function
886 (gdk_pixbuf_frame_free): new function
887 (gdk_pixbuf_frame_get_type): new function
888 (GDK_TYPE_PIXBUF_FRAME): macro to get type for GdkPixbufFrame
890 Tue Nov 14 11:51:26 2000 Owen Taylor <otaylor@redhat.com>
892 * Makefile.am: Add -avoid-version for all modules.
894 2000-11-13 Havoc Pennington <hp@redhat.com>
896 * io-png.c (png_simple_error_callback): fix error message to not
897 say "save" since it's used for loading
899 2000-11-11 Hans Breuer <Hans@Breuer.Org>
901 * gdk-pixbuf-io.c : Fix all function prototype macros for self
902 contained image handlers (!USE_G_MODULE). Files to save should
903 be opened in binary mode, fopen(s, "wb").
905 * io-xpm.c : added HAVE_UNISTD_H condition
907 2000-11-11 Tor Lillqvist <tml@iki.fi>
909 * gdk_pixbuf.def: Add gdk_pixbuf_new_subpixbuf.
911 * io-tiff.c (gdk_pixbuf__tiff_image_begin_load): Use
912 g_file_open_tmp() (just added to GLib) instead of mkstemp() (or
913 mktemp() and open()).
915 * io-xpm.c (gdk_pixbuf__xpm_image_begin_load): Ditto.
917 2000-11-01 Havoc Pennington <hp@pobox.com>
919 * gdk-pixbuf.c (gdk_pixbuf_new_subpixbuf): New function to create
920 a pixbuf pointing to a subregion of another pixbuf.
922 2000-10-16 Tor Lillqvist <tml@iki.fi>
924 * gdk-pixbuf-io.c: Define also m_save (for the non-gmodule case).
926 2000-10-16 Havoc Pennington <hp@redhat.com>
928 * gdk-pixbuf-io.c (gdk_pixbuf_get_module)
929 (gdk_pixbuf_get_named_module) (gdk_pixbuf_load_module):
930 add error reporting here also
932 * make-inline-pixbuf.c (main): use GError
934 * io-xpm.c: include unistd.h
936 * gdk-pixbuf-util.c: include string.h
938 * io-*.c: add error reporting
940 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file): add
943 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file): Add error reporting
945 * gdk-pixbuf-io.h: Add GError** to load_increment and load
948 * gdk-pixbuf-io.c (gdk_pixbuf_save) (gdk_pixbuf_savev): return
949 a G_FILE_ERROR if we fail to write or close the file.
951 * gdk-pixbuf.h: remove GDK_PIXBUF_ERROR_IO, instead we'll use
952 G_FILE_ERROR_*. Rename enum to GdkPixbufError, properly following
953 the GError naming rules. Add GError** to load functions.
955 2000-10-06 Havoc Pennington <hp@redhat.com>
957 * gdk-pixbuf.h: add GdkPixbufAlphaMode
959 2000-10-06 Havoc Pennington <hp@redhat.com>
961 This entry is a summary of the merged-in changes from 1.0.
962 Relevant original ChangeLog entries are spliced in after
963 this entry; the files they refer to are from the 1.0
966 * pixops/pixops.c (pixops_composite_nearest): sync a small fix
969 * io-xpm.c (xpm_seek_string): add fscanf error check from 1.0
970 Add progressive loader from 1.0
972 * io-tiff.c (gdk_pixbuf__tiff_image_begin_load): mem leak fixes
975 * io-pnm.c: new version from 1.0 tree
977 * io-jpeg.c (gdk_pixbuf__jpeg_image_load): sync from 1.0, use
980 * io-gif.c (lzw_read_byte): sync from 1.0, change a g_error to
982 (gif_get_next_step): return 0 here, sync from 1.0
984 * gdk-pixbuf-util.c: sync email address change for Cody
987 2000-09-11 Jeffrey Stedfast <fejj@helixcode.com>
989 * gdk-pixbuf/io-pnm.c: Pretty much totally rewrote again because
990 last nights code was still "broken". Should now properly handle
991 all error conditions gracefully.
993 2000-09-10 Jeffrey Stedfast <fejj@helixcode.com>
995 * gdk-pixbuf/io-pnm.c: Rewrote.
997 2000-09-09 Federico Mena Quintero <federico@helixcode.com>
999 * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest): Compute
1000 the correct dest offset.
1002 2000-08-25 Federico Mena Quintero <federico@helixcode.com>
1004 * gdk-pixbuf/io-xpm.c: #include <unistd.h>
1006 2000-08-05 Larry Ewing <lewing@helixcode.com>
1008 * gdk-pixbuf/io-tiff.c: stop leaking context->tempname.
1010 * gdk-pixbuf/io-xpm.c: same as above.
1012 2000-07-26 Michael Meeks <michael@helixcode.com>
1014 * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_load): make
1017 2000-07-21 Larry Ewing <lewing@helixcode.com>
1019 * gdk-pixbuf/io-xpm.c: add a fake progressive loader so that
1020 xpm at least supports the progressive interface like the one in
1021 io-tiff.c. This should be reimplemented as an actual progressive
1024 2000-07-19 Jonathan Blandford <jrb@redhat.com>
1026 * demo/pixbuf-demo.c (update_timeout): changed scaling level to
1027 make it look better.
1028 * gdk-pixbuf/testpixbuf.c (update_timeout): Patch from michael
1029 meeks to handle errors better.
1031 2000-10-07 Tor Lillqvist <tml@iki.fi>
1034 * pixbufloader_jpeg.def
1035 * pixbufloader_png.def: Add new entry points.
1037 * makefile.mingw.in: Use libintl.
1039 2000-10-06 Havoc Pennington <hp@redhat.com>
1041 * gdk-pixbuf-io.c (gdk_pixbuf_save): s/format/type/g to be
1042 consistent with gdk_pixbuf_loader_new_with_type().
1043 Return runtime error if a module is missing.
1045 * gdk-pixbuf.h: add GDK_PIXBUF_ERROR_UNKNOWN_TYPE
1047 2000-10-05 Havoc Pennington <hp@redhat.com>
1049 Pixbuf saving, patch from David Welton.
1051 * Makefile.am (GDK_PIXBUF_LIBS): add INTLLIBS
1052 (libgdk_pixbuf_1_3_la_SOURCES): add gdk-pixbuf-i18n.h
1054 * gdk-pixbuf-i18n.h: Add _() to gdk-pixbuf
1056 * io-png.c (gdk_pixbuf__png_image_save): PNG save routine.
1058 * io-jpeg.c (gdk_pixbuf__jpeg_image_save): JPEG save routine.
1060 * gdk-pixbuf-io.c (gdk_pixbuf_save):
1061 (gdk_pixbuf_savev): Implement pixbuf saving routines
1063 * gdk-pixbuf.c (gdk_pixbuf_error_quark): pixbuf error quark
1066 * gdk-pixbuf.h: Add public save routines; add pixbuf error
1069 * gdk-pixbuf-io.h: Add save function to GdkPixbufModule
1071 2000-10-05 Dan Winship <danw@helixcode.com>
1073 * io-png.c, io-tiff.c, io-xpm.c: Fix comments to not claim that
1074 all three of these files are the JPEG image loader. (From
1077 2000-10-03 Tor Lillqvist <tml@iki.fi>
1079 * makefile.mingw.in: Add rule for make-inline-pixbuf. Use
1080 gdk-pixbuf's version number in the rule for makefile.mingw itself.
1082 * gdk_pixbuf.def: Add new entry points.
1084 2000-09-26 Havoc Pennington <hp@redhat.com>
1086 * gdk-pixbuf-util.c (gdk_pixbuf_saturate_and_pixelate): Add this
1087 function here, instead of putting it in a private GTK+ file.
1089 * gdk-pixbuf-private.h (GdkPixbufInlineFormat): include an
1090 enum here for the known formats of inlined pixbufs.
1091 Also, #define our file magic here.
1093 2000-06-23 Havoc Pennington <hp@redhat.com>
1095 * make-inline-pixbuf.c: Small program that creates C variable
1096 declarations of inline pixbuf data. This can be read
1097 by gdk_pixbuf_new_from_inline.
1099 * gdk-pixbuf.h (gdk_pixbuf_new_from_inline): New function to read
1100 inline pixbuf data and create a pixbuf from it.
1102 * gdk-pixbuf-data.c (gdk_pixbuf_new_from_inline): implement here
1104 2000-09-07 Tor Lillqvist <tml@iki.fi>
1106 * makefile.mingw.in: Use own version number for gdk-pixbuf DLLs,
1109 2000-08-12 Tor Lillqvist <tml@iki.fi>
1111 * gdk_pixbuf.def: Add missing entry point.
1113 2000-08-10 Havoc Pennington <hp@redhat.com>
1115 * Makefile.am (EXTRA_DIST): The *.def files had the wrong names
1116 (s/pixbuf_/pixbufloader_)
1118 2000-08-02 Tor Lillqvist <tml@iki.fi>
1124 * io-wbmp.c: Conditionalise inclusion of <unistd.h>.
1126 * makefile.mingw.in: List loaders alphabetically. Add the wbmp
1127 one. Fix names of DLLs to have '-' instead of '_'.
1129 2000-07-31 Elliot Lee <sopwith@redhat.com>
1130 * io-wbmp.c: Some bug fixes - now tested to work.
1132 2000-07-27 Elliot Lee <sopwith@redhat.com>
1134 * gdk-pixbuf-io.h, gdk-pixbuf-io.c: Add
1135 gdk_pixbuf_get_named_module() function to facilitate above change
1136 * io-wbmp.c, pixbufloader_wbmp.defs, gdk-pixbuf-io.c, Makefile:
1137 Implement loader for WBMP format.
1138 * io-bmp.c: Don't malloc a temporary buffer - use stack instead.
1140 2000-07-23 Tor Lillqvist <tml@iki.fi>
1145 * pixops/makefile.mingw.in
1146 * pixbuf_*.def: New files.
1149 * pixops/Makefile.am: Add them. Add rule to generate makefile.mingw.
1151 * gdk-pixbuf-io.c (gtk_win32_get_installation_directory):
1152 New function, to get the GTK+ installation directory from
1153 the Windows Registry, where the installation program
1154 for whatever software includes GTK+ has stored it.
1156 Used to avoid having hardcoding the directory where to look for
1157 loaders. This function is needed by gtk, too, so it should
1158 really be just in one place. Maybe a small static library
1159 one level up from here?
1161 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file)
1162 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file):
1163 Open file in binary mode. This *is* standard C. (No-op on Unix,
1166 * io-jpeg.c: If we don't HAVE_SIGSETJMP, use normal setjmp().
1168 * io-tiff.c: Use g_get_tmp_dir(). If we don't HAVE_MKSTEMP, use
1169 mktemp() and open().
1170 (gdk_pixbuf__tiff_image_stop_load): g_free() also the tempname.
1172 * pixops/*.S: The Gas from mingw32 doesn't like the .type
1173 pseudo-op. Conditionalise on __MINGW32__, but probably
1174 should conditionalise on Gas version instead? Or could we
1175 do without .type on all systems?
1177 * pixops/timescale.c: Use g_get_current_time()
1178 instead of gettimeofday().
1180 Sat Jul 22 10:57:22 2000 Owen Taylor <otaylor@redhat.com>
1182 * Makefile.am (test_gdk_pixbuf_LDADD): Remove -lgmodule
1184 Tue Jul 11 11:26:42 2000 Owen Taylor <otaylor@redhat.com>
1186 * gdk-pixbuf.c: Add <string.h> include.
1188 Tue Jul 11 06:20:14 2000 Tim Janik <timj@gtk.org>
1190 * io-gif.c (gdk_pixbuf__gif_image_load_animation):
1191 * gdk-pixbuf-data.c (gdk_pixbuf_new_from_data):
1192 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file):
1193 use g_object_new() instead of g_type_create_instance() which
1194 is a private function for fundamental type implementations.
1196 Thu Jul 6 11:49:47 2000 Owen Taylor <otaylor@redhat.com>
1198 * Makefile.am (libgdk_pixbuf_la_LDFLAGS): Use GTK+ version
1199 soname scheme for gdk-pixbuf.
1201 2000-06-21 Havoc Pennington <hp@pobox.com>
1203 * gdk-pixbuf.c: Convert GdkPixbuf to GObject, leaving it opaque
1204 (i.e. derivation is not allowed, and there are no virtual methods
1206 (gdk_pixbuf_preinit): Call g_type_init() here.
1207 (gdk_pixbuf_init): Add a user-friendly init function, for users
1208 of standalone gdk-pixbuf
1210 * gdk-pixbuf-animation.c: Convert to GObject, in the same
1211 way GdkPixbufAnimation was done.
1213 * gdk-pixbuf.h: Remove gdk_pixbuf_set_unref_handler() and
1214 gdk_pixbuf_finalize() from API, since these are broken and don't
1215 make sense with new GObject stuff.
1217 Wed Jun 21 16:02:48 2000 Owen Taylor <otaylor@redhat.com>
1219 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): Add feature to
1220 support a GDK_PIXBUF_MODULEDIR env variable as a secondary
1223 2000-06-10 Federico Mena Quintero <federico@helixcode.com>
1225 * demo/pixbuf-demo.c: It was cold and rainy this Saturday morning,
1226 so I needed something to warm my thighs. Running plain infinite
1227 loops on your laptop to make it hot is not very much fun. A demo
1228 of the gdk-pixbuf scaling functions is way better, and looks
1231 * configure.in (AC_OUTPUT): Added the demo Makefile.
1233 * Makefile.am (SUBDIRS): Added the demo directory.
1235 2000-06-09 Larry Ewing <lewing@helixcode.com>
1237 * gdk-pixbuf/io-png.c (gdk_pixbuf__png_image_load_increment):
1238 setjmp for the png error handler. It seems setting the error
1239 handling functions does not avoid the jump, and so not calling
1240 setjmp was causing the incremental loader to jump into lala land.
1241 (gdk_pixbuf__png_image_begin_load): setjmp for error handling, I'm
1242 not sure this one is actually required but the docs say it must be
1243 set for every call to a png_* function.
1244 Also changed the comment to reflect the fact that setting the
1245 error handlers does _not_ avoid the longjmp.
1247 2000-06-06 Larry Ewing <lewing@helixcode.com>
1249 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
1250 take frame offest into account when trying to calculate the
1251 animation bbox. Also set the width to the width not the height.
1252 (gdk_pixbuf_loader_animation_done): cycle over the frames to
1253 calculate bbox because now we finally have all the offset
1254 information for each frame.
1256 2000-06-05 Mathieu Lacage <mathieu@gnome.org>
1258 * configure.in: add some gtk parameters to the
1259 GDK_PIXBUF_LIBĂƒĂ¯Â¿Â½Â²S and GDK_PIXBUG_INCLUDEDIR vars. One more
1260 fight in my crusade for strange prefix compile...
1262 2000-05-30 Not Zed <NotZed@HelixCode.com>
1264 * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_begin_load):
1265 Initialise the error handler exit routine to our own. Note this
1266 means that every function that accesses the jpeg lib on this
1267 object MUST do a setjmp.
1268 (gdk_pixbuf__jpeg_image_stop_load): setjmp before accessing jpeg
1269 lib for handling fatal error.
1270 (gdk_pixbuf__jpeg_image_load_increment): And here too. So now
1271 your applications dont quit if there's a jpeg error!
1273 2000-05-30 Federico Mena Quintero <federico@helixcode.com>
1275 * gdk-pixbuf.spec.in: Include all the loader libraries. Patch
1276 from Frank de Lange <frank@unternet.org>.
1278 2000-05-09 Darin Adler <darin@eazel.com>
1280 * gdk-pixbuf/test-gdk-pixbuf.c:
1281 Fixed includes to get rid of accidental GNOME dependency.
1283 2000-05-26 Cody Russell <car0969@gamma2.uta.edu>
1284 * Makefile.am: Added gdk-pixbuf.spec to EXTRA_DIST
1286 2000-05-22 Federico Mena Quintero <federico@helixcode.com>
1288 * configure.in: Bumped version number to 0.8.0.
1290 * doc/Makefile.am (content_files): The toplevel gdk-pixbuf.sgml
1291 file was not being distributed.
1293 * gdk-pixbuf/pixops/Makefile.am (EXTRA_DIST): Added DETAILS.
1295 2000-05-09 Darin Adler <darin@eazel.com>
1297 * gdk-pixbuf/gdk-pixbuf-drawable.c: (rgb565lsb), (rgb565msb),
1298 (rgb565alsb), (rgb565amsb), (rgb555lsb), (rgb555msb), (rgb555alsb),
1299 (rgb555amsb), (convert_real_slow): Change all conversion from 16-bit
1300 formats to 32-bit formats to re-use the high bits of the color values
1301 so that white maps to full white.
1303 Fri May 5 12:16:32 2000 Owen Taylor <otaylor@redhat.com>
1305 * gdk-pixbuf/pixops/DETAILS: Add beginnings of file with
1306 detailed information about the structure and algorithms
1307 of pixops so people can fix it instead of breaking it.
1309 2000-05-04 Darin Adler <darin@eazel.com>
1311 * gdk-pixbuf/pixops/pixops.c: (pixops_composite_nearest),
1312 (composite_pixel), (composite_line):
1313 * gdk-pixbuf/test-gdk-pixbuf.c: (simple_composite_test_one_type):
1314 Now that Owen explained the algorithm, I think I implemented it
1315 right for the cases where the destination pixbuf is not opaque.
1316 The test does seem to confirm it.
1318 2000-05-04 Darin Adler <darin@eazel.com>
1320 * gdk-pixbuf/.cvsignore:
1321 * gdk-pixbuf/Makefile.am:
1322 * gdk-pixbuf/test-gdk-pixbuf.c (store_pixel), (fill_with_pixel),
1323 (load_pixel), (simple_composite_test_one),
1324 (simple_composite_test_one_type), (simple_composite_test), (main):
1325 Added some tests of composite to highlight problems in the old
1326 implementation. These tests run without any user interaction.
1327 Just do "make check".
1329 * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest),
1330 (composite_pixel), (composite_line): Fix composite to do a textbook
1331 "A over B" composite. This was clearly the intent, and it was easy
1332 to fix the code to do it. (Note to those that read my earlier tries
1333 at a patch; this version fixes typos that were present in all
1334 my patch attempts. I checked the final version by adding more tests.)
1336 2000-04-22 05:27:43 2000 Owen Taylor <otaylor@redhat.com>
1338 * gdk-pixbuf/pixops/pixops.c (pixops_scale_nearest): Properly
1339 offset y coordinate accordining to render_y0.
1341 * gdk-pixbuf/gdk-pixbuf-scale.c: Properly handle nonzero
1344 2000-04-22 James Henstridge <james@daa.com.au>
1346 * gdk-pixbuf.spec.in (%files): moved %{prefix}/bin/* from the main
1347 package to the devel package. The only file installed in bin is
1348 gdk-pixbuf-config, which belongs in -devel. This should allow having
1349 multiple versions of the main gdk-pixbuf package installed.
1351 2000-04-17 Karl Eichwalder <ke@suse.de>
1353 * gdk-pixbuf/Makefile.am (INCLUDES): Add $(GNOME_CFLAGS).
1354 Reported by Jens Finke.
1356 2000-04-14 Tomasz KĂƒĂ¯Â¿Â½Â³opczko <kloczek@pld.org.pl>
1358 * gdk-pixbuf/pixops/makefile.am: $(LIBART_CFLAGS) replaced by
1359 $(GTK_CFLAGS) - now gdk-pixbuf compiles correctly.
1361 2000-04-13 James Henstridge <james@daa.com.au>
1363 * configure.in: when performing the configure check to see if
1364 gmodule works, set CFLAGS to GLIB_CFLAGS and LIBS to GLIB_LIBS,
1365 rather than the other way round. Also, call AC_MSG_RESULT in the
1366 even that dynamic modules were not supported.
1368 2000-04-12 Federico Mena Quintero <federico@helixcode.com>
1370 This comes from an excellent idea by Tim Janik (timj@gtk.org) to
1371 hook to the last unref operation.
1373 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_set_last_unref_handler): New
1374 function to set the last unref handler for a pixbuf.
1375 (gdk_pixbuf_finalize): New function to actually finalize a pixbuf.
1376 It calls the pixbuf's destroy notification function and frees the
1377 GdkPixbuf structure itself.
1378 (gdk_pixbuf_unref): Use the last unref function of the pixbuf if
1381 * gdk-pixbuf/gdk-pixbuf-private.h (struct _GdkPixbuf): New fields
1382 for the last unref handler and its user data.
1384 * gdk-pixbuf/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Use
1385 g_new0() to allocate the pixbuf.
1387 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
1388 Fixed the call to gtk_signal_new() for the "frame_done" signal; it
1389 was not specifying the `frame' argument.
1391 * gdk-pixbuf/gdk-pixbuf-animation.c
1392 (gdk_pixbuf_animation_get_width): Fixed docstring.
1393 (gdk_pixbuf_animation_get_height): Likewise.
1394 (gdk_pixbuf_animation_get_num_frames): Likewise.
1395 (gdk_pixbuf_animation_get_frames): Likewise.
1397 * doc/gdk-pixbuf-sections.txt: Updated with the new functions and
1400 * doc/tmpl/gdk-pixbuf.sgml: Added the description for GdkColorspace.
1402 * doc/tmpl/scaling.sgml: Added the description for GdkInterpType.
1404 * doc/tmpl/refcounting.sgml: Updated with the information about
1405 the last unref handler.
1407 * doc/tmpl/*.sgml: Markup tweaks.
1409 * gdk-pixbuf/Makefile.am (libgnomecanvaspixbuf_la_LDFLAGS): Sigh,
1410 update the libtool version number for libgnomecanvaspixbuf as
1412 (libpixbufloader_*_la_LDFLAGS): The loaders need to be versioned
1413 as well, or the old ones won't work with the new stuff. Also,
1414 renamed the modules as follows.
1416 * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_load_module): Now the
1417 modules are called "libpixbufloader-<format>.so" instead of
1418 "libpixbuf-<format>.so". They needed renaming so that the new
1419 loaders won't overwrite the old ones; even with the versioning
1420 stuff, the new .so symlink to the .so.1.0.0 would overwrite the
1423 2000-04-12 Paolo Molaro <lupus@debian.org>
1425 * .cvsignore, src/.cvsignore: shut up cvs.
1427 2000-04-11 Federico Mena Quintero <federico@helixcode.com>
1429 Most of this patch is based on a patch by Havoc Pennington
1430 (hp@redhat.com) to make GdkPixbuf's structures opaque and to
1431 remove the libart dependency.
1433 * gdk-pixbuf/gdk-pixbuf.h: Removed the public structures.
1434 (GdkColorspace): New enum that for now only contains
1436 (GdkPixbufDestroyNotify): New type for the pixbuf's pixels destroy
1437 notification function.
1438 (GdkInterpType): New num with interpolation types.
1440 * *.[ch]: Replace the libart stuff with our own stuff.
1442 * pixops/*.[ch]: Likewise.
1444 * gdk-pixbuf/gdk-pixbuf-private.h: New file with the private
1445 declarations of the GdkPixbuf structures.
1447 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_new_from_art_pixbuf):
1449 (gdk_pixbuf_get_format): Constify.
1450 (gdk_pixbuf_get_n_channels): Constify.
1451 (gdk_pixbuf_get_has_alpha): Constify.
1452 (gdk_pixbuf_get_bits_per_sample): Constify.
1453 (gdk_pixbuf_get_pixels): Constify.
1454 (gdk_pixbuf_get_width): Constify.
1455 (gdk_pixbuf_get_height): Constify.
1456 (gdk_pixbuf_get_rowstride): Constify.
1458 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_copy): New function to copy
1461 * gdk-pixbuf/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Added a
1462 bits_per_sample argument; currently only 8 bits per sample are
1465 * gdk-pixbuf/gdk-pixbuf-animation.c (gdk_pixbuf_frame_get_pixbuf):
1467 (gdk_pixbuf_frame_get_x_offset): New accessor.
1468 (gdk_pixbuf_frame_get_y_offset): New accessor.
1469 (gdk_pixbuf_frame_get_delay_time): New accessor.
1470 (gdk_pixbuf_frame_get_action): New accessor.
1472 * gdk-pixbuf/gdk-pixbuf-render.c
1473 (gdk_pixbuf_render_pixmap_and_mask): Instead of returning a solid
1474 mask rectangle for pixbufs without an alpha channel, set the
1475 *mask_return to NULL.
1477 * gdk-pixbuf/gdk-pixbuf-util.c (gdk_pixbuf_add_alpha): Constify.
1479 * gdk-pixbuf/gdk-pixbuf-scale.c: Fix includes.
1481 * gdk-pixbuf/gdk-pixbuf-scale.c (gdk_pixbuf_scale): Added some
1482 preconditions. Maybe we should also check for the colorspace,
1483 bits per pixel, and such.
1484 (gdk_pixbuf_composite): Likewise.
1485 (gdk_pixbuf_composite_color): Likewise.
1486 (gdk_pixbuf_scale_simple): Likewise, and fail gracefully if we
1487 cannot allocate the new pixbuf.
1488 (gdk_pixbuf_composite_color_simple): Likewise.
1490 * gdk-pixbuf/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_render):
1491 Use art_rgb_rgba_affine() or art_rgb_affine() since we no longer
1494 * gdk-pixbuf/io-bmp.c: Fix includes.
1496 * gdk-pixbuf/pixops/pixops.c (pixops_scale_nearest): Fixed cast in
1501 * configure.in: Removed checks for libart.
1503 * gdk-pixbuf/Makefile.am: Removed references to libart.
1504 (noinst_HEADERS): Added gdk-pixbuf-private.h.
1506 * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_LDFLAGS): Incremented
1507 the version number of the libtool library to indicate that this
1508 definitely is not compatible with the old usage. I know you love
1511 * configure.in: Bumped version number to 0.7.0.
1515 * gdk-pixbuf-config.in (--libs): We no longer require libart.
1517 * DEPENDS.libgdk_pixbuf: We no longer depend on libart.
1519 * gdk-pixbuf.spec.in: Updated, but I don't guarantee anything.
1521 2000-04-06 Jonathan Blandford <jrb@redhat.com>
1523 * gdk-pixbuf/testanimation.c (main): add more info to the
1524 testanimation frames.
1526 2000-04-04 Ettore Perazzoli <ettore@helixcode.com>
1528 * gdk-pixbuf/gdk-pixbuf-animation.c
1529 (gdk_pixbuf_animation_get_width): New accessor function.
1530 (gdk_pixbuf_animation_get_height): New accessor function.
1531 (gdk_pixbuf_animation_get_num_frames): New accessor function.
1532 (gdk_pixbuf_animation_get_frames): New accessor function.
1534 2000-04-01 Federico Mena Quintero <federico@helixcode.com>
1536 * gdk-pixbuf/gdk-pixbuf.c: Reverted Mark's change. The refcount
1537 is private information, and the art_pixbuf will go away soon.
1539 2000-03-31 Mark Crichton <crichton@gimp.org>
1541 * gdk-pixbuf/gdk-pixbuf.c: Added gdk_pixbuf_get_refcount
1542 and gdk_pixbuf_get_artpixbuf accessor functions.
1544 2000-03-29 Federico Mena Quintero <federico@helixcode.com>
1546 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_get_has_alpha): Return
1547 gboolean instead of int.
1549 2000-03-29 Radek Doulik <rodo@helixcode.com>
1551 * gdk-pixbuf/gdk-pixbuf-animation.c
1552 (gdk_pixbuf_animation_new_from_file): same as below
1554 * gdk-pixbuf/io-gif.c (gif_get_lzw): added update of width and
1555 height in GdkPixbufAnimation
1557 2000-03-28 Radek Doulik <rodo@helixcode.com>
1559 * gdk-pixbuf/io-gif.c (gif_get_lzw): test also for
1560 context->frame_done_func and context->anim_done_func to make
1561 progressive animation loading work
1563 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
1564 added priv->pixbuf = NULL as pixbuf is now in frame (and to make
1565 gdk_pixbuf_loader_prepare happy)
1566 (gdk_pixbuf_loader_frame_done): update animation bbox
1568 * gdk-pixbuf/gdk-pixbuf.h: added bbox size (width, height) to
1571 2000-03-27 Radek Doulik <rodo@helixcode.com>
1573 * gdk-pixbuf/io-gif.c (gif_get_lzw): use frame_len and frame_width
1574 instead of width and height
1576 2000-03-27 Owen Taylor <otaylor@redhat.com>
1578 * gdk-pixbuf/pixops/pixops.c: Fix problem with
1579 precendence of >> and & which was keeping composite_color
1580 from working with non-gray images.
1582 2000-03-08 Jonathan Blandford <jrb@redhat.com>
1584 * gdk-pixbuf/io-gif.c (gdk_pixbuf__gif_image_load): free the context.
1585 (gdk_pixbuf__gif_image_load_animation): free the context.
1587 2000-03-06 Arjan van de Ven <arjan@fenrus.demon.nl>
1589 * gdk-pixbuf/io-bmp.c: Fixed to pointer-bugs and a
1590 mis-interpretation of the Microsoft documentation. Now
1591 it can load .BMP files that are not generated by The Gimp
1594 2000-03-01 Mark Crichton <crichton@gimp.org>
1596 * configure.in: Added BUILD_CANVAS_ITEM stuff to (finally)
1597 fix the last auto* build bug (where we have libart, but no
1600 * gdk-pixbuf/Makefile.am: Same.
1602 2000-02-28 Matt Wilson <msw@redhat.com>
1604 * gdk-pixbuf/gdk-pixbuf-drawable.c: s/unsigned long/guint32/g,
1605 s/unsigned short/guint16/g, s/unsigned char/guint8/g
1607 2000-02-26 Federico Mena Quintero <federico@helixcode.com>
1609 * README: We don't require libgif/ungif nor libXpm.
1611 * NEWS: This was outdated, so updated it.
1613 2000-02-25 Federico Mena Quintero <federico@helixcode.com>
1615 * gdk-pixbuf.m4: Use the correct name for
1616 gdk-pixbuf/gdk-pixbuf.h. Thanks to Jacob Berkman for pointing
1619 2000-02-21 Federico Mena Quintero <federico@helixcode.com>
1621 * configure.in (GDK_PIXBUF_MINOR): Bumped version number to 0.6.0.
1623 * doc/compiling.sgml: New appendix documenting the gdk-pixbuf
1624 library's particular options to configure.in.
1626 * doc/gdk-pixbuf.sgml: Include compiling.sgml appendix via an
1629 * doc/Makefile.am (gdk-pixbuf.html): Added compiling.sgml.
1631 * gdk-pixbuf/io-ico.c (gdk_pixbuf__ico_image_load_increment):
1632 Fixed typo in prototype name.
1634 * configure.in: Changed duplicated AC_MSG_CHECKING message to
1635 something more meaningful; now it is "checking whether dynamic
1638 * gdk-pixbuf/pixops/Makefile.am (noinst_PROGRAMS): Do not install
1639 the timescale program.
1641 Integrated Miguel de Icaza's <miguel@gnu.org> patch for optionally
1642 creating a single static library with all the image format modules
1645 2000-02-20 Miguel de Icaza <miguel@gnu.org>
1647 * gdk-pixbuf/io-xpm.c (gdk_pixbuf__xpm_image_load): Add prefix.
1648 (gdk_pixbuf__xpm_image_load_xpm_data): Add prefix.
1650 * gdk-pixbuf/io-tiff.c (gdk_pixbuf__tiff_image_load_real): Add prefix.
1651 (gdk_pixbuf__tiff_image_stop_load): Add prefix.
1652 (gdk_pixbuf__tiff_image_load_increment): Add prefix.
1653 (gdk_pixbuf__tiff_image_load): Add prefix.
1654 (gdk_pixbuf__tiff_image_stop_load): Update invocation.
1655 (gdk_pixbuf__tiff_image_begin_load): Add prefix.
1657 * gdk-pixbuf/io-ras.c (gdk_pixbuf__ras_image_load): Add prefix.
1658 (gdk_pixbuf__ras_image_load): Updated invocation.
1659 (gdk_pixbuf__ras_image_begin_load): Add prefix.
1660 (gdk_pixbuf__ras_image_stop_load): Add prefix.
1661 (gdk_pixbuf__ras_image_load_increment): Add prefix.
1663 * gdk-pixbuf/io-pnm.c (gdk_pixbuf__pnm_image_begin_load): Add prefix.
1664 (gdk_pixbuf__pnm_image_stop_load): Add prefix.
1665 (gdk_pixbuf__pnm_image_load_increment): Add prefix
1666 (gdk_pixbuf__pnm_image_load): Add prefix.
1668 * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_load): Add prefix.
1669 (gdk_pixbuf__jpeg_image_load_increment): Add prefix.
1670 (gdk_pixbuf__jpeg_image_begin_load): Add prefix.
1671 (gdk_pixbuf__jpeg_image_stop_load): Add prefix.
1673 * gdk-pixbuf/io-ico.c (gdk_pixbuf__ico_image_load): Add prefix.
1674 (gdk_pixbuf__ico_image_load): update invocation.
1675 (gdk_pixbuf__ico_image_load_increment): Add prefix.
1676 (gdk_pixbuf__ico_image_load): update invocation.
1677 (gdk_pixbuf__ico_image_begin_load): Add prefix.
1678 (gdk_pixbuf__ico_image_load): update invocation.
1679 (gdk_pixbuf__ico_image_stop_load): Add prefix.
1681 * gdk-pixbuf/io-gif.c (gdk_pixbuf__gif_image_load_animation): Add prefix.
1682 (gdk_pixbuf__gif_image_load): Add prefix.
1683 (gdk_pixbuf__gif_image_begin_load): Add prefix.
1684 (gdk_pixbuf__gif_image_load_increment): Add prefix.
1685 (gdk_pixbuf__gif_image_load_animation): Add prefix.
1686 (gdk_pixbuf__gif_image_stop_load): Add prefix.
1688 * gdk-pixbuf/io-bmp.c (gdk_pixbuf__bmp_image_load): Add prefix.
1689 (gdk_pixbuf__bmp_image_load): Rename function called.
1690 (gdk_pixbuf__bmp_image_load_increment): Add prefix
1692 * gdk-pixbuf/io-png.c (gdk_pixbuf__png_image_load): Add prefix.
1693 (gdk_pixbuf__png_image_begin_load): Add prefix.
1694 (gdk_pixbuf__png_image_stop_load): Add prefix.
1695 (gdk_pixbuf__png_image_load_increment): Add prefix.
1697 * gdk-pixbuf/gdk-pixbuf-io.c (file_formats): Make this static.
1698 (gdk_pixbuf_load_module): Load the shared library entry points
1699 using a "gdk_pixbuf__$module_name" prefix.
1700 (pixbuf_module_symbol): Wrapper routine that uses the module
1701 prefix for the modules to load the information.
1703 * configure.in (GDK_PIXBUF_VERSION): New option --disable-modules
1704 lets the user specify that gdk-pixbuf should link all image loader
1705 code into the library instaed of creating shared library modules.
1707 (dynworks): Renamed the automake conditional DYNAMIC_MODULES_WORK
1708 to BUILD_DYNAMIC_MODULES.
1710 2000-02-19 Jonathan Blandford <jrb@redhat.com>
1712 * gdk-pixbuf/io-gif.c (new_context): fix case where initial
1713 colormap entry is Transparent.
1715 2000-02-19 Owen Taylor <otaylor@redhat.com>
1717 * gdk-pixbuf/pixops/pixops.c (scale_pixel): Fix error in
1718 scale factors for non-alpha case.
1720 2000-02-14 Mark Crichton <crichton@gimp.org>
1722 * gdk-pixbuf/io-xpm.c (xpm_extract_color): Added check for "g" color type.
1723 Imlib/libXpm handle this, but we didn't.
1725 2000-02-14 Darin Adler <darin@eazel.com>
1727 * gdk-pixbuf/testpixbuf.c: Remove now-unnecessary cast.
1728 * .cvsignore: gdk-pixbuf/.cvsignore: More to ignore.
1730 2000-02-14 Elliot Lee <sopwith@redhat.com>
1731 * gdk-pixbuf/gdk-pixbuf.h, gdk-pixbuf/gdk-pixbuf-data.c: Make passed-in argument 'const'.
1733 2000-02-04 Michael Meeks <mmeeks@gnu.org>
1735 * gdk-pixbuf/io-gif.c (struct _GifContext): add x,y_offset.
1736 (gif_get_frame_info): put the offsets on the context.
1737 (gif_get_lzw): copy them off into the frame.
1738 (new_context): no change required; will 0 offsets by default.
1740 2000-01-28 Michael Meeks <michael@mejm2.dow.cam.ac.uk>
1742 * gdk-pixbuf/pixops/pixops.c (pixops_process): const + nasty
1745 * gdk-pixbuf/pixops/pixops.h: const.
1747 * gdk-pixbuf/gdk-pixbuf-util.c: const.
1749 * gdk-pixbuf/gdk-pixbuf-scale.c: const.
1751 * gdk-pixbuf/gdk-pixbuf.h: constify lots of things.
1753 2000-02-03 Federico Mena Quintero <federico@helixcode.com>
1755 * gdk-pixbuf/gdk-pixbuf-render.c
1756 (gdk_pixbuf_render_threshold_alpha): Added sanity check for width
1757 and height being >= 0. Also, do nothing if either of them is
1758 zero. Thanks to Ettore for pointing this out.
1759 (gdk_pixbuf_render_to_drawable): Likewise.
1760 (gdk_pixbuf_render_to_drawable_alpha): Likewise.
1762 2000-02-02 Federico Mena Quintero <federico@helixcode.com>
1764 * gdk-pixbuf/io-gif.c (gif_get_lzw): Removed debugging g_print.
1765 Thanks to John Sullivan <sullivan@eazel.com> for the patch.
1767 * gdk-pixbuf/testpixbuf-drawable.c (configure_cb): Get a new area
1768 of the screen when the window is resized. Thanks to David
1769 N. Welton <davidw@linuxcare.com> for pointing this out.
1770 Misc. cleanups to the rest of the file.
1772 2000-02-01 Federico Mena Quintero <federico@helixcode.com>
1774 * doc/tmpl/rendering.sgml: gnome_init() does not call
1775 gdk_rgb_init(), so don't mention that it does in the
1776 documentation. Thanks to Alexander Kruuse <kruuse@home.se> for
1779 2000-01-31 Havoc Pennington <hp@redhat.com>
1781 * gdk-pixbuf/Makefile.am (noinst_PROGRAMS): no testpixbuf-foo target
1783 Mon Jan 31 12:38:50 2000 Owen Taylor <otaylor@redhat.com>
1785 * gdk-pixbuf/pixops/pixops.c (scale_line): Fix from Peter
1786 Wainwright to fix 4a => 4a scaling.
1788 2000-01-29 Mark Crichton <crichton@gimp.org>
1790 * gdk-pixbuf-config: Oh dear, we weren't Telsa/Alan proof...
1791 put `libart-config --libs` in instead of -lart_lgpl.
1793 2000-01-22 Federico Mena Quintero <federico@helixcode.com>
1795 * gdk-pixbuf/io-pnm.c (pnm_read_raw_scanline): Return an error on
1797 (pnm_read_ascii_scanline): Initialize data and mask.
1799 * gdk-pixbuf/io-xpm.c (pixbuf_create_from_xpm): Initialize
1800 fallbackcolor to keep gcc happy.
1802 * configure.in: Bumped version number to 0.5.0.
1804 * gdk-pixbuf/pixops/timescale.c (dump_array): Removed unused variable.
1807 * gdk-pixbuf/pixops/pixops.c (pixops_composite_color_nearest): Put
1808 parentheses around + in a shift to remove a compiler warning.
1809 (pixops_process): Likewise.
1811 Patch from Ross Golder <rossigee@bigfoot.com> to create an RPM
1814 * configure.in: Added gdk-pixbuf.spec to AC_OUTPUT.
1816 * Makefile.am (EXTRA_DIST): Added gdk-pixbuf.spec.in
1818 2000-01-22 Federico Mena Quintero <federico@helixcode.com>
1820 * gdk-pixbuf/gnome-canvas-pixbuf.c (PixbufPrivate): Removed the
1821 x_set and y_set arguments. Now they are always on and start with
1822 defaults of 0.0 in units.
1823 (gnome_canvas_pixbuf_class_init): Likewise.
1824 (gnome_canvas_pixbuf_set_arg): Likewise.
1825 (gnome_canvas_pixbuf_get_arg): Likewise.
1826 (compute_viewport_affine): Likewise; always use the priv->x and
1829 * doc/tmpl/gnome-canvas-pixbuf.sgml: Modified to reflect the
1830 removal of the x_set/y_set arguments.
1832 2000-01-21 Federico Mena Quintero <federico@helixcode.com>
1834 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_ref): Return the same pixbuf
1835 as the input parameter.
1837 * gdk-pixbuf/gdk-pixbuf-animation.c (gdk_pixbuf_animation_ref):
1838 Return the same animation as the input parameter.
1840 2000-01-16 Elliot Lee <sopwith@redhat.com>
1842 * gdk-pixbuf/Makefile.am: Don't link against libgnomecanvaspixbuf.la
1844 2000-01-16 Federico Mena Quintero <federico@helixcode.com>
1846 * configure.in: Removed the broken --enable-canvas-pixbuf option.
1847 Added the stuff necessary to substitute the variables in
1848 gnomecanvaspixbufConf.sh.in.
1850 * gnomecanvaspixbufConf.sh.in: New gnome-config handler for the
1851 tiny gnomecanvaspixbuf library.
1853 * Makefile.am: Build gnomecanvaspixbufConf.sh.
1855 * gdk-pixbuf/Makefile.am: Create a libgnomecanvaspixbuf and only
1856 build it if gdk-pixbuf is being built outside of gnome-libs.
1858 * doc/gdk-pixbuf-sections.txt: Added gdk_pixbuf_render_pixmap_and_mask().
1860 * gdk-pixbuf/gdk-pixbuf-render.c
1861 (gdk_pixbuf_render_pixmap_and_mask): Renamed from
1862 gdk_pixbuf_render_pixmap(). Do not create the mask if it is not
1863 needed, and do not use a clipping mask when rendering the pixmap.
1864 Tweaked documentation a little.
1866 * HACKING: New file with hacking policies for the gdk-pixbuf
1869 * doc/Makefile.am (tmpl_sources): Added missing backslash.
1871 * doc/Makefile.am: Use gnomecanvaspixbuf in gnome-config when
1872 scanning for docstrings.
1874 * gdk-pixbuf/gdk-pixbuf-util.c (gdk_pixbuf_copy_area): Made sanity
1875 checks more stringent. Removed "gint" abominations. Made
1876 documentation consistent with the rest of the functions.
1878 * doc/gdk-pixbuf-sections.txt: Added gdk_pixbuf_copy_area() to the
1881 2000-01-14 Jonathan Blandford <jrb@redhat.com>
1883 * gdk-pixbuf/gdk-pixbuf-render.c (gdk_pixbuf_render_pixmap): new
1884 function to let you create a gdk_pixmap from a gdk_pixbuf.
1886 2000-01-11 Jacob Berkman <jacob@helixcode.com>
1888 * gdk-pixbuf/pixops/Makefile.am (INCLUDES): added
1889 $LIBART_CFLAGS to $INCLUDES
1891 2000-01-10 Elliot Lee <sopwith@redhat.com>
1893 * configure.in, gdk-pixbuf/Makefile.am: Build a libcanvas_pixbuf.
1895 * configure.in: Define version macros. Generate
1896 gdk-pixbuf/gdk-pixbuf-features.h. Always INSIDE_GNOME.
1898 * gdk-pixbuf/Makefile.am: Add gdk-pixbuf-features.h
1900 * gdk-pixbuf/gdk-pixbuf.c: Add definitions of
1901 gdk-pixbuf-features.h declarations, plus some initialization
1904 2000-01-05 Owen Taylor <otaylor@redhat.com>
1906 * gdk-pixbuf/pixops/pixops.c: Fixed src_channels/dest_channels
1907 confusion. (Again caught by Tomas Ogren's Purify)
1909 2000-01-07 Jonathan Blandford <jrb@redhat.com>
1911 * gdk-pixbuf/gdk-pixbuf-xform.c (gdk_pixbuf_rotate): comment out
1914 * gdk-pixbuf/gdk-pixbuf-io.c: Added progressive animation loading.
1915 * gdk-pixbuf/gdk-pixbuf-io.h: Added progressive animation loading.
1916 * gdk-pixbuf/gdk-pixbuf-loader.c: Added progressive animation
1918 * gdk-pixbuf/gdk-pixbuf-loader.h: Added progressive animation
1920 * gdk-pixbuf/io-gif.c (image_load_increment): I think the
1921 ref-counting mess is finally fixed. Added progressive animation
1923 (gif_get_lzw): remove memory_leak
1925 * doc/tmpl/gdk-pixbuf-loader.sgml: much longer long description
1928 2000-01-05 Owen Taylor <otaylor@redhat.com>
1930 * gdk-pixbuf/pixops/pixops.c (pixops_process): Fix computation of end of run indices.
1932 * gdk-pixbuf/pixops/pixops.c: Fix double increments when dest_channels == 4.
1933 (Pointed out by Tomas Ogren)
1935 2000-01-05 Mark Crichton <crichton@gimp.org>
1937 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_eat_header_write):
1938 Return 0 if gdk_pixbuf_load_loader_module returns FALSE.
1940 2000-01-05 Elliot Lee <sopwith@redhat.com>
1942 * gdk-pixbuf/pixops/Makefile.am: Link with -lm (to get 'ceil' function)
1944 2000-01-05 Owen Taylor <otaylor@redhat.com>
1946 * doc/Makefile.am doc/gdk-pixbuf-sections.txt
1947 doc/gdk-pixbuf.sgml doc/tmpl/scaling.sgml:
1948 Added scaling functions into gtk-doc framework.
1950 * gdk-pixbuf/gdk-pixbuf-scale.c: Documentation fixes.
1952 * gdk-pixbuf/testpixbuf-scale.c (expose_cb): Simplify a bit.
1954 * gdk-pixbuf/pixops/pixops.c (pixops_composite_color): Return
1955 immediately if scale_x or scale_y is 0.
1957 2000-01-05 Owen Taylor <otaylor@redhat.com>
1959 * gdk-pixbuf/pixops/timescale.c: quick fix for initializing
1960 arrays in benchmark.
1962 2000-01-05 Jonathan Blandford <jrb@redhat.com>
1964 * gdk-pixbuf/gdk-pixbuf-io.h: Change the order of the update func
1965 to make it more compatible with the rest of GTK. Added animation
1966 framework for progressive loading.
1968 * gdk-pixbuf/io-bmp.c (image_begin_load): Modified to handle new
1970 * gdk-pixbuf/io-ico.c (image_begin_load): ditto
1971 * gdk-pixbuf/io-png.c (image_begin_load): ditto
1972 * gdk-pixbuf/io-ras.c (image_begin_load): ditto
1973 * gdk-pixbuf/io-jpeg.c (image_begin_load): ditto
1974 * gdk-pixbuf/io-pnm.c (image_begin_load): ditto
1975 * gdk-pixbuf/io-tiff.c (image_begin_load): ditto
1976 * gdk-pixbuf/io-gif.c (image_begin_load): ditto
1978 2000-01-05 Owen Taylor <otaylor@redhat.com>
1980 * gdk-pixbuf/pixops/README: Added a README with a TODO
1981 and some explainations of the algorithms.
1983 * gdk-pixbuf/testpixbuf-scale.c: Set a background pixmap of None
1984 to reduce flashing when resizing.
1986 2000-01-05 Owen Taylor <otaylor@redhat.com>
1988 * gdk-pixbuf/pixops/: Directory full of pixel data scaling
1989 code that will eventually migrate into libart.
1991 * configure.in acconfig.h: Add checks for MMX compiler support
1993 * gdk-pixbuf/gdk-pixbuf.h gdk-pixbuf/gdk-pixbuf-scale.c:
1994 Nice wrapper routines for the code in pixops that operate
1995 on pixbufs instead of raw data.
1997 * gdk-pixbuf/testpixbuf-scale: Test program for scaling
2000 2000-01-05 Jonathan Blandford <jrb@redhat.com>
2002 * doc/tmpl/animation.sgml: Documentation changes.
2004 2000-01-01 Federico Mena Quintero <federico@helixcode.com>
2006 * gdk-pixbuf/gdk-pixbuf.h (GdkPixbufAnimation): Added reference
2007 counting to animations. A web browser may want to share a single
2008 copy of an animated GIF if it appears multiple times in a web
2011 * gdk-pixbuf/gdk-pixbuf-animation.c: New file. Moved the
2012 animation functions here.
2013 (gdk_pixbuf_animation_new_from_file): Prettified. Return a NULL
2014 animation if the loader does not support multiframe loading and
2015 the single-frame load returned NULL. Check that the filename is
2016 not NULL. Updated inline documentation.
2017 (gdk_pixbuf_animation_ref): New function.
2018 (gdk_pixbuf_animation_unref): New function.
2019 Removed gdk_pixbuf_animation_destroy() in favor of reference
2022 * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_new_from_file):
2023 Prettified. Made ref_count assertion more paranoid. Check that
2024 the filename is not NULL.
2025 (gdk_pixbuf_get_module): Use guchar * and guint for buffer and
2027 (gdk_pixbuf_new_from_xpm_data): Changed the "data" argument to
2030 * gdk-pixbuf/io-gif.c (image_load_animation): Create the animation
2031 with a reference count of 1.
2033 * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_SOURCES): Added
2034 gdk-pixbuf-animation.c.
2036 * doc/tmpl/animation.sgml: Populated. It is still missing a
2037 description of the overlay modes.
2039 * doc/gdk-pixbuf-sections.txt: Added the animation section. Moved
2040 the canvas item section to the end, as it will be moved later to
2043 * doc/gdk-pixbuf.sgml: Added the animation section.
2045 * doc/Makefile.am (tmpl_sources): Added tmpl/animation.sgml.
2047 1999-12-26 Peter Teichman <pat@gnu.org>
2049 * gdk-pixbuf/Makefile.am (libpixbuf_tiff_la_LIBADD): add
2050 $(LIBTIFF) to libpixbuf_tiff_la_LIBADD, proxying for mmarker.
2051 This closes bug #4676.
2053 1999-12-23 Havoc Pennington <hp@pobox.com>
2055 * gdk-pixbuf/io-gif.c (image_load): Stuff that should have been
2056 set to NULL here (specifically context->animation) was not being
2057 set to NULL. use g_new0() to alloc the struct.
2059 1999-12-20 Jonathan Blandford <jrb@redhat.com>
2061 * gdk-pixbuf/io-gif.c: finished work to make animated gifs load
2062 correctly. Progressive loading needs some work, but that all
2063 needs doing from the gdk-pixbuf-loader end, not here.
2065 1999-12-17 Jonathan Blandford <jrb@redhat.com>
2067 * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_animation_new_from_file):
2068 moved the file here. It seems natural to put this function here,
2069 as that's where the gdk_pixbuf_new_from_file function is, but it's
2070 still a little convoluted. The source files might be played with
2073 1999-12-14 Jonathan Blandford <jrb@redhat.com>
2075 * gdk-pixbuf/gdk-pixbuf-loader.c
2076 (gdk_pixbuf_loader_get_animation): Gets the animation from the
2079 1999-12-16 Federico Mena Quintero <federico@redhat.com>
2081 * doc/tmpl/rendering.sgml: Added notice about initializing GdkRGB
2082 before using the GdkPixbuf rendering functions. Thanks to Joe
2083 Shaw <joe@off.net> for pointing this out.
2085 1999-12-13 Federico Mena Quintero <federico@redhat.com>
2087 * gdk-pixbuf/gnome-canvas-pixbuf.c
2088 (gnome_canvas_pixbuf_class_init): Renamed arguments to
2089 width_in_pixels, height_in_pixels, x_in_pixels, y_in_pixels, for
2090 consistency with the new canvas.
2091 (PixbufPrivate): Do the same renaming in the structure fields, for
2094 * doc/tmpl/gnome-canvas-pixbuf.sgml: Updated for new argument names.
2096 1999-12-12 Federico Mena Quintero <federico@redhat.com>
2098 * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_LDFLAGS): Use a
2099 conditional to see whether to link $(GNOME_LIBS) or not.
2101 1999-12-10 Jonathan Blandford <jrb@redhat.com>
2103 * gdk-pixbuf/gdk-pixbuf-io.h: thinking about the new loading API.
2105 * gdk-pixbuf/gdk-pixbuf-drawable.c (gdk_pixbuf_get_from_drawable):
2106 make a warning go away.
2108 * gdk-pixbuf/gdk-pixbuf.h: added new prototypes for animations.
2110 * gdk-pixbuf/gdk-pixbuf-loader.h: added new prototypes for
2113 1999-12-09 Michael Zucchi <zucchi@zedzone.mmc.com.au>
2115 * gdk-pixbuf/gdk-pixbuf.h: Enable gdk_pixbuf_get_from_drawable()
2118 * gdk-pixbuf/gdk-pixbuf-drawable.c (gdk_pixbuf_get_from_drawable):
2119 Filled in body of function.
2120 (rgbconvert): Added GdkColormap parameter, and to all conversion
2122 (convert_real_slow): New function - should convert ANY visual/data
2123 format properly, but it aint fast. Used as a fallback when an
2124 optimised routine wont match.
2125 (rgbconvert): Do very specific tests on the data format to verify
2126 properly if the optimised version will do, otherwise use the
2127 fallback function for all other data formats.
2129 * gdk-pixbuf/Makefile.am: Re-enabled building of
2130 textpixbuf-drawable.
2132 * gdk-pixbuf/testpixbuf-drawable.c (main): Changed to use
2133 gdk_pixbuf_get_from_drawable().
2135 1999-12-08 Arjan van de Ven <arjan@fenrus.demon.nl>
2137 * gdk-pixbuf/gdk-pixbuf-drawable.c : Fixed the red/green/red
2138 bug on two occasions.
2139 * gdk-pixbuf/io-ras.c: Changed from the custom be32_to_cpu
2140 function to the generic glib one.
2142 1999-12-08 Federico Mena Quintero <federico@redhat.com>
2144 * gdk-pixbuf/gdk-pixbuf-drawable.c: Fix includes.
2145 (gdk_pixbuf_get_from_drawable): Implemented the zillion sanity
2146 checks and API definition. The body needs filling in and it needs
2147 to do the Right Thing(tm) for pixmaps plus the given colormap and
2148 windows and their own colormaps.
2150 * gdk-pixbuf/gdk-pixbuf.h: Added prototype for
2151 gdk_pixbuf_get_from_drawable(). Killed gdk-pixbuf-drawable.h.
2153 * gdk-pixbuf/Makefile.am: Re-added the gdk-pixbuf-drawable sources.
2155 * doc/tmpl/from-drawables.sgml: Populated.
2157 * doc/gdk-pixbuf.sgml: Added the from-drawables section.
2159 * doc/Makefile.am (tmpl_sources): Added tmpl/from-drawables.sgml.
2161 * doc/gdk-pixbuf-sections.txt: Added a section for getting pixbufs
2164 1999-12-07 Federico Mena Quintero <federico@redhat.com>
2166 * doc/tmpl/gnome-canvas-pixbuf.sgml: Added clarification about
2167 reference counting for GdkPixbuf structures.
2169 1999-12-07 Martin Baulig <martin@home-of-linux.org>
2171 * gdk-pixbuf/Makefile.am (testpixbuf_LDADD): Conditionally
2172 include $(GNOME_LIBS) here.
2174 1999-12-05 Arjan van de Ven <arjan@fenrus.demon.nl>
2176 Added missing "include <string.h>" to:
2177 * gdk-pixbuf/io-ras.c
2178 * gdk-pixbuf/io-bmp.c
2179 * gdk-pixbuf/io-ico.c
2181 1999-12-06 Federico Mena Quintero <federico@redhat.com>
2183 * gdk-pixbuf/gdk-pixbuf-io.c (file_formats): Patch from Arjan to
2186 1999-12-05 Federico Mena Quintero <federico@redhat.com>
2188 * gdk-pixbuf/Makefile.am (testpixbuf_LDADD): Add back
2189 $(GNOME_LIBS). This must compile outside of gnome-libs. If you
2190 want, send me a patch to do the conditional stuff properly.
2191 Otherwise, please read the GNOME Programming Guidelines,
2192 especially the "CVS policies" section.
2194 1999-12-05 Jaka Mocnik <jaka.mocnik@kiss.uni-lj.si>
2196 * gdk-pixbuf/Makefile.am: removed GNOME_LIBS from testpixbuf_LDADD.
2198 1999-12-05 Arjan van de Ven <arjan@fenrus.demon.nl>
2200 * gdk-pixbuf/io-ico.c: Bug in palet-size
2203 1999-12-04 Arjan van de Ven <arjan@fenrus.demon.nl>
2205 * gdk-pixbuf/io-bmp.c: Major cleanup, added support for
2206 32 bpp and 4 bpp (uncompressed) images, fixed 1bpp.
2208 * gdk-pixbuf/io-ras.c: Minor cleanup, ran through lclint
2210 * gdk-pixbuf/io-ico.c: Minor cleanup, fixed 1bpp icons,
2213 * gdk-pixbuf/gdk-pixbuf-io.c: Added detection of .CUR files
2214 (Windows Cursor files). These are identical to .ICO files,
2215 except for the signature and 2 extra fields for the hotspot.
2217 1999-12-03 Federico Mena Quintero <federico@redhat.com>
2219 * gdk-pixbuf/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_get_arg):
2220 Removed unused variable `item'.
2222 1999-12-03 Jonathan Blandford <jrb@redhat.com>
2224 * gdk-pixbuf/io-gif.c (gif_fill_in_lines): added a comment to
2225 explain this function better.
2227 1999-12-02 Federico Mena Quintero <federico@redhat.com>
2229 Source files moved from src/ to gdk-pixbuf/, to be consistent with
2232 * doc/Makefile.am: Modified for the new source directory.
2234 * configure.in: Likewise.
2236 * Makefile.am: Likewise.
2238 * autogen.sh: Likewise.
2240 * gdk-pixbuf/Makefile.am: Likewise.
2242 1999-12-02 Federico Mena Quintero <federico@redhat.com>
2244 * src/testpixbuf.c: #include <config.h>, and fix includes.
2246 * src/testpixbuf-drawable.c: #include <config.h>, and fix includes.
2248 * src/io-xpm.c: Fix includes.
2250 * src/io-tiff.c: Fix includes.
2252 * src/io-ras.c: Fix includes, and do not include more stuff than needed.
2254 * src/io-pnm.c: Fix inlcudes, and do not include more stuff than needed.
2256 * src/io-png.c: Fix includes.
2258 * src/io-ico.c: Fix includes, and do not include more stuff than needed.
2260 * src/io-gif.c: Fix includes, and do not include more stuff than needed.
2262 * src/io-bmp.c: Fix includes, and do not include more stuff than needed.
2264 * src/gnome-canvas-pixbuf.c: Fix includes.
2266 * src/gdk-pixbuf.c: Fix includes.
2268 * src/gdk-pixbuf-util.c: Fix includes.
2270 * src/gdk-pixbuf-render.c: Fix includes.
2272 * src/gdk-pixbuf-io.h: Fix includes.
2274 * src/gdk-pixbuf-drawable.c: Fix includes.
2276 * src/gdk-pixbuf-drawable.h: Use angle brackets for the gdk-pixbuf
2279 * src/gdk-pixbuf-data.c: Fix includes.
2281 * src/gdk-pixbuf-loader.c: #include <config.h>
2283 * src/gdk-pixbuf-loader.h: Use angle brackets for the gdk-pixbuf
2286 * src/Makefile.am: Commented out the gdk-pixbuf-drawable stuff,
2287 since it is not finished.
2289 * src/gdk-pixbuf.h: Removed unused transformation prototypes.
2291 * src/gdk-pixbuf-util.c: New file with utility and convenience
2292 functions for pixbufs.
2294 * src/Makefile.am (libgdk_pixbuf_la_SOURCES): Added gdk-pixbuf-util.c.
2296 * doc/gdk-pixbuf-sections.txt: Added section for utility functions.
2298 * doc/Makefile.am (tmpl_sources): Added tmpl/util.sgml.
2300 * doc/gdk-pixbuf.sgml: Added the utilities section.
2302 * doc/tmpl/util.sgml: Documentation for the utility functions.
2304 1999-11-29 Owen Taylor <otaylor@redhat.com>
2306 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
2307 Keep the mask around until after we draw ... since
2308 the GC changes aren't flushed to the X server until we
2309 draw, destroying it before that may result in BadPixmap
2312 1999-11-30 Havoc Pennington <hp@pobox.com>
2314 * configure.in: Add AM_CONDITIONAL for inside gnome-libs
2316 * src/Makefile.am: conditionalize GnomeCanvasPixbuf
2318 1999-11-29 Federico Mena Quintero <federico@redhat.com>
2320 * src/Makefile.am: Uncomment the GnomeCanvasPixbuf sources. This
2321 should be made conditional, not blindly commented out.
2323 1999-11-29 Jonathan Blandford <jrb@redhat.com>
2325 * src/Makefile.am (ICO_LIB): Added another loader from Arjan to
2326 handle .ico files. Cool.
2328 1999-11-24 Jonathan Blandford <jrb@redhat.com>
2330 * src/io-bmp.c (OneLine24): new patch from Arjan to handle
2333 1999-11-24 James Henstridge <james@daa.com.au>
2335 * configure.in (AC_OUTPUT): altered hack to place the symlink in the
2336 top builddir rather than src. This still builds fine, and does not
2337 get gtk-doc into an infinite loop when trying to find all the source
2340 1999-11-23 Jonathan Blandford <jrb@redhat.com>
2342 * Removed #PRAGMA } from headers. Also, make compile if you don't
2343 have it installed, already.
2345 1999-11-22 Federico Mena Quintero <federico@redhat.com>
2347 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_draw): Create the
2348 temporary buffer to the size of the interesction of the bounding
2349 box and the expose area, not the whole expose area. This speeds
2352 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_threshold_alpha): Do
2353 not paint black on the mask, since we already cleared it in a
2354 single gdk_draw_rectangle() operation.
2356 1999-11-22 Raja R Harinath <harinath@cs.umn.edu>
2358 * configure.in (GDK_PIXBUF_DIR): Fix for srcdir != builddir.
2360 1999-11-22 Havoc Pennington <hp@pobox.com>
2362 * src/Makefile.am (GDK_PIXBUF_LIBS): Patch from Paul Fisher
2363 <pnfisher@redhat.com> adds all -lgdk-pixbuf and all other
2364 dependencies to LIBADD variables for loadable modules. Necessary
2365 for a Java dynamic loading thing to be able to figure it out.
2367 1999-11-22 Havoc Pennington <hp@pobox.com>
2369 * src/io-png.c (image_load_increment): Call the update_area
2370 callback depending on the number of rows loaded in this increment.
2372 * src/testpixbuf.c (main): slow down the progressive load demo
2374 1999-11-16 Havoc Pennington <hp@pobox.com>
2376 * src/gdk-pixbuf-drawable.h: Get the quotes right on the #include
2378 1999-11-22 Jonathan Blandford <jrb@redhat.com>
2380 * configure.in (GDK_PIXBUF_DIR): make the symlink. Does not work
2381 for srcdir != buildir != . Beats me why; I can't figure it out.
2382 AC_OUTPUT_COMMANDS doesn't seem to let me substitute it correctly.
2384 1999-11-21 Jonathan Blandford <jrb@redhat.com>
2386 * src/gdk-pixbuf-io.c: added io-bmp from Arjan
2387 <arjan@fenrus.demon.nl>
2389 1999-11-20 Michael Zucchi <zucchi@zedzone.mmc.com.au>
2391 * src/gdk-pixbuf-drawable.c (gdk_pixbuf_from_drawable_core):
2392 Rework/reorder of the code. Each case has been separated into
2393 another function; its big but it should be quick.
2394 gdk_pixbuf_rgba_from_drawable() will now return a pixbuf with
2395 opaque alpha information. Not all depths/formats have been
2396 tested, but 8, 15/16 and 24 (alinged 32) should work ok.
2398 1999-11-17 Larry Ewing <lewing@gimp.org>
2400 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_bounds):
2401 implement the bounds method correctly.
2402 (compute_viewport_affine): compute the affine need to fit the
2403 image within the viewport given by the args.
2404 (compute_render_affine): call compute_viewport_affine.
2406 1999-11-16 Havoc Pennington <hp@pobox.com>
2408 * src/gdk-pixbuf-drawable.h: Use includes from the current
2409 directory, not the system directory.
2411 Mon Nov 15 17:18:28 1999 George Lebl <jirka@5z.com>
2413 * src/testpixbuf-drawable.c: use includes from the current directory
2414 rather then from the system include directory as gdk-pixbuf
2415 includes are not yet installed when this is compiled.
2417 1999-11-13 Cody Russell <bratsche@dfw.net>
2418 * src/testpixbuf-drawable.c: Added a test program for drawable
2421 * src/Makefile.am: Build testpixbuf-drawable.
2423 1999-11-12 Cody Russell <bratsche@dfw.net>
2425 * src/gdk-pixbuf-drawable.c: Merged in Michael Zucchi's changes.
2427 1999-11-10 Federico Mena Quintero <federico@redhat.com>
2429 * doc/tmpl/gdk-pixbuf-loader.sgml: Populated.
2431 * doc/gdk-pixbuf.signals: Put in the real names of signal
2434 * src/gdk-pixbuf-loader.c: Improved documentation comments.
2436 1999-11-10 Jonathan Blandford <jrb@redhat.com>
2438 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): emit the
2441 * src/io-ras.c (OneLineMapped_file): Now can handle indexing
2442 correctly. Patch from Arjan to do so.
2444 1999-11-10 Michael Fulbright <drmike@redhat.com>
2446 * src/io-pnm.c (pnm_ascii_read_scanline): Fixed loading of ASCII PNM
2449 * src/testpixbuf.c: Added final queued draw when done loading image.
2451 1999-11-10 Jonathan Blandford <jrb@redhat.com>
2453 * src/gdk-pixbuf-io.c (gdk_pixbuf_load_module): removed spurious
2456 1999-11-10 Federico Mena Quintero <federico@redhat.com>
2458 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): Added
2461 1999-11-09 Federico Mena Quintero <federico@redhat.com>
2463 * src/io-png.c: Fixed some incompatible pointer initializations.
2465 * src/io-jpeg.c (image_load_increment): Remove unused variable.
2467 1999-11-09 Michael Fulbright <drmike@redhat.com>
2469 * src/testpixbuf.c: Fixed it to use timeout to read from file
2470 for progressive loading. Set TBF_KBPS=n, where n is the number of
2471 kilobytes/second to simulate in downloading. n has to be an integer.
2473 * src/io-jpeg.c: Slight cosmetic cleanup.
2475 * src/io-pnm.c: Fixed raw PNM loading bug. Also discovered that ASCII
2476 PBM loading has a similar problem and will address tomorrow.
2478 1999-11-09 Havoc Pennington <hp@pobox.com>
2480 * src/Makefile.am (libgdk_pixbuf_la_SOURCES): build the
2481 gdk-pixbuf-drawable stuff.
2483 1999-11-09 Federico Mena Quintero <federico@redhat.com>
2485 * configure.in: Bumped version number to 0.4.
2487 1999-11-09 Michael Fulbright <drmike@redhat.com>
2489 * src/io-pnm.c : Finished progressive PNM loading code. Should handle
2490 all types of PNM files now.
2492 * src/io-jpeg.c (image_load_increment): Figured out problem with
2493 loading Progressive JPEG's progressively (say that 10 times fast).
2494 Currently for Progressive JPEG's the entire image is loaded before
2495 it is displayed. libjpeg supports a fancier mechanism which I may
2498 With these changes all JPEG formats appear to load properly for me.
2500 1999-11-08 Jonathan Blandford <jrb@redhat.com>
2502 * src/io-ras.c (image_load_increment): Final patch from Arjan.
2503 Seems to do progressive loading.
2505 1999-11-08 Michael Fulbright <drmike@redhat.com>
2507 * src/io-pnm.c image_load (): Fixed so we do not create a separate
2508 pixel buffer when reading in image - we reuse the pixel data in
2509 the GdkPixbuf structure instead.
2511 1999-11-08 Michael Fulbright <drmike@redhat.com>
2513 * src/io-pnm.c pnm_read_ascii_scanline (): Added support for
2514 ASCII PNM files. Note I haven't tested loaded ASCII PBM files because
2515 I can't seem to find a utility to convert into this format.
2516 Next is to add progressive loading support for the PNM format.
2518 1999-11-07 Federico Mena Quintero <federico@redhat.com>
2520 * doc/tmpl/gnome-canvas-pixbuf.sgml: Finished detailed explanation
2521 of the width, height, x, and y setting and pixels arguments.
2523 1999-11-05 Jonathan Blandford <jrb@redhat.com>
2525 * src/io-ras.c (image_load): third patch. Now it seems to load.
2527 * src/gdk-pixbuf-io.c: second patch Arjan van de Ven
2528 <arjan@fenrus.demon.nl> to autodetect/load the sunras files.
2530 * src/io-ras.c (image_load): new file from Arjan van de Ven
2531 <arjan@fenrus.demon.nl> to begin the ras loader.
2533 1999-11-05 Federico Mena Quintero <federico@redhat.com>
2535 * doc/gdk-pixbuf-sections.txt: Removed gdk-pixbuf-io, since it is
2536 for internal use only.
2538 * doc/gdk-pixbuf.sgml: Likewise.
2540 * doc/tmpl/gnome-canvas-pixbuf.sgml: Finished docs.
2542 1999-11-05 Michael Fulbright <drmike@redhat.com>
2544 * src/io-pnm.c: Implemented support for reading raw PBM/PGM/PPM
2545 files from a file. Next step is support for ASCII files, and
2546 then incremental loading.
2548 1999-11-04 Federico Mena Quintero <federico@redhat.com>
2550 * Makefile.am: Added doc to SUBDIRS.
2552 1999-11-04 Michael Fulbright <drmike@redhat.com>
2554 * src/io-jpeg.c: Prettied up code slightly.
2555 * src/io-pnm.c: Start of pnm loader (from file and progressively).
2556 Doesn't do much yet (will finish tomorrow).
2557 * src/gdk-pixbuf-io.c: Added pnm to structure of known types.
2559 1999-11-04 Federico Mena Quintero <federico@redhat.com>
2561 * doc/tmpl/rendering.sgml: Populated.
2563 * doc/Makefile.am: Added the template files.
2565 1999-11-04 Havoc Pennington <hp@pobox.com>
2567 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable): In
2568 docs, explain what a dither offset is for.
2569 (gdk_pixbuf_render_to_drawable_alpha): Explain why you would use
2570 this function vs. gdk_pixbuf_render_to_drawable().
2572 1999-11-04 Havoc Pennington <hp@pobox.com>
2574 * configure.in: Use libart-config correctly; find gnome-config
2575 separately. Fix GNOME_LIBS to be correct in "no gnome installed
2578 * src/Makefile.am: Link to GNOME_LIBS instead of a hardcoded
2581 Patch untested in the inside-gnome-libs case, I need to commit
2582 then check out to the gnome-libs I'm using.
2584 1999-11-04 Michael Fulbright <drmike@redhat.com>
2586 * src/io-jpeg.c (image_begin_load): Add update_func callback.
2587 * src/io-jpeg.c (image_load_increment): Call updated callback when
2588 new graphic data decoded.
2590 1999-11-04 Jonathan Blandford <jrb@redhat.com>
2592 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_update): handle the
2594 * src/io-png.c (image_begin_load): add a update_func callback.
2595 * src/io-gif.c (image_begin_load): add a update_func callback.
2596 (gif_get_lzw): added the update_func ability
2598 * src/io-tiff.c (image_begin_load): add a update_func callback.
2600 1999-11-04 Federico Mena Quintero <federico@redhat.com>
2602 * doc/tmpl/gdk-pixbuf.sgml: Populated.
2604 * doc/tmpl/refcounting.sgml: Populated.
2606 * doc/tmpl/file-loading.sgml: Populated.
2608 * src/gdk-pixbuf.c: Added documentation comments.
2610 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_file): Added
2611 documentation comments.
2613 * doc/: Finished integrating the documentation framework.
2615 1999-11-03 Federico Mena Quintero <federico@redhat.com>
2617 * configure.in: Removed libgif stuff now that we do not depend on it.
2618 Added the necessary cruft for gtk-doc.
2620 * src/Makefile.am: Unconditionally build the GIF loader.
2622 1999-11-03 Jonathan Blandford <jrb@redhat.com>
2624 * src/io-gif.c (gif_read): renamed ReadOK to gif_read.
2625 Added a lot of comments to the file.
2627 * src/Makefile.am (libpixbuf_gif_la_LIBADD): Remove dependency on
2630 1999-11-03 Michael Fulbright <drmike@redhat.com>
2632 * src/io-jpeg.c (image_load_increment): Further removal of
2633 bugginess in local buffering code. Handles grayscale jpegs
2636 * src/io-jpeg.c (image_load_stop): Was freeing local context
2637 for jpeg library before calling jpeg_decompres_finish ().
2639 1999-11-03 Jonathan Blandford <jrb@redhat.com>
2641 * src/io-gif.c (image_load_increment): now handle arbitrary buffer
2643 (gif_get_lzw): set the transparency to the right val.
2645 1999-11-03 Federico Mena Quintero <federico@redhat.com>
2647 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_init):
2648 Initiailize the x and y fields.
2649 (gnome_canvas_pixbuf_destroy): Queue a redraw upon destruction.
2650 (PixbufPrivate): Renamed need_size_update to need_xform_update.
2651 (recompute_bounding_box): Do not use temporary values.
2653 1999-11-03 Jonathan Blandford <jrb@redhat.com>
2655 * src/io-gif.c (set_gif_lzw_clear_code): new state. Fixes
2658 * src/gnome-canvas-pixbuf.c (recompute_bounding_box): remove
2659 unneeded x,y,h,w vars.
2661 1999-11-03 Larry Ewing <lewing@gimp.org>
2663 * src/gnome-canvas-pixbuf.c (compute_render_affine): adjust
2664 render_affine calculation for x,y offsets.
2665 (gnome_canvas_pixbuf_set_arg): add x,y args.
2666 (gnome_canvas_pixbuf_get_arg): add x,y args.
2667 (recompute_bounding_box): simply code using ArtDrect and the
2668 render_affine. Removed compute_xform_vectors as it was no longer
2671 1999-11-03 Federico Mena Quintero <federico@redhat.com>
2673 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_point): I'm a
2674 doofus. Return a distance, not a boolean, for opaque images.
2676 * src/gnome-canvas-pixbuf.c (recompute_bounding_box): Do proper
2677 rounding of bounding box coordinates.
2678 (gnome_canvas_pixbuf_bounds): Implemented the ::bounds() method.
2679 (gnome_canvas_pixbuf_draw): Use the correct alpha threshold value.
2681 1999-11-03 Jonathan Blandford <jrb@redhat.com>
2683 * src/io-gif.c (gif_prepare_lzw): s/lwz/lzw/g
2685 1999-11-03 Michael Fulbright <drmike@redhat.com>
2687 * src/io-jpg.c (image_load_increment): Fixed code which moved
2688 buffer around as new data comes in to work properly. JPEG progressive
2689 loading should be working now except for grayscale JPEG's, which I
2690 will look into next.
2692 1999-11-03 <sopwith@redhat.com>
2693 * src/testpixbuf.c: A GtkFunction needs to return a value for deterministic behaviour.
2694 Also put dot printing back in.
2696 1999-11-03 <jrb@redhat.com>
2698 * src/io-gif.c (gif_get_extension): Read 'til the next empty block
2701 1999-11-02 Cody Russell <bratsche@dfw.net>
2702 * src/gdk-pixbuf-drawable.c: Changed the behavior to return NULL
2703 if part of the requested image is offscreen, rather than clipping
2706 1999-11-02 Jonathan Blandford <jrb@redhat.com>
2708 * src/io-gif.c (gif_fill_in_lines): Fill in the gif's blank areas
2709 for interlacing and progressive loading.
2711 1999-11-02 Cody Russell <bratsche@dfw.net>
2712 * src/gdk-pixbuf-drawable.c (gdk_pixbuf_from_drawable_core): Now
2713 calls gdk_pixbuf_new_from_art_pixbuf() instead of gdk_pixbuf_new().
2715 1999-11-02 Jonathan Blandford <jrb@redhat.com>
2717 * src/io-gif.c (gif_main_loop): Now progressive gif loading works!
2718 It's a little slow though. )-:
2720 1999-11-02 Elliot Lee <sopwith@redhat.com>
2721 * src/gdk-pixbuf-loader.[ch], src/gdk-pixbuf-io.h: Make the arguments to the
2722 write/load_increment operations const-correct.
2724 1999-11-02 Federico Mena Quintero <federico@redhat.com>
2726 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_point):
2727 Implemented the ::point() method. We do a simple containment test
2728 instead of a full distance calculation since the canvas is going
2729 to change to that scheme, anyways.
2731 1999-11-02 Elliot Lee <sopwith@redhat.com>
2733 * src/testpixbuf.c: Allow using $TBF_READLEN to specify the size of the chunks
2734 that are read from the input file.
2736 1999-11-02 Larry Ewing <lewing@gimp.org>
2738 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_render): add aa
2740 (gnome_canvas_pixbuf_class_init): add gnome_canvas_pixbuf_render
2743 1999-11-02 Federico Mena Quintero <federico@redhat.com>
2745 * src/gnome-canvas-pixbuf.c (compute_render_affine): Moved the
2746 affine computation code from ::draw() to here, since it is needed
2747 by ::point() as well.
2749 1999-11-02 Elliot Lee <sopwith@redhat.com>
2751 * src/gdk-pixbuf-loader.c: Reorganize gdk_pixbuf_loader_write into
2752 three functions, and eliminate duplication of code from write()
2753 and close(). Also fix bug where the 128-byte header was being
2756 1999-11-01 Federico Mena Quintero <federico@redhat.com>
2757 * src/gnome-canvas-pixbuf.c (recompute_bounding_box): Fixed
2758 bounding box computation.
2760 1999-11-01 Federico Mena Quintero <federico@redhat.com>
2762 * src/gnome-canvas-pixbuf.c: Start of the pixbuf canvas item.
2763 Drawing affines seem to work. Bounding box is fubared. ::point()
2764 is not implemented. This is a work in progress.
2766 * src/Makefile.am: Added gnome-canvas-pixbuf.[ch] to the list of
2769 * configure.in: Sigh. We need to link in libgnomeui for the
2770 canvas stuff. This mess will disappear when gdk-pixbuf gets
2771 folded into gnome-libs.
2773 1999-10-30 Jonathan Blandford <jrb@redhat.com>
2775 * src/io-gif.c: Some more work. Now it generates a gdk_pixbuf of
2776 the right size, at a minimum, even if the image is squished and
2778 (ReadImage): lets get the offset right. This will let transparent
2781 1999-10-29 Michael Fulbright <drmike@redhat.com>
2783 * src/io-jpeg.c: image_load_increment(): Fixed bug when
2784 image width was not a multiple of 4 - always use the
2785 gdk_pixbuf rowstride to increment pointers!
2787 1999-10-29 Michael Fulbright <drmike@redhat.com>
2789 * src/io-jpeg.c: Added first cut at progressive jpeg loading.
2790 Currently does not handle either progressive jpeg files (jpeg
2791 files with multiple scans at different quality settings), but
2792 I plan on adding this support soon. These are fairly rare in
2793 my experience, so it shouldn't slow people down too much.
2794 Grayscale jpegs also don't work but that should be easy to fix.
2796 1999-10-29 Michael Fulbright <drmike@redhat.com>
2798 * src/testpixbuf.c: Added title to windows so you can identify
2799 progressive and file windows.
2801 1999-10-29 Michael Fulbright <drmike@redhat.com>
2803 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): Actually
2804 load the image handler when we determine the image type.
2806 * src/gdk-pixbuf-io.[ch] (gdk_pixbuf_load_module): Changed the
2807 previously static function load_image_handler () to
2808 a public function gdk_pixbuf_load_module (). It is needed in
2809 gdk-pixbuf-loader.c to load image handler modules. This function
2810 is different from gdk_pixbuf_get_module (), which only returns
2811 a reference to the required handler, because it actually loads
2812 the handler into memory. Both actions should possibly be combined
2813 in a convenience function since one w/o the other doesn't seem to
2816 1999-10-28 Jonathan Blandford <jrb@redhat.com>
2818 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): don't send a
2821 1999-10-28 Federico Mena Quintero <federico@redhat.com>
2823 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable): New
2824 function to render a portion of a pixbuf to a drawable. Ignores
2825 alpha information and takes in a GC.
2826 (gdk_pixbuf_render_to_drawable_alpha): New function to render a
2827 portion of a pixbuf to a drawable. It automatically creates a GC
2828 and a clipping mask for alpha pixbufs.
2830 1999-10-28 Jonathan Blandford <jrb@redhat.com>
2832 * src/gdk-pixbuf.h: turned convenience macros into convenience
2833 functions so some error checking could be added.
2835 * src/io-tiff.c (image_load_increment): started work on the tiff
2836 non-incremental loader.
2837 (image_begin_load): Finished the incremental loader.
2839 * src/io-gif.c (image_load_increment): started work on the gif
2842 * src/gdk-pixbuf-io.h: Changed ModuleType to GdkPixbufModule.
2844 1999-10-27 Federico Mena Quintero <federico@redhat.com>
2846 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_threshold_alpha): New
2847 function to threshold a pixbuf's alpha channel into a bitmap.
2849 * src/gdk-pixbuf.c (gdk_pixbuf_new): Fixed so that it will
2850 contemplate future extensions to ArtPixBuf's formats.
2852 * src/io-png.c (png_info_callback): Use the new API of gdk_pixbuf_new().
2854 * src/gdk-pixbuf.h (gdk_pixbuf_get_height): Added some convenience
2855 macros to fetch the ArtPixBuf's fields.
2857 1999-10-27 Havoc Pennington <hp@pobox.com>
2859 * src/testpixbuf.c (main): Display the progressive load
2861 * src/io-png.c (setup_png_transformations): Break transformation
2862 code into separate function
2863 (png_info_callback): Use setup_png_transformations
2865 1999-10-27 Havoc Pennington <hp@pobox.com>
2867 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): Check
2868 properly whether the XPM module has already been loaded
2869 (gdk_pixbuf_new_from_file): Check properly if loader module
2870 was already loaded (was checking if load symbol was present
2871 in order to decide whether to re-load; should check module !=
2872 NULL, then load != NULL)
2873 (image_handler_load): Check in present working directory,
2874 makes it easier to debug for now
2875 (file_formats): This array initializer was seriously on crack,
2876 was assigning a function pointer to a GModule*
2878 * src/testpixbuf.c (main): Change type of pixbuf_loader to GdkPixbufLoader*
2880 1999-10-27 Havoc Pennington <hp@pobox.com>
2882 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_finalize):
2883 Fix typo that prevented compilation
2884 (gdk_pixbuf_loader_destroy): ditto
2886 1999-10-27 Federico Mena Quintero <federico@redhat.com>
2888 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_new): Return a
2889 GdkPixbufLoader, not a GtkObject.
2890 (gtk_marshal_NONE__INT_INT_INT_INT): Made static.
2891 (gdk_pixbuf_loader_get_type): Documented.
2892 (gdk_pixbuf_loader_class_init): Initialize the parent class
2894 (gdk_pixbuf_loader_destroy): Added sanity checks. Call the parent
2895 class destroy function.
2896 (gdk_pixbuf_loader_new): Documented.
2897 (gdk_pixbuf_loader_finalize): Call the parent class finalize
2899 (gdk_pixbuf_loader_write): Use size_t for count.
2901 1999-10-27 Michael Fulbright <drmike@redhat.com>
2903 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_destroy): Fixed
2904 logic so we only try to close loader if it wasn't previously closed.
2906 1999-10-27 Michael Fulbright <drmike@redhat.com>
2908 * src/gdk-pixbuf-loader.c: Made sure image_loader struct member of
2909 pixbuf_loader properly initialized.
2911 * src/testpixbuf.c: Made sure we cleanup pixbuf_loader properly
2914 1999-10-26 Jonathan Blandford <jrb@redhat.com>
2916 * src/gdk-pixbuf-io.c (image_handler_load): load the vtable fully.
2918 * src/gdk-pixbuf-loader.c: Finished initial cut at the object.
2920 1999-10-26 Havoc Pennington <hp@pobox.com>
2922 * src/gdk-pixbuf-loader.h: fix signals
2924 * src/gdk-pixbuf-io.h: add new vtable fields
2927 1999-10-26 Jonathan Blandford <jrb@redhat.com>
2929 * src/gdk-pixbuf-loader.h: New Class. Beginning of progrssive
2932 1999-10-25 Federico Mena Quintero <federico@redhat.com>
2934 * configure.in (CFLAGS): Patch from Uwe Koloska
2935 <koloska@Rcs1.urz.tu-dresden.de> to fix a stupid typo of mine.
2937 1999-10-22 Havoc Pennington <hp@pobox.com>
2939 * src/io-xpm.c (mem_buffer): Clean up stupid
2940 increment-inside-array-dereference thing
2942 * src/testpixbuf.c: Add XPM data tests.
2944 * src/io-xpm.c: Make the XPM data buffer const, fix const
2945 correctness throughout the code.
2947 1999-10-22 Havoc Pennington <hp@pobox.com>
2949 * src/gdk-pixbuf.h: Export gdk_pixbuf_new_from_xpm_data()
2951 1999-10-22 Havoc Pennington <hp@pobox.com>
2953 * src/io-xpm.c (image_load_xpm_data): Export this symbol for
2954 loading an XPM from memory.
2956 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): New
2957 function, loads pixbuf from xpm data
2958 (image_handler_load): Add g_return_if_fail() to ensure the same
2959 module isn't loaded twice. Add g_module_symbol() to scan for XPM
2962 1999-10-22 Federico Mena Quintero <federico@redhat.com>
2964 * src/io-png.c (image_load): Patch from Kristian Hogsberg
2965 Kristensen <hogsberg@daimi.au.dk> to avoid allocating extra row
2966 buffers; the rows can be read in directly into the main pixel
2969 1999-10-20 Federico Mena Quintero <federico@redhat.com>
2971 * src/gdk-pixbuf-io.c (image_handler_load): Free path.
2973 1999-10-20 Federico Mena Quintero <federico@redhat.com>
2975 * configure.in: Bumped version number to 0.3.
2977 * src/Makefile.am (lbgdk_pixbuf_la_LDFLAGS): Added a libtool
2978 version number for the library.
2980 1999-10-20 Federico Mena Quintero <federico@redhat.com>
2982 * src/gdk-pixbuf.h (GdkPixbuf): Removed the unref_fn field. Now
2983 all memory management of the buffer is done by libart.
2985 * src/gdk-pixbuf.c (gdk_pixbuf_unref): Do destruction here.
2986 Removed gdk_pixbuf_destroy, gdk_pixbuf_duplicate.
2988 * src/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Implemented in
2989 terms of the libart functions. Removed the old code.
2991 * src/gdk-pixbuf-io.c (image_handler_load): Removed the save
2992 symbols. Saving will not be implemented in GdkPixbuf.
2994 * src/io-gif.c: Removed the saving stub.
2995 (image_load): Fixed memory management to fail gracefully if we run
2996 out of memory while loading the image. Close the gif file when we
2997 are done. This still needs more error handling for the DGif
3000 * src/io-jpeg.c (image_load): Some robustness fixes.
3002 * src/io-png.c: Removed the saving stuff.
3003 (image_load): Some memory management fixes.
3005 * src/io-tiff.c (image_load): Ditto.
3007 * src/io-xpm.c (pixbuf_create_from_xpm): Ditto.
3009 1999-10-18 Havoc Pennington <hp@pobox.com>
3011 * subautogen.sh: New name for macros/autogen.sh
3013 * autogen.sh: use subautogen.sh
3015 1999-10-18 Federico Mena Quintero <federico@redhat.com>
3017 * src/*: Reindented to use the GNOME Indentation. Renamed
3018 GdkPixBuf to GdkPixbuf, for consistency with the function names
3019 (and it is also easier to type) :-)
3021 1999-10-18 Havoc Pennington <hp@pobox.com>
3023 * configure.in: Use AM_PATH_GLIB instead of glib-config directly
3025 * src/Makefile.am: Re-enable testpixbuf with GTK_CFLAGS/GTK_LIBS
3027 1999-10-18 Havoc Pennington <hp@pobox.com>
3029 * Makefile.am (SUBDIRS): Remove "macros"
3031 * configure.in: Don't use GNOME_INIT, handle case where we are
3032 inside gnome-libs. AM_PATH_GTK for the GIF test
3034 * src/Makefile.am: Change flags to work without libgnomeui,
3035 comment out testpixbuf for now
3037 1999-10-18 Federico Mena Quintero <federico@redhat.com>
3039 * configure.in: Use $GTK_LIBS as the extra libs when checking for
3040 libgif/libungif, as they need the X libraries. Fixes bug #2472.
3042 1999-10-10 Cody Russell <bratsche@dfw.net>
3043 * src/gdk-pixbuf-drawable.c: core function now determines whether
3044 the requested geometry is on screen or not, and if some is not
3045 then the request is clamped to geometry that is on the screen.
3047 Changed 'pixbuf' to 'art_pixbuf' in core function.
3049 1999-10-08 Michael Fulbright <drmike@redhat.com>
3051 * src/gdk-pixbuf-data.c: Added to load rgb data from const data.
3053 * src/testpifbuf: Changed test program to display cdrom from rgb data
3054 if no filename given to test program.
3056 1999-10-07 Cody Russell <bratsche@dfw.net>
3057 * src/gdk-pixbuf-drawable.[ch]: Added. (Actually, Miguel committed
3058 them, but I wrote them).
3060 * src/gdk-pixbuf-drawable.h: Added a missing ; so things will now
3063 * src/Makefile.am: Added gdk-pixbuf-drawable.[ch] to
3064 libgdk_pixbuf_la_SOURCES and libgdk_pixbufinclude_HEADERS.
3066 * src/gdk-pixbuf-drawable.c: Added #include "gdk-pixbuf-drawable.h"
3069 * src/gdk-pixbuf-drawable.[ch]: Changed functions to return
3070 GdkPixBuf* instead of ArtPixBuf*.
3072 1999-09-22 Michael Meeks <michael@nuclecu.unam.mx>
3074 * src/gdk-pixbuf.c (gdk_pixbuf_new): created.
3075 (gdk_pixbuf_scale): use gdk_pixbuf_new + return a new scaled image.
3077 * src/gdk-pixbuf.h (struct _GdkPixBuf): Re-organise struct, + add
3078 GdkPixBufUnrefFunc + gdk_pixbuf_new.
3080 * src/io-jpeg.c (image_load): clean to use gdk_pixbuf_new.
3082 * src/io-xpm.c (_pixbuf_create_from_xpm): ditto.
3084 * src/io-tiff.c (image_load): ditto + fix leak
3086 * src/io-png.c (image_load): ditto + add more exit points; monitor.png
3087 crashes this module ( add warning :-)
3089 * src/io-bmp.c (image_load): ditto.
3091 * src/io-gif.c (image_load): ditto.
3093 1999-09-18 Michael Meeks <michael@nuclecu.unam.mx>
3095 * src/gdk-pixbuf.c (gdk_pixbuf_scale): Hack rgba support in so
3096 it doesn't crash scaling with alpha.
3098 1999-09-17 Federico Mena Quintero <federico@redhat.com>
3100 * src/io-bmp.c (image_load): Set the initial ref_count to 1.
3102 * src/io-gif.c (image_load): Likewise.
3104 * src/io-jpeg.c (image_load): Likewise.
3106 * src/io-png.c (image_load): Likewise.
3108 * src/io-tiff.c (image_load): Likewise.
3110 * src/io-xpm.c (_pixbuf_create_from_xpm): Likewise.
3112 * src/gdk-pixbuf-io.c (gdk_pixbuf_load_image): Added an assertion
3113 for the ref_count to be != 0.
3115 * src/gdk-pixbuf.c (gdk_pixbuf_ref): Be more paranoid with sanity
3117 (gdk_pixbuf_unref): Fix incorrect sanity check and comparison.
3119 1999-08-09 Federico Mena Quintero <federico@nuclecu.unam.mx>
3121 * src/io-png.c (image_save): Fixed compiler warnings. Fixed write
3122 to unallocated memory (row_ptr), and fixed its type as well. Take
3123 into account the ArtPixbuf's rowstride when assigning the row
3126 * src/gdk-pixbuf.c: Fixup includes.
3128 * src/gdk-pixbuf-io.c: Likewise.
3130 Sat Jul 31 19:19:47 CEST 1999
3132 * src/gdk-pixbuf-io.c:
3133 * src/io-png.c: Fixed two obvious C syntax bugs
3135 1999-07-29 Mark Crichton <crichton@gimp.org>
3137 * src/io-png.c (image_save): Added PNG saving function
3139 * src/gdk-pixbuf-io.c: Changed image_save function format. Now it's
3140 image_save(GdkPixBuf *p, FILE *f, ...)
3143 1999-07-26 Michael Zucchi <mzucchi@denr.sa.gov.au>
3145 * src/Makefile.am (*_LIB): Only build the relevant loaders which
3146 require extra libraries if we actually have those libraries.
3148 1999-07-23 Richard Hestilow <hestgray@ionet.net>
3150 * src/gdk-pixbuf.h: Include glib.h as it uses g* datatypes
3151 * gdk_pixbufConf.sh.in: Added for gnome-config
3153 * configure.in: Modified to generate gdk_pixbufConf.sh
3155 1999-07-20 Mark Crichton <crichton@gimp.org>
3157 * src/gdk-pixbuf.c (gdk_pixbuf_rotate): Fixed rotation. Now a bbox
3158 calculation needs to be done.
3160 1999-07-18 Larry Ewing <lewing@gimp.org>
3165 * src/io-jpeg.c: Fix a few memory leaks in the, most of them in
3166 error cases but one or two in the common case. There are probably
3167 a few small ones left.
3169 1999-07-18 Mark Crichton <crichton@gimp.org>
3171 * configure.in: removed version.h.
3173 * src/gdk-pixbuf-io.c (pixbuf_check_tiff): Minor readability
3176 1999-07-17 Mark Crichton <crichton@gimp.org>
3178 * src/gdk-pixbuf.c: Removed gdk_pixbuf_free, redundant code.
3179 (gdk_pixbuf_rotate): Added pixbuf rotation code.
3180 (gdk_pixbuf_scale): Changed // comments to /* */
3182 * src/gdk-pixbuf.h (gdk_pixbuf_destroy): Added gdk_pixbuf_destroy
3185 1999-07-16 Larry Ewing <lewing@gimp.org>
3187 * src/testpixbuf.c (expose_func): reverted the expose everything
3188 changes, I'm not sure why these went in.
3189 (config_func): bring this up to date with the new pixbuf_scale
3192 * src/gdk-pixbuf-io.c: added a couple of warnings to the module
3193 loading code so that poeple can diagnose problems better.
3195 * src/gdk-pixbuf.c (gdk_pixbux_scale): fix the borkedness, also it
3196 no longer allocates a new pixbuf, which make things nicer for the
3197 rest of the code. Unfortunately there is still a problem with
3198 scaling rgba images.
3200 1999-07-16 Mark Crichton <crichton@gimp.org>
3202 * src/testpixbuf.c (config_func): ConfigureEvent handler. This
3203 calls gdk_pixbuf_scale. However, something is not working.
3204 N.B.: current pixmap is now stored in user_data with a key of
3207 * src/gdk-pixbuf.c (gdk_pixbuf_scale): Implemented scaling function.
3208 Something is still borked, however.
3210 1999-07-15 Larry Ewing <lewing@gimp.org>
3212 * src/io-jpeg.c (image_load): add raph@gimp.org's fix to the jpeg
3215 * src/testpixbuf.c (main): fix up the file routines a little so
3216 that you can load multiple files given the file names
3218 1999-07-14 Larry Ewing <lewing@gimp.org>
3220 * src/testpixbuf.c (expose_func): added an almost proper expose
3221 handler for testpixbuf
3223 1999-07-13 Mark Crichton <crichton@gimp.org>
3225 * configure.in: Fixed GIF check. Replaced " with '
3226 * src/gdk-pixbuf.c: More (minor) work on gdk_pixbuf_scale
3228 1999-07-13 Mark Crichton <crichton@gimp.org>
3230 * configure.in: I am a bonehead. Added gif-lib check.