1 2001-10-16 Matthias Clasen <matthiasc@poet.de>
3 * gdk-pixdata.c, gdk-pixdata.h: Documentation.
5 * gdk-pixbuf-csource.1: Spelling fixes.
7 Wed Oct 10 11:52:17 2001 Owen Taylor <otaylor@redhat.com>
9 * gdk-pixdata.c gdk-pixbuf.h: Get rid of
10 GDK_PIXBUF_ERROR_HEADER/PIXEL_CORRUPT and use CORRUPT_IMAGE.
11 Get rid fo GD_PIXBUF_ERROR_UNKNOWN_FORMAT and use the
12 existing UKNOWN_TYPE error. (#58308)
14 * gdk-pixbuf.h, gdk-pixdata.c: Rename gdk_pixbuf_new_from_stream()
15 back to gdk_pixbuf_new_from_inline(). Rework docs to try
16 and be helpful for the common case. (#58308)
18 2001-10-05 Sven Neumann <sven@gimp.org>
20 * gdk-pixbuf/gdk-pixbuf-io.c
21 * gdk-pixbuf/gdk-pixbuf-private.h
22 * gdk-pixbuf/gdk-pixbuf.c
23 * gdk-pixbuf/gdk-pixbuf.h
24 * gdk-pixbuf/io-jpeg.c
25 * gdk-pixbuf/io-png.c: changed GDK_PIXBUF_ERROR_BAD_OPTION_VALUE to
26 GDK_PIXBUF_ERROR_BAD_OPTION to we can use it for bad keys too. Added
27 new public API gdk_pixbuf_get_option() to retrieve key/value pairs
28 set by an image loader. Added support for saving and reading PNG tEXt
31 Tue Oct 2 11:29:50 2001 Owen Taylor <otaylor@redhat.com>
33 * gdk-pixdata.c (gdk_pixdata_to_csource): Fix indentation
34 use a macro to make code a bit more readable.
36 2001-10-02 Sven Neumann <sven@gimp.org>
38 * gdk-pixdata.c: g_string_printfa => g_string_append_printf.
40 Wed Sep 26 18:08:19 2001 Owen Taylor <otaylor@redhat.com>
42 * Makefile.am (s-enum-types-h): Fix a typo in the include
43 guards. (#61254, Skip Montaro)
45 2001-09-21 Matthias Clasen <matthiasc@poet.de>
47 * io-xpm.c (xpm_extract_color): Rewritten to handle
48 xpm colormap entries more thoroughly. (#59939)
50 2001-09-21 Hans Breuer <hans@breuer.org>
52 * gdk-pixbuf.def : updated externals
54 * makefile.msc : generate gdk-pixbuf-enum-types.[hc]
56 Thu Sep 20 17:22:48 2001 Owen Taylor <otaylor@redhat.com>
58 * io-tiff.c (gdk_pixbuf__tiff_image_load): On OSF, apparently fseek()
59 works in some on-demand way, so the fseek gdk_pixbuf_new_from_file() doesn't
60 work here since we are using the raw file descriptor. So, we call lseek()
61 on the fileno(f) before using it. (#60840).
63 2001-09-20 James Henstridge <james@daa.com.au>
65 * Makefile.am (gdk-pixbuf-enum-types.c): same change as in pango,
66 so that flags types are registered as flags rather than enums (not
67 that there are any flags here at the moment).
69 Wed Sep 19 00:28:24 2001 Owen Taylor <otaylor@redhat.com>
71 * Makefile.am (gdk_pixbuf_headers): Don't include
72 gkd-pixbuf-features.h here since is in builddir
73 and confuses autogen rules.
75 * Makefile.am: Don't += variables before they have values,
76 automake-1.5 doesn't like it.
78 * Makefile.am: Fix srcdir != builddir for gdk-pixbuf-enum-types.c.
80 * Makefile.am: The whitespace strikes back.
82 2001-09-17 Matt Wilson <msw@redhat.com>
84 * Makefile.am (libpixbufloader_xbm_la_LDFLAGS): removed duplicate
85 LDFLAGS definition, use the -avoid-version one.
86 (libpixbufloader_tga_la_LDFLAGS): likewise
88 Mon Sep 17 11:49:02 2001 Owen Taylor <otaylor@redhat.com>
90 * pixops/*: Mirror GdkInterpType to PixopsInterpType
91 to avoid including gdk-pixbuf headers.
93 2001-09-16 James Henstridge <james@daa.com.au>
95 * .cvsignore: add generated files to ignore list.
97 * gdk-pixbuf.h: include gdk-pixbuf-enum-types.h
99 * Makefile.am: add rules to build gdk-pixbuf-enum-types.[ch]
101 Fri Sep 14 23:22:12 2001 Matthias Clasen <matthiasc@poet.de>
103 * io-pnm.c (pnm_read_header): Use GDK_PIXBUF_ERROR_CORRUPT_IMAGE,
104 not GDK_PIXBUF_ERROR_HEADER_CORRUPT. (#58308)
106 Fri Sep 14 22:53:45 2001 Matthias Clasen <matthiasc@poet.de>
108 * io-jpeg.c (gdk_pixbuf__jpeg_image_begin_load): Handle
109 out-of-memory situation better.
111 * io-pnm.c: Robustness fixes for pnm loader
113 * io-gif.c: Make gif loader survive TEST_RANDOMLY_MODIFY
115 * io-xpm.c (parse_color): detect very long color strings
117 All of the above from Matthias Clasen <matthiasc@poet.de>,
118 the remaining from Soeren Sandmann <sandmann@daimi.au.dk>.
120 * test-images.h: add tests:
121 - four valid ppm's, eight invalid (matthiasc@poet.de)
122 - one invalid xpm (matthiasc@poet.de)
123 - one valid tga, one invalid (sandmann@daimi.au.dk)
124 - one invalid tiff (sandmann@daimi.au.dk
126 * test-loaders.c: enable tests for ppm, png, gif, tga, tiff, xpm
128 * io-tiff.c (gdk_pixbuf__tiff_image_stop_load): TIFFClientOpen can
129 fail - detect it when it happens
131 * io-tga.c (gdk_pixbuf__tga_load_increment): Fail if there is too
134 * gdk-pixbuf-io.c: moved wbmb check after ico check to avoid false
137 Fri Sep 14 00:30:48 2001 Tim Janik <timj@gtk.org>
139 * Makefile.am: don't used BUILT_SOURCES to build marshal
140 files, as in conjunction with stamp files, this can
141 lead to endless rebuilding loops.
143 Tue Sep 4 00:22:07 2001 Owen Taylor <otaylor@redhat.com>
145 * Makefile.am: Fix EXTRA_DIST for gdk-pixbuf-csource.1
147 Tue Sep 4 03:09:52 2001 Tim Janik <timj@gtk.org>
149 * gdk-pixbuf-csource.1: new file, manual page for
150 the publically installed gdk-pixbuf-csource utility.
152 Thu Aug 30 08:30:03 2001 Matthias Clasen <matthiasc@poet.de>
154 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Propagate
155 errors from gdk_pixbuf_loader_load_module.
157 Thu Aug 30 08:27:37 2001 Matthias Clasen <matthiasc@poet.de>
159 * io-png.c (png_row_callback): Check that row_num is valid.
161 Tue Aug 28 21:05:26 2001 Matthias Clasen <matthiasc@poet.de>
163 * io-bmp.c (OneLine): Emit area_updated signal with proper
164 area information. (#52002)
166 Tue Aug 28 20:03:43 2001 Matthias Clasen <matthiasc@poet.de>
168 * test-loaders.c (test_loader): Catch errors at close time.
169 * test-loaders.c (main): Remove C++ comments.
171 2001-08-21 Matthias Clasen <matthiasc@poet.de>
173 * Makefile.am, gdk-pixbuf-io.c, pixbufloader_tga.def,
174 io-tga.c: Add tga loader, patch by Nicola Girardi. (#56067)
176 2001-08-20 Matthias Clasen <matthiasc@poet.de>
178 * test-images.h, test-loaders.c: Add ico and wbmp tests.
179 * io-jpeg.c (gdk_pixbuf__jpeg_image_save): Fail with a suitable
180 error if buffer allocation fails.
181 * io-ico.c: Make .ICO loader more robust.
182 All of these are due to sandmann@daimi.au.dk (#50187)
184 2001-08-19 Sven Neumann <sven@gimp.org>
186 * pixops/pixops.c: applied some simple but effective optimizations
187 to pixops_composite_nearest() and pixops_composite_color_nearest().
189 2001-08-07 Sven Neumann <sven@gimp.org>
191 * gdk-pixbuf.c (gdk_pixbuf_fill): a comment asked to optimize this
192 function, so that's what I did.
194 2001-08-06 Kjartan Maraas <kmaraas@gnome.org>
196 * gdk-pixdata.c: Fix a typo.
198 2001-07-30 Hans Breuer <hans@breuer.org>
200 * pixops/makefile.msc : new file
201 * makefile.msc : use it to complete the build
203 2001-07-20 Hans Breuer <hans@breuer.org>
205 * gdk-pixdata.c : don't 'g_tohl (*istream++)', but move
206 pointer increment out of the macro, because at least one
207 compiler (msvc 5.0) gets confused otherwise (applies the
210 * gdk_pixbuf.def : updated exports
212 * makefile.msc : reflect gdk-pixbuf-csource changes
214 2001-07-17 Darin Adler <darin@bentspoon.com>
216 * gdk-pixbuf-csource.c: Add missing <stdlib.h> include.
217 * io-png.c: (setup_png_transformations): Add ifdef so we compile
218 without warnings with G_DISABLE_CHECKS on.
219 * io-pnm.c: (gdk_pixbuf__pnm_image_load_increment): Add a missing
221 * io-wbmp.c: (getin), (get_mbi): Add a missing const.
222 * io-xbm.c: (gdk_pixbuf__xbm_image_load_real): Get rid of some
223 unused locals and add an initial value to quiet the compiler's
224 unintialized variable warning.
225 * pixops/pixops.c: Put an ifdef around some dead code.
227 Thu Jul 5 10:17:15 2001 Owen Taylor <otaylor@redhat.com>
229 * pixops/Makefile.am (noinst_LTLIBRARIES): Switch
230 over to the new include flags AC_SUBST(). (Problem
231 pointed out by Mikael Hermansson.)
233 2001-06-29 Havoc Pennington <hp@redhat.com>
235 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): fix for
238 Thu Jun 28 21:54:19 2001 Owen Taylor <otaylor@redhat.com>
240 * make-inline-pixbuf.c test-gdk-pixbuf.c test-loaders.c
241 gdk-pixbuf-csource.c: Fix args to g_type_init ().
243 2001-06-28 Havoc Pennington <hp@pobox.com>
245 * gdk-pixdata.c: <string.h>
247 * gdk-pixbuf-io.c (get_libdir): fix typo in dll name (aren't we
248 also leaking memory here from g_strdup_printf?)
250 Tue Jun 26 09:48:02 2001 Tim Janik <timj@gtk.org>
252 * Makefile.am (noinst_PROGRAMS): get rid of make-inline-pixbuf
254 * gdk-pixbuf-data.[hc]: provide gdk_pixbuf_new_from_stream()
255 instead from gdk_pixbuf_new_from_inline().
257 * gdk-pixdata.[hc]: auxillary GdkPixdata structure, public
258 installed API for applications that need to serialize/deserialize
259 on their own (gimp, BEAST).
261 * gdk-pixbuf/gdk-pixbuf-csource.c: provide publically installed
262 program that can dump images in CSource format and Pixbuf
263 stream format. supports RLE encoding, MACRO formatting etc...
266 Mon Jun 25 00:28:11 2001 Owen Taylor <otaylor@redhat.com>
268 * Makefile.am: Actually update timestamps, so rules don't
271 2001-06-11 Havoc Pennington <hp@redhat.com>
273 * Makefile.am (stamp-gdk-pixbuf-marshal.c): glib_genmarshal
274 already includes top_builddir
276 2001-06-08 Havoc Pennington <hp@redhat.com>
278 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_load_module): remove
279 bogus g_return_if_fail
281 * io-gif.c (gif_get_lzw): if delay time is 0 or smaller than
282 likely timeout resolution, set it to an arbitrarily-chosen short
284 Fixes bug #55953 from warmenhoven@yahoo.com
286 2001-06-07 Havoc Pennington <hp@redhat.com>
288 * Makefile.am: use Owen's new way of doing stampfiles/generated
291 2001-06-07 Havoc Pennington <hp@redhat.com>
293 * Makefile.am (gdk-pixbuf-marshal.c): fix up the glib-genmarshal path
295 2001-06-05 Havoc Pennington <hp@redhat.com>
297 * test-loaders.c (main): use putenv not setenv, reported by
300 2001-05-08 Havoc Pennington <hp@redhat.com>
302 * gdk-pixbuf-util.c (gdk_pixbuf_add_alpha): docs fixup,
303 and fix behavior to still subst color if the original image
306 2001-06-04 Havoc Pennington <hp@redhat.com>
308 * io-pnm.c (pnm_skip_whitespace): patch from Szekeres Istvan,
311 2001-06-01 Havoc Pennington <hp@redhat.com>
313 Apply patch from sandmann@daimi.au.dk, with some tweaks.
314 Makes things a bit more robust, and adds test-loaders.c
315 which is good for finding further robustness bugs to fix.
317 * io-tiff.c: Try to work around libtiff suckiness a bit;
318 put a giant thread lock on the whole loader,
319 paranoically check both whether error handlers were called and
320 also whether functions return false. Handle case where width or
321 height is 0. Various cleanups.
323 * io-png.c (gdk_pixbuf__png_image_stop_load): only unref pixbuf
325 (png_error_callback): apparently libpng expects you to longjmp out
328 * io-gif.c (struct _GifContext): remove unused "pixbuf" field
329 (lzw_read_byte): change "Mail jrb if this fails" g_warning
331 (gif_get_lzw): check for out-of-memory
332 (gif_prepare_lzw): catch/report an error
333 (new_context): use try_malloc, since GifContext is nearly 70K
334 (gdk_pixbuf__gif_image_load_increment): set context->buf to NULL
335 so we don't crash later.
337 * Makefile.am: Add test-loaders
339 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): handle context ==
342 2001-05-29 Darin Adler <darin@eazel.com>
344 * gdk-pixbuf.h: Fix prototype to use "(void)" instead of "()".
346 Mon May 28 14:21:35 2001 Jonathan Blandford <jrb@redhat.com>
348 * io-bmp.c: Patch from Helmethead <hoshem@mel.comcen.com.au> to
349 fix up bmp decoder to:
350 - adds 16 bpp bmp support (bug #53884)
351 - adds OS/2 1.x format bmp support (bug #54964)
352 - adds 4 bpp RLE compressed bmp support
353 - adds 1 bpp colormap support
354 - fixes negative height (top down) bmp support
356 2001-05-25 Hans Breuer <hans@breuer.org>
358 * gdk_pixbuf.def : reflect Havoc's recent api change
360 Sun May 20 12:53:49 2001 Owen Taylor <otaylor@redhat.com>
362 * Makefile.am (libgdk_pixbuf_1_3_la_LDFLAGS): Remove an
365 Sun May 13 11:59:11 2001 Owen Taylor <otaylor@redhat.com>
367 * Makefile.am: Make modules depend on libgdk_pixbuf.la.
369 2001-05-04 Havoc Pennington <hp@redhat.com>
371 * pixops/pixops.c (pixops_process): merge fix from stable: Patch
372 from hoshem@mel.comcen.com.au to fix nonzero X offsets. Fixes
375 * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest): merge
376 from stable: Patch from OKADA Mitsuru <m-okada@fjb.co.jp> to fix
377 confusion of using "src" instead of "p".
378 (pixops_composite_color_nearest): Use a more accurate (and
379 correct, to begin with) compositing method. This cures checks
380 showing through on images with no alpha.
382 * gdk-pixbuf.c (gdk_pixbuf_fill): fix bug that left some trailing
385 * gdk-pixbuf-io.h: fix UpdatedNotifyFunc to use signed ints
387 * gdk-pixbuf-loader.h (struct _GdkPixbufLoaderClass): Change
388 area_updated signal to use signed ints. Removed animation-related
391 * io-gif.c, io-gif-animation.h, io-gif-animation.c: Massive
394 * gdk-pixbuf-animation.c: Add GdkPixbufAnimationIter to abstract
395 all the pesky details. Remove old frame-based API. Make
396 GdkPixbufAnimation an abstract base class, derived by the loaders.
398 Sun Apr 22 15:51:32 2001 Owen Taylor <otaylor@redhat.com>
400 * Makefile.am (LDADDS): Add $(MATH_LIB).
402 2001-04-18 Havoc Pennington <hp@redhat.com>
404 * gdk-pixbuf.c (gdk_pixbuf_fill): Function to fill pixbuf with a
407 Wed Apr 4 01:41:02 2001 Tim Janik <timj@gtk.org>
409 * pixops/Makefile.am (noinst_LTLIBRARIES): include $top_srcdir
410 so we don't try to get <gtk/gtkobject.h> from standard search
413 * Makefile.am (gdk-pixbuf-marshal.c): use deps from srcdir.
414 add gdk-pixbuf-marshal.list to EXTRA_DIST.
415 take gdk-pixbuf-marshal.h out of _la sources.
417 2001-03-19 Tor Lillqvist <tml@iki.fi>
419 * makefile.mingw.in: Handle gdk-pixbuf-marshal.c.
421 * gdk_pixbuf.def: Update.
423 * pixbufloader_*.def: Just export the fill_vtable functions now.
425 2001-03-18 Mike Kestner <mkestner@ameritech.net>
427 * make-inline-pixbuf.c (main): Added logic to remove output when
430 2001-03-14 Havoc Pennington <hp@redhat.com>
432 * Makefile.am (gdk-pixbuf-marshal.c): Use different temporary file
433 from gdk-pixbuf-marshal.h, fixes parallel makes.
435 Thu Mar 1 04:01:57 2001 Tim Janik <timj@gtk.org>
437 * test-gdk-pixbuf.c: fixed includes.
439 2001-02-18 Havoc Pennington <hp@pobox.com>
441 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): prepend underscore
442 (gdk_pixbuf_get_named_module): prepend underscore
443 (gdk_pixbuf_get_module): prepend underscore
445 2001-02-19 Havoc Pennington <hp@redhat.com>
447 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): const fix
449 2001-02-17 Havoc Pennington <hp@pobox.com>
451 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_new_with_type): docs
453 2001-02-07 Alexander Larsson <alexl@redhat.com>
455 * io-xpm.c (free_buffer):
456 Use g_free, since the buffer is allocated with g_try_alloc().
458 2001-02-06 Christophe Merlet <redfox@eikonex.org>
460 * gdk-pixbuf-data.c: Fixes a minor typo.
462 Sun Feb 4 07:59:57 2001 Tim Janik <timj@gtk.org>
464 * gdk-pixbuf.h: DOH! don't include glib/gobject.h but glib-object.h,
465 we finally need the gobject->gruntime rename.
467 * *.c: scratched calls to g_type_init(), there's simply no point in
468 doing that, use gtk_init().
470 2001-02-01 Havoc Pennington <hp@pobox.com>
472 * gdk-pixbuf-loader.c, gdk-pixbuf-loader.h: rename "private" field
473 in struct to "priv" for C++
475 2001-01-31 Havoc Pennington <hp@pobox.com>
477 * gdk-pixbuf.c: include glib-object.h instead of gvaluetypes.h
479 2001-01-26 Havoc Pennington <hp@redhat.com>
481 * gdk-pixbuf-io.c (mname): fix included modules case.
483 2001-01-22 Havoc Pennington <hp@redhat.com>
485 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): check errors
486 from gdk_pixbuf_load_module
488 2001-01-22 Havoc Pennington <hp@redhat.com>
490 * Makefile.am: Add built marshaller files to support
491 GdkPixbufLoader signals
493 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): have
494 GDK_PIXBUF_MODULEDIR unconditionally replace the compiled-in
495 module location, rather than acting as a fallback, because we are
496 using GDK_PIXBUF_MODULEDIR to use gdk-pixbuf before installing it.
498 * gdk-pixbuf.h: include gdk-pixbuf-loader.h
500 * gdk-pixbuf-loader.h, gdk-pixbuf-loader.c: Move back over here
501 from gtk, and add error to close(), because stop_load may do
502 parsing of the image.
504 * pixops/have_mmx.S (_pixops_have_mmx): add newline at end of file
506 * io-*.c: make individual operations static, and add fill_vtable
507 functions which are exported. Fix the collection of type warnings
508 that surfaced, including a number of functions that didn't
509 properly take a GError and some that weren't
510 const-correct. Involved adding error handling for a few loaders.
512 * gdk-pixbuf-io.h: Add error reporting to stop_load function
514 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): change to just look up
515 a function that fills in the GdkPixbufModule vtable, instead of
516 looking up all the image functions individually; this means we
517 can get type safety within modules for the loader functions.
518 Also it means you don't have to keep the statically compiled and
519 GModule versions in sync.
521 * test-gdk-pixbuf.c (main): remove gdk_pixbuf_init()
523 * make-inline-pixbuf.c (main): remove call to gdk_pixbuf_init()
525 * gdk-pixbuf.h: nuke gdk_pixbuf_init()
527 * gdk-pixbuf-animation.c (gdk_pixbuf_frame_get_type): g_type_init
530 * gdk-pixbuf.c (gdk_pixbuf_get_type): g_type_init () here
532 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_get_type):
535 2001-01-20 John Harper <jsh@eazel.com>
537 * io-xbm.c: new pixbuf loader, for X bitmap files. Basically a
538 collision between Xlib's RdBitF.c and io-tiff.c
540 * gdk-pixbuf-io.c, Makefile.am, pixbufloader_xbm.def: added
543 [ merged from stable gdk-pixbuf module. Untested, but it
544 compiles, and works fine in the stable module ]
546 2001-01-18 Tor Lillqvist <tml@iki.fi>
548 * gdk-pixbuf-io.c (get_libdir): (Win32) Use the new
549 g_win32_get_package_installation_subdirectory() function. No need
550 to include windows.h.
551 (gtk_win32_get_installation_directory): Remove this then.
553 2001-01-01 Havoc Pennington <hp@redhat.com>
555 * Makefile.am (libgdk_pixbuf_1_3_la_LDFLAGS): add
556 @LIBTOOL_EXPORT_OPTIONS@
558 2000-12-30 Tor Lillqvist <tml@iki.fi>
560 * gdk_pixbuf.def: Update.
562 2000-12-16 Havoc Pennington <hp@pobox.com>
564 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file): ref
565 the pixbuf in the frame, so we can use gdk_pixbuf_frame_free
566 (gdk_pixbuf_frame_copy): new function
567 (gdk_pixbuf_frame_free): new function
568 (gdk_pixbuf_frame_get_type): new function
569 (GDK_TYPE_PIXBUF_FRAME): macro to get type for GdkPixbufFrame
571 Tue Nov 14 11:51:26 2000 Owen Taylor <otaylor@redhat.com>
573 * Makefile.am: Add -avoid-version for all modules.
575 2000-11-13 Havoc Pennington <hp@redhat.com>
577 * io-png.c (png_simple_error_callback): fix error message to not
578 say "save" since it's used for loading
580 2000-11-11 Hans Breuer <Hans@Breuer.Org>
582 * gdk-pixbuf-io.c : Fix all function prototype macros for self
583 contained image handlers (!USE_G_MODULE). Files to save should
584 be opened in binary mode, fopen(s, "wb").
586 * io-xpm.c : added HAVE_UNISTD_H condition
588 2000-11-11 Tor Lillqvist <tml@iki.fi>
590 * gdk_pixbuf.def: Add gdk_pixbuf_new_subpixbuf.
592 * io-tiff.c (gdk_pixbuf__tiff_image_begin_load): Use
593 g_file_open_tmp() (just added to GLib) instead of mkstemp() (or
594 mktemp() and open()).
596 * io-xpm.c (gdk_pixbuf__xpm_image_begin_load): Ditto.
598 2000-11-01 Havoc Pennington <hp@pobox.com>
600 * gdk-pixbuf.c (gdk_pixbuf_new_subpixbuf): New function to create
601 a pixbuf pointing to a subregion of another pixbuf.
603 2000-10-16 Tor Lillqvist <tml@iki.fi>
605 * gdk-pixbuf-io.c: Define also m_save (for the non-gmodule case).
607 2000-10-16 Havoc Pennington <hp@redhat.com>
609 * gdk-pixbuf-io.c (gdk_pixbuf_get_module)
610 (gdk_pixbuf_get_named_module) (gdk_pixbuf_load_module):
611 add error reporting here also
613 * make-inline-pixbuf.c (main): use GError
615 * io-xpm.c: include unistd.h
617 * gdk-pixbuf-util.c: include string.h
619 * io-*.c: add error reporting
621 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file): add
624 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file): Add error reporting
626 * gdk-pixbuf-io.h: Add GError** to load_increment and load
629 * gdk-pixbuf-io.c (gdk_pixbuf_save) (gdk_pixbuf_savev): return
630 a G_FILE_ERROR if we fail to write or close the file.
632 * gdk-pixbuf.h: remove GDK_PIXBUF_ERROR_IO, instead we'll use
633 G_FILE_ERROR_*. Rename enum to GdkPixbufError, properly following
634 the GError naming rules. Add GError** to load functions.
636 2000-10-06 Havoc Pennington <hp@redhat.com>
638 * gdk-pixbuf.h: add GdkPixbufAlphaMode
640 2000-10-06 Havoc Pennington <hp@redhat.com>
642 This entry is a summary of the merged-in changes from 1.0.
643 Relevant original ChangeLog entries are spliced in after
644 this entry; the files they refer to are from the 1.0
647 * pixops/pixops.c (pixops_composite_nearest): sync a small fix
650 * io-xpm.c (xpm_seek_string): add fscanf error check from 1.0
651 Add progressive loader from 1.0
653 * io-tiff.c (gdk_pixbuf__tiff_image_begin_load): mem leak fixes
656 * io-pnm.c: new version from 1.0 tree
658 * io-jpeg.c (gdk_pixbuf__jpeg_image_load): sync from 1.0, use
661 * io-gif.c (lzw_read_byte): sync from 1.0, change a g_error to
663 (gif_get_next_step): return 0 here, sync from 1.0
665 * gdk-pixbuf-util.c: sync email address change for Cody
668 2000-09-11 Jeffrey Stedfast <fejj@helixcode.com>
670 * gdk-pixbuf/io-pnm.c: Pretty much totally rewrote again because
671 last nights code was still "broken". Should now properly handle
672 all error conditions gracefully.
674 2000-09-10 Jeffrey Stedfast <fejj@helixcode.com>
676 * gdk-pixbuf/io-pnm.c: Rewrote.
678 2000-09-09 Federico Mena Quintero <federico@helixcode.com>
680 * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest): Compute
681 the correct dest offset.
683 2000-08-25 Federico Mena Quintero <federico@helixcode.com>
685 * gdk-pixbuf/io-xpm.c: #include <unistd.h>
687 2000-08-05 Larry Ewing <lewing@helixcode.com>
689 * gdk-pixbuf/io-tiff.c: stop leaking context->tempname.
691 * gdk-pixbuf/io-xpm.c: same as above.
693 2000-07-26 Michael Meeks <michael@helixcode.com>
695 * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_load): make
698 2000-07-21 Larry Ewing <lewing@helixcode.com>
700 * gdk-pixbuf/io-xpm.c: add a fake progressive loader so that
701 xpm at least supports the progressive interface like the one in
702 io-tiff.c. This should be reimplemented as an actual progressive
705 2000-07-19 Jonathan Blandford <jrb@redhat.com>
707 * demo/pixbuf-demo.c (update_timeout): changed scaling level to
709 * gdk-pixbuf/testpixbuf.c (update_timeout): Patch from michael
710 meeks to handle errors better.
712 2000-10-07 Tor Lillqvist <tml@iki.fi>
715 * pixbufloader_jpeg.def
716 * pixbufloader_png.def: Add new entry points.
718 * makefile.mingw.in: Use libintl.
720 2000-10-06 Havoc Pennington <hp@redhat.com>
722 * gdk-pixbuf-io.c (gdk_pixbuf_save): s/format/type/g to be
723 consistent with gdk_pixbuf_loader_new_with_type().
724 Return runtime error if a module is missing.
726 * gdk-pixbuf.h: add GDK_PIXBUF_ERROR_UNKNOWN_TYPE
728 2000-10-05 Havoc Pennington <hp@redhat.com>
730 Pixbuf saving, patch from David Welton.
732 * Makefile.am (GDK_PIXBUF_LIBS): add INTLLIBS
733 (libgdk_pixbuf_1_3_la_SOURCES): add gdk-pixbuf-i18n.h
735 * gdk-pixbuf-i18n.h: Add _() to gdk-pixbuf
737 * io-png.c (gdk_pixbuf__png_image_save): PNG save routine.
739 * io-jpeg.c (gdk_pixbuf__jpeg_image_save): JPEG save routine.
741 * gdk-pixbuf-io.c (gdk_pixbuf_save):
742 (gdk_pixbuf_savev): Implement pixbuf saving routines
744 * gdk-pixbuf.c (gdk_pixbuf_error_quark): pixbuf error quark
747 * gdk-pixbuf.h: Add public save routines; add pixbuf error
750 * gdk-pixbuf-io.h: Add save function to GdkPixbufModule
752 2000-10-05 Dan Winship <danw@helixcode.com>
754 * io-png.c, io-tiff.c, io-xpm.c: Fix comments to not claim that
755 all three of these files are the JPEG image loader. (From
758 2000-10-03 Tor Lillqvist <tml@iki.fi>
760 * makefile.mingw.in: Add rule for make-inline-pixbuf. Use
761 gdk-pixbuf's version number in the rule for makefile.mingw itself.
763 * gdk_pixbuf.def: Add new entry points.
765 2000-09-26 Havoc Pennington <hp@redhat.com>
767 * gdk-pixbuf-util.c (gdk_pixbuf_saturate_and_pixelate): Add this
768 function here, instead of putting it in a private GTK+ file.
770 * gdk-pixbuf-private.h (GdkPixbufInlineFormat): include an
771 enum here for the known formats of inlined pixbufs.
772 Also, #define our file magic here.
774 2000-06-23 Havoc Pennington <hp@redhat.com>
776 * make-inline-pixbuf.c: Small program that creates C variable
777 declarations of inline pixbuf data. This can be read
778 by gdk_pixbuf_new_from_inline.
780 * gdk-pixbuf.h (gdk_pixbuf_new_from_inline): New function to read
781 inline pixbuf data and create a pixbuf from it.
783 * gdk-pixbuf-data.c (gdk_pixbuf_new_from_inline): implement here
785 2000-09-07 Tor Lillqvist <tml@iki.fi>
787 * makefile.mingw.in: Use own version number for gdk-pixbuf DLLs,
790 2000-08-12 Tor Lillqvist <tml@iki.fi>
792 * gdk_pixbuf.def: Add missing entry point.
794 2000-08-10 Havoc Pennington <hp@redhat.com>
796 * Makefile.am (EXTRA_DIST): The *.def files had the wrong names
797 (s/pixbuf_/pixbufloader_)
799 2000-08-02 Tor Lillqvist <tml@iki.fi>
805 * io-wbmp.c: Conditionalise inclusion of <unistd.h>.
807 * makefile.mingw.in: List loaders alphabetically. Add the wbmp
808 one. Fix names of DLLs to have '-' instead of '_'.
810 2000-07-31 Elliot Lee <sopwith@redhat.com>
811 * io-wbmp.c: Some bug fixes - now tested to work.
813 2000-07-27 Elliot Lee <sopwith@redhat.com>
815 * gdk-pixbuf-io.h, gdk-pixbuf-io.c: Add
816 gdk_pixbuf_get_named_module() function to facilitate above change
817 * io-wbmp.c, pixbufloader_wbmp.defs, gdk-pixbuf-io.c, Makefile:
818 Implement loader for WBMP format.
819 * io-bmp.c: Don't malloc a temporary buffer - use stack instead.
821 2000-07-23 Tor Lillqvist <tml@iki.fi>
826 * pixops/makefile.mingw.in
827 * pixbuf_*.def: New files.
830 * pixops/Makefile.am: Add them. Add rule to generate makefile.mingw.
832 * gdk-pixbuf-io.c (gtk_win32_get_installation_directory):
833 New function, to get the GTK+ installation directory from
834 the Windows Registry, where the installation program
835 for whatever software includes GTK+ has stored it.
837 Used to avoid having hardcoding the directory where to look for
838 loaders. This function is needed by gtk, too, so it should
839 really be just in one place. Maybe a small static library
840 one level up from here?
842 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file)
843 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file):
844 Open file in binary mode. This *is* standard C. (No-op on Unix,
847 * io-jpeg.c: If we don't HAVE_SIGSETJMP, use normal setjmp().
849 * io-tiff.c: Use g_get_tmp_dir(). If we don't HAVE_MKSTEMP, use
851 (gdk_pixbuf__tiff_image_stop_load): g_free() also the tempname.
853 * pixops/*.S: The Gas from mingw32 doesn't like the .type
854 pseudo-op. Conditionalise on __MINGW32__, but probably
855 should conditionalise on Gas version instead? Or could we
856 do without .type on all systems?
858 * pixops/timescale.c: Use g_get_current_time()
859 instead of gettimeofday().
861 Sat Jul 22 10:57:22 2000 Owen Taylor <otaylor@redhat.com>
863 * Makefile.am (test_gdk_pixbuf_LDADD): Remove -lgmodule
865 Tue Jul 11 11:26:42 2000 Owen Taylor <otaylor@redhat.com>
867 * gdk-pixbuf.c: Add <string.h> include.
869 Tue Jul 11 06:20:14 2000 Tim Janik <timj@gtk.org>
871 * io-gif.c (gdk_pixbuf__gif_image_load_animation):
872 * gdk-pixbuf-data.c (gdk_pixbuf_new_from_data):
873 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file):
874 use g_object_new() instead of g_type_create_instance() which
875 is a private function for fundamental type implementations.
877 Thu Jul 6 11:49:47 2000 Owen Taylor <otaylor@redhat.com>
879 * Makefile.am (libgdk_pixbuf_la_LDFLAGS): Use GTK+ version
880 soname scheme for gdk-pixbuf.
882 2000-06-21 Havoc Pennington <hp@pobox.com>
884 * gdk-pixbuf.c: Convert GdkPixbuf to GObject, leaving it opaque
885 (i.e. derivation is not allowed, and there are no virtual methods
887 (gdk_pixbuf_preinit): Call g_type_init() here.
888 (gdk_pixbuf_init): Add a user-friendly init function, for users
889 of standalone gdk-pixbuf
891 * gdk-pixbuf-animation.c: Convert to GObject, in the same
892 way GdkPixbufAnimation was done.
894 * gdk-pixbuf.h: Remove gdk_pixbuf_set_unref_handler() and
895 gdk_pixbuf_finalize() from API, since these are broken and don't
896 make sense with new GObject stuff.
898 Wed Jun 21 16:02:48 2000 Owen Taylor <otaylor@redhat.com>
900 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): Add feature to
901 support a GDK_PIXBUF_MODULEDIR env variable as a secondary
904 2000-06-10 Federico Mena Quintero <federico@helixcode.com>
906 * demo/pixbuf-demo.c: It was cold and rainy this Saturday morning,
907 so I needed something to warm my thighs. Running plain infinite
908 loops on your laptop to make it hot is not very much fun. A demo
909 of the gdk-pixbuf scaling functions is way better, and looks
912 * configure.in (AC_OUTPUT): Added the demo Makefile.
914 * Makefile.am (SUBDIRS): Added the demo directory.
916 2000-06-09 Larry Ewing <lewing@helixcode.com>
918 * gdk-pixbuf/io-png.c (gdk_pixbuf__png_image_load_increment):
919 setjmp for the png error handler. It seems setting the error
920 handling functions does not avoid the jump, and so not calling
921 setjmp was causing the incremental loader to jump into lala land.
922 (gdk_pixbuf__png_image_begin_load): setjmp for error handling, I'm
923 not sure this one is actually required but the docs say it must be
924 set for every call to a png_* function.
925 Also changed the comment to reflect the fact that setting the
926 error handlers does _not_ avoid the longjmp.
928 2000-06-06 Larry Ewing <lewing@helixcode.com>
930 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
931 take frame offest into account when trying to calculate the
932 animation bbox. Also set the width to the width not the height.
933 (gdk_pixbuf_loader_animation_done): cycle over the frames to
934 calculate bbox because now we finally have all the offset
935 information for each frame.
937 2000-06-05 Mathieu Lacage <mathieu@gnome.org>
939 * configure.in: add some gtk parameters to the
940 GDK_PIXBUF_LIB²S and GDK_PIXBUG_INCLUDEDIR vars. One more
941 fight in my crusade for strange prefix compile...
943 2000-05-30 Not Zed <NotZed@HelixCode.com>
945 * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_begin_load):
946 Initialise the error handler exit routine to our own. Note this
947 means that every function that accesses the jpeg lib on this
948 object MUST do a setjmp.
949 (gdk_pixbuf__jpeg_image_stop_load): setjmp before accessing jpeg
950 lib for handling fatal error.
951 (gdk_pixbuf__jpeg_image_load_increment): And here too. So now
952 your applications dont quit if there's a jpeg error!
954 2000-05-30 Federico Mena Quintero <federico@helixcode.com>
956 * gdk-pixbuf.spec.in: Include all the loader libraries. Patch
957 from Frank de Lange <frank@unternet.org>.
959 2000-05-09 Darin Adler <darin@eazel.com>
961 * gdk-pixbuf/test-gdk-pixbuf.c:
962 Fixed includes to get rid of accidental GNOME dependency.
964 2000-05-26 Cody Russell <car0969@gamma2.uta.edu>
965 * Makefile.am: Added gdk-pixbuf.spec to EXTRA_DIST
967 2000-05-22 Federico Mena Quintero <federico@helixcode.com>
969 * configure.in: Bumped version number to 0.8.0.
971 * doc/Makefile.am (content_files): The toplevel gdk-pixbuf.sgml
972 file was not being distributed.
974 * gdk-pixbuf/pixops/Makefile.am (EXTRA_DIST): Added DETAILS.
976 2000-05-09 Darin Adler <darin@eazel.com>
978 * gdk-pixbuf/gdk-pixbuf-drawable.c: (rgb565lsb), (rgb565msb),
979 (rgb565alsb), (rgb565amsb), (rgb555lsb), (rgb555msb), (rgb555alsb),
980 (rgb555amsb), (convert_real_slow): Change all conversion from 16-bit
981 formats to 32-bit formats to re-use the high bits of the color values
982 so that white maps to full white.
984 Fri May 5 12:16:32 2000 Owen Taylor <otaylor@redhat.com>
986 * gdk-pixbuf/pixops/DETAILS: Add beginnings of file with
987 detailed information about the structure and algorithms
988 of pixops so people can fix it instead of breaking it.
990 2000-05-04 Darin Adler <darin@eazel.com>
992 * gdk-pixbuf/pixops/pixops.c: (pixops_composite_nearest),
993 (composite_pixel), (composite_line):
994 * gdk-pixbuf/test-gdk-pixbuf.c: (simple_composite_test_one_type):
995 Now that Owen explained the algorithm, I think I implemented it
996 right for the cases where the destination pixbuf is not opaque.
997 The test does seem to confirm it.
999 2000-05-04 Darin Adler <darin@eazel.com>
1001 * gdk-pixbuf/.cvsignore:
1002 * gdk-pixbuf/Makefile.am:
1003 * gdk-pixbuf/test-gdk-pixbuf.c (store_pixel), (fill_with_pixel),
1004 (load_pixel), (simple_composite_test_one),
1005 (simple_composite_test_one_type), (simple_composite_test), (main):
1006 Added some tests of composite to highlight problems in the old
1007 implementation. These tests run without any user interaction.
1008 Just do "make check".
1010 * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest),
1011 (composite_pixel), (composite_line): Fix composite to do a textbook
1012 "A over B" composite. This was clearly the intent, and it was easy
1013 to fix the code to do it. (Note to those that read my earlier tries
1014 at a patch; this version fixes typos that were present in all
1015 my patch attempts. I checked the final version by adding more tests.)
1017 2000-04-22 05:27:43 2000 Owen Taylor <otaylor@redhat.com>
1019 * gdk-pixbuf/pixops/pixops.c (pixops_scale_nearest): Properly
1020 offset y coordinate accordining to render_y0.
1022 * gdk-pixbuf/gdk-pixbuf-scale.c: Properly handle nonzero
1025 2000-04-22 James Henstridge <james@daa.com.au>
1027 * gdk-pixbuf.spec.in (%files): moved %{prefix}/bin/* from the main
1028 package to the devel package. The only file installed in bin is
1029 gdk-pixbuf-config, which belongs in -devel. This should allow having
1030 multiple versions of the main gdk-pixbuf package installed.
1032 2000-04-17 Karl Eichwalder <ke@suse.de>
1034 * gdk-pixbuf/Makefile.am (INCLUDES): Add $(GNOME_CFLAGS).
1035 Reported by Jens Finke.
1037 2000-04-14 Tomasz K³opczko <kloczek@pld.org.pl>
1039 * gdk-pixbuf/pixops/makefile.am: $(LIBART_CFLAGS) replaced by
1040 $(GTK_CFLAGS) - now gdk-pixbuf compiles correctly.
1042 2000-04-13 James Henstridge <james@daa.com.au>
1044 * configure.in: when performing the configure check to see if
1045 gmodule works, set CFLAGS to GLIB_CFLAGS and LIBS to GLIB_LIBS,
1046 rather than the other way round. Also, call AC_MSG_RESULT in the
1047 even that dynamic modules were not supported.
1049 2000-04-12 Federico Mena Quintero <federico@helixcode.com>
1051 This comes from an excellent idea by Tim Janik (timj@gtk.org) to
1052 hook to the last unref operation.
1054 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_set_last_unref_handler): New
1055 function to set the last unref handler for a pixbuf.
1056 (gdk_pixbuf_finalize): New function to actually finalize a pixbuf.
1057 It calls the pixbuf's destroy notification function and frees the
1058 GdkPixbuf structure itself.
1059 (gdk_pixbuf_unref): Use the last unref function of the pixbuf if
1062 * gdk-pixbuf/gdk-pixbuf-private.h (struct _GdkPixbuf): New fields
1063 for the last unref handler and its user data.
1065 * gdk-pixbuf/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Use
1066 g_new0() to allocate the pixbuf.
1068 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
1069 Fixed the call to gtk_signal_new() for the "frame_done" signal; it
1070 was not specifying the `frame' argument.
1072 * gdk-pixbuf/gdk-pixbuf-animation.c
1073 (gdk_pixbuf_animation_get_width): Fixed docstring.
1074 (gdk_pixbuf_animation_get_height): Likewise.
1075 (gdk_pixbuf_animation_get_num_frames): Likewise.
1076 (gdk_pixbuf_animation_get_frames): Likewise.
1078 * doc/gdk-pixbuf-sections.txt: Updated with the new functions and
1081 * doc/tmpl/gdk-pixbuf.sgml: Added the description for GdkColorspace.
1083 * doc/tmpl/scaling.sgml: Added the description for GdkInterpType.
1085 * doc/tmpl/refcounting.sgml: Updated with the information about
1086 the last unref handler.
1088 * doc/tmpl/*.sgml: Markup tweaks.
1090 * gdk-pixbuf/Makefile.am (libgnomecanvaspixbuf_la_LDFLAGS): Sigh,
1091 update the libtool version number for libgnomecanvaspixbuf as
1093 (libpixbufloader_*_la_LDFLAGS): The loaders need to be versioned
1094 as well, or the old ones won't work with the new stuff. Also,
1095 renamed the modules as follows.
1097 * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_load_module): Now the
1098 modules are called "libpixbufloader-<format>.so" instead of
1099 "libpixbuf-<format>.so". They needed renaming so that the new
1100 loaders won't overwrite the old ones; even with the versioning
1101 stuff, the new .so symlink to the .so.1.0.0 would overwrite the
1104 2000-04-12 Paolo Molaro <lupus@debian.org>
1106 * .cvsignore, src/.cvsignore: shut up cvs.
1108 2000-04-11 Federico Mena Quintero <federico@helixcode.com>
1110 Most of this patch is based on a patch by Havoc Pennington
1111 (hp@redhat.com) to make GdkPixbuf's structures opaque and to
1112 remove the libart dependency.
1114 * gdk-pixbuf/gdk-pixbuf.h: Removed the public structures.
1115 (GdkColorspace): New enum that for now only contains
1117 (GdkPixbufDestroyNotify): New type for the pixbuf's pixels destroy
1118 notification function.
1119 (GdkInterpType): New num with interpolation types.
1121 * *.[ch]: Replace the libart stuff with our own stuff.
1123 * pixops/*.[ch]: Likewise.
1125 * gdk-pixbuf/gdk-pixbuf-private.h: New file with the private
1126 declarations of the GdkPixbuf structures.
1128 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_new_from_art_pixbuf):
1130 (gdk_pixbuf_get_format): Constify.
1131 (gdk_pixbuf_get_n_channels): Constify.
1132 (gdk_pixbuf_get_has_alpha): Constify.
1133 (gdk_pixbuf_get_bits_per_sample): Constify.
1134 (gdk_pixbuf_get_pixels): Constify.
1135 (gdk_pixbuf_get_width): Constify.
1136 (gdk_pixbuf_get_height): Constify.
1137 (gdk_pixbuf_get_rowstride): Constify.
1139 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_copy): New function to copy
1142 * gdk-pixbuf/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Added a
1143 bits_per_sample argument; currently only 8 bits per sample are
1146 * gdk-pixbuf/gdk-pixbuf-animation.c (gdk_pixbuf_frame_get_pixbuf):
1148 (gdk_pixbuf_frame_get_x_offset): New accessor.
1149 (gdk_pixbuf_frame_get_y_offset): New accessor.
1150 (gdk_pixbuf_frame_get_delay_time): New accessor.
1151 (gdk_pixbuf_frame_get_action): New accessor.
1153 * gdk-pixbuf/gdk-pixbuf-render.c
1154 (gdk_pixbuf_render_pixmap_and_mask): Instead of returning a solid
1155 mask rectangle for pixbufs without an alpha channel, set the
1156 *mask_return to NULL.
1158 * gdk-pixbuf/gdk-pixbuf-util.c (gdk_pixbuf_add_alpha): Constify.
1160 * gdk-pixbuf/gdk-pixbuf-scale.c: Fix includes.
1162 * gdk-pixbuf/gdk-pixbuf-scale.c (gdk_pixbuf_scale): Added some
1163 preconditions. Maybe we should also check for the colorspace,
1164 bits per pixel, and such.
1165 (gdk_pixbuf_composite): Likewise.
1166 (gdk_pixbuf_composite_color): Likewise.
1167 (gdk_pixbuf_scale_simple): Likewise, and fail gracefully if we
1168 cannot allocate the new pixbuf.
1169 (gdk_pixbuf_composite_color_simple): Likewise.
1171 * gdk-pixbuf/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_render):
1172 Use art_rgb_rgba_affine() or art_rgb_affine() since we no longer
1175 * gdk-pixbuf/io-bmp.c: Fix includes.
1177 * gdk-pixbuf/pixops/pixops.c (pixops_scale_nearest): Fixed cast in
1182 * configure.in: Removed checks for libart.
1184 * gdk-pixbuf/Makefile.am: Removed references to libart.
1185 (noinst_HEADERS): Added gdk-pixbuf-private.h.
1187 * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_LDFLAGS): Incremented
1188 the version number of the libtool library to indicate that this
1189 definitely is not compatible with the old usage. I know you love
1192 * configure.in: Bumped version number to 0.7.0.
1196 * gdk-pixbuf-config.in (--libs): We no longer require libart.
1198 * DEPENDS.libgdk_pixbuf: We no longer depend on libart.
1200 * gdk-pixbuf.spec.in: Updated, but I don't guarantee anything.
1202 2000-04-06 Jonathan Blandford <jrb@redhat.com>
1204 * gdk-pixbuf/testanimation.c (main): add more info to the
1205 testanimation frames.
1207 2000-04-04 Ettore Perazzoli <ettore@helixcode.com>
1209 * gdk-pixbuf/gdk-pixbuf-animation.c
1210 (gdk_pixbuf_animation_get_width): New accessor function.
1211 (gdk_pixbuf_animation_get_height): New accessor function.
1212 (gdk_pixbuf_animation_get_num_frames): New accessor function.
1213 (gdk_pixbuf_animation_get_frames): New accessor function.
1215 2000-04-01 Federico Mena Quintero <federico@helixcode.com>
1217 * gdk-pixbuf/gdk-pixbuf.c: Reverted Mark's change. The refcount
1218 is private information, and the art_pixbuf will go away soon.
1220 2000-03-31 Mark Crichton <crichton@gimp.org>
1222 * gdk-pixbuf/gdk-pixbuf.c: Added gdk_pixbuf_get_refcount
1223 and gdk_pixbuf_get_artpixbuf accessor functions.
1225 2000-03-29 Federico Mena Quintero <federico@helixcode.com>
1227 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_get_has_alpha): Return
1228 gboolean instead of int.
1230 2000-03-29 Radek Doulik <rodo@helixcode.com>
1232 * gdk-pixbuf/gdk-pixbuf-animation.c
1233 (gdk_pixbuf_animation_new_from_file): same as below
1235 * gdk-pixbuf/io-gif.c (gif_get_lzw): added update of width and
1236 height in GdkPixbufAnimation
1238 2000-03-28 Radek Doulik <rodo@helixcode.com>
1240 * gdk-pixbuf/io-gif.c (gif_get_lzw): test also for
1241 context->frame_done_func and context->anim_done_func to make
1242 progressive animation loading work
1244 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
1245 added priv->pixbuf = NULL as pixbuf is now in frame (and to make
1246 gdk_pixbuf_loader_prepare happy)
1247 (gdk_pixbuf_loader_frame_done): update animation bbox
1249 * gdk-pixbuf/gdk-pixbuf.h: added bbox size (width, height) to
1252 2000-03-27 Radek Doulik <rodo@helixcode.com>
1254 * gdk-pixbuf/io-gif.c (gif_get_lzw): use frame_len and frame_width
1255 instead of width and height
1257 2000-03-27 Owen Taylor <otaylor@redhat.com>
1259 * gdk-pixbuf/pixops/pixops.c: Fix problem with
1260 precendence of >> and & which was keeping composite_color
1261 from working with non-gray images.
1263 2000-03-08 Jonathan Blandford <jrb@redhat.com>
1265 * gdk-pixbuf/io-gif.c (gdk_pixbuf__gif_image_load): free the context.
1266 (gdk_pixbuf__gif_image_load_animation): free the context.
1268 2000-03-06 Arjan van de Ven <arjan@fenrus.demon.nl>
1270 * gdk-pixbuf/io-bmp.c: Fixed to pointer-bugs and a
1271 mis-interpretation of the Microsoft documentation. Now
1272 it can load .BMP files that are not generated by The Gimp
1275 2000-03-01 Mark Crichton <crichton@gimp.org>
1277 * configure.in: Added BUILD_CANVAS_ITEM stuff to (finally)
1278 fix the last auto* build bug (where we have libart, but no
1281 * gdk-pixbuf/Makefile.am: Same.
1283 2000-02-28 Matt Wilson <msw@redhat.com>
1285 * gdk-pixbuf/gdk-pixbuf-drawable.c: s/unsigned long/guint32/g,
1286 s/unsigned short/guint16/g, s/unsigned char/guint8/g
1288 2000-02-26 Federico Mena Quintero <federico@helixcode.com>
1290 * README: We don't require libgif/ungif nor libXpm.
1292 * NEWS: This was outdated, so updated it.
1294 2000-02-25 Federico Mena Quintero <federico@helixcode.com>
1296 * gdk-pixbuf.m4: Use the correct name for
1297 gdk-pixbuf/gdk-pixbuf.h. Thanks to Jacob Berkman for pointing
1300 2000-02-21 Federico Mena Quintero <federico@helixcode.com>
1302 * configure.in (GDK_PIXBUF_MINOR): Bumped version number to 0.6.0.
1304 * doc/compiling.sgml: New appendix documenting the gdk-pixbuf
1305 library's particular options to configure.in.
1307 * doc/gdk-pixbuf.sgml: Include compiling.sgml appendix via an
1310 * doc/Makefile.am (gdk-pixbuf.html): Added compiling.sgml.
1312 * gdk-pixbuf/io-ico.c (gdk_pixbuf__ico_image_load_increment):
1313 Fixed typo in prototype name.
1315 * configure.in: Changed duplicated AC_MSG_CHECKING message to
1316 something more meaningful; now it is "checking whether dynamic
1319 * gdk-pixbuf/pixops/Makefile.am (noinst_PROGRAMS): Do not install
1320 the timescale program.
1322 Integrated Miguel de Icaza's <miguel@gnu.org> patch for optionally
1323 creating a single static library with all the image format modules
1326 2000-02-20 Miguel de Icaza <miguel@gnu.org>
1328 * gdk-pixbuf/io-xpm.c (gdk_pixbuf__xpm_image_load): Add prefix.
1329 (gdk_pixbuf__xpm_image_load_xpm_data): Add prefix.
1331 * gdk-pixbuf/io-tiff.c (gdk_pixbuf__tiff_image_load_real): Add prefix.
1332 (gdk_pixbuf__tiff_image_stop_load): Add prefix.
1333 (gdk_pixbuf__tiff_image_load_increment): Add prefix.
1334 (gdk_pixbuf__tiff_image_load): Add prefix.
1335 (gdk_pixbuf__tiff_image_stop_load): Update invocation.
1336 (gdk_pixbuf__tiff_image_begin_load): Add prefix.
1338 * gdk-pixbuf/io-ras.c (gdk_pixbuf__ras_image_load): Add prefix.
1339 (gdk_pixbuf__ras_image_load): Updated invocation.
1340 (gdk_pixbuf__ras_image_begin_load): Add prefix.
1341 (gdk_pixbuf__ras_image_stop_load): Add prefix.
1342 (gdk_pixbuf__ras_image_load_increment): Add prefix.
1344 * gdk-pixbuf/io-pnm.c (gdk_pixbuf__pnm_image_begin_load): Add prefix.
1345 (gdk_pixbuf__pnm_image_stop_load): Add prefix.
1346 (gdk_pixbuf__pnm_image_load_increment): Add prefix
1347 (gdk_pixbuf__pnm_image_load): Add prefix.
1349 * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_load): Add prefix.
1350 (gdk_pixbuf__jpeg_image_load_increment): Add prefix.
1351 (gdk_pixbuf__jpeg_image_begin_load): Add prefix.
1352 (gdk_pixbuf__jpeg_image_stop_load): Add prefix.
1354 * gdk-pixbuf/io-ico.c (gdk_pixbuf__ico_image_load): Add prefix.
1355 (gdk_pixbuf__ico_image_load): update invocation.
1356 (gdk_pixbuf__ico_image_load_increment): Add prefix.
1357 (gdk_pixbuf__ico_image_load): update invocation.
1358 (gdk_pixbuf__ico_image_begin_load): Add prefix.
1359 (gdk_pixbuf__ico_image_load): update invocation.
1360 (gdk_pixbuf__ico_image_stop_load): Add prefix.
1362 * gdk-pixbuf/io-gif.c (gdk_pixbuf__gif_image_load_animation): Add prefix.
1363 (gdk_pixbuf__gif_image_load): Add prefix.
1364 (gdk_pixbuf__gif_image_begin_load): Add prefix.
1365 (gdk_pixbuf__gif_image_load_increment): Add prefix.
1366 (gdk_pixbuf__gif_image_load_animation): Add prefix.
1367 (gdk_pixbuf__gif_image_stop_load): Add prefix.
1369 * gdk-pixbuf/io-bmp.c (gdk_pixbuf__bmp_image_load): Add prefix.
1370 (gdk_pixbuf__bmp_image_load): Rename function called.
1371 (gdk_pixbuf__bmp_image_load_increment): Add prefix
1373 * gdk-pixbuf/io-png.c (gdk_pixbuf__png_image_load): Add prefix.
1374 (gdk_pixbuf__png_image_begin_load): Add prefix.
1375 (gdk_pixbuf__png_image_stop_load): Add prefix.
1376 (gdk_pixbuf__png_image_load_increment): Add prefix.
1378 * gdk-pixbuf/gdk-pixbuf-io.c (file_formats): Make this static.
1379 (gdk_pixbuf_load_module): Load the shared library entry points
1380 using a "gdk_pixbuf__$module_name" prefix.
1381 (pixbuf_module_symbol): Wrapper routine that uses the module
1382 prefix for the modules to load the information.
1384 * configure.in (GDK_PIXBUF_VERSION): New option --disable-modules
1385 lets the user specify that gdk-pixbuf should link all image loader
1386 code into the library instaed of creating shared library modules.
1388 (dynworks): Renamed the automake conditional DYNAMIC_MODULES_WORK
1389 to BUILD_DYNAMIC_MODULES.
1391 2000-02-19 Jonathan Blandford <jrb@redhat.com>
1393 * gdk-pixbuf/io-gif.c (new_context): fix case where initial
1394 colormap entry is Transparent.
1396 2000-02-19 Owen Taylor <otaylor@redhat.com>
1398 * gdk-pixbuf/pixops/pixops.c (scale_pixel): Fix error in
1399 scale factors for non-alpha case.
1401 2000-02-14 Mark Crichton <crichton@gimp.org>
1403 * gdk-pixbuf/io-xpm.c (xpm_extract_color): Added check for "g" color type.
1404 Imlib/libXpm handle this, but we didn't.
1406 2000-02-14 Darin Adler <darin@eazel.com>
1408 * gdk-pixbuf/testpixbuf.c: Remove now-unnecessary cast.
1409 * .cvsignore: gdk-pixbuf/.cvsignore: More to ignore.
1411 2000-02-14 Elliot Lee <sopwith@redhat.com>
1412 * gdk-pixbuf/gdk-pixbuf.h, gdk-pixbuf/gdk-pixbuf-data.c: Make passed-in argument 'const'.
1414 2000-02-04 Michael Meeks <mmeeks@gnu.org>
1416 * gdk-pixbuf/io-gif.c (struct _GifContext): add x,y_offset.
1417 (gif_get_frame_info): put the offsets on the context.
1418 (gif_get_lzw): copy them off into the frame.
1419 (new_context): no change required; will 0 offsets by default.
1421 2000-01-28 Michael Meeks <michael@mejm2.dow.cam.ac.uk>
1423 * gdk-pixbuf/pixops/pixops.c (pixops_process): const + nasty
1426 * gdk-pixbuf/pixops/pixops.h: const.
1428 * gdk-pixbuf/gdk-pixbuf-util.c: const.
1430 * gdk-pixbuf/gdk-pixbuf-scale.c: const.
1432 * gdk-pixbuf/gdk-pixbuf.h: constify lots of things.
1434 2000-02-03 Federico Mena Quintero <federico@helixcode.com>
1436 * gdk-pixbuf/gdk-pixbuf-render.c
1437 (gdk_pixbuf_render_threshold_alpha): Added sanity check for width
1438 and height being >= 0. Also, do nothing if either of them is
1439 zero. Thanks to Ettore for pointing this out.
1440 (gdk_pixbuf_render_to_drawable): Likewise.
1441 (gdk_pixbuf_render_to_drawable_alpha): Likewise.
1443 2000-02-02 Federico Mena Quintero <federico@helixcode.com>
1445 * gdk-pixbuf/io-gif.c (gif_get_lzw): Removed debugging g_print.
1446 Thanks to John Sullivan <sullivan@eazel.com> for the patch.
1448 * gdk-pixbuf/testpixbuf-drawable.c (configure_cb): Get a new area
1449 of the screen when the window is resized. Thanks to David
1450 N. Welton <davidw@linuxcare.com> for pointing this out.
1451 Misc. cleanups to the rest of the file.
1453 2000-02-01 Federico Mena Quintero <federico@helixcode.com>
1455 * doc/tmpl/rendering.sgml: gnome_init() does not call
1456 gdk_rgb_init(), so don't mention that it does in the
1457 documentation. Thanks to Alexander Kruuse <kruuse@home.se> for
1460 2000-01-31 Havoc Pennington <hp@redhat.com>
1462 * gdk-pixbuf/Makefile.am (noinst_PROGRAMS): no testpixbuf-foo target
1464 Mon Jan 31 12:38:50 2000 Owen Taylor <otaylor@redhat.com>
1466 * gdk-pixbuf/pixops/pixops.c (scale_line): Fix from Peter
1467 Wainwright to fix 4a => 4a scaling.
1469 2000-01-29 Mark Crichton <crichton@gimp.org>
1471 * gdk-pixbuf-config: Oh dear, we weren't Telsa/Alan proof...
1472 put `libart-config --libs` in instead of -lart_lgpl.
1474 2000-01-22 Federico Mena Quintero <federico@helixcode.com>
1476 * gdk-pixbuf/io-pnm.c (pnm_read_raw_scanline): Return an error on
1478 (pnm_read_ascii_scanline): Initialize data and mask.
1480 * gdk-pixbuf/io-xpm.c (pixbuf_create_from_xpm): Initialize
1481 fallbackcolor to keep gcc happy.
1483 * configure.in: Bumped version number to 0.5.0.
1485 * gdk-pixbuf/pixops/timescale.c (dump_array): Removed unused variable.
1488 * gdk-pixbuf/pixops/pixops.c (pixops_composite_color_nearest): Put
1489 parentheses around + in a shift to remove a compiler warning.
1490 (pixops_process): Likewise.
1492 Patch from Ross Golder <rossigee@bigfoot.com> to create an RPM
1495 * configure.in: Added gdk-pixbuf.spec to AC_OUTPUT.
1497 * Makefile.am (EXTRA_DIST): Added gdk-pixbuf.spec.in
1499 2000-01-22 Federico Mena Quintero <federico@helixcode.com>
1501 * gdk-pixbuf/gnome-canvas-pixbuf.c (PixbufPrivate): Removed the
1502 x_set and y_set arguments. Now they are always on and start with
1503 defaults of 0.0 in units.
1504 (gnome_canvas_pixbuf_class_init): Likewise.
1505 (gnome_canvas_pixbuf_set_arg): Likewise.
1506 (gnome_canvas_pixbuf_get_arg): Likewise.
1507 (compute_viewport_affine): Likewise; always use the priv->x and
1510 * doc/tmpl/gnome-canvas-pixbuf.sgml: Modified to reflect the
1511 removal of the x_set/y_set arguments.
1513 2000-01-21 Federico Mena Quintero <federico@helixcode.com>
1515 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_ref): Return the same pixbuf
1516 as the input parameter.
1518 * gdk-pixbuf/gdk-pixbuf-animation.c (gdk_pixbuf_animation_ref):
1519 Return the same animation as the input parameter.
1521 2000-01-16 Elliot Lee <sopwith@redhat.com>
1523 * gdk-pixbuf/Makefile.am: Don't link against libgnomecanvaspixbuf.la
1525 2000-01-16 Federico Mena Quintero <federico@helixcode.com>
1527 * configure.in: Removed the broken --enable-canvas-pixbuf option.
1528 Added the stuff necessary to substitute the variables in
1529 gnomecanvaspixbufConf.sh.in.
1531 * gnomecanvaspixbufConf.sh.in: New gnome-config handler for the
1532 tiny gnomecanvaspixbuf library.
1534 * Makefile.am: Build gnomecanvaspixbufConf.sh.
1536 * gdk-pixbuf/Makefile.am: Create a libgnomecanvaspixbuf and only
1537 build it if gdk-pixbuf is being built outside of gnome-libs.
1539 * doc/gdk-pixbuf-sections.txt: Added gdk_pixbuf_render_pixmap_and_mask().
1541 * gdk-pixbuf/gdk-pixbuf-render.c
1542 (gdk_pixbuf_render_pixmap_and_mask): Renamed from
1543 gdk_pixbuf_render_pixmap(). Do not create the mask if it is not
1544 needed, and do not use a clipping mask when rendering the pixmap.
1545 Tweaked documentation a little.
1547 * HACKING: New file with hacking policies for the gdk-pixbuf
1550 * doc/Makefile.am (tmpl_sources): Added missing backslash.
1552 * doc/Makefile.am: Use gnomecanvaspixbuf in gnome-config when
1553 scanning for docstrings.
1555 * gdk-pixbuf/gdk-pixbuf-util.c (gdk_pixbuf_copy_area): Made sanity
1556 checks more stringent. Removed "gint" abominations. Made
1557 documentation consistent with the rest of the functions.
1559 * doc/gdk-pixbuf-sections.txt: Added gdk_pixbuf_copy_area() to the
1562 2000-01-14 Jonathan Blandford <jrb@redhat.com>
1564 * gdk-pixbuf/gdk-pixbuf-render.c (gdk_pixbuf_render_pixmap): new
1565 function to let you create a gdk_pixmap from a gdk_pixbuf.
1567 2000-01-11 Jacob Berkman <jacob@helixcode.com>
1569 * gdk-pixbuf/pixops/Makefile.am (INCLUDES): added
1570 $LIBART_CFLAGS to $INCLUDES
1572 2000-01-10 Elliot Lee <sopwith@redhat.com>
1574 * configure.in, gdk-pixbuf/Makefile.am: Build a libcanvas_pixbuf.
1576 * configure.in: Define version macros. Generate
1577 gdk-pixbuf/gdk-pixbuf-features.h. Always INSIDE_GNOME.
1579 * gdk-pixbuf/Makefile.am: Add gdk-pixbuf-features.h
1581 * gdk-pixbuf/gdk-pixbuf.c: Add definitions of
1582 gdk-pixbuf-features.h declarations, plus some initialization
1585 2000-01-05 Owen Taylor <otaylor@redhat.com>
1587 * gdk-pixbuf/pixops/pixops.c: Fixed src_channels/dest_channels
1588 confusion. (Again caught by Tomas Ogren's Purify)
1590 2000-01-07 Jonathan Blandford <jrb@redhat.com>
1592 * gdk-pixbuf/gdk-pixbuf-xform.c (gdk_pixbuf_rotate): comment out
1595 * gdk-pixbuf/gdk-pixbuf-io.c: Added progressive animation loading.
1596 * gdk-pixbuf/gdk-pixbuf-io.h: Added progressive animation loading.
1597 * gdk-pixbuf/gdk-pixbuf-loader.c: Added progressive animation
1599 * gdk-pixbuf/gdk-pixbuf-loader.h: Added progressive animation
1601 * gdk-pixbuf/io-gif.c (image_load_increment): I think the
1602 ref-counting mess is finally fixed. Added progressive animation
1604 (gif_get_lzw): remove memory_leak
1606 * doc/tmpl/gdk-pixbuf-loader.sgml: much longer long description
1609 2000-01-05 Owen Taylor <otaylor@redhat.com>
1611 * gdk-pixbuf/pixops/pixops.c (pixops_process): Fix computation of end of run indices.
1613 * gdk-pixbuf/pixops/pixops.c: Fix double increments when dest_channels == 4.
1614 (Pointed out by Tomas Ogren)
1616 2000-01-05 Mark Crichton <crichton@gimp.org>
1618 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_eat_header_write):
1619 Return 0 if gdk_pixbuf_load_loader_module returns FALSE.
1621 2000-01-05 Elliot Lee <sopwith@redhat.com>
1623 * gdk-pixbuf/pixops/Makefile.am: Link with -lm (to get 'ceil' function)
1625 2000-01-05 Owen Taylor <otaylor@redhat.com>
1627 * doc/Makefile.am doc/gdk-pixbuf-sections.txt
1628 doc/gdk-pixbuf.sgml doc/tmpl/scaling.sgml:
1629 Added scaling functions into gtk-doc framework.
1631 * gdk-pixbuf/gdk-pixbuf-scale.c: Documentation fixes.
1633 * gdk-pixbuf/testpixbuf-scale.c (expose_cb): Simplify a bit.
1635 * gdk-pixbuf/pixops/pixops.c (pixops_composite_color): Return
1636 immediately if scale_x or scale_y is 0.
1638 2000-01-05 Owen Taylor <otaylor@redhat.com>
1640 * gdk-pixbuf/pixops/timescale.c: quick fix for initializing
1641 arrays in benchmark.
1643 2000-01-05 Jonathan Blandford <jrb@redhat.com>
1645 * gdk-pixbuf/gdk-pixbuf-io.h: Change the order of the update func
1646 to make it more compatible with the rest of GTK. Added animation
1647 framework for progressive loading.
1649 * gdk-pixbuf/io-bmp.c (image_begin_load): Modified to handle new
1651 * gdk-pixbuf/io-ico.c (image_begin_load): ditto
1652 * gdk-pixbuf/io-png.c (image_begin_load): ditto
1653 * gdk-pixbuf/io-ras.c (image_begin_load): ditto
1654 * gdk-pixbuf/io-jpeg.c (image_begin_load): ditto
1655 * gdk-pixbuf/io-pnm.c (image_begin_load): ditto
1656 * gdk-pixbuf/io-tiff.c (image_begin_load): ditto
1657 * gdk-pixbuf/io-gif.c (image_begin_load): ditto
1659 2000-01-05 Owen Taylor <otaylor@redhat.com>
1661 * gdk-pixbuf/pixops/README: Added a README with a TODO
1662 and some explainations of the algorithms.
1664 * gdk-pixbuf/testpixbuf-scale.c: Set a background pixmap of None
1665 to reduce flashing when resizing.
1667 2000-01-05 Owen Taylor <otaylor@redhat.com>
1669 * gdk-pixbuf/pixops/: Directory full of pixel data scaling
1670 code that will eventually migrate into libart.
1672 * configure.in acconfig.h: Add checks for MMX compiler support
1674 * gdk-pixbuf/gdk-pixbuf.h gdk-pixbuf/gdk-pixbuf-scale.c:
1675 Nice wrapper routines for the code in pixops that operate
1676 on pixbufs instead of raw data.
1678 * gdk-pixbuf/testpixbuf-scale: Test program for scaling
1681 2000-01-05 Jonathan Blandford <jrb@redhat.com>
1683 * doc/tmpl/animation.sgml: Documentation changes.
1685 2000-01-01 Federico Mena Quintero <federico@helixcode.com>
1687 * gdk-pixbuf/gdk-pixbuf.h (GdkPixbufAnimation): Added reference
1688 counting to animations. A web browser may want to share a single
1689 copy of an animated GIF if it appears multiple times in a web
1692 * gdk-pixbuf/gdk-pixbuf-animation.c: New file. Moved the
1693 animation functions here.
1694 (gdk_pixbuf_animation_new_from_file): Prettified. Return a NULL
1695 animation if the loader does not support multiframe loading and
1696 the single-frame load returned NULL. Check that the filename is
1697 not NULL. Updated inline documentation.
1698 (gdk_pixbuf_animation_ref): New function.
1699 (gdk_pixbuf_animation_unref): New function.
1700 Removed gdk_pixbuf_animation_destroy() in favor of reference
1703 * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_new_from_file):
1704 Prettified. Made ref_count assertion more paranoid. Check that
1705 the filename is not NULL.
1706 (gdk_pixbuf_get_module): Use guchar * and guint for buffer and
1708 (gdk_pixbuf_new_from_xpm_data): Changed the "data" argument to
1711 * gdk-pixbuf/io-gif.c (image_load_animation): Create the animation
1712 with a reference count of 1.
1714 * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_SOURCES): Added
1715 gdk-pixbuf-animation.c.
1717 * doc/tmpl/animation.sgml: Populated. It is still missing a
1718 description of the overlay modes.
1720 * doc/gdk-pixbuf-sections.txt: Added the animation section. Moved
1721 the canvas item section to the end, as it will be moved later to
1724 * doc/gdk-pixbuf.sgml: Added the animation section.
1726 * doc/Makefile.am (tmpl_sources): Added tmpl/animation.sgml.
1728 1999-12-26 Peter Teichman <pat@gnu.org>
1730 * gdk-pixbuf/Makefile.am (libpixbuf_tiff_la_LIBADD): add
1731 $(LIBTIFF) to libpixbuf_tiff_la_LIBADD, proxying for mmarker.
1732 This closes bug #4676.
1734 1999-12-23 Havoc Pennington <hp@pobox.com>
1736 * gdk-pixbuf/io-gif.c (image_load): Stuff that should have been
1737 set to NULL here (specifically context->animation) was not being
1738 set to NULL. use g_new0() to alloc the struct.
1740 1999-12-20 Jonathan Blandford <jrb@redhat.com>
1742 * gdk-pixbuf/io-gif.c: finished work to make animated gifs load
1743 correctly. Progressive loading needs some work, but that all
1744 needs doing from the gdk-pixbuf-loader end, not here.
1746 1999-12-17 Jonathan Blandford <jrb@redhat.com>
1748 * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_animation_new_from_file):
1749 moved the file here. It seems natural to put this function here,
1750 as that's where the gdk_pixbuf_new_from_file function is, but it's
1751 still a little convoluted. The source files might be played with
1754 1999-12-14 Jonathan Blandford <jrb@redhat.com>
1756 * gdk-pixbuf/gdk-pixbuf-loader.c
1757 (gdk_pixbuf_loader_get_animation): Gets the animation from the
1760 1999-12-16 Federico Mena Quintero <federico@redhat.com>
1762 * doc/tmpl/rendering.sgml: Added notice about initializing GdkRGB
1763 before using the GdkPixbuf rendering functions. Thanks to Joe
1764 Shaw <joe@off.net> for pointing this out.
1766 1999-12-13 Federico Mena Quintero <federico@redhat.com>
1768 * gdk-pixbuf/gnome-canvas-pixbuf.c
1769 (gnome_canvas_pixbuf_class_init): Renamed arguments to
1770 width_in_pixels, height_in_pixels, x_in_pixels, y_in_pixels, for
1771 consistency with the new canvas.
1772 (PixbufPrivate): Do the same renaming in the structure fields, for
1775 * doc/tmpl/gnome-canvas-pixbuf.sgml: Updated for new argument names.
1777 1999-12-12 Federico Mena Quintero <federico@redhat.com>
1779 * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_LDFLAGS): Use a
1780 conditional to see whether to link $(GNOME_LIBS) or not.
1782 1999-12-10 Jonathan Blandford <jrb@redhat.com>
1784 * gdk-pixbuf/gdk-pixbuf-io.h: thinking about the new loading API.
1786 * gdk-pixbuf/gdk-pixbuf-drawable.c (gdk_pixbuf_get_from_drawable):
1787 make a warning go away.
1789 * gdk-pixbuf/gdk-pixbuf.h: added new prototypes for animations.
1791 * gdk-pixbuf/gdk-pixbuf-loader.h: added new prototypes for
1794 1999-12-09 Michael Zucchi <zucchi@zedzone.mmc.com.au>
1796 * gdk-pixbuf/gdk-pixbuf.h: Enable gdk_pixbuf_get_from_drawable()
1799 * gdk-pixbuf/gdk-pixbuf-drawable.c (gdk_pixbuf_get_from_drawable):
1800 Filled in body of function.
1801 (rgbconvert): Added GdkColormap parameter, and to all conversion
1803 (convert_real_slow): New function - should convert ANY visual/data
1804 format properly, but it aint fast. Used as a fallback when an
1805 optimised routine wont match.
1806 (rgbconvert): Do very specific tests on the data format to verify
1807 properly if the optimised version will do, otherwise use the
1808 fallback function for all other data formats.
1810 * gdk-pixbuf/Makefile.am: Re-enabled building of
1811 textpixbuf-drawable.
1813 * gdk-pixbuf/testpixbuf-drawable.c (main): Changed to use
1814 gdk_pixbuf_get_from_drawable().
1816 1999-12-08 Arjan van de Ven <arjan@fenrus.demon.nl>
1818 * gdk-pixbuf/gdk-pixbuf-drawable.c : Fixed the red/green/red
1819 bug on two occasions.
1820 * gdk-pixbuf/io-ras.c: Changed from the custom be32_to_cpu
1821 function to the generic glib one.
1823 1999-12-08 Federico Mena Quintero <federico@redhat.com>
1825 * gdk-pixbuf/gdk-pixbuf-drawable.c: Fix includes.
1826 (gdk_pixbuf_get_from_drawable): Implemented the zillion sanity
1827 checks and API definition. The body needs filling in and it needs
1828 to do the Right Thing(tm) for pixmaps plus the given colormap and
1829 windows and their own colormaps.
1831 * gdk-pixbuf/gdk-pixbuf.h: Added prototype for
1832 gdk_pixbuf_get_from_drawable(). Killed gdk-pixbuf-drawable.h.
1834 * gdk-pixbuf/Makefile.am: Re-added the gdk-pixbuf-drawable sources.
1836 * doc/tmpl/from-drawables.sgml: Populated.
1838 * doc/gdk-pixbuf.sgml: Added the from-drawables section.
1840 * doc/Makefile.am (tmpl_sources): Added tmpl/from-drawables.sgml.
1842 * doc/gdk-pixbuf-sections.txt: Added a section for getting pixbufs
1845 1999-12-07 Federico Mena Quintero <federico@redhat.com>
1847 * doc/tmpl/gnome-canvas-pixbuf.sgml: Added clarification about
1848 reference counting for GdkPixbuf structures.
1850 1999-12-07 Martin Baulig <martin@home-of-linux.org>
1852 * gdk-pixbuf/Makefile.am (testpixbuf_LDADD): Conditionally
1853 include $(GNOME_LIBS) here.
1855 1999-12-05 Arjan van de Ven <arjan@fenrus.demon.nl>
1857 Added missing "include <string.h>" to:
1858 * gdk-pixbuf/io-ras.c
1859 * gdk-pixbuf/io-bmp.c
1860 * gdk-pixbuf/io-ico.c
1862 1999-12-06 Federico Mena Quintero <federico@redhat.com>
1864 * gdk-pixbuf/gdk-pixbuf-io.c (file_formats): Patch from Arjan to
1867 1999-12-05 Federico Mena Quintero <federico@redhat.com>
1869 * gdk-pixbuf/Makefile.am (testpixbuf_LDADD): Add back
1870 $(GNOME_LIBS). This must compile outside of gnome-libs. If you
1871 want, send me a patch to do the conditional stuff properly.
1872 Otherwise, please read the GNOME Programming Guidelines,
1873 especially the "CVS policies" section.
1875 1999-12-05 Jaka Mocnik <jaka.mocnik@kiss.uni-lj.si>
1877 * gdk-pixbuf/Makefile.am: removed GNOME_LIBS from testpixbuf_LDADD.
1879 1999-12-05 Arjan van de Ven <arjan@fenrus.demon.nl>
1881 * gdk-pixbuf/io-ico.c: Bug in palet-size
1884 1999-12-04 Arjan van de Ven <arjan@fenrus.demon.nl>
1886 * gdk-pixbuf/io-bmp.c: Major cleanup, added support for
1887 32 bpp and 4 bpp (uncompressed) images, fixed 1bpp.
1889 * gdk-pixbuf/io-ras.c: Minor cleanup, ran through lclint
1891 * gdk-pixbuf/io-ico.c: Minor cleanup, fixed 1bpp icons,
1894 * gdk-pixbuf/gdk-pixbuf-io.c: Added detection of .CUR files
1895 (Windows Cursor files). These are identical to .ICO files,
1896 except for the signature and 2 extra fields for the hotspot.
1898 1999-12-03 Federico Mena Quintero <federico@redhat.com>
1900 * gdk-pixbuf/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_get_arg):
1901 Removed unused variable `item'.
1903 1999-12-03 Jonathan Blandford <jrb@redhat.com>
1905 * gdk-pixbuf/io-gif.c (gif_fill_in_lines): added a comment to
1906 explain this function better.
1908 1999-12-02 Federico Mena Quintero <federico@redhat.com>
1910 Source files moved from src/ to gdk-pixbuf/, to be consistent with
1913 * doc/Makefile.am: Modified for the new source directory.
1915 * configure.in: Likewise.
1917 * Makefile.am: Likewise.
1919 * autogen.sh: Likewise.
1921 * gdk-pixbuf/Makefile.am: Likewise.
1923 1999-12-02 Federico Mena Quintero <federico@redhat.com>
1925 * src/testpixbuf.c: #include <config.h>, and fix includes.
1927 * src/testpixbuf-drawable.c: #include <config.h>, and fix includes.
1929 * src/io-xpm.c: Fix includes.
1931 * src/io-tiff.c: Fix includes.
1933 * src/io-ras.c: Fix includes, and do not include more stuff than needed.
1935 * src/io-pnm.c: Fix inlcudes, and do not include more stuff than needed.
1937 * src/io-png.c: Fix includes.
1939 * src/io-ico.c: Fix includes, and do not include more stuff than needed.
1941 * src/io-gif.c: Fix includes, and do not include more stuff than needed.
1943 * src/io-bmp.c: Fix includes, and do not include more stuff than needed.
1945 * src/gnome-canvas-pixbuf.c: Fix includes.
1947 * src/gdk-pixbuf.c: Fix includes.
1949 * src/gdk-pixbuf-util.c: Fix includes.
1951 * src/gdk-pixbuf-render.c: Fix includes.
1953 * src/gdk-pixbuf-io.h: Fix includes.
1955 * src/gdk-pixbuf-drawable.c: Fix includes.
1957 * src/gdk-pixbuf-drawable.h: Use angle brackets for the gdk-pixbuf
1960 * src/gdk-pixbuf-data.c: Fix includes.
1962 * src/gdk-pixbuf-loader.c: #include <config.h>
1964 * src/gdk-pixbuf-loader.h: Use angle brackets for the gdk-pixbuf
1967 * src/Makefile.am: Commented out the gdk-pixbuf-drawable stuff,
1968 since it is not finished.
1970 * src/gdk-pixbuf.h: Removed unused transformation prototypes.
1972 * src/gdk-pixbuf-util.c: New file with utility and convenience
1973 functions for pixbufs.
1975 * src/Makefile.am (libgdk_pixbuf_la_SOURCES): Added gdk-pixbuf-util.c.
1977 * doc/gdk-pixbuf-sections.txt: Added section for utility functions.
1979 * doc/Makefile.am (tmpl_sources): Added tmpl/util.sgml.
1981 * doc/gdk-pixbuf.sgml: Added the utilities section.
1983 * doc/tmpl/util.sgml: Documentation for the utility functions.
1985 1999-11-29 Owen Taylor <otaylor@redhat.com>
1987 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
1988 Keep the mask around until after we draw ... since
1989 the GC changes aren't flushed to the X server until we
1990 draw, destroying it before that may result in BadPixmap
1993 1999-11-30 Havoc Pennington <hp@pobox.com>
1995 * configure.in: Add AM_CONDITIONAL for inside gnome-libs
1997 * src/Makefile.am: conditionalize GnomeCanvasPixbuf
1999 1999-11-29 Federico Mena Quintero <federico@redhat.com>
2001 * src/Makefile.am: Uncomment the GnomeCanvasPixbuf sources. This
2002 should be made conditional, not blindly commented out.
2004 1999-11-29 Jonathan Blandford <jrb@redhat.com>
2006 * src/Makefile.am (ICO_LIB): Added another loader from Arjan to
2007 handle .ico files. Cool.
2009 1999-11-24 Jonathan Blandford <jrb@redhat.com>
2011 * src/io-bmp.c (OneLine24): new patch from Arjan to handle
2014 1999-11-24 James Henstridge <james@daa.com.au>
2016 * configure.in (AC_OUTPUT): altered hack to place the symlink in the
2017 top builddir rather than src. This still builds fine, and does not
2018 get gtk-doc into an infinite loop when trying to find all the source
2021 1999-11-23 Jonathan Blandford <jrb@redhat.com>
2023 * Removed #PRAGMA } from headers. Also, make compile if you don't
2024 have it installed, already.
2026 1999-11-22 Federico Mena Quintero <federico@redhat.com>
2028 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_draw): Create the
2029 temporary buffer to the size of the interesction of the bounding
2030 box and the expose area, not the whole expose area. This speeds
2033 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_threshold_alpha): Do
2034 not paint black on the mask, since we already cleared it in a
2035 single gdk_draw_rectangle() operation.
2037 1999-11-22 Raja R Harinath <harinath@cs.umn.edu>
2039 * configure.in (GDK_PIXBUF_DIR): Fix for srcdir != builddir.
2041 1999-11-22 Havoc Pennington <hp@pobox.com>
2043 * src/Makefile.am (GDK_PIXBUF_LIBS): Patch from Paul Fisher
2044 <pnfisher@redhat.com> adds all -lgdk-pixbuf and all other
2045 dependencies to LIBADD variables for loadable modules. Necessary
2046 for a Java dynamic loading thing to be able to figure it out.
2048 1999-11-22 Havoc Pennington <hp@pobox.com>
2050 * src/io-png.c (image_load_increment): Call the update_area
2051 callback depending on the number of rows loaded in this increment.
2053 * src/testpixbuf.c (main): slow down the progressive load demo
2055 1999-11-16 Havoc Pennington <hp@pobox.com>
2057 * src/gdk-pixbuf-drawable.h: Get the quotes right on the #include
2059 1999-11-22 Jonathan Blandford <jrb@redhat.com>
2061 * configure.in (GDK_PIXBUF_DIR): make the symlink. Does not work
2062 for srcdir != buildir != . Beats me why; I can't figure it out.
2063 AC_OUTPUT_COMMANDS doesn't seem to let me substitute it correctly.
2065 1999-11-21 Jonathan Blandford <jrb@redhat.com>
2067 * src/gdk-pixbuf-io.c: added io-bmp from Arjan
2068 <arjan@fenrus.demon.nl>
2070 1999-11-20 Michael Zucchi <zucchi@zedzone.mmc.com.au>
2072 * src/gdk-pixbuf-drawable.c (gdk_pixbuf_from_drawable_core):
2073 Rework/reorder of the code. Each case has been separated into
2074 another function; its big but it should be quick.
2075 gdk_pixbuf_rgba_from_drawable() will now return a pixbuf with
2076 opaque alpha information. Not all depths/formats have been
2077 tested, but 8, 15/16 and 24 (alinged 32) should work ok.
2079 1999-11-17 Larry Ewing <lewing@gimp.org>
2081 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_bounds):
2082 implement the bounds method correctly.
2083 (compute_viewport_affine): compute the affine need to fit the
2084 image within the viewport given by the args.
2085 (compute_render_affine): call compute_viewport_affine.
2087 1999-11-16 Havoc Pennington <hp@pobox.com>
2089 * src/gdk-pixbuf-drawable.h: Use includes from the current
2090 directory, not the system directory.
2092 Mon Nov 15 17:18:28 1999 George Lebl <jirka@5z.com>
2094 * src/testpixbuf-drawable.c: use includes from the current directory
2095 rather then from the system include directory as gdk-pixbuf
2096 includes are not yet installed when this is compiled.
2098 1999-11-13 Cody Russell <bratsche@dfw.net>
2099 * src/testpixbuf-drawable.c: Added a test program for drawable
2102 * src/Makefile.am: Build testpixbuf-drawable.
2104 1999-11-12 Cody Russell <bratsche@dfw.net>
2106 * src/gdk-pixbuf-drawable.c: Merged in Michael Zucchi's changes.
2108 1999-11-10 Federico Mena Quintero <federico@redhat.com>
2110 * doc/tmpl/gdk-pixbuf-loader.sgml: Populated.
2112 * doc/gdk-pixbuf.signals: Put in the real names of signal
2115 * src/gdk-pixbuf-loader.c: Improved documentation comments.
2117 1999-11-10 Jonathan Blandford <jrb@redhat.com>
2119 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): emit the
2122 * src/io-ras.c (OneLineMapped_file): Now can handle indexing
2123 correctly. Patch from Arjan to do so.
2125 1999-11-10 Michael Fulbright <drmike@redhat.com>
2127 * src/io-pnm.c (pnm_ascii_read_scanline): Fixed loading of ASCII PNM
2130 * src/testpixbuf.c: Added final queued draw when done loading image.
2132 1999-11-10 Jonathan Blandford <jrb@redhat.com>
2134 * src/gdk-pixbuf-io.c (gdk_pixbuf_load_module): removed spurious
2137 1999-11-10 Federico Mena Quintero <federico@redhat.com>
2139 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): Added
2142 1999-11-09 Federico Mena Quintero <federico@redhat.com>
2144 * src/io-png.c: Fixed some incompatible pointer initializations.
2146 * src/io-jpeg.c (image_load_increment): Remove unused variable.
2148 1999-11-09 Michael Fulbright <drmike@redhat.com>
2150 * src/testpixbuf.c: Fixed it to use timeout to read from file
2151 for progressive loading. Set TBF_KBPS=n, where n is the number of
2152 kilobytes/second to simulate in downloading. n has to be an integer.
2154 * src/io-jpeg.c: Slight cosmetic cleanup.
2156 * src/io-pnm.c: Fixed raw PNM loading bug. Also discovered that ASCII
2157 PBM loading has a similar problem and will address tomorrow.
2159 1999-11-09 Havoc Pennington <hp@pobox.com>
2161 * src/Makefile.am (libgdk_pixbuf_la_SOURCES): build the
2162 gdk-pixbuf-drawable stuff.
2164 1999-11-09 Federico Mena Quintero <federico@redhat.com>
2166 * configure.in: Bumped version number to 0.4.
2168 1999-11-09 Michael Fulbright <drmike@redhat.com>
2170 * src/io-pnm.c : Finished progressive PNM loading code. Should handle
2171 all types of PNM files now.
2173 * src/io-jpeg.c (image_load_increment): Figured out problem with
2174 loading Progressive JPEG's progressively (say that 10 times fast).
2175 Currently for Progressive JPEG's the entire image is loaded before
2176 it is displayed. libjpeg supports a fancier mechanism which I may
2179 With these changes all JPEG formats appear to load properly for me.
2181 1999-11-08 Jonathan Blandford <jrb@redhat.com>
2183 * src/io-ras.c (image_load_increment): Final patch from Arjan.
2184 Seems to do progressive loading.
2186 1999-11-08 Michael Fulbright <drmike@redhat.com>
2188 * src/io-pnm.c image_load (): Fixed so we do not create a separate
2189 pixel buffer when reading in image - we reuse the pixel data in
2190 the GdkPixbuf structure instead.
2192 1999-11-08 Michael Fulbright <drmike@redhat.com>
2194 * src/io-pnm.c pnm_read_ascii_scanline (): Added support for
2195 ASCII PNM files. Note I haven't tested loaded ASCII PBM files because
2196 I can't seem to find a utility to convert into this format.
2197 Next is to add progressive loading support for the PNM format.
2199 1999-11-07 Federico Mena Quintero <federico@redhat.com>
2201 * doc/tmpl/gnome-canvas-pixbuf.sgml: Finished detailed explanation
2202 of the width, height, x, and y setting and pixels arguments.
2204 1999-11-05 Jonathan Blandford <jrb@redhat.com>
2206 * src/io-ras.c (image_load): third patch. Now it seems to load.
2208 * src/gdk-pixbuf-io.c: second patch Arjan van de Ven
2209 <arjan@fenrus.demon.nl> to autodetect/load the sunras files.
2211 * src/io-ras.c (image_load): new file from Arjan van de Ven
2212 <arjan@fenrus.demon.nl> to begin the ras loader.
2214 1999-11-05 Federico Mena Quintero <federico@redhat.com>
2216 * doc/gdk-pixbuf-sections.txt: Removed gdk-pixbuf-io, since it is
2217 for internal use only.
2219 * doc/gdk-pixbuf.sgml: Likewise.
2221 * doc/tmpl/gnome-canvas-pixbuf.sgml: Finished docs.
2223 1999-11-05 Michael Fulbright <drmike@redhat.com>
2225 * src/io-pnm.c: Implemented support for reading raw PBM/PGM/PPM
2226 files from a file. Next step is support for ASCII files, and
2227 then incremental loading.
2229 1999-11-04 Federico Mena Quintero <federico@redhat.com>
2231 * Makefile.am: Added doc to SUBDIRS.
2233 1999-11-04 Michael Fulbright <drmike@redhat.com>
2235 * src/io-jpeg.c: Prettied up code slightly.
2236 * src/io-pnm.c: Start of pnm loader (from file and progressively).
2237 Doesn't do much yet (will finish tomorrow).
2238 * src/gdk-pixbuf-io.c: Added pnm to structure of known types.
2240 1999-11-04 Federico Mena Quintero <federico@redhat.com>
2242 * doc/tmpl/rendering.sgml: Populated.
2244 * doc/Makefile.am: Added the template files.
2246 1999-11-04 Havoc Pennington <hp@pobox.com>
2248 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable): In
2249 docs, explain what a dither offset is for.
2250 (gdk_pixbuf_render_to_drawable_alpha): Explain why you would use
2251 this function vs. gdk_pixbuf_render_to_drawable().
2253 1999-11-04 Havoc Pennington <hp@pobox.com>
2255 * configure.in: Use libart-config correctly; find gnome-config
2256 separately. Fix GNOME_LIBS to be correct in "no gnome installed
2259 * src/Makefile.am: Link to GNOME_LIBS instead of a hardcoded
2262 Patch untested in the inside-gnome-libs case, I need to commit
2263 then check out to the gnome-libs I'm using.
2265 1999-11-04 Michael Fulbright <drmike@redhat.com>
2267 * src/io-jpeg.c (image_begin_load): Add update_func callback.
2268 * src/io-jpeg.c (image_load_increment): Call updated callback when
2269 new graphic data decoded.
2271 1999-11-04 Jonathan Blandford <jrb@redhat.com>
2273 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_update): handle the
2275 * src/io-png.c (image_begin_load): add a update_func callback.
2276 * src/io-gif.c (image_begin_load): add a update_func callback.
2277 (gif_get_lzw): added the update_func ability
2279 * src/io-tiff.c (image_begin_load): add a update_func callback.
2281 1999-11-04 Federico Mena Quintero <federico@redhat.com>
2283 * doc/tmpl/gdk-pixbuf.sgml: Populated.
2285 * doc/tmpl/refcounting.sgml: Populated.
2287 * doc/tmpl/file-loading.sgml: Populated.
2289 * src/gdk-pixbuf.c: Added documentation comments.
2291 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_file): Added
2292 documentation comments.
2294 * doc/: Finished integrating the documentation framework.
2296 1999-11-03 Federico Mena Quintero <federico@redhat.com>
2298 * configure.in: Removed libgif stuff now that we do not depend on it.
2299 Added the necessary cruft for gtk-doc.
2301 * src/Makefile.am: Unconditionally build the GIF loader.
2303 1999-11-03 Jonathan Blandford <jrb@redhat.com>
2305 * src/io-gif.c (gif_read): renamed ReadOK to gif_read.
2306 Added a lot of comments to the file.
2308 * src/Makefile.am (libpixbuf_gif_la_LIBADD): Remove dependency on
2311 1999-11-03 Michael Fulbright <drmike@redhat.com>
2313 * src/io-jpeg.c (image_load_increment): Further removal of
2314 bugginess in local buffering code. Handles grayscale jpegs
2317 * src/io-jpeg.c (image_load_stop): Was freeing local context
2318 for jpeg library before calling jpeg_decompres_finish ().
2320 1999-11-03 Jonathan Blandford <jrb@redhat.com>
2322 * src/io-gif.c (image_load_increment): now handle arbitrary buffer
2324 (gif_get_lzw): set the transparency to the right val.
2326 1999-11-03 Federico Mena Quintero <federico@redhat.com>
2328 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_init):
2329 Initiailize the x and y fields.
2330 (gnome_canvas_pixbuf_destroy): Queue a redraw upon destruction.
2331 (PixbufPrivate): Renamed need_size_update to need_xform_update.
2332 (recompute_bounding_box): Do not use temporary values.
2334 1999-11-03 Jonathan Blandford <jrb@redhat.com>
2336 * src/io-gif.c (set_gif_lzw_clear_code): new state. Fixes
2339 * src/gnome-canvas-pixbuf.c (recompute_bounding_box): remove
2340 unneeded x,y,h,w vars.
2342 1999-11-03 Larry Ewing <lewing@gimp.org>
2344 * src/gnome-canvas-pixbuf.c (compute_render_affine): adjust
2345 render_affine calculation for x,y offsets.
2346 (gnome_canvas_pixbuf_set_arg): add x,y args.
2347 (gnome_canvas_pixbuf_get_arg): add x,y args.
2348 (recompute_bounding_box): simply code using ArtDrect and the
2349 render_affine. Removed compute_xform_vectors as it was no longer
2352 1999-11-03 Federico Mena Quintero <federico@redhat.com>
2354 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_point): I'm a
2355 doofus. Return a distance, not a boolean, for opaque images.
2357 * src/gnome-canvas-pixbuf.c (recompute_bounding_box): Do proper
2358 rounding of bounding box coordinates.
2359 (gnome_canvas_pixbuf_bounds): Implemented the ::bounds() method.
2360 (gnome_canvas_pixbuf_draw): Use the correct alpha threshold value.
2362 1999-11-03 Jonathan Blandford <jrb@redhat.com>
2364 * src/io-gif.c (gif_prepare_lzw): s/lwz/lzw/g
2366 1999-11-03 Michael Fulbright <drmike@redhat.com>
2368 * src/io-jpg.c (image_load_increment): Fixed code which moved
2369 buffer around as new data comes in to work properly. JPEG progressive
2370 loading should be working now except for grayscale JPEG's, which I
2371 will look into next.
2373 1999-11-03 <sopwith@redhat.com>
2374 * src/testpixbuf.c: A GtkFunction needs to return a value for deterministic behaviour.
2375 Also put dot printing back in.
2377 1999-11-03 <jrb@redhat.com>
2379 * src/io-gif.c (gif_get_extension): Read 'til the next empty block
2382 1999-11-02 Cody Russell <bratsche@dfw.net>
2383 * src/gdk-pixbuf-drawable.c: Changed the behavior to return NULL
2384 if part of the requested image is offscreen, rather than clipping
2387 1999-11-02 Jonathan Blandford <jrb@redhat.com>
2389 * src/io-gif.c (gif_fill_in_lines): Fill in the gif's blank areas
2390 for interlacing and progressive loading.
2392 1999-11-02 Cody Russell <bratsche@dfw.net>
2393 * src/gdk-pixbuf-drawable.c (gdk_pixbuf_from_drawable_core): Now
2394 calls gdk_pixbuf_new_from_art_pixbuf() instead of gdk_pixbuf_new().
2396 1999-11-02 Jonathan Blandford <jrb@redhat.com>
2398 * src/io-gif.c (gif_main_loop): Now progressive gif loading works!
2399 It's a little slow though. )-:
2401 1999-11-02 Elliot Lee <sopwith@redhat.com>
2402 * src/gdk-pixbuf-loader.[ch], src/gdk-pixbuf-io.h: Make the arguments to the
2403 write/load_increment operations const-correct.
2405 1999-11-02 Federico Mena Quintero <federico@redhat.com>
2407 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_point):
2408 Implemented the ::point() method. We do a simple containment test
2409 instead of a full distance calculation since the canvas is going
2410 to change to that scheme, anyways.
2412 1999-11-02 Elliot Lee <sopwith@redhat.com>
2414 * src/testpixbuf.c: Allow using $TBF_READLEN to specify the size of the chunks
2415 that are read from the input file.
2417 1999-11-02 Larry Ewing <lewing@gimp.org>
2419 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_render): add aa
2421 (gnome_canvas_pixbuf_class_init): add gnome_canvas_pixbuf_render
2424 1999-11-02 Federico Mena Quintero <federico@redhat.com>
2426 * src/gnome-canvas-pixbuf.c (compute_render_affine): Moved the
2427 affine computation code from ::draw() to here, since it is needed
2428 by ::point() as well.
2430 1999-11-02 Elliot Lee <sopwith@redhat.com>
2432 * src/gdk-pixbuf-loader.c: Reorganize gdk_pixbuf_loader_write into
2433 three functions, and eliminate duplication of code from write()
2434 and close(). Also fix bug where the 128-byte header was being
2437 1999-11-01 Federico Mena Quintero <federico@redhat.com>
2438 * src/gnome-canvas-pixbuf.c (recompute_bounding_box): Fixed
2439 bounding box computation.
2441 1999-11-01 Federico Mena Quintero <federico@redhat.com>
2443 * src/gnome-canvas-pixbuf.c: Start of the pixbuf canvas item.
2444 Drawing affines seem to work. Bounding box is fubared. ::point()
2445 is not implemented. This is a work in progress.
2447 * src/Makefile.am: Added gnome-canvas-pixbuf.[ch] to the list of
2450 * configure.in: Sigh. We need to link in libgnomeui for the
2451 canvas stuff. This mess will disappear when gdk-pixbuf gets
2452 folded into gnome-libs.
2454 1999-10-30 Jonathan Blandford <jrb@redhat.com>
2456 * src/io-gif.c: Some more work. Now it generates a gdk_pixbuf of
2457 the right size, at a minimum, even if the image is squished and
2459 (ReadImage): lets get the offset right. This will let transparent
2462 1999-10-29 Michael Fulbright <drmike@redhat.com>
2464 * src/io-jpeg.c: image_load_increment(): Fixed bug when
2465 image width was not a multiple of 4 - always use the
2466 gdk_pixbuf rowstride to increment pointers!
2468 1999-10-29 Michael Fulbright <drmike@redhat.com>
2470 * src/io-jpeg.c: Added first cut at progressive jpeg loading.
2471 Currently does not handle either progressive jpeg files (jpeg
2472 files with multiple scans at different quality settings), but
2473 I plan on adding this support soon. These are fairly rare in
2474 my experience, so it shouldn't slow people down too much.
2475 Grayscale jpegs also don't work but that should be easy to fix.
2477 1999-10-29 Michael Fulbright <drmike@redhat.com>
2479 * src/testpixbuf.c: Added title to windows so you can identify
2480 progressive and file windows.
2482 1999-10-29 Michael Fulbright <drmike@redhat.com>
2484 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): Actually
2485 load the image handler when we determine the image type.
2487 * src/gdk-pixbuf-io.[ch] (gdk_pixbuf_load_module): Changed the
2488 previously static function load_image_handler () to
2489 a public function gdk_pixbuf_load_module (). It is needed in
2490 gdk-pixbuf-loader.c to load image handler modules. This function
2491 is different from gdk_pixbuf_get_module (), which only returns
2492 a reference to the required handler, because it actually loads
2493 the handler into memory. Both actions should possibly be combined
2494 in a convenience function since one w/o the other doesn't seem to
2497 1999-10-28 Jonathan Blandford <jrb@redhat.com>
2499 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): don't send a
2502 1999-10-28 Federico Mena Quintero <federico@redhat.com>
2504 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable): New
2505 function to render a portion of a pixbuf to a drawable. Ignores
2506 alpha information and takes in a GC.
2507 (gdk_pixbuf_render_to_drawable_alpha): New function to render a
2508 portion of a pixbuf to a drawable. It automatically creates a GC
2509 and a clipping mask for alpha pixbufs.
2511 1999-10-28 Jonathan Blandford <jrb@redhat.com>
2513 * src/gdk-pixbuf.h: turned convenience macros into convenience
2514 functions so some error checking could be added.
2516 * src/io-tiff.c (image_load_increment): started work on the tiff
2517 non-incremental loader.
2518 (image_begin_load): Finished the incremental loader.
2520 * src/io-gif.c (image_load_increment): started work on the gif
2523 * src/gdk-pixbuf-io.h: Changed ModuleType to GdkPixbufModule.
2525 1999-10-27 Federico Mena Quintero <federico@redhat.com>
2527 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_threshold_alpha): New
2528 function to threshold a pixbuf's alpha channel into a bitmap.
2530 * src/gdk-pixbuf.c (gdk_pixbuf_new): Fixed so that it will
2531 contemplate future extensions to ArtPixBuf's formats.
2533 * src/io-png.c (png_info_callback): Use the new API of gdk_pixbuf_new().
2535 * src/gdk-pixbuf.h (gdk_pixbuf_get_height): Added some convenience
2536 macros to fetch the ArtPixBuf's fields.
2538 1999-10-27 Havoc Pennington <hp@pobox.com>
2540 * src/testpixbuf.c (main): Display the progressive load
2542 * src/io-png.c (setup_png_transformations): Break transformation
2543 code into separate function
2544 (png_info_callback): Use setup_png_transformations
2546 1999-10-27 Havoc Pennington <hp@pobox.com>
2548 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): Check
2549 properly whether the XPM module has already been loaded
2550 (gdk_pixbuf_new_from_file): Check properly if loader module
2551 was already loaded (was checking if load symbol was present
2552 in order to decide whether to re-load; should check module !=
2553 NULL, then load != NULL)
2554 (image_handler_load): Check in present working directory,
2555 makes it easier to debug for now
2556 (file_formats): This array initializer was seriously on crack,
2557 was assigning a function pointer to a GModule*
2559 * src/testpixbuf.c (main): Change type of pixbuf_loader to GdkPixbufLoader*
2561 1999-10-27 Havoc Pennington <hp@pobox.com>
2563 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_finalize):
2564 Fix typo that prevented compilation
2565 (gdk_pixbuf_loader_destroy): ditto
2567 1999-10-27 Federico Mena Quintero <federico@redhat.com>
2569 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_new): Return a
2570 GdkPixbufLoader, not a GtkObject.
2571 (gtk_marshal_NONE__INT_INT_INT_INT): Made static.
2572 (gdk_pixbuf_loader_get_type): Documented.
2573 (gdk_pixbuf_loader_class_init): Initialize the parent class
2575 (gdk_pixbuf_loader_destroy): Added sanity checks. Call the parent
2576 class destroy function.
2577 (gdk_pixbuf_loader_new): Documented.
2578 (gdk_pixbuf_loader_finalize): Call the parent class finalize
2580 (gdk_pixbuf_loader_write): Use size_t for count.
2582 1999-10-27 Michael Fulbright <drmike@redhat.com>
2584 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_destroy): Fixed
2585 logic so we only try to close loader if it wasn't previously closed.
2587 1999-10-27 Michael Fulbright <drmike@redhat.com>
2589 * src/gdk-pixbuf-loader.c: Made sure image_loader struct member of
2590 pixbuf_loader properly initialized.
2592 * src/testpixbuf.c: Made sure we cleanup pixbuf_loader properly
2595 1999-10-26 Jonathan Blandford <jrb@redhat.com>
2597 * src/gdk-pixbuf-io.c (image_handler_load): load the vtable fully.
2599 * src/gdk-pixbuf-loader.c: Finished initial cut at the object.
2601 1999-10-26 Havoc Pennington <hp@pobox.com>
2603 * src/gdk-pixbuf-loader.h: fix signals
2605 * src/gdk-pixbuf-io.h: add new vtable fields
2608 1999-10-26 Jonathan Blandford <jrb@redhat.com>
2610 * src/gdk-pixbuf-loader.h: New Class. Beginning of progrssive
2613 1999-10-25 Federico Mena Quintero <federico@redhat.com>
2615 * configure.in (CFLAGS): Patch from Uwe Koloska
2616 <koloska@Rcs1.urz.tu-dresden.de> to fix a stupid typo of mine.
2618 1999-10-22 Havoc Pennington <hp@pobox.com>
2620 * src/io-xpm.c (mem_buffer): Clean up stupid
2621 increment-inside-array-dereference thing
2623 * src/testpixbuf.c: Add XPM data tests.
2625 * src/io-xpm.c: Make the XPM data buffer const, fix const
2626 correctness throughout the code.
2628 1999-10-22 Havoc Pennington <hp@pobox.com>
2630 * src/gdk-pixbuf.h: Export gdk_pixbuf_new_from_xpm_data()
2632 1999-10-22 Havoc Pennington <hp@pobox.com>
2634 * src/io-xpm.c (image_load_xpm_data): Export this symbol for
2635 loading an XPM from memory.
2637 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): New
2638 function, loads pixbuf from xpm data
2639 (image_handler_load): Add g_return_if_fail() to ensure the same
2640 module isn't loaded twice. Add g_module_symbol() to scan for XPM
2643 1999-10-22 Federico Mena Quintero <federico@redhat.com>
2645 * src/io-png.c (image_load): Patch from Kristian Hogsberg
2646 Kristensen <hogsberg@daimi.au.dk> to avoid allocating extra row
2647 buffers; the rows can be read in directly into the main pixel
2650 1999-10-20 Federico Mena Quintero <federico@redhat.com>
2652 * src/gdk-pixbuf-io.c (image_handler_load): Free path.
2654 1999-10-20 Federico Mena Quintero <federico@redhat.com>
2656 * configure.in: Bumped version number to 0.3.
2658 * src/Makefile.am (lbgdk_pixbuf_la_LDFLAGS): Added a libtool
2659 version number for the library.
2661 1999-10-20 Federico Mena Quintero <federico@redhat.com>
2663 * src/gdk-pixbuf.h (GdkPixbuf): Removed the unref_fn field. Now
2664 all memory management of the buffer is done by libart.
2666 * src/gdk-pixbuf.c (gdk_pixbuf_unref): Do destruction here.
2667 Removed gdk_pixbuf_destroy, gdk_pixbuf_duplicate.
2669 * src/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Implemented in
2670 terms of the libart functions. Removed the old code.
2672 * src/gdk-pixbuf-io.c (image_handler_load): Removed the save
2673 symbols. Saving will not be implemented in GdkPixbuf.
2675 * src/io-gif.c: Removed the saving stub.
2676 (image_load): Fixed memory management to fail gracefully if we run
2677 out of memory while loading the image. Close the gif file when we
2678 are done. This still needs more error handling for the DGif
2681 * src/io-jpeg.c (image_load): Some robustness fixes.
2683 * src/io-png.c: Removed the saving stuff.
2684 (image_load): Some memory management fixes.
2686 * src/io-tiff.c (image_load): Ditto.
2688 * src/io-xpm.c (pixbuf_create_from_xpm): Ditto.
2690 1999-10-18 Havoc Pennington <hp@pobox.com>
2692 * subautogen.sh: New name for macros/autogen.sh
2694 * autogen.sh: use subautogen.sh
2696 1999-10-18 Federico Mena Quintero <federico@redhat.com>
2698 * src/*: Reindented to use the GNOME Indentation. Renamed
2699 GdkPixBuf to GdkPixbuf, for consistency with the function names
2700 (and it is also easier to type) :-)
2702 1999-10-18 Havoc Pennington <hp@pobox.com>
2704 * configure.in: Use AM_PATH_GLIB instead of glib-config directly
2706 * src/Makefile.am: Re-enable testpixbuf with GTK_CFLAGS/GTK_LIBS
2708 1999-10-18 Havoc Pennington <hp@pobox.com>
2710 * Makefile.am (SUBDIRS): Remove "macros"
2712 * configure.in: Don't use GNOME_INIT, handle case where we are
2713 inside gnome-libs. AM_PATH_GTK for the GIF test
2715 * src/Makefile.am: Change flags to work without libgnomeui,
2716 comment out testpixbuf for now
2718 1999-10-18 Federico Mena Quintero <federico@redhat.com>
2720 * configure.in: Use $GTK_LIBS as the extra libs when checking for
2721 libgif/libungif, as they need the X libraries. Fixes bug #2472.
2723 1999-10-10 Cody Russell <bratsche@dfw.net>
2724 * src/gdk-pixbuf-drawable.c: core function now determines whether
2725 the requested geometry is on screen or not, and if some is not
2726 then the request is clamped to geometry that is on the screen.
2728 Changed 'pixbuf' to 'art_pixbuf' in core function.
2730 1999-10-08 Michael Fulbright <drmike@redhat.com>
2732 * src/gdk-pixbuf-data.c: Added to load rgb data from const data.
2734 * src/testpifbuf: Changed test program to display cdrom from rgb data
2735 if no filename given to test program.
2737 1999-10-07 Cody Russell <bratsche@dfw.net>
2738 * src/gdk-pixbuf-drawable.[ch]: Added. (Actually, Miguel committed
2739 them, but I wrote them).
2741 * src/gdk-pixbuf-drawable.h: Added a missing ; so things will now
2744 * src/Makefile.am: Added gdk-pixbuf-drawable.[ch] to
2745 libgdk_pixbuf_la_SOURCES and libgdk_pixbufinclude_HEADERS.
2747 * src/gdk-pixbuf-drawable.c: Added #include "gdk-pixbuf-drawable.h"
2750 * src/gdk-pixbuf-drawable.[ch]: Changed functions to return
2751 GdkPixBuf* instead of ArtPixBuf*.
2753 1999-09-22 Michael Meeks <michael@nuclecu.unam.mx>
2755 * src/gdk-pixbuf.c (gdk_pixbuf_new): created.
2756 (gdk_pixbuf_scale): use gdk_pixbuf_new + return a new scaled image.
2758 * src/gdk-pixbuf.h (struct _GdkPixBuf): Re-organise struct, + add
2759 GdkPixBufUnrefFunc + gdk_pixbuf_new.
2761 * src/io-jpeg.c (image_load): clean to use gdk_pixbuf_new.
2763 * src/io-xpm.c (_pixbuf_create_from_xpm): ditto.
2765 * src/io-tiff.c (image_load): ditto + fix leak
2767 * src/io-png.c (image_load): ditto + add more exit points; monitor.png
2768 crashes this module ( add warning :-)
2770 * src/io-bmp.c (image_load): ditto.
2772 * src/io-gif.c (image_load): ditto.
2774 1999-09-18 Michael Meeks <michael@nuclecu.unam.mx>
2776 * src/gdk-pixbuf.c (gdk_pixbuf_scale): Hack rgba support in so
2777 it doesn't crash scaling with alpha.
2779 1999-09-17 Federico Mena Quintero <federico@redhat.com>
2781 * src/io-bmp.c (image_load): Set the initial ref_count to 1.
2783 * src/io-gif.c (image_load): Likewise.
2785 * src/io-jpeg.c (image_load): Likewise.
2787 * src/io-png.c (image_load): Likewise.
2789 * src/io-tiff.c (image_load): Likewise.
2791 * src/io-xpm.c (_pixbuf_create_from_xpm): Likewise.
2793 * src/gdk-pixbuf-io.c (gdk_pixbuf_load_image): Added an assertion
2794 for the ref_count to be != 0.
2796 * src/gdk-pixbuf.c (gdk_pixbuf_ref): Be more paranoid with sanity
2798 (gdk_pixbuf_unref): Fix incorrect sanity check and comparison.
2800 1999-08-09 Federico Mena Quintero <federico@nuclecu.unam.mx>
2802 * src/io-png.c (image_save): Fixed compiler warnings. Fixed write
2803 to unallocated memory (row_ptr), and fixed its type as well. Take
2804 into account the ArtPixbuf's rowstride when assigning the row
2807 * src/gdk-pixbuf.c: Fixup includes.
2809 * src/gdk-pixbuf-io.c: Likewise.
2811 Sat Jul 31 19:19:47 CEST 1999
2813 * src/gdk-pixbuf-io.c:
2814 * src/io-png.c: Fixed two obvious C syntax bugs
2816 1999-07-29 Mark Crichton <crichton@gimp.org>
2818 * src/io-png.c (image_save): Added PNG saving function
2820 * src/gdk-pixbuf-io.c: Changed image_save function format. Now it's
2821 image_save(GdkPixBuf *p, FILE *f, ...)
2824 1999-07-26 Michael Zucchi <mzucchi@denr.sa.gov.au>
2826 * src/Makefile.am (*_LIB): Only build the relevant loaders which
2827 require extra libraries if we actually have those libraries.
2829 1999-07-23 Richard Hestilow <hestgray@ionet.net>
2831 * src/gdk-pixbuf.h: Include glib.h as it uses g* datatypes
2832 * gdk_pixbufConf.sh.in: Added for gnome-config
2834 * configure.in: Modified to generate gdk_pixbufConf.sh
2836 1999-07-20 Mark Crichton <crichton@gimp.org>
2838 * src/gdk-pixbuf.c (gdk_pixbuf_rotate): Fixed rotation. Now a bbox
2839 calculation needs to be done.
2841 1999-07-18 Larry Ewing <lewing@gimp.org>
2846 * src/io-jpeg.c: Fix a few memory leaks in the, most of them in
2847 error cases but one or two in the common case. There are probably
2848 a few small ones left.
2850 1999-07-18 Mark Crichton <crichton@gimp.org>
2852 * configure.in: removed version.h.
2854 * src/gdk-pixbuf-io.c (pixbuf_check_tiff): Minor readability
2857 1999-07-17 Mark Crichton <crichton@gimp.org>
2859 * src/gdk-pixbuf.c: Removed gdk_pixbuf_free, redundant code.
2860 (gdk_pixbuf_rotate): Added pixbuf rotation code.
2861 (gdk_pixbuf_scale): Changed // comments to /* */
2863 * src/gdk-pixbuf.h (gdk_pixbuf_destroy): Added gdk_pixbuf_destroy
2866 1999-07-16 Larry Ewing <lewing@gimp.org>
2868 * src/testpixbuf.c (expose_func): reverted the expose everything
2869 changes, I'm not sure why these went in.
2870 (config_func): bring this up to date with the new pixbuf_scale
2873 * src/gdk-pixbuf-io.c: added a couple of warnings to the module
2874 loading code so that poeple can diagnose problems better.
2876 * src/gdk-pixbuf.c (gdk_pixbux_scale): fix the borkedness, also it
2877 no longer allocates a new pixbuf, which make things nicer for the
2878 rest of the code. Unfortunately there is still a problem with
2879 scaling rgba images.
2881 1999-07-16 Mark Crichton <crichton@gimp.org>
2883 * src/testpixbuf.c (config_func): ConfigureEvent handler. This
2884 calls gdk_pixbuf_scale. However, something is not working.
2885 N.B.: current pixmap is now stored in user_data with a key of
2888 * src/gdk-pixbuf.c (gdk_pixbuf_scale): Implemented scaling function.
2889 Something is still borked, however.
2891 1999-07-15 Larry Ewing <lewing@gimp.org>
2893 * src/io-jpeg.c (image_load): add raph@gimp.org's fix to the jpeg
2896 * src/testpixbuf.c (main): fix up the file routines a little so
2897 that you can load multiple files given the file names
2899 1999-07-14 Larry Ewing <lewing@gimp.org>
2901 * src/testpixbuf.c (expose_func): added an almost proper expose
2902 handler for testpixbuf
2904 1999-07-13 Mark Crichton <crichton@gimp.org>
2906 * configure.in: Fixed GIF check. Replaced " with '
2907 * src/gdk-pixbuf.c: More (minor) work on gdk_pixbuf_scale
2909 1999-07-13 Mark Crichton <crichton@gimp.org>
2911 * configure.in: I am a bonehead. Added gif-lib check.