1 Thu Sep 20 17:22:48 2001 Owen Taylor <otaylor@redhat.com>
3 * io-tiff.c (gdk_pixbuf__tiff_image_load): On OSF, apparently fseek()
4 works in some on-demand way, so the fseek gdk_pixbuf_new_from_file() doesn't
5 work here since we are using the raw file descriptor. So, we call lseek()
6 on the fileno(f) before using it. (#60840).
8 2001-09-20 James Henstridge <james@daa.com.au>
10 * Makefile.am (gdk-pixbuf-enum-types.c): same change as in pango,
11 so that flags types are registered as flags rather than enums (not
12 that there are any flags here at the moment).
14 Wed Sep 19 00:28:24 2001 Owen Taylor <otaylor@redhat.com>
16 * Makefile.am (gdk_pixbuf_headers): Don't include
17 gkd-pixbuf-features.h here since is in builddir
18 and confuses autogen rules.
20 * Makefile.am: Don't += variables before they have values,
21 automake-1.5 doesn't like it.
23 * Makefile.am: Fix srcdir != builddir for gdk-pixbuf-enum-types.c.
25 * Makefile.am: The whitespace strikes back.
27 2001-09-17 Matt Wilson <msw@redhat.com>
29 * Makefile.am (libpixbufloader_xbm_la_LDFLAGS): removed duplicate
30 LDFLAGS definition, use the -avoid-version one.
31 (libpixbufloader_tga_la_LDFLAGS): likewise
33 Mon Sep 17 11:49:02 2001 Owen Taylor <otaylor@redhat.com>
35 * pixops/*: Mirror GdkInterpType to PixopsInterpType
36 to avoid including gdk-pixbuf headers.
38 2001-09-16 James Henstridge <james@daa.com.au>
40 * .cvsignore: add generated files to ignore list.
42 * gdk-pixbuf.h: include gdk-pixbuf-enum-types.h
44 * Makefile.am: add rules to build gdk-pixbuf-enum-types.[ch]
46 Fri Sep 14 23:22:12 2001 Matthias Clasen <matthiasc@poet.de>
48 * io-pnm.c (pnm_read_header): Use GDK_PIXBUF_ERROR_CORRUPT_IMAGE,
49 not GDK_PIXBUF_ERROR_HEADER_CORRUPT. (#58308)
51 Fri Sep 14 22:53:45 2001 Matthias Clasen <matthiasc@poet.de>
53 * io-jpeg.c (gdk_pixbuf__jpeg_image_begin_load): Handle
54 out-of-memory situation better.
56 * io-pnm.c: Robustness fixes for pnm loader
58 * io-gif.c: Make gif loader survive TEST_RANDOMLY_MODIFY
60 * io-xpm.c (parse_color): detect very long color strings
62 All of the above from Matthias Clasen <matthiasc@poet.de>,
63 the remaining from Soeren Sandmann <sandmann@daimi.au.dk>.
65 * test-images.h: add tests:
66 - four valid ppm's, eight invalid (matthiasc@poet.de)
67 - one invalid xpm (matthiasc@poet.de)
68 - one valid tga, one invalid (sandmann@daimi.au.dk)
69 - one invalid tiff (sandmann@daimi.au.dk
71 * test-loaders.c: enable tests for ppm, png, gif, tga, tiff, xpm
73 * io-tiff.c (gdk_pixbuf__tiff_image_stop_load): TIFFClientOpen can
74 fail - detect it when it happens
76 * io-tga.c (gdk_pixbuf__tga_load_increment): Fail if there is too
79 * gdk-pixbuf-io.c: moved wbmb check after ico check to avoid false
82 Fri Sep 14 00:30:48 2001 Tim Janik <timj@gtk.org>
84 * Makefile.am: don't used BUILT_SOURCES to build marshal
85 files, as in conjunction with stamp files, this can
86 lead to endless rebuilding loops.
88 Tue Sep 4 00:22:07 2001 Owen Taylor <otaylor@redhat.com>
90 * Makefile.am: Fix EXTRA_DIST for gdk-pixbuf-csource.1
92 Tue Sep 4 03:09:52 2001 Tim Janik <timj@gtk.org>
94 * gdk-pixbuf-csource.1: new file, manual page for
95 the publically installed gdk-pixbuf-csource utility.
97 Thu Aug 30 08:30:03 2001 Matthias Clasen <matthiasc@poet.de>
99 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Propagate
100 errors from gdk_pixbuf_loader_load_module.
102 Thu Aug 30 08:27:37 2001 Matthias Clasen <matthiasc@poet.de>
104 * io-png.c (png_row_callback): Check that row_num is valid.
106 Tue Aug 28 21:05:26 2001 Matthias Clasen <matthiasc@poet.de>
108 * io-bmp.c (OneLine): Emit area_updated signal with proper
109 area information. (#52002)
111 Tue Aug 28 20:03:43 2001 Matthias Clasen <matthiasc@poet.de>
113 * test-loaders.c (test_loader): Catch errors at close time.
114 * test-loaders.c (main): Remove C++ comments.
116 2001-08-21 Matthias Clasen <matthiasc@poet.de>
118 * Makefile.am, gdk-pixbuf-io.c, pixbufloader_tga.def,
119 io-tga.c: Add tga loader, patch by Nicola Girardi. (#56067)
121 2001-08-20 Matthias Clasen <matthiasc@poet.de>
123 * test-images.h, test-loaders.c: Add ico and wbmp tests.
124 * io-jpeg.c (gdk_pixbuf__jpeg_image_save): Fail with a suitable
125 error if buffer allocation fails.
126 * io-ico.c: Make .ICO loader more robust.
127 All of these are due to sandmann@daimi.au.dk (#50187)
129 2001-08-19 Sven Neumann <sven@gimp.org>
131 * pixops/pixops.c: applied some simple but effective optimizations
132 to pixops_composite_nearest() and pixops_composite_color_nearest().
134 2001-08-07 Sven Neumann <sven@gimp.org>
136 * gdk-pixbuf.c (gdk_pixbuf_fill): a comment asked to optimize this
137 function, so that's what I did.
139 2001-08-06 Kjartan Maraas <kmaraas@gnome.org>
141 * gdk-pixdata.c: Fix a typo.
143 2001-07-30 Hans Breuer <hans@breuer.org>
145 * pixops/makefile.msc : new file
146 * makefile.msc : use it to complete the build
148 2001-07-20 Hans Breuer <hans@breuer.org>
150 * gdk-pixdata.c : don't 'g_tohl (*istream++)', but move
151 pointer increment out of the macro, because at least one
152 compiler (msvc 5.0) gets confused otherwise (applies the
155 * gdk_pixbuf.def : updated exports
157 * makefile.msc : reflect gdk-pixbuf-csource changes
159 2001-07-17 Darin Adler <darin@bentspoon.com>
161 * gdk-pixbuf-csource.c: Add missing <stdlib.h> include.
162 * io-png.c: (setup_png_transformations): Add ifdef so we compile
163 without warnings with G_DISABLE_CHECKS on.
164 * io-pnm.c: (gdk_pixbuf__pnm_image_load_increment): Add a missing
166 * io-wbmp.c: (getin), (get_mbi): Add a missing const.
167 * io-xbm.c: (gdk_pixbuf__xbm_image_load_real): Get rid of some
168 unused locals and add an initial value to quiet the compiler's
169 unintialized variable warning.
170 * pixops/pixops.c: Put an ifdef around some dead code.
172 Thu Jul 5 10:17:15 2001 Owen Taylor <otaylor@redhat.com>
174 * pixops/Makefile.am (noinst_LTLIBRARIES): Switch
175 over to the new include flags AC_SUBST(). (Problem
176 pointed out by Mikael Hermansson.)
178 2001-06-29 Havoc Pennington <hp@redhat.com>
180 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): fix for
183 Thu Jun 28 21:54:19 2001 Owen Taylor <otaylor@redhat.com>
185 * make-inline-pixbuf.c test-gdk-pixbuf.c test-loaders.c
186 gdk-pixbuf-csource.c: Fix args to g_type_init ().
188 2001-06-28 Havoc Pennington <hp@pobox.com>
190 * gdk-pixdata.c: <string.h>
192 * gdk-pixbuf-io.c (get_libdir): fix typo in dll name (aren't we
193 also leaking memory here from g_strdup_printf?)
195 Tue Jun 26 09:48:02 2001 Tim Janik <timj@gtk.org>
197 * Makefile.am (noinst_PROGRAMS): get rid of make-inline-pixbuf
199 * gdk-pixbuf-data.[hc]: provide gdk_pixbuf_new_from_stream()
200 instead from gdk_pixbuf_new_from_inline().
202 * gdk-pixdata.[hc]: auxillary GdkPixdata structure, public
203 installed API for applications that need to serialize/deserialize
204 on their own (gimp, BEAST).
206 * gdk-pixbuf/gdk-pixbuf-csource.c: provide publically installed
207 program that can dump images in CSource format and Pixbuf
208 stream format. supports RLE encoding, MACRO formatting etc...
211 Mon Jun 25 00:28:11 2001 Owen Taylor <otaylor@redhat.com>
213 * Makefile.am: Actually update timestamps, so rules don't
216 2001-06-11 Havoc Pennington <hp@redhat.com>
218 * Makefile.am (stamp-gdk-pixbuf-marshal.c): glib_genmarshal
219 already includes top_builddir
221 2001-06-08 Havoc Pennington <hp@redhat.com>
223 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_load_module): remove
224 bogus g_return_if_fail
226 * io-gif.c (gif_get_lzw): if delay time is 0 or smaller than
227 likely timeout resolution, set it to an arbitrarily-chosen short
229 Fixes bug #55953 from warmenhoven@yahoo.com
231 2001-06-07 Havoc Pennington <hp@redhat.com>
233 * Makefile.am: use Owen's new way of doing stampfiles/generated
236 2001-06-07 Havoc Pennington <hp@redhat.com>
238 * Makefile.am (gdk-pixbuf-marshal.c): fix up the glib-genmarshal path
240 2001-06-05 Havoc Pennington <hp@redhat.com>
242 * test-loaders.c (main): use putenv not setenv, reported by
245 2001-05-08 Havoc Pennington <hp@redhat.com>
247 * gdk-pixbuf-util.c (gdk_pixbuf_add_alpha): docs fixup,
248 and fix behavior to still subst color if the original image
251 2001-06-04 Havoc Pennington <hp@redhat.com>
253 * io-pnm.c (pnm_skip_whitespace): patch from Szekeres Istvan,
256 2001-06-01 Havoc Pennington <hp@redhat.com>
258 Apply patch from sandmann@daimi.au.dk, with some tweaks.
259 Makes things a bit more robust, and adds test-loaders.c
260 which is good for finding further robustness bugs to fix.
262 * io-tiff.c: Try to work around libtiff suckiness a bit;
263 put a giant thread lock on the whole loader,
264 paranoically check both whether error handlers were called and
265 also whether functions return false. Handle case where width or
266 height is 0. Various cleanups.
268 * io-png.c (gdk_pixbuf__png_image_stop_load): only unref pixbuf
270 (png_error_callback): apparently libpng expects you to longjmp out
273 * io-gif.c (struct _GifContext): remove unused "pixbuf" field
274 (lzw_read_byte): change "Mail jrb if this fails" g_warning
276 (gif_get_lzw): check for out-of-memory
277 (gif_prepare_lzw): catch/report an error
278 (new_context): use try_malloc, since GifContext is nearly 70K
279 (gdk_pixbuf__gif_image_load_increment): set context->buf to NULL
280 so we don't crash later.
282 * Makefile.am: Add test-loaders
284 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): handle context ==
287 2001-05-29 Darin Adler <darin@eazel.com>
289 * gdk-pixbuf.h: Fix prototype to use "(void)" instead of "()".
291 Mon May 28 14:21:35 2001 Jonathan Blandford <jrb@redhat.com>
293 * io-bmp.c: Patch from Helmethead <hoshem@mel.comcen.com.au> to
294 fix up bmp decoder to:
295 - adds 16 bpp bmp support (bug #53884)
296 - adds OS/2 1.x format bmp support (bug #54964)
297 - adds 4 bpp RLE compressed bmp support
298 - adds 1 bpp colormap support
299 - fixes negative height (top down) bmp support
301 2001-05-25 Hans Breuer <hans@breuer.org>
303 * gdk_pixbuf.def : reflect Havoc's recent api change
305 Sun May 20 12:53:49 2001 Owen Taylor <otaylor@redhat.com>
307 * Makefile.am (libgdk_pixbuf_1_3_la_LDFLAGS): Remove an
310 Sun May 13 11:59:11 2001 Owen Taylor <otaylor@redhat.com>
312 * Makefile.am: Make modules depend on libgdk_pixbuf.la.
314 2001-05-04 Havoc Pennington <hp@redhat.com>
316 * pixops/pixops.c (pixops_process): merge fix from stable: Patch
317 from hoshem@mel.comcen.com.au to fix nonzero X offsets. Fixes
320 * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest): merge
321 from stable: Patch from OKADA Mitsuru <m-okada@fjb.co.jp> to fix
322 confusion of using "src" instead of "p".
323 (pixops_composite_color_nearest): Use a more accurate (and
324 correct, to begin with) compositing method. This cures checks
325 showing through on images with no alpha.
327 * gdk-pixbuf.c (gdk_pixbuf_fill): fix bug that left some trailing
330 * gdk-pixbuf-io.h: fix UpdatedNotifyFunc to use signed ints
332 * gdk-pixbuf-loader.h (struct _GdkPixbufLoaderClass): Change
333 area_updated signal to use signed ints. Removed animation-related
336 * io-gif.c, io-gif-animation.h, io-gif-animation.c: Massive
339 * gdk-pixbuf-animation.c: Add GdkPixbufAnimationIter to abstract
340 all the pesky details. Remove old frame-based API. Make
341 GdkPixbufAnimation an abstract base class, derived by the loaders.
343 Sun Apr 22 15:51:32 2001 Owen Taylor <otaylor@redhat.com>
345 * Makefile.am (LDADDS): Add $(MATH_LIB).
347 2001-04-18 Havoc Pennington <hp@redhat.com>
349 * gdk-pixbuf.c (gdk_pixbuf_fill): Function to fill pixbuf with a
352 Wed Apr 4 01:41:02 2001 Tim Janik <timj@gtk.org>
354 * pixops/Makefile.am (noinst_LTLIBRARIES): include $top_srcdir
355 so we don't try to get <gtk/gtkobject.h> from standard search
358 * Makefile.am (gdk-pixbuf-marshal.c): use deps from srcdir.
359 add gdk-pixbuf-marshal.list to EXTRA_DIST.
360 take gdk-pixbuf-marshal.h out of _la sources.
362 2001-03-19 Tor Lillqvist <tml@iki.fi>
364 * makefile.mingw.in: Handle gdk-pixbuf-marshal.c.
366 * gdk_pixbuf.def: Update.
368 * pixbufloader_*.def: Just export the fill_vtable functions now.
370 2001-03-18 Mike Kestner <mkestner@ameritech.net>
372 * make-inline-pixbuf.c (main): Added logic to remove output when
375 2001-03-14 Havoc Pennington <hp@redhat.com>
377 * Makefile.am (gdk-pixbuf-marshal.c): Use different temporary file
378 from gdk-pixbuf-marshal.h, fixes parallel makes.
380 Thu Mar 1 04:01:57 2001 Tim Janik <timj@gtk.org>
382 * test-gdk-pixbuf.c: fixed includes.
384 2001-02-18 Havoc Pennington <hp@pobox.com>
386 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): prepend underscore
387 (gdk_pixbuf_get_named_module): prepend underscore
388 (gdk_pixbuf_get_module): prepend underscore
390 2001-02-19 Havoc Pennington <hp@redhat.com>
392 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): const fix
394 2001-02-17 Havoc Pennington <hp@pobox.com>
396 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_new_with_type): docs
398 2001-02-07 Alexander Larsson <alexl@redhat.com>
400 * io-xpm.c (free_buffer):
401 Use g_free, since the buffer is allocated with g_try_alloc().
403 2001-02-06 Christophe Merlet <redfox@eikonex.org>
405 * gdk-pixbuf-data.c: Fixes a minor typo.
407 Sun Feb 4 07:59:57 2001 Tim Janik <timj@gtk.org>
409 * gdk-pixbuf.h: DOH! don't include glib/gobject.h but glib-object.h,
410 we finally need the gobject->gruntime rename.
412 * *.c: scratched calls to g_type_init(), there's simply no point in
413 doing that, use gtk_init().
415 2001-02-01 Havoc Pennington <hp@pobox.com>
417 * gdk-pixbuf-loader.c, gdk-pixbuf-loader.h: rename "private" field
418 in struct to "priv" for C++
420 2001-01-31 Havoc Pennington <hp@pobox.com>
422 * gdk-pixbuf.c: include glib-object.h instead of gvaluetypes.h
424 2001-01-26 Havoc Pennington <hp@redhat.com>
426 * gdk-pixbuf-io.c (mname): fix included modules case.
428 2001-01-22 Havoc Pennington <hp@redhat.com>
430 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): check errors
431 from gdk_pixbuf_load_module
433 2001-01-22 Havoc Pennington <hp@redhat.com>
435 * Makefile.am: Add built marshaller files to support
436 GdkPixbufLoader signals
438 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): have
439 GDK_PIXBUF_MODULEDIR unconditionally replace the compiled-in
440 module location, rather than acting as a fallback, because we are
441 using GDK_PIXBUF_MODULEDIR to use gdk-pixbuf before installing it.
443 * gdk-pixbuf.h: include gdk-pixbuf-loader.h
445 * gdk-pixbuf-loader.h, gdk-pixbuf-loader.c: Move back over here
446 from gtk, and add error to close(), because stop_load may do
447 parsing of the image.
449 * pixops/have_mmx.S (_pixops_have_mmx): add newline at end of file
451 * io-*.c: make individual operations static, and add fill_vtable
452 functions which are exported. Fix the collection of type warnings
453 that surfaced, including a number of functions that didn't
454 properly take a GError and some that weren't
455 const-correct. Involved adding error handling for a few loaders.
457 * gdk-pixbuf-io.h: Add error reporting to stop_load function
459 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): change to just look up
460 a function that fills in the GdkPixbufModule vtable, instead of
461 looking up all the image functions individually; this means we
462 can get type safety within modules for the loader functions.
463 Also it means you don't have to keep the statically compiled and
464 GModule versions in sync.
466 * test-gdk-pixbuf.c (main): remove gdk_pixbuf_init()
468 * make-inline-pixbuf.c (main): remove call to gdk_pixbuf_init()
470 * gdk-pixbuf.h: nuke gdk_pixbuf_init()
472 * gdk-pixbuf-animation.c (gdk_pixbuf_frame_get_type): g_type_init
475 * gdk-pixbuf.c (gdk_pixbuf_get_type): g_type_init () here
477 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_get_type):
480 2001-01-20 John Harper <jsh@eazel.com>
482 * io-xbm.c: new pixbuf loader, for X bitmap files. Basically a
483 collision between Xlib's RdBitF.c and io-tiff.c
485 * gdk-pixbuf-io.c, Makefile.am, pixbufloader_xbm.def: added
488 [ merged from stable gdk-pixbuf module. Untested, but it
489 compiles, and works fine in the stable module ]
491 2001-01-18 Tor Lillqvist <tml@iki.fi>
493 * gdk-pixbuf-io.c (get_libdir): (Win32) Use the new
494 g_win32_get_package_installation_subdirectory() function. No need
495 to include windows.h.
496 (gtk_win32_get_installation_directory): Remove this then.
498 2001-01-01 Havoc Pennington <hp@redhat.com>
500 * Makefile.am (libgdk_pixbuf_1_3_la_LDFLAGS): add
501 @LIBTOOL_EXPORT_OPTIONS@
503 2000-12-30 Tor Lillqvist <tml@iki.fi>
505 * gdk_pixbuf.def: Update.
507 2000-12-16 Havoc Pennington <hp@pobox.com>
509 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file): ref
510 the pixbuf in the frame, so we can use gdk_pixbuf_frame_free
511 (gdk_pixbuf_frame_copy): new function
512 (gdk_pixbuf_frame_free): new function
513 (gdk_pixbuf_frame_get_type): new function
514 (GDK_TYPE_PIXBUF_FRAME): macro to get type for GdkPixbufFrame
516 Tue Nov 14 11:51:26 2000 Owen Taylor <otaylor@redhat.com>
518 * Makefile.am: Add -avoid-version for all modules.
520 2000-11-13 Havoc Pennington <hp@redhat.com>
522 * io-png.c (png_simple_error_callback): fix error message to not
523 say "save" since it's used for loading
525 2000-11-11 Hans Breuer <Hans@Breuer.Org>
527 * gdk-pixbuf-io.c : Fix all function prototype macros for self
528 contained image handlers (!USE_G_MODULE). Files to save should
529 be opened in binary mode, fopen(s, "wb").
531 * io-xpm.c : added HAVE_UNISTD_H condition
533 2000-11-11 Tor Lillqvist <tml@iki.fi>
535 * gdk_pixbuf.def: Add gdk_pixbuf_new_subpixbuf.
537 * io-tiff.c (gdk_pixbuf__tiff_image_begin_load): Use
538 g_file_open_tmp() (just added to GLib) instead of mkstemp() (or
539 mktemp() and open()).
541 * io-xpm.c (gdk_pixbuf__xpm_image_begin_load): Ditto.
543 2000-11-01 Havoc Pennington <hp@pobox.com>
545 * gdk-pixbuf.c (gdk_pixbuf_new_subpixbuf): New function to create
546 a pixbuf pointing to a subregion of another pixbuf.
548 2000-10-16 Tor Lillqvist <tml@iki.fi>
550 * gdk-pixbuf-io.c: Define also m_save (for the non-gmodule case).
552 2000-10-16 Havoc Pennington <hp@redhat.com>
554 * gdk-pixbuf-io.c (gdk_pixbuf_get_module)
555 (gdk_pixbuf_get_named_module) (gdk_pixbuf_load_module):
556 add error reporting here also
558 * make-inline-pixbuf.c (main): use GError
560 * io-xpm.c: include unistd.h
562 * gdk-pixbuf-util.c: include string.h
564 * io-*.c: add error reporting
566 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file): add
569 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file): Add error reporting
571 * gdk-pixbuf-io.h: Add GError** to load_increment and load
574 * gdk-pixbuf-io.c (gdk_pixbuf_save) (gdk_pixbuf_savev): return
575 a G_FILE_ERROR if we fail to write or close the file.
577 * gdk-pixbuf.h: remove GDK_PIXBUF_ERROR_IO, instead we'll use
578 G_FILE_ERROR_*. Rename enum to GdkPixbufError, properly following
579 the GError naming rules. Add GError** to load functions.
581 2000-10-06 Havoc Pennington <hp@redhat.com>
583 * gdk-pixbuf.h: add GdkPixbufAlphaMode
585 2000-10-06 Havoc Pennington <hp@redhat.com>
587 This entry is a summary of the merged-in changes from 1.0.
588 Relevant original ChangeLog entries are spliced in after
589 this entry; the files they refer to are from the 1.0
592 * pixops/pixops.c (pixops_composite_nearest): sync a small fix
595 * io-xpm.c (xpm_seek_string): add fscanf error check from 1.0
596 Add progressive loader from 1.0
598 * io-tiff.c (gdk_pixbuf__tiff_image_begin_load): mem leak fixes
601 * io-pnm.c: new version from 1.0 tree
603 * io-jpeg.c (gdk_pixbuf__jpeg_image_load): sync from 1.0, use
606 * io-gif.c (lzw_read_byte): sync from 1.0, change a g_error to
608 (gif_get_next_step): return 0 here, sync from 1.0
610 * gdk-pixbuf-util.c: sync email address change for Cody
613 2000-09-11 Jeffrey Stedfast <fejj@helixcode.com>
615 * gdk-pixbuf/io-pnm.c: Pretty much totally rewrote again because
616 last nights code was still "broken". Should now properly handle
617 all error conditions gracefully.
619 2000-09-10 Jeffrey Stedfast <fejj@helixcode.com>
621 * gdk-pixbuf/io-pnm.c: Rewrote.
623 2000-09-09 Federico Mena Quintero <federico@helixcode.com>
625 * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest): Compute
626 the correct dest offset.
628 2000-08-25 Federico Mena Quintero <federico@helixcode.com>
630 * gdk-pixbuf/io-xpm.c: #include <unistd.h>
632 2000-08-05 Larry Ewing <lewing@helixcode.com>
634 * gdk-pixbuf/io-tiff.c: stop leaking context->tempname.
636 * gdk-pixbuf/io-xpm.c: same as above.
638 2000-07-26 Michael Meeks <michael@helixcode.com>
640 * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_load): make
643 2000-07-21 Larry Ewing <lewing@helixcode.com>
645 * gdk-pixbuf/io-xpm.c: add a fake progressive loader so that
646 xpm at least supports the progressive interface like the one in
647 io-tiff.c. This should be reimplemented as an actual progressive
650 2000-07-19 Jonathan Blandford <jrb@redhat.com>
652 * demo/pixbuf-demo.c (update_timeout): changed scaling level to
654 * gdk-pixbuf/testpixbuf.c (update_timeout): Patch from michael
655 meeks to handle errors better.
657 2000-10-07 Tor Lillqvist <tml@iki.fi>
660 * pixbufloader_jpeg.def
661 * pixbufloader_png.def: Add new entry points.
663 * makefile.mingw.in: Use libintl.
665 2000-10-06 Havoc Pennington <hp@redhat.com>
667 * gdk-pixbuf-io.c (gdk_pixbuf_save): s/format/type/g to be
668 consistent with gdk_pixbuf_loader_new_with_type().
669 Return runtime error if a module is missing.
671 * gdk-pixbuf.h: add GDK_PIXBUF_ERROR_UNKNOWN_TYPE
673 2000-10-05 Havoc Pennington <hp@redhat.com>
675 Pixbuf saving, patch from David Welton.
677 * Makefile.am (GDK_PIXBUF_LIBS): add INTLLIBS
678 (libgdk_pixbuf_1_3_la_SOURCES): add gdk-pixbuf-i18n.h
680 * gdk-pixbuf-i18n.h: Add _() to gdk-pixbuf
682 * io-png.c (gdk_pixbuf__png_image_save): PNG save routine.
684 * io-jpeg.c (gdk_pixbuf__jpeg_image_save): JPEG save routine.
686 * gdk-pixbuf-io.c (gdk_pixbuf_save):
687 (gdk_pixbuf_savev): Implement pixbuf saving routines
689 * gdk-pixbuf.c (gdk_pixbuf_error_quark): pixbuf error quark
692 * gdk-pixbuf.h: Add public save routines; add pixbuf error
695 * gdk-pixbuf-io.h: Add save function to GdkPixbufModule
697 2000-10-05 Dan Winship <danw@helixcode.com>
699 * io-png.c, io-tiff.c, io-xpm.c: Fix comments to not claim that
700 all three of these files are the JPEG image loader. (From
703 2000-10-03 Tor Lillqvist <tml@iki.fi>
705 * makefile.mingw.in: Add rule for make-inline-pixbuf. Use
706 gdk-pixbuf's version number in the rule for makefile.mingw itself.
708 * gdk_pixbuf.def: Add new entry points.
710 2000-09-26 Havoc Pennington <hp@redhat.com>
712 * gdk-pixbuf-util.c (gdk_pixbuf_saturate_and_pixelate): Add this
713 function here, instead of putting it in a private GTK+ file.
715 * gdk-pixbuf-private.h (GdkPixbufInlineFormat): include an
716 enum here for the known formats of inlined pixbufs.
717 Also, #define our file magic here.
719 2000-06-23 Havoc Pennington <hp@redhat.com>
721 * make-inline-pixbuf.c: Small program that creates C variable
722 declarations of inline pixbuf data. This can be read
723 by gdk_pixbuf_new_from_inline.
725 * gdk-pixbuf.h (gdk_pixbuf_new_from_inline): New function to read
726 inline pixbuf data and create a pixbuf from it.
728 * gdk-pixbuf-data.c (gdk_pixbuf_new_from_inline): implement here
730 2000-09-07 Tor Lillqvist <tml@iki.fi>
732 * makefile.mingw.in: Use own version number for gdk-pixbuf DLLs,
735 2000-08-12 Tor Lillqvist <tml@iki.fi>
737 * gdk_pixbuf.def: Add missing entry point.
739 2000-08-10 Havoc Pennington <hp@redhat.com>
741 * Makefile.am (EXTRA_DIST): The *.def files had the wrong names
742 (s/pixbuf_/pixbufloader_)
744 2000-08-02 Tor Lillqvist <tml@iki.fi>
750 * io-wbmp.c: Conditionalise inclusion of <unistd.h>.
752 * makefile.mingw.in: List loaders alphabetically. Add the wbmp
753 one. Fix names of DLLs to have '-' instead of '_'.
755 2000-07-31 Elliot Lee <sopwith@redhat.com>
756 * io-wbmp.c: Some bug fixes - now tested to work.
758 2000-07-27 Elliot Lee <sopwith@redhat.com>
760 * gdk-pixbuf-io.h, gdk-pixbuf-io.c: Add
761 gdk_pixbuf_get_named_module() function to facilitate above change
762 * io-wbmp.c, pixbufloader_wbmp.defs, gdk-pixbuf-io.c, Makefile:
763 Implement loader for WBMP format.
764 * io-bmp.c: Don't malloc a temporary buffer - use stack instead.
766 2000-07-23 Tor Lillqvist <tml@iki.fi>
771 * pixops/makefile.mingw.in
772 * pixbuf_*.def: New files.
775 * pixops/Makefile.am: Add them. Add rule to generate makefile.mingw.
777 * gdk-pixbuf-io.c (gtk_win32_get_installation_directory):
778 New function, to get the GTK+ installation directory from
779 the Windows Registry, where the installation program
780 for whatever software includes GTK+ has stored it.
782 Used to avoid having hardcoding the directory where to look for
783 loaders. This function is needed by gtk, too, so it should
784 really be just in one place. Maybe a small static library
785 one level up from here?
787 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file)
788 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file):
789 Open file in binary mode. This *is* standard C. (No-op on Unix,
792 * io-jpeg.c: If we don't HAVE_SIGSETJMP, use normal setjmp().
794 * io-tiff.c: Use g_get_tmp_dir(). If we don't HAVE_MKSTEMP, use
796 (gdk_pixbuf__tiff_image_stop_load): g_free() also the tempname.
798 * pixops/*.S: The Gas from mingw32 doesn't like the .type
799 pseudo-op. Conditionalise on __MINGW32__, but probably
800 should conditionalise on Gas version instead? Or could we
801 do without .type on all systems?
803 * pixops/timescale.c: Use g_get_current_time()
804 instead of gettimeofday().
806 Sat Jul 22 10:57:22 2000 Owen Taylor <otaylor@redhat.com>
808 * Makefile.am (test_gdk_pixbuf_LDADD): Remove -lgmodule
810 Tue Jul 11 11:26:42 2000 Owen Taylor <otaylor@redhat.com>
812 * gdk-pixbuf.c: Add <string.h> include.
814 Tue Jul 11 06:20:14 2000 Tim Janik <timj@gtk.org>
816 * io-gif.c (gdk_pixbuf__gif_image_load_animation):
817 * gdk-pixbuf-data.c (gdk_pixbuf_new_from_data):
818 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file):
819 use g_object_new() instead of g_type_create_instance() which
820 is a private function for fundamental type implementations.
822 Thu Jul 6 11:49:47 2000 Owen Taylor <otaylor@redhat.com>
824 * Makefile.am (libgdk_pixbuf_la_LDFLAGS): Use GTK+ version
825 soname scheme for gdk-pixbuf.
827 2000-06-21 Havoc Pennington <hp@pobox.com>
829 * gdk-pixbuf.c: Convert GdkPixbuf to GObject, leaving it opaque
830 (i.e. derivation is not allowed, and there are no virtual methods
832 (gdk_pixbuf_preinit): Call g_type_init() here.
833 (gdk_pixbuf_init): Add a user-friendly init function, for users
834 of standalone gdk-pixbuf
836 * gdk-pixbuf-animation.c: Convert to GObject, in the same
837 way GdkPixbufAnimation was done.
839 * gdk-pixbuf.h: Remove gdk_pixbuf_set_unref_handler() and
840 gdk_pixbuf_finalize() from API, since these are broken and don't
841 make sense with new GObject stuff.
843 Wed Jun 21 16:02:48 2000 Owen Taylor <otaylor@redhat.com>
845 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): Add feature to
846 support a GDK_PIXBUF_MODULEDIR env variable as a secondary
849 2000-06-10 Federico Mena Quintero <federico@helixcode.com>
851 * demo/pixbuf-demo.c: It was cold and rainy this Saturday morning,
852 so I needed something to warm my thighs. Running plain infinite
853 loops on your laptop to make it hot is not very much fun. A demo
854 of the gdk-pixbuf scaling functions is way better, and looks
857 * configure.in (AC_OUTPUT): Added the demo Makefile.
859 * Makefile.am (SUBDIRS): Added the demo directory.
861 2000-06-09 Larry Ewing <lewing@helixcode.com>
863 * gdk-pixbuf/io-png.c (gdk_pixbuf__png_image_load_increment):
864 setjmp for the png error handler. It seems setting the error
865 handling functions does not avoid the jump, and so not calling
866 setjmp was causing the incremental loader to jump into lala land.
867 (gdk_pixbuf__png_image_begin_load): setjmp for error handling, I'm
868 not sure this one is actually required but the docs say it must be
869 set for every call to a png_* function.
870 Also changed the comment to reflect the fact that setting the
871 error handlers does _not_ avoid the longjmp.
873 2000-06-06 Larry Ewing <lewing@helixcode.com>
875 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
876 take frame offest into account when trying to calculate the
877 animation bbox. Also set the width to the width not the height.
878 (gdk_pixbuf_loader_animation_done): cycle over the frames to
879 calculate bbox because now we finally have all the offset
880 information for each frame.
882 2000-06-05 Mathieu Lacage <mathieu@gnome.org>
884 * configure.in: add some gtk parameters to the
885 GDK_PIXBUF_LIB²S and GDK_PIXBUG_INCLUDEDIR vars. One more
886 fight in my crusade for strange prefix compile...
888 2000-05-30 Not Zed <NotZed@HelixCode.com>
890 * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_begin_load):
891 Initialise the error handler exit routine to our own. Note this
892 means that every function that accesses the jpeg lib on this
893 object MUST do a setjmp.
894 (gdk_pixbuf__jpeg_image_stop_load): setjmp before accessing jpeg
895 lib for handling fatal error.
896 (gdk_pixbuf__jpeg_image_load_increment): And here too. So now
897 your applications dont quit if there's a jpeg error!
899 2000-05-30 Federico Mena Quintero <federico@helixcode.com>
901 * gdk-pixbuf.spec.in: Include all the loader libraries. Patch
902 from Frank de Lange <frank@unternet.org>.
904 2000-05-09 Darin Adler <darin@eazel.com>
906 * gdk-pixbuf/test-gdk-pixbuf.c:
907 Fixed includes to get rid of accidental GNOME dependency.
909 2000-05-26 Cody Russell <car0969@gamma2.uta.edu>
910 * Makefile.am: Added gdk-pixbuf.spec to EXTRA_DIST
912 2000-05-22 Federico Mena Quintero <federico@helixcode.com>
914 * configure.in: Bumped version number to 0.8.0.
916 * doc/Makefile.am (content_files): The toplevel gdk-pixbuf.sgml
917 file was not being distributed.
919 * gdk-pixbuf/pixops/Makefile.am (EXTRA_DIST): Added DETAILS.
921 2000-05-09 Darin Adler <darin@eazel.com>
923 * gdk-pixbuf/gdk-pixbuf-drawable.c: (rgb565lsb), (rgb565msb),
924 (rgb565alsb), (rgb565amsb), (rgb555lsb), (rgb555msb), (rgb555alsb),
925 (rgb555amsb), (convert_real_slow): Change all conversion from 16-bit
926 formats to 32-bit formats to re-use the high bits of the color values
927 so that white maps to full white.
929 Fri May 5 12:16:32 2000 Owen Taylor <otaylor@redhat.com>
931 * gdk-pixbuf/pixops/DETAILS: Add beginnings of file with
932 detailed information about the structure and algorithms
933 of pixops so people can fix it instead of breaking it.
935 2000-05-04 Darin Adler <darin@eazel.com>
937 * gdk-pixbuf/pixops/pixops.c: (pixops_composite_nearest),
938 (composite_pixel), (composite_line):
939 * gdk-pixbuf/test-gdk-pixbuf.c: (simple_composite_test_one_type):
940 Now that Owen explained the algorithm, I think I implemented it
941 right for the cases where the destination pixbuf is not opaque.
942 The test does seem to confirm it.
944 2000-05-04 Darin Adler <darin@eazel.com>
946 * gdk-pixbuf/.cvsignore:
947 * gdk-pixbuf/Makefile.am:
948 * gdk-pixbuf/test-gdk-pixbuf.c (store_pixel), (fill_with_pixel),
949 (load_pixel), (simple_composite_test_one),
950 (simple_composite_test_one_type), (simple_composite_test), (main):
951 Added some tests of composite to highlight problems in the old
952 implementation. These tests run without any user interaction.
953 Just do "make check".
955 * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest),
956 (composite_pixel), (composite_line): Fix composite to do a textbook
957 "A over B" composite. This was clearly the intent, and it was easy
958 to fix the code to do it. (Note to those that read my earlier tries
959 at a patch; this version fixes typos that were present in all
960 my patch attempts. I checked the final version by adding more tests.)
962 2000-04-22 05:27:43 2000 Owen Taylor <otaylor@redhat.com>
964 * gdk-pixbuf/pixops/pixops.c (pixops_scale_nearest): Properly
965 offset y coordinate accordining to render_y0.
967 * gdk-pixbuf/gdk-pixbuf-scale.c: Properly handle nonzero
970 2000-04-22 James Henstridge <james@daa.com.au>
972 * gdk-pixbuf.spec.in (%files): moved %{prefix}/bin/* from the main
973 package to the devel package. The only file installed in bin is
974 gdk-pixbuf-config, which belongs in -devel. This should allow having
975 multiple versions of the main gdk-pixbuf package installed.
977 2000-04-17 Karl Eichwalder <ke@suse.de>
979 * gdk-pixbuf/Makefile.am (INCLUDES): Add $(GNOME_CFLAGS).
980 Reported by Jens Finke.
982 2000-04-14 Tomasz K³opczko <kloczek@pld.org.pl>
984 * gdk-pixbuf/pixops/makefile.am: $(LIBART_CFLAGS) replaced by
985 $(GTK_CFLAGS) - now gdk-pixbuf compiles correctly.
987 2000-04-13 James Henstridge <james@daa.com.au>
989 * configure.in: when performing the configure check to see if
990 gmodule works, set CFLAGS to GLIB_CFLAGS and LIBS to GLIB_LIBS,
991 rather than the other way round. Also, call AC_MSG_RESULT in the
992 even that dynamic modules were not supported.
994 2000-04-12 Federico Mena Quintero <federico@helixcode.com>
996 This comes from an excellent idea by Tim Janik (timj@gtk.org) to
997 hook to the last unref operation.
999 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_set_last_unref_handler): New
1000 function to set the last unref handler for a pixbuf.
1001 (gdk_pixbuf_finalize): New function to actually finalize a pixbuf.
1002 It calls the pixbuf's destroy notification function and frees the
1003 GdkPixbuf structure itself.
1004 (gdk_pixbuf_unref): Use the last unref function of the pixbuf if
1007 * gdk-pixbuf/gdk-pixbuf-private.h (struct _GdkPixbuf): New fields
1008 for the last unref handler and its user data.
1010 * gdk-pixbuf/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Use
1011 g_new0() to allocate the pixbuf.
1013 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
1014 Fixed the call to gtk_signal_new() for the "frame_done" signal; it
1015 was not specifying the `frame' argument.
1017 * gdk-pixbuf/gdk-pixbuf-animation.c
1018 (gdk_pixbuf_animation_get_width): Fixed docstring.
1019 (gdk_pixbuf_animation_get_height): Likewise.
1020 (gdk_pixbuf_animation_get_num_frames): Likewise.
1021 (gdk_pixbuf_animation_get_frames): Likewise.
1023 * doc/gdk-pixbuf-sections.txt: Updated with the new functions and
1026 * doc/tmpl/gdk-pixbuf.sgml: Added the description for GdkColorspace.
1028 * doc/tmpl/scaling.sgml: Added the description for GdkInterpType.
1030 * doc/tmpl/refcounting.sgml: Updated with the information about
1031 the last unref handler.
1033 * doc/tmpl/*.sgml: Markup tweaks.
1035 * gdk-pixbuf/Makefile.am (libgnomecanvaspixbuf_la_LDFLAGS): Sigh,
1036 update the libtool version number for libgnomecanvaspixbuf as
1038 (libpixbufloader_*_la_LDFLAGS): The loaders need to be versioned
1039 as well, or the old ones won't work with the new stuff. Also,
1040 renamed the modules as follows.
1042 * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_load_module): Now the
1043 modules are called "libpixbufloader-<format>.so" instead of
1044 "libpixbuf-<format>.so". They needed renaming so that the new
1045 loaders won't overwrite the old ones; even with the versioning
1046 stuff, the new .so symlink to the .so.1.0.0 would overwrite the
1049 2000-04-12 Paolo Molaro <lupus@debian.org>
1051 * .cvsignore, src/.cvsignore: shut up cvs.
1053 2000-04-11 Federico Mena Quintero <federico@helixcode.com>
1055 Most of this patch is based on a patch by Havoc Pennington
1056 (hp@redhat.com) to make GdkPixbuf's structures opaque and to
1057 remove the libart dependency.
1059 * gdk-pixbuf/gdk-pixbuf.h: Removed the public structures.
1060 (GdkColorspace): New enum that for now only contains
1062 (GdkPixbufDestroyNotify): New type for the pixbuf's pixels destroy
1063 notification function.
1064 (GdkInterpType): New num with interpolation types.
1066 * *.[ch]: Replace the libart stuff with our own stuff.
1068 * pixops/*.[ch]: Likewise.
1070 * gdk-pixbuf/gdk-pixbuf-private.h: New file with the private
1071 declarations of the GdkPixbuf structures.
1073 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_new_from_art_pixbuf):
1075 (gdk_pixbuf_get_format): Constify.
1076 (gdk_pixbuf_get_n_channels): Constify.
1077 (gdk_pixbuf_get_has_alpha): Constify.
1078 (gdk_pixbuf_get_bits_per_sample): Constify.
1079 (gdk_pixbuf_get_pixels): Constify.
1080 (gdk_pixbuf_get_width): Constify.
1081 (gdk_pixbuf_get_height): Constify.
1082 (gdk_pixbuf_get_rowstride): Constify.
1084 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_copy): New function to copy
1087 * gdk-pixbuf/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Added a
1088 bits_per_sample argument; currently only 8 bits per sample are
1091 * gdk-pixbuf/gdk-pixbuf-animation.c (gdk_pixbuf_frame_get_pixbuf):
1093 (gdk_pixbuf_frame_get_x_offset): New accessor.
1094 (gdk_pixbuf_frame_get_y_offset): New accessor.
1095 (gdk_pixbuf_frame_get_delay_time): New accessor.
1096 (gdk_pixbuf_frame_get_action): New accessor.
1098 * gdk-pixbuf/gdk-pixbuf-render.c
1099 (gdk_pixbuf_render_pixmap_and_mask): Instead of returning a solid
1100 mask rectangle for pixbufs without an alpha channel, set the
1101 *mask_return to NULL.
1103 * gdk-pixbuf/gdk-pixbuf-util.c (gdk_pixbuf_add_alpha): Constify.
1105 * gdk-pixbuf/gdk-pixbuf-scale.c: Fix includes.
1107 * gdk-pixbuf/gdk-pixbuf-scale.c (gdk_pixbuf_scale): Added some
1108 preconditions. Maybe we should also check for the colorspace,
1109 bits per pixel, and such.
1110 (gdk_pixbuf_composite): Likewise.
1111 (gdk_pixbuf_composite_color): Likewise.
1112 (gdk_pixbuf_scale_simple): Likewise, and fail gracefully if we
1113 cannot allocate the new pixbuf.
1114 (gdk_pixbuf_composite_color_simple): Likewise.
1116 * gdk-pixbuf/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_render):
1117 Use art_rgb_rgba_affine() or art_rgb_affine() since we no longer
1120 * gdk-pixbuf/io-bmp.c: Fix includes.
1122 * gdk-pixbuf/pixops/pixops.c (pixops_scale_nearest): Fixed cast in
1127 * configure.in: Removed checks for libart.
1129 * gdk-pixbuf/Makefile.am: Removed references to libart.
1130 (noinst_HEADERS): Added gdk-pixbuf-private.h.
1132 * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_LDFLAGS): Incremented
1133 the version number of the libtool library to indicate that this
1134 definitely is not compatible with the old usage. I know you love
1137 * configure.in: Bumped version number to 0.7.0.
1141 * gdk-pixbuf-config.in (--libs): We no longer require libart.
1143 * DEPENDS.libgdk_pixbuf: We no longer depend on libart.
1145 * gdk-pixbuf.spec.in: Updated, but I don't guarantee anything.
1147 2000-04-06 Jonathan Blandford <jrb@redhat.com>
1149 * gdk-pixbuf/testanimation.c (main): add more info to the
1150 testanimation frames.
1152 2000-04-04 Ettore Perazzoli <ettore@helixcode.com>
1154 * gdk-pixbuf/gdk-pixbuf-animation.c
1155 (gdk_pixbuf_animation_get_width): New accessor function.
1156 (gdk_pixbuf_animation_get_height): New accessor function.
1157 (gdk_pixbuf_animation_get_num_frames): New accessor function.
1158 (gdk_pixbuf_animation_get_frames): New accessor function.
1160 2000-04-01 Federico Mena Quintero <federico@helixcode.com>
1162 * gdk-pixbuf/gdk-pixbuf.c: Reverted Mark's change. The refcount
1163 is private information, and the art_pixbuf will go away soon.
1165 2000-03-31 Mark Crichton <crichton@gimp.org>
1167 * gdk-pixbuf/gdk-pixbuf.c: Added gdk_pixbuf_get_refcount
1168 and gdk_pixbuf_get_artpixbuf accessor functions.
1170 2000-03-29 Federico Mena Quintero <federico@helixcode.com>
1172 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_get_has_alpha): Return
1173 gboolean instead of int.
1175 2000-03-29 Radek Doulik <rodo@helixcode.com>
1177 * gdk-pixbuf/gdk-pixbuf-animation.c
1178 (gdk_pixbuf_animation_new_from_file): same as below
1180 * gdk-pixbuf/io-gif.c (gif_get_lzw): added update of width and
1181 height in GdkPixbufAnimation
1183 2000-03-28 Radek Doulik <rodo@helixcode.com>
1185 * gdk-pixbuf/io-gif.c (gif_get_lzw): test also for
1186 context->frame_done_func and context->anim_done_func to make
1187 progressive animation loading work
1189 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
1190 added priv->pixbuf = NULL as pixbuf is now in frame (and to make
1191 gdk_pixbuf_loader_prepare happy)
1192 (gdk_pixbuf_loader_frame_done): update animation bbox
1194 * gdk-pixbuf/gdk-pixbuf.h: added bbox size (width, height) to
1197 2000-03-27 Radek Doulik <rodo@helixcode.com>
1199 * gdk-pixbuf/io-gif.c (gif_get_lzw): use frame_len and frame_width
1200 instead of width and height
1202 2000-03-27 Owen Taylor <otaylor@redhat.com>
1204 * gdk-pixbuf/pixops/pixops.c: Fix problem with
1205 precendence of >> and & which was keeping composite_color
1206 from working with non-gray images.
1208 2000-03-08 Jonathan Blandford <jrb@redhat.com>
1210 * gdk-pixbuf/io-gif.c (gdk_pixbuf__gif_image_load): free the context.
1211 (gdk_pixbuf__gif_image_load_animation): free the context.
1213 2000-03-06 Arjan van de Ven <arjan@fenrus.demon.nl>
1215 * gdk-pixbuf/io-bmp.c: Fixed to pointer-bugs and a
1216 mis-interpretation of the Microsoft documentation. Now
1217 it can load .BMP files that are not generated by The Gimp
1220 2000-03-01 Mark Crichton <crichton@gimp.org>
1222 * configure.in: Added BUILD_CANVAS_ITEM stuff to (finally)
1223 fix the last auto* build bug (where we have libart, but no
1226 * gdk-pixbuf/Makefile.am: Same.
1228 2000-02-28 Matt Wilson <msw@redhat.com>
1230 * gdk-pixbuf/gdk-pixbuf-drawable.c: s/unsigned long/guint32/g,
1231 s/unsigned short/guint16/g, s/unsigned char/guint8/g
1233 2000-02-26 Federico Mena Quintero <federico@helixcode.com>
1235 * README: We don't require libgif/ungif nor libXpm.
1237 * NEWS: This was outdated, so updated it.
1239 2000-02-25 Federico Mena Quintero <federico@helixcode.com>
1241 * gdk-pixbuf.m4: Use the correct name for
1242 gdk-pixbuf/gdk-pixbuf.h. Thanks to Jacob Berkman for pointing
1245 2000-02-21 Federico Mena Quintero <federico@helixcode.com>
1247 * configure.in (GDK_PIXBUF_MINOR): Bumped version number to 0.6.0.
1249 * doc/compiling.sgml: New appendix documenting the gdk-pixbuf
1250 library's particular options to configure.in.
1252 * doc/gdk-pixbuf.sgml: Include compiling.sgml appendix via an
1255 * doc/Makefile.am (gdk-pixbuf.html): Added compiling.sgml.
1257 * gdk-pixbuf/io-ico.c (gdk_pixbuf__ico_image_load_increment):
1258 Fixed typo in prototype name.
1260 * configure.in: Changed duplicated AC_MSG_CHECKING message to
1261 something more meaningful; now it is "checking whether dynamic
1264 * gdk-pixbuf/pixops/Makefile.am (noinst_PROGRAMS): Do not install
1265 the timescale program.
1267 Integrated Miguel de Icaza's <miguel@gnu.org> patch for optionally
1268 creating a single static library with all the image format modules
1271 2000-02-20 Miguel de Icaza <miguel@gnu.org>
1273 * gdk-pixbuf/io-xpm.c (gdk_pixbuf__xpm_image_load): Add prefix.
1274 (gdk_pixbuf__xpm_image_load_xpm_data): Add prefix.
1276 * gdk-pixbuf/io-tiff.c (gdk_pixbuf__tiff_image_load_real): Add prefix.
1277 (gdk_pixbuf__tiff_image_stop_load): Add prefix.
1278 (gdk_pixbuf__tiff_image_load_increment): Add prefix.
1279 (gdk_pixbuf__tiff_image_load): Add prefix.
1280 (gdk_pixbuf__tiff_image_stop_load): Update invocation.
1281 (gdk_pixbuf__tiff_image_begin_load): Add prefix.
1283 * gdk-pixbuf/io-ras.c (gdk_pixbuf__ras_image_load): Add prefix.
1284 (gdk_pixbuf__ras_image_load): Updated invocation.
1285 (gdk_pixbuf__ras_image_begin_load): Add prefix.
1286 (gdk_pixbuf__ras_image_stop_load): Add prefix.
1287 (gdk_pixbuf__ras_image_load_increment): Add prefix.
1289 * gdk-pixbuf/io-pnm.c (gdk_pixbuf__pnm_image_begin_load): Add prefix.
1290 (gdk_pixbuf__pnm_image_stop_load): Add prefix.
1291 (gdk_pixbuf__pnm_image_load_increment): Add prefix
1292 (gdk_pixbuf__pnm_image_load): Add prefix.
1294 * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_load): Add prefix.
1295 (gdk_pixbuf__jpeg_image_load_increment): Add prefix.
1296 (gdk_pixbuf__jpeg_image_begin_load): Add prefix.
1297 (gdk_pixbuf__jpeg_image_stop_load): Add prefix.
1299 * gdk-pixbuf/io-ico.c (gdk_pixbuf__ico_image_load): Add prefix.
1300 (gdk_pixbuf__ico_image_load): update invocation.
1301 (gdk_pixbuf__ico_image_load_increment): Add prefix.
1302 (gdk_pixbuf__ico_image_load): update invocation.
1303 (gdk_pixbuf__ico_image_begin_load): Add prefix.
1304 (gdk_pixbuf__ico_image_load): update invocation.
1305 (gdk_pixbuf__ico_image_stop_load): Add prefix.
1307 * gdk-pixbuf/io-gif.c (gdk_pixbuf__gif_image_load_animation): Add prefix.
1308 (gdk_pixbuf__gif_image_load): Add prefix.
1309 (gdk_pixbuf__gif_image_begin_load): Add prefix.
1310 (gdk_pixbuf__gif_image_load_increment): Add prefix.
1311 (gdk_pixbuf__gif_image_load_animation): Add prefix.
1312 (gdk_pixbuf__gif_image_stop_load): Add prefix.
1314 * gdk-pixbuf/io-bmp.c (gdk_pixbuf__bmp_image_load): Add prefix.
1315 (gdk_pixbuf__bmp_image_load): Rename function called.
1316 (gdk_pixbuf__bmp_image_load_increment): Add prefix
1318 * gdk-pixbuf/io-png.c (gdk_pixbuf__png_image_load): Add prefix.
1319 (gdk_pixbuf__png_image_begin_load): Add prefix.
1320 (gdk_pixbuf__png_image_stop_load): Add prefix.
1321 (gdk_pixbuf__png_image_load_increment): Add prefix.
1323 * gdk-pixbuf/gdk-pixbuf-io.c (file_formats): Make this static.
1324 (gdk_pixbuf_load_module): Load the shared library entry points
1325 using a "gdk_pixbuf__$module_name" prefix.
1326 (pixbuf_module_symbol): Wrapper routine that uses the module
1327 prefix for the modules to load the information.
1329 * configure.in (GDK_PIXBUF_VERSION): New option --disable-modules
1330 lets the user specify that gdk-pixbuf should link all image loader
1331 code into the library instaed of creating shared library modules.
1333 (dynworks): Renamed the automake conditional DYNAMIC_MODULES_WORK
1334 to BUILD_DYNAMIC_MODULES.
1336 2000-02-19 Jonathan Blandford <jrb@redhat.com>
1338 * gdk-pixbuf/io-gif.c (new_context): fix case where initial
1339 colormap entry is Transparent.
1341 2000-02-19 Owen Taylor <otaylor@redhat.com>
1343 * gdk-pixbuf/pixops/pixops.c (scale_pixel): Fix error in
1344 scale factors for non-alpha case.
1346 2000-02-14 Mark Crichton <crichton@gimp.org>
1348 * gdk-pixbuf/io-xpm.c (xpm_extract_color): Added check for "g" color type.
1349 Imlib/libXpm handle this, but we didn't.
1351 2000-02-14 Darin Adler <darin@eazel.com>
1353 * gdk-pixbuf/testpixbuf.c: Remove now-unnecessary cast.
1354 * .cvsignore: gdk-pixbuf/.cvsignore: More to ignore.
1356 2000-02-14 Elliot Lee <sopwith@redhat.com>
1357 * gdk-pixbuf/gdk-pixbuf.h, gdk-pixbuf/gdk-pixbuf-data.c: Make passed-in argument 'const'.
1359 2000-02-04 Michael Meeks <mmeeks@gnu.org>
1361 * gdk-pixbuf/io-gif.c (struct _GifContext): add x,y_offset.
1362 (gif_get_frame_info): put the offsets on the context.
1363 (gif_get_lzw): copy them off into the frame.
1364 (new_context): no change required; will 0 offsets by default.
1366 2000-01-28 Michael Meeks <michael@mejm2.dow.cam.ac.uk>
1368 * gdk-pixbuf/pixops/pixops.c (pixops_process): const + nasty
1371 * gdk-pixbuf/pixops/pixops.h: const.
1373 * gdk-pixbuf/gdk-pixbuf-util.c: const.
1375 * gdk-pixbuf/gdk-pixbuf-scale.c: const.
1377 * gdk-pixbuf/gdk-pixbuf.h: constify lots of things.
1379 2000-02-03 Federico Mena Quintero <federico@helixcode.com>
1381 * gdk-pixbuf/gdk-pixbuf-render.c
1382 (gdk_pixbuf_render_threshold_alpha): Added sanity check for width
1383 and height being >= 0. Also, do nothing if either of them is
1384 zero. Thanks to Ettore for pointing this out.
1385 (gdk_pixbuf_render_to_drawable): Likewise.
1386 (gdk_pixbuf_render_to_drawable_alpha): Likewise.
1388 2000-02-02 Federico Mena Quintero <federico@helixcode.com>
1390 * gdk-pixbuf/io-gif.c (gif_get_lzw): Removed debugging g_print.
1391 Thanks to John Sullivan <sullivan@eazel.com> for the patch.
1393 * gdk-pixbuf/testpixbuf-drawable.c (configure_cb): Get a new area
1394 of the screen when the window is resized. Thanks to David
1395 N. Welton <davidw@linuxcare.com> for pointing this out.
1396 Misc. cleanups to the rest of the file.
1398 2000-02-01 Federico Mena Quintero <federico@helixcode.com>
1400 * doc/tmpl/rendering.sgml: gnome_init() does not call
1401 gdk_rgb_init(), so don't mention that it does in the
1402 documentation. Thanks to Alexander Kruuse <kruuse@home.se> for
1405 2000-01-31 Havoc Pennington <hp@redhat.com>
1407 * gdk-pixbuf/Makefile.am (noinst_PROGRAMS): no testpixbuf-foo target
1409 Mon Jan 31 12:38:50 2000 Owen Taylor <otaylor@redhat.com>
1411 * gdk-pixbuf/pixops/pixops.c (scale_line): Fix from Peter
1412 Wainwright to fix 4a => 4a scaling.
1414 2000-01-29 Mark Crichton <crichton@gimp.org>
1416 * gdk-pixbuf-config: Oh dear, we weren't Telsa/Alan proof...
1417 put `libart-config --libs` in instead of -lart_lgpl.
1419 2000-01-22 Federico Mena Quintero <federico@helixcode.com>
1421 * gdk-pixbuf/io-pnm.c (pnm_read_raw_scanline): Return an error on
1423 (pnm_read_ascii_scanline): Initialize data and mask.
1425 * gdk-pixbuf/io-xpm.c (pixbuf_create_from_xpm): Initialize
1426 fallbackcolor to keep gcc happy.
1428 * configure.in: Bumped version number to 0.5.0.
1430 * gdk-pixbuf/pixops/timescale.c (dump_array): Removed unused variable.
1433 * gdk-pixbuf/pixops/pixops.c (pixops_composite_color_nearest): Put
1434 parentheses around + in a shift to remove a compiler warning.
1435 (pixops_process): Likewise.
1437 Patch from Ross Golder <rossigee@bigfoot.com> to create an RPM
1440 * configure.in: Added gdk-pixbuf.spec to AC_OUTPUT.
1442 * Makefile.am (EXTRA_DIST): Added gdk-pixbuf.spec.in
1444 2000-01-22 Federico Mena Quintero <federico@helixcode.com>
1446 * gdk-pixbuf/gnome-canvas-pixbuf.c (PixbufPrivate): Removed the
1447 x_set and y_set arguments. Now they are always on and start with
1448 defaults of 0.0 in units.
1449 (gnome_canvas_pixbuf_class_init): Likewise.
1450 (gnome_canvas_pixbuf_set_arg): Likewise.
1451 (gnome_canvas_pixbuf_get_arg): Likewise.
1452 (compute_viewport_affine): Likewise; always use the priv->x and
1455 * doc/tmpl/gnome-canvas-pixbuf.sgml: Modified to reflect the
1456 removal of the x_set/y_set arguments.
1458 2000-01-21 Federico Mena Quintero <federico@helixcode.com>
1460 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_ref): Return the same pixbuf
1461 as the input parameter.
1463 * gdk-pixbuf/gdk-pixbuf-animation.c (gdk_pixbuf_animation_ref):
1464 Return the same animation as the input parameter.
1466 2000-01-16 Elliot Lee <sopwith@redhat.com>
1468 * gdk-pixbuf/Makefile.am: Don't link against libgnomecanvaspixbuf.la
1470 2000-01-16 Federico Mena Quintero <federico@helixcode.com>
1472 * configure.in: Removed the broken --enable-canvas-pixbuf option.
1473 Added the stuff necessary to substitute the variables in
1474 gnomecanvaspixbufConf.sh.in.
1476 * gnomecanvaspixbufConf.sh.in: New gnome-config handler for the
1477 tiny gnomecanvaspixbuf library.
1479 * Makefile.am: Build gnomecanvaspixbufConf.sh.
1481 * gdk-pixbuf/Makefile.am: Create a libgnomecanvaspixbuf and only
1482 build it if gdk-pixbuf is being built outside of gnome-libs.
1484 * doc/gdk-pixbuf-sections.txt: Added gdk_pixbuf_render_pixmap_and_mask().
1486 * gdk-pixbuf/gdk-pixbuf-render.c
1487 (gdk_pixbuf_render_pixmap_and_mask): Renamed from
1488 gdk_pixbuf_render_pixmap(). Do not create the mask if it is not
1489 needed, and do not use a clipping mask when rendering the pixmap.
1490 Tweaked documentation a little.
1492 * HACKING: New file with hacking policies for the gdk-pixbuf
1495 * doc/Makefile.am (tmpl_sources): Added missing backslash.
1497 * doc/Makefile.am: Use gnomecanvaspixbuf in gnome-config when
1498 scanning for docstrings.
1500 * gdk-pixbuf/gdk-pixbuf-util.c (gdk_pixbuf_copy_area): Made sanity
1501 checks more stringent. Removed "gint" abominations. Made
1502 documentation consistent with the rest of the functions.
1504 * doc/gdk-pixbuf-sections.txt: Added gdk_pixbuf_copy_area() to the
1507 2000-01-14 Jonathan Blandford <jrb@redhat.com>
1509 * gdk-pixbuf/gdk-pixbuf-render.c (gdk_pixbuf_render_pixmap): new
1510 function to let you create a gdk_pixmap from a gdk_pixbuf.
1512 2000-01-11 Jacob Berkman <jacob@helixcode.com>
1514 * gdk-pixbuf/pixops/Makefile.am (INCLUDES): added
1515 $LIBART_CFLAGS to $INCLUDES
1517 2000-01-10 Elliot Lee <sopwith@redhat.com>
1519 * configure.in, gdk-pixbuf/Makefile.am: Build a libcanvas_pixbuf.
1521 * configure.in: Define version macros. Generate
1522 gdk-pixbuf/gdk-pixbuf-features.h. Always INSIDE_GNOME.
1524 * gdk-pixbuf/Makefile.am: Add gdk-pixbuf-features.h
1526 * gdk-pixbuf/gdk-pixbuf.c: Add definitions of
1527 gdk-pixbuf-features.h declarations, plus some initialization
1530 2000-01-05 Owen Taylor <otaylor@redhat.com>
1532 * gdk-pixbuf/pixops/pixops.c: Fixed src_channels/dest_channels
1533 confusion. (Again caught by Tomas Ogren's Purify)
1535 2000-01-07 Jonathan Blandford <jrb@redhat.com>
1537 * gdk-pixbuf/gdk-pixbuf-xform.c (gdk_pixbuf_rotate): comment out
1540 * gdk-pixbuf/gdk-pixbuf-io.c: Added progressive animation loading.
1541 * gdk-pixbuf/gdk-pixbuf-io.h: Added progressive animation loading.
1542 * gdk-pixbuf/gdk-pixbuf-loader.c: Added progressive animation
1544 * gdk-pixbuf/gdk-pixbuf-loader.h: Added progressive animation
1546 * gdk-pixbuf/io-gif.c (image_load_increment): I think the
1547 ref-counting mess is finally fixed. Added progressive animation
1549 (gif_get_lzw): remove memory_leak
1551 * doc/tmpl/gdk-pixbuf-loader.sgml: much longer long description
1554 2000-01-05 Owen Taylor <otaylor@redhat.com>
1556 * gdk-pixbuf/pixops/pixops.c (pixops_process): Fix computation of end of run indices.
1558 * gdk-pixbuf/pixops/pixops.c: Fix double increments when dest_channels == 4.
1559 (Pointed out by Tomas Ogren)
1561 2000-01-05 Mark Crichton <crichton@gimp.org>
1563 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_eat_header_write):
1564 Return 0 if gdk_pixbuf_load_loader_module returns FALSE.
1566 2000-01-05 Elliot Lee <sopwith@redhat.com>
1568 * gdk-pixbuf/pixops/Makefile.am: Link with -lm (to get 'ceil' function)
1570 2000-01-05 Owen Taylor <otaylor@redhat.com>
1572 * doc/Makefile.am doc/gdk-pixbuf-sections.txt
1573 doc/gdk-pixbuf.sgml doc/tmpl/scaling.sgml:
1574 Added scaling functions into gtk-doc framework.
1576 * gdk-pixbuf/gdk-pixbuf-scale.c: Documentation fixes.
1578 * gdk-pixbuf/testpixbuf-scale.c (expose_cb): Simplify a bit.
1580 * gdk-pixbuf/pixops/pixops.c (pixops_composite_color): Return
1581 immediately if scale_x or scale_y is 0.
1583 2000-01-05 Owen Taylor <otaylor@redhat.com>
1585 * gdk-pixbuf/pixops/timescale.c: quick fix for initializing
1586 arrays in benchmark.
1588 2000-01-05 Jonathan Blandford <jrb@redhat.com>
1590 * gdk-pixbuf/gdk-pixbuf-io.h: Change the order of the update func
1591 to make it more compatible with the rest of GTK. Added animation
1592 framework for progressive loading.
1594 * gdk-pixbuf/io-bmp.c (image_begin_load): Modified to handle new
1596 * gdk-pixbuf/io-ico.c (image_begin_load): ditto
1597 * gdk-pixbuf/io-png.c (image_begin_load): ditto
1598 * gdk-pixbuf/io-ras.c (image_begin_load): ditto
1599 * gdk-pixbuf/io-jpeg.c (image_begin_load): ditto
1600 * gdk-pixbuf/io-pnm.c (image_begin_load): ditto
1601 * gdk-pixbuf/io-tiff.c (image_begin_load): ditto
1602 * gdk-pixbuf/io-gif.c (image_begin_load): ditto
1604 2000-01-05 Owen Taylor <otaylor@redhat.com>
1606 * gdk-pixbuf/pixops/README: Added a README with a TODO
1607 and some explainations of the algorithms.
1609 * gdk-pixbuf/testpixbuf-scale.c: Set a background pixmap of None
1610 to reduce flashing when resizing.
1612 2000-01-05 Owen Taylor <otaylor@redhat.com>
1614 * gdk-pixbuf/pixops/: Directory full of pixel data scaling
1615 code that will eventually migrate into libart.
1617 * configure.in acconfig.h: Add checks for MMX compiler support
1619 * gdk-pixbuf/gdk-pixbuf.h gdk-pixbuf/gdk-pixbuf-scale.c:
1620 Nice wrapper routines for the code in pixops that operate
1621 on pixbufs instead of raw data.
1623 * gdk-pixbuf/testpixbuf-scale: Test program for scaling
1626 2000-01-05 Jonathan Blandford <jrb@redhat.com>
1628 * doc/tmpl/animation.sgml: Documentation changes.
1630 2000-01-01 Federico Mena Quintero <federico@helixcode.com>
1632 * gdk-pixbuf/gdk-pixbuf.h (GdkPixbufAnimation): Added reference
1633 counting to animations. A web browser may want to share a single
1634 copy of an animated GIF if it appears multiple times in a web
1637 * gdk-pixbuf/gdk-pixbuf-animation.c: New file. Moved the
1638 animation functions here.
1639 (gdk_pixbuf_animation_new_from_file): Prettified. Return a NULL
1640 animation if the loader does not support multiframe loading and
1641 the single-frame load returned NULL. Check that the filename is
1642 not NULL. Updated inline documentation.
1643 (gdk_pixbuf_animation_ref): New function.
1644 (gdk_pixbuf_animation_unref): New function.
1645 Removed gdk_pixbuf_animation_destroy() in favor of reference
1648 * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_new_from_file):
1649 Prettified. Made ref_count assertion more paranoid. Check that
1650 the filename is not NULL.
1651 (gdk_pixbuf_get_module): Use guchar * and guint for buffer and
1653 (gdk_pixbuf_new_from_xpm_data): Changed the "data" argument to
1656 * gdk-pixbuf/io-gif.c (image_load_animation): Create the animation
1657 with a reference count of 1.
1659 * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_SOURCES): Added
1660 gdk-pixbuf-animation.c.
1662 * doc/tmpl/animation.sgml: Populated. It is still missing a
1663 description of the overlay modes.
1665 * doc/gdk-pixbuf-sections.txt: Added the animation section. Moved
1666 the canvas item section to the end, as it will be moved later to
1669 * doc/gdk-pixbuf.sgml: Added the animation section.
1671 * doc/Makefile.am (tmpl_sources): Added tmpl/animation.sgml.
1673 1999-12-26 Peter Teichman <pat@gnu.org>
1675 * gdk-pixbuf/Makefile.am (libpixbuf_tiff_la_LIBADD): add
1676 $(LIBTIFF) to libpixbuf_tiff_la_LIBADD, proxying for mmarker.
1677 This closes bug #4676.
1679 1999-12-23 Havoc Pennington <hp@pobox.com>
1681 * gdk-pixbuf/io-gif.c (image_load): Stuff that should have been
1682 set to NULL here (specifically context->animation) was not being
1683 set to NULL. use g_new0() to alloc the struct.
1685 1999-12-20 Jonathan Blandford <jrb@redhat.com>
1687 * gdk-pixbuf/io-gif.c: finished work to make animated gifs load
1688 correctly. Progressive loading needs some work, but that all
1689 needs doing from the gdk-pixbuf-loader end, not here.
1691 1999-12-17 Jonathan Blandford <jrb@redhat.com>
1693 * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_animation_new_from_file):
1694 moved the file here. It seems natural to put this function here,
1695 as that's where the gdk_pixbuf_new_from_file function is, but it's
1696 still a little convoluted. The source files might be played with
1699 1999-12-14 Jonathan Blandford <jrb@redhat.com>
1701 * gdk-pixbuf/gdk-pixbuf-loader.c
1702 (gdk_pixbuf_loader_get_animation): Gets the animation from the
1705 1999-12-16 Federico Mena Quintero <federico@redhat.com>
1707 * doc/tmpl/rendering.sgml: Added notice about initializing GdkRGB
1708 before using the GdkPixbuf rendering functions. Thanks to Joe
1709 Shaw <joe@off.net> for pointing this out.
1711 1999-12-13 Federico Mena Quintero <federico@redhat.com>
1713 * gdk-pixbuf/gnome-canvas-pixbuf.c
1714 (gnome_canvas_pixbuf_class_init): Renamed arguments to
1715 width_in_pixels, height_in_pixels, x_in_pixels, y_in_pixels, for
1716 consistency with the new canvas.
1717 (PixbufPrivate): Do the same renaming in the structure fields, for
1720 * doc/tmpl/gnome-canvas-pixbuf.sgml: Updated for new argument names.
1722 1999-12-12 Federico Mena Quintero <federico@redhat.com>
1724 * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_LDFLAGS): Use a
1725 conditional to see whether to link $(GNOME_LIBS) or not.
1727 1999-12-10 Jonathan Blandford <jrb@redhat.com>
1729 * gdk-pixbuf/gdk-pixbuf-io.h: thinking about the new loading API.
1731 * gdk-pixbuf/gdk-pixbuf-drawable.c (gdk_pixbuf_get_from_drawable):
1732 make a warning go away.
1734 * gdk-pixbuf/gdk-pixbuf.h: added new prototypes for animations.
1736 * gdk-pixbuf/gdk-pixbuf-loader.h: added new prototypes for
1739 1999-12-09 Michael Zucchi <zucchi@zedzone.mmc.com.au>
1741 * gdk-pixbuf/gdk-pixbuf.h: Enable gdk_pixbuf_get_from_drawable()
1744 * gdk-pixbuf/gdk-pixbuf-drawable.c (gdk_pixbuf_get_from_drawable):
1745 Filled in body of function.
1746 (rgbconvert): Added GdkColormap parameter, and to all conversion
1748 (convert_real_slow): New function - should convert ANY visual/data
1749 format properly, but it aint fast. Used as a fallback when an
1750 optimised routine wont match.
1751 (rgbconvert): Do very specific tests on the data format to verify
1752 properly if the optimised version will do, otherwise use the
1753 fallback function for all other data formats.
1755 * gdk-pixbuf/Makefile.am: Re-enabled building of
1756 textpixbuf-drawable.
1758 * gdk-pixbuf/testpixbuf-drawable.c (main): Changed to use
1759 gdk_pixbuf_get_from_drawable().
1761 1999-12-08 Arjan van de Ven <arjan@fenrus.demon.nl>
1763 * gdk-pixbuf/gdk-pixbuf-drawable.c : Fixed the red/green/red
1764 bug on two occasions.
1765 * gdk-pixbuf/io-ras.c: Changed from the custom be32_to_cpu
1766 function to the generic glib one.
1768 1999-12-08 Federico Mena Quintero <federico@redhat.com>
1770 * gdk-pixbuf/gdk-pixbuf-drawable.c: Fix includes.
1771 (gdk_pixbuf_get_from_drawable): Implemented the zillion sanity
1772 checks and API definition. The body needs filling in and it needs
1773 to do the Right Thing(tm) for pixmaps plus the given colormap and
1774 windows and their own colormaps.
1776 * gdk-pixbuf/gdk-pixbuf.h: Added prototype for
1777 gdk_pixbuf_get_from_drawable(). Killed gdk-pixbuf-drawable.h.
1779 * gdk-pixbuf/Makefile.am: Re-added the gdk-pixbuf-drawable sources.
1781 * doc/tmpl/from-drawables.sgml: Populated.
1783 * doc/gdk-pixbuf.sgml: Added the from-drawables section.
1785 * doc/Makefile.am (tmpl_sources): Added tmpl/from-drawables.sgml.
1787 * doc/gdk-pixbuf-sections.txt: Added a section for getting pixbufs
1790 1999-12-07 Federico Mena Quintero <federico@redhat.com>
1792 * doc/tmpl/gnome-canvas-pixbuf.sgml: Added clarification about
1793 reference counting for GdkPixbuf structures.
1795 1999-12-07 Martin Baulig <martin@home-of-linux.org>
1797 * gdk-pixbuf/Makefile.am (testpixbuf_LDADD): Conditionally
1798 include $(GNOME_LIBS) here.
1800 1999-12-05 Arjan van de Ven <arjan@fenrus.demon.nl>
1802 Added missing "include <string.h>" to:
1803 * gdk-pixbuf/io-ras.c
1804 * gdk-pixbuf/io-bmp.c
1805 * gdk-pixbuf/io-ico.c
1807 1999-12-06 Federico Mena Quintero <federico@redhat.com>
1809 * gdk-pixbuf/gdk-pixbuf-io.c (file_formats): Patch from Arjan to
1812 1999-12-05 Federico Mena Quintero <federico@redhat.com>
1814 * gdk-pixbuf/Makefile.am (testpixbuf_LDADD): Add back
1815 $(GNOME_LIBS). This must compile outside of gnome-libs. If you
1816 want, send me a patch to do the conditional stuff properly.
1817 Otherwise, please read the GNOME Programming Guidelines,
1818 especially the "CVS policies" section.
1820 1999-12-05 Jaka Mocnik <jaka.mocnik@kiss.uni-lj.si>
1822 * gdk-pixbuf/Makefile.am: removed GNOME_LIBS from testpixbuf_LDADD.
1824 1999-12-05 Arjan van de Ven <arjan@fenrus.demon.nl>
1826 * gdk-pixbuf/io-ico.c: Bug in palet-size
1829 1999-12-04 Arjan van de Ven <arjan@fenrus.demon.nl>
1831 * gdk-pixbuf/io-bmp.c: Major cleanup, added support for
1832 32 bpp and 4 bpp (uncompressed) images, fixed 1bpp.
1834 * gdk-pixbuf/io-ras.c: Minor cleanup, ran through lclint
1836 * gdk-pixbuf/io-ico.c: Minor cleanup, fixed 1bpp icons,
1839 * gdk-pixbuf/gdk-pixbuf-io.c: Added detection of .CUR files
1840 (Windows Cursor files). These are identical to .ICO files,
1841 except for the signature and 2 extra fields for the hotspot.
1843 1999-12-03 Federico Mena Quintero <federico@redhat.com>
1845 * gdk-pixbuf/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_get_arg):
1846 Removed unused variable `item'.
1848 1999-12-03 Jonathan Blandford <jrb@redhat.com>
1850 * gdk-pixbuf/io-gif.c (gif_fill_in_lines): added a comment to
1851 explain this function better.
1853 1999-12-02 Federico Mena Quintero <federico@redhat.com>
1855 Source files moved from src/ to gdk-pixbuf/, to be consistent with
1858 * doc/Makefile.am: Modified for the new source directory.
1860 * configure.in: Likewise.
1862 * Makefile.am: Likewise.
1864 * autogen.sh: Likewise.
1866 * gdk-pixbuf/Makefile.am: Likewise.
1868 1999-12-02 Federico Mena Quintero <federico@redhat.com>
1870 * src/testpixbuf.c: #include <config.h>, and fix includes.
1872 * src/testpixbuf-drawable.c: #include <config.h>, and fix includes.
1874 * src/io-xpm.c: Fix includes.
1876 * src/io-tiff.c: Fix includes.
1878 * src/io-ras.c: Fix includes, and do not include more stuff than needed.
1880 * src/io-pnm.c: Fix inlcudes, and do not include more stuff than needed.
1882 * src/io-png.c: Fix includes.
1884 * src/io-ico.c: Fix includes, and do not include more stuff than needed.
1886 * src/io-gif.c: Fix includes, and do not include more stuff than needed.
1888 * src/io-bmp.c: Fix includes, and do not include more stuff than needed.
1890 * src/gnome-canvas-pixbuf.c: Fix includes.
1892 * src/gdk-pixbuf.c: Fix includes.
1894 * src/gdk-pixbuf-util.c: Fix includes.
1896 * src/gdk-pixbuf-render.c: Fix includes.
1898 * src/gdk-pixbuf-io.h: Fix includes.
1900 * src/gdk-pixbuf-drawable.c: Fix includes.
1902 * src/gdk-pixbuf-drawable.h: Use angle brackets for the gdk-pixbuf
1905 * src/gdk-pixbuf-data.c: Fix includes.
1907 * src/gdk-pixbuf-loader.c: #include <config.h>
1909 * src/gdk-pixbuf-loader.h: Use angle brackets for the gdk-pixbuf
1912 * src/Makefile.am: Commented out the gdk-pixbuf-drawable stuff,
1913 since it is not finished.
1915 * src/gdk-pixbuf.h: Removed unused transformation prototypes.
1917 * src/gdk-pixbuf-util.c: New file with utility and convenience
1918 functions for pixbufs.
1920 * src/Makefile.am (libgdk_pixbuf_la_SOURCES): Added gdk-pixbuf-util.c.
1922 * doc/gdk-pixbuf-sections.txt: Added section for utility functions.
1924 * doc/Makefile.am (tmpl_sources): Added tmpl/util.sgml.
1926 * doc/gdk-pixbuf.sgml: Added the utilities section.
1928 * doc/tmpl/util.sgml: Documentation for the utility functions.
1930 1999-11-29 Owen Taylor <otaylor@redhat.com>
1932 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
1933 Keep the mask around until after we draw ... since
1934 the GC changes aren't flushed to the X server until we
1935 draw, destroying it before that may result in BadPixmap
1938 1999-11-30 Havoc Pennington <hp@pobox.com>
1940 * configure.in: Add AM_CONDITIONAL for inside gnome-libs
1942 * src/Makefile.am: conditionalize GnomeCanvasPixbuf
1944 1999-11-29 Federico Mena Quintero <federico@redhat.com>
1946 * src/Makefile.am: Uncomment the GnomeCanvasPixbuf sources. This
1947 should be made conditional, not blindly commented out.
1949 1999-11-29 Jonathan Blandford <jrb@redhat.com>
1951 * src/Makefile.am (ICO_LIB): Added another loader from Arjan to
1952 handle .ico files. Cool.
1954 1999-11-24 Jonathan Blandford <jrb@redhat.com>
1956 * src/io-bmp.c (OneLine24): new patch from Arjan to handle
1959 1999-11-24 James Henstridge <james@daa.com.au>
1961 * configure.in (AC_OUTPUT): altered hack to place the symlink in the
1962 top builddir rather than src. This still builds fine, and does not
1963 get gtk-doc into an infinite loop when trying to find all the source
1966 1999-11-23 Jonathan Blandford <jrb@redhat.com>
1968 * Removed #PRAGMA } from headers. Also, make compile if you don't
1969 have it installed, already.
1971 1999-11-22 Federico Mena Quintero <federico@redhat.com>
1973 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_draw): Create the
1974 temporary buffer to the size of the interesction of the bounding
1975 box and the expose area, not the whole expose area. This speeds
1978 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_threshold_alpha): Do
1979 not paint black on the mask, since we already cleared it in a
1980 single gdk_draw_rectangle() operation.
1982 1999-11-22 Raja R Harinath <harinath@cs.umn.edu>
1984 * configure.in (GDK_PIXBUF_DIR): Fix for srcdir != builddir.
1986 1999-11-22 Havoc Pennington <hp@pobox.com>
1988 * src/Makefile.am (GDK_PIXBUF_LIBS): Patch from Paul Fisher
1989 <pnfisher@redhat.com> adds all -lgdk-pixbuf and all other
1990 dependencies to LIBADD variables for loadable modules. Necessary
1991 for a Java dynamic loading thing to be able to figure it out.
1993 1999-11-22 Havoc Pennington <hp@pobox.com>
1995 * src/io-png.c (image_load_increment): Call the update_area
1996 callback depending on the number of rows loaded in this increment.
1998 * src/testpixbuf.c (main): slow down the progressive load demo
2000 1999-11-16 Havoc Pennington <hp@pobox.com>
2002 * src/gdk-pixbuf-drawable.h: Get the quotes right on the #include
2004 1999-11-22 Jonathan Blandford <jrb@redhat.com>
2006 * configure.in (GDK_PIXBUF_DIR): make the symlink. Does not work
2007 for srcdir != buildir != . Beats me why; I can't figure it out.
2008 AC_OUTPUT_COMMANDS doesn't seem to let me substitute it correctly.
2010 1999-11-21 Jonathan Blandford <jrb@redhat.com>
2012 * src/gdk-pixbuf-io.c: added io-bmp from Arjan
2013 <arjan@fenrus.demon.nl>
2015 1999-11-20 Michael Zucchi <zucchi@zedzone.mmc.com.au>
2017 * src/gdk-pixbuf-drawable.c (gdk_pixbuf_from_drawable_core):
2018 Rework/reorder of the code. Each case has been separated into
2019 another function; its big but it should be quick.
2020 gdk_pixbuf_rgba_from_drawable() will now return a pixbuf with
2021 opaque alpha information. Not all depths/formats have been
2022 tested, but 8, 15/16 and 24 (alinged 32) should work ok.
2024 1999-11-17 Larry Ewing <lewing@gimp.org>
2026 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_bounds):
2027 implement the bounds method correctly.
2028 (compute_viewport_affine): compute the affine need to fit the
2029 image within the viewport given by the args.
2030 (compute_render_affine): call compute_viewport_affine.
2032 1999-11-16 Havoc Pennington <hp@pobox.com>
2034 * src/gdk-pixbuf-drawable.h: Use includes from the current
2035 directory, not the system directory.
2037 Mon Nov 15 17:18:28 1999 George Lebl <jirka@5z.com>
2039 * src/testpixbuf-drawable.c: use includes from the current directory
2040 rather then from the system include directory as gdk-pixbuf
2041 includes are not yet installed when this is compiled.
2043 1999-11-13 Cody Russell <bratsche@dfw.net>
2044 * src/testpixbuf-drawable.c: Added a test program for drawable
2047 * src/Makefile.am: Build testpixbuf-drawable.
2049 1999-11-12 Cody Russell <bratsche@dfw.net>
2051 * src/gdk-pixbuf-drawable.c: Merged in Michael Zucchi's changes.
2053 1999-11-10 Federico Mena Quintero <federico@redhat.com>
2055 * doc/tmpl/gdk-pixbuf-loader.sgml: Populated.
2057 * doc/gdk-pixbuf.signals: Put in the real names of signal
2060 * src/gdk-pixbuf-loader.c: Improved documentation comments.
2062 1999-11-10 Jonathan Blandford <jrb@redhat.com>
2064 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): emit the
2067 * src/io-ras.c (OneLineMapped_file): Now can handle indexing
2068 correctly. Patch from Arjan to do so.
2070 1999-11-10 Michael Fulbright <drmike@redhat.com>
2072 * src/io-pnm.c (pnm_ascii_read_scanline): Fixed loading of ASCII PNM
2075 * src/testpixbuf.c: Added final queued draw when done loading image.
2077 1999-11-10 Jonathan Blandford <jrb@redhat.com>
2079 * src/gdk-pixbuf-io.c (gdk_pixbuf_load_module): removed spurious
2082 1999-11-10 Federico Mena Quintero <federico@redhat.com>
2084 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): Added
2087 1999-11-09 Federico Mena Quintero <federico@redhat.com>
2089 * src/io-png.c: Fixed some incompatible pointer initializations.
2091 * src/io-jpeg.c (image_load_increment): Remove unused variable.
2093 1999-11-09 Michael Fulbright <drmike@redhat.com>
2095 * src/testpixbuf.c: Fixed it to use timeout to read from file
2096 for progressive loading. Set TBF_KBPS=n, where n is the number of
2097 kilobytes/second to simulate in downloading. n has to be an integer.
2099 * src/io-jpeg.c: Slight cosmetic cleanup.
2101 * src/io-pnm.c: Fixed raw PNM loading bug. Also discovered that ASCII
2102 PBM loading has a similar problem and will address tomorrow.
2104 1999-11-09 Havoc Pennington <hp@pobox.com>
2106 * src/Makefile.am (libgdk_pixbuf_la_SOURCES): build the
2107 gdk-pixbuf-drawable stuff.
2109 1999-11-09 Federico Mena Quintero <federico@redhat.com>
2111 * configure.in: Bumped version number to 0.4.
2113 1999-11-09 Michael Fulbright <drmike@redhat.com>
2115 * src/io-pnm.c : Finished progressive PNM loading code. Should handle
2116 all types of PNM files now.
2118 * src/io-jpeg.c (image_load_increment): Figured out problem with
2119 loading Progressive JPEG's progressively (say that 10 times fast).
2120 Currently for Progressive JPEG's the entire image is loaded before
2121 it is displayed. libjpeg supports a fancier mechanism which I may
2124 With these changes all JPEG formats appear to load properly for me.
2126 1999-11-08 Jonathan Blandford <jrb@redhat.com>
2128 * src/io-ras.c (image_load_increment): Final patch from Arjan.
2129 Seems to do progressive loading.
2131 1999-11-08 Michael Fulbright <drmike@redhat.com>
2133 * src/io-pnm.c image_load (): Fixed so we do not create a separate
2134 pixel buffer when reading in image - we reuse the pixel data in
2135 the GdkPixbuf structure instead.
2137 1999-11-08 Michael Fulbright <drmike@redhat.com>
2139 * src/io-pnm.c pnm_read_ascii_scanline (): Added support for
2140 ASCII PNM files. Note I haven't tested loaded ASCII PBM files because
2141 I can't seem to find a utility to convert into this format.
2142 Next is to add progressive loading support for the PNM format.
2144 1999-11-07 Federico Mena Quintero <federico@redhat.com>
2146 * doc/tmpl/gnome-canvas-pixbuf.sgml: Finished detailed explanation
2147 of the width, height, x, and y setting and pixels arguments.
2149 1999-11-05 Jonathan Blandford <jrb@redhat.com>
2151 * src/io-ras.c (image_load): third patch. Now it seems to load.
2153 * src/gdk-pixbuf-io.c: second patch Arjan van de Ven
2154 <arjan@fenrus.demon.nl> to autodetect/load the sunras files.
2156 * src/io-ras.c (image_load): new file from Arjan van de Ven
2157 <arjan@fenrus.demon.nl> to begin the ras loader.
2159 1999-11-05 Federico Mena Quintero <federico@redhat.com>
2161 * doc/gdk-pixbuf-sections.txt: Removed gdk-pixbuf-io, since it is
2162 for internal use only.
2164 * doc/gdk-pixbuf.sgml: Likewise.
2166 * doc/tmpl/gnome-canvas-pixbuf.sgml: Finished docs.
2168 1999-11-05 Michael Fulbright <drmike@redhat.com>
2170 * src/io-pnm.c: Implemented support for reading raw PBM/PGM/PPM
2171 files from a file. Next step is support for ASCII files, and
2172 then incremental loading.
2174 1999-11-04 Federico Mena Quintero <federico@redhat.com>
2176 * Makefile.am: Added doc to SUBDIRS.
2178 1999-11-04 Michael Fulbright <drmike@redhat.com>
2180 * src/io-jpeg.c: Prettied up code slightly.
2181 * src/io-pnm.c: Start of pnm loader (from file and progressively).
2182 Doesn't do much yet (will finish tomorrow).
2183 * src/gdk-pixbuf-io.c: Added pnm to structure of known types.
2185 1999-11-04 Federico Mena Quintero <federico@redhat.com>
2187 * doc/tmpl/rendering.sgml: Populated.
2189 * doc/Makefile.am: Added the template files.
2191 1999-11-04 Havoc Pennington <hp@pobox.com>
2193 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable): In
2194 docs, explain what a dither offset is for.
2195 (gdk_pixbuf_render_to_drawable_alpha): Explain why you would use
2196 this function vs. gdk_pixbuf_render_to_drawable().
2198 1999-11-04 Havoc Pennington <hp@pobox.com>
2200 * configure.in: Use libart-config correctly; find gnome-config
2201 separately. Fix GNOME_LIBS to be correct in "no gnome installed
2204 * src/Makefile.am: Link to GNOME_LIBS instead of a hardcoded
2207 Patch untested in the inside-gnome-libs case, I need to commit
2208 then check out to the gnome-libs I'm using.
2210 1999-11-04 Michael Fulbright <drmike@redhat.com>
2212 * src/io-jpeg.c (image_begin_load): Add update_func callback.
2213 * src/io-jpeg.c (image_load_increment): Call updated callback when
2214 new graphic data decoded.
2216 1999-11-04 Jonathan Blandford <jrb@redhat.com>
2218 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_update): handle the
2220 * src/io-png.c (image_begin_load): add a update_func callback.
2221 * src/io-gif.c (image_begin_load): add a update_func callback.
2222 (gif_get_lzw): added the update_func ability
2224 * src/io-tiff.c (image_begin_load): add a update_func callback.
2226 1999-11-04 Federico Mena Quintero <federico@redhat.com>
2228 * doc/tmpl/gdk-pixbuf.sgml: Populated.
2230 * doc/tmpl/refcounting.sgml: Populated.
2232 * doc/tmpl/file-loading.sgml: Populated.
2234 * src/gdk-pixbuf.c: Added documentation comments.
2236 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_file): Added
2237 documentation comments.
2239 * doc/: Finished integrating the documentation framework.
2241 1999-11-03 Federico Mena Quintero <federico@redhat.com>
2243 * configure.in: Removed libgif stuff now that we do not depend on it.
2244 Added the necessary cruft for gtk-doc.
2246 * src/Makefile.am: Unconditionally build the GIF loader.
2248 1999-11-03 Jonathan Blandford <jrb@redhat.com>
2250 * src/io-gif.c (gif_read): renamed ReadOK to gif_read.
2251 Added a lot of comments to the file.
2253 * src/Makefile.am (libpixbuf_gif_la_LIBADD): Remove dependency on
2256 1999-11-03 Michael Fulbright <drmike@redhat.com>
2258 * src/io-jpeg.c (image_load_increment): Further removal of
2259 bugginess in local buffering code. Handles grayscale jpegs
2262 * src/io-jpeg.c (image_load_stop): Was freeing local context
2263 for jpeg library before calling jpeg_decompres_finish ().
2265 1999-11-03 Jonathan Blandford <jrb@redhat.com>
2267 * src/io-gif.c (image_load_increment): now handle arbitrary buffer
2269 (gif_get_lzw): set the transparency to the right val.
2271 1999-11-03 Federico Mena Quintero <federico@redhat.com>
2273 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_init):
2274 Initiailize the x and y fields.
2275 (gnome_canvas_pixbuf_destroy): Queue a redraw upon destruction.
2276 (PixbufPrivate): Renamed need_size_update to need_xform_update.
2277 (recompute_bounding_box): Do not use temporary values.
2279 1999-11-03 Jonathan Blandford <jrb@redhat.com>
2281 * src/io-gif.c (set_gif_lzw_clear_code): new state. Fixes
2284 * src/gnome-canvas-pixbuf.c (recompute_bounding_box): remove
2285 unneeded x,y,h,w vars.
2287 1999-11-03 Larry Ewing <lewing@gimp.org>
2289 * src/gnome-canvas-pixbuf.c (compute_render_affine): adjust
2290 render_affine calculation for x,y offsets.
2291 (gnome_canvas_pixbuf_set_arg): add x,y args.
2292 (gnome_canvas_pixbuf_get_arg): add x,y args.
2293 (recompute_bounding_box): simply code using ArtDrect and the
2294 render_affine. Removed compute_xform_vectors as it was no longer
2297 1999-11-03 Federico Mena Quintero <federico@redhat.com>
2299 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_point): I'm a
2300 doofus. Return a distance, not a boolean, for opaque images.
2302 * src/gnome-canvas-pixbuf.c (recompute_bounding_box): Do proper
2303 rounding of bounding box coordinates.
2304 (gnome_canvas_pixbuf_bounds): Implemented the ::bounds() method.
2305 (gnome_canvas_pixbuf_draw): Use the correct alpha threshold value.
2307 1999-11-03 Jonathan Blandford <jrb@redhat.com>
2309 * src/io-gif.c (gif_prepare_lzw): s/lwz/lzw/g
2311 1999-11-03 Michael Fulbright <drmike@redhat.com>
2313 * src/io-jpg.c (image_load_increment): Fixed code which moved
2314 buffer around as new data comes in to work properly. JPEG progressive
2315 loading should be working now except for grayscale JPEG's, which I
2316 will look into next.
2318 1999-11-03 <sopwith@redhat.com>
2319 * src/testpixbuf.c: A GtkFunction needs to return a value for deterministic behaviour.
2320 Also put dot printing back in.
2322 1999-11-03 <jrb@redhat.com>
2324 * src/io-gif.c (gif_get_extension): Read 'til the next empty block
2327 1999-11-02 Cody Russell <bratsche@dfw.net>
2328 * src/gdk-pixbuf-drawable.c: Changed the behavior to return NULL
2329 if part of the requested image is offscreen, rather than clipping
2332 1999-11-02 Jonathan Blandford <jrb@redhat.com>
2334 * src/io-gif.c (gif_fill_in_lines): Fill in the gif's blank areas
2335 for interlacing and progressive loading.
2337 1999-11-02 Cody Russell <bratsche@dfw.net>
2338 * src/gdk-pixbuf-drawable.c (gdk_pixbuf_from_drawable_core): Now
2339 calls gdk_pixbuf_new_from_art_pixbuf() instead of gdk_pixbuf_new().
2341 1999-11-02 Jonathan Blandford <jrb@redhat.com>
2343 * src/io-gif.c (gif_main_loop): Now progressive gif loading works!
2344 It's a little slow though. )-:
2346 1999-11-02 Elliot Lee <sopwith@redhat.com>
2347 * src/gdk-pixbuf-loader.[ch], src/gdk-pixbuf-io.h: Make the arguments to the
2348 write/load_increment operations const-correct.
2350 1999-11-02 Federico Mena Quintero <federico@redhat.com>
2352 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_point):
2353 Implemented the ::point() method. We do a simple containment test
2354 instead of a full distance calculation since the canvas is going
2355 to change to that scheme, anyways.
2357 1999-11-02 Elliot Lee <sopwith@redhat.com>
2359 * src/testpixbuf.c: Allow using $TBF_READLEN to specify the size of the chunks
2360 that are read from the input file.
2362 1999-11-02 Larry Ewing <lewing@gimp.org>
2364 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_render): add aa
2366 (gnome_canvas_pixbuf_class_init): add gnome_canvas_pixbuf_render
2369 1999-11-02 Federico Mena Quintero <federico@redhat.com>
2371 * src/gnome-canvas-pixbuf.c (compute_render_affine): Moved the
2372 affine computation code from ::draw() to here, since it is needed
2373 by ::point() as well.
2375 1999-11-02 Elliot Lee <sopwith@redhat.com>
2377 * src/gdk-pixbuf-loader.c: Reorganize gdk_pixbuf_loader_write into
2378 three functions, and eliminate duplication of code from write()
2379 and close(). Also fix bug where the 128-byte header was being
2382 1999-11-01 Federico Mena Quintero <federico@redhat.com>
2383 * src/gnome-canvas-pixbuf.c (recompute_bounding_box): Fixed
2384 bounding box computation.
2386 1999-11-01 Federico Mena Quintero <federico@redhat.com>
2388 * src/gnome-canvas-pixbuf.c: Start of the pixbuf canvas item.
2389 Drawing affines seem to work. Bounding box is fubared. ::point()
2390 is not implemented. This is a work in progress.
2392 * src/Makefile.am: Added gnome-canvas-pixbuf.[ch] to the list of
2395 * configure.in: Sigh. We need to link in libgnomeui for the
2396 canvas stuff. This mess will disappear when gdk-pixbuf gets
2397 folded into gnome-libs.
2399 1999-10-30 Jonathan Blandford <jrb@redhat.com>
2401 * src/io-gif.c: Some more work. Now it generates a gdk_pixbuf of
2402 the right size, at a minimum, even if the image is squished and
2404 (ReadImage): lets get the offset right. This will let transparent
2407 1999-10-29 Michael Fulbright <drmike@redhat.com>
2409 * src/io-jpeg.c: image_load_increment(): Fixed bug when
2410 image width was not a multiple of 4 - always use the
2411 gdk_pixbuf rowstride to increment pointers!
2413 1999-10-29 Michael Fulbright <drmike@redhat.com>
2415 * src/io-jpeg.c: Added first cut at progressive jpeg loading.
2416 Currently does not handle either progressive jpeg files (jpeg
2417 files with multiple scans at different quality settings), but
2418 I plan on adding this support soon. These are fairly rare in
2419 my experience, so it shouldn't slow people down too much.
2420 Grayscale jpegs also don't work but that should be easy to fix.
2422 1999-10-29 Michael Fulbright <drmike@redhat.com>
2424 * src/testpixbuf.c: Added title to windows so you can identify
2425 progressive and file windows.
2427 1999-10-29 Michael Fulbright <drmike@redhat.com>
2429 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): Actually
2430 load the image handler when we determine the image type.
2432 * src/gdk-pixbuf-io.[ch] (gdk_pixbuf_load_module): Changed the
2433 previously static function load_image_handler () to
2434 a public function gdk_pixbuf_load_module (). It is needed in
2435 gdk-pixbuf-loader.c to load image handler modules. This function
2436 is different from gdk_pixbuf_get_module (), which only returns
2437 a reference to the required handler, because it actually loads
2438 the handler into memory. Both actions should possibly be combined
2439 in a convenience function since one w/o the other doesn't seem to
2442 1999-10-28 Jonathan Blandford <jrb@redhat.com>
2444 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): don't send a
2447 1999-10-28 Federico Mena Quintero <federico@redhat.com>
2449 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable): New
2450 function to render a portion of a pixbuf to a drawable. Ignores
2451 alpha information and takes in a GC.
2452 (gdk_pixbuf_render_to_drawable_alpha): New function to render a
2453 portion of a pixbuf to a drawable. It automatically creates a GC
2454 and a clipping mask for alpha pixbufs.
2456 1999-10-28 Jonathan Blandford <jrb@redhat.com>
2458 * src/gdk-pixbuf.h: turned convenience macros into convenience
2459 functions so some error checking could be added.
2461 * src/io-tiff.c (image_load_increment): started work on the tiff
2462 non-incremental loader.
2463 (image_begin_load): Finished the incremental loader.
2465 * src/io-gif.c (image_load_increment): started work on the gif
2468 * src/gdk-pixbuf-io.h: Changed ModuleType to GdkPixbufModule.
2470 1999-10-27 Federico Mena Quintero <federico@redhat.com>
2472 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_threshold_alpha): New
2473 function to threshold a pixbuf's alpha channel into a bitmap.
2475 * src/gdk-pixbuf.c (gdk_pixbuf_new): Fixed so that it will
2476 contemplate future extensions to ArtPixBuf's formats.
2478 * src/io-png.c (png_info_callback): Use the new API of gdk_pixbuf_new().
2480 * src/gdk-pixbuf.h (gdk_pixbuf_get_height): Added some convenience
2481 macros to fetch the ArtPixBuf's fields.
2483 1999-10-27 Havoc Pennington <hp@pobox.com>
2485 * src/testpixbuf.c (main): Display the progressive load
2487 * src/io-png.c (setup_png_transformations): Break transformation
2488 code into separate function
2489 (png_info_callback): Use setup_png_transformations
2491 1999-10-27 Havoc Pennington <hp@pobox.com>
2493 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): Check
2494 properly whether the XPM module has already been loaded
2495 (gdk_pixbuf_new_from_file): Check properly if loader module
2496 was already loaded (was checking if load symbol was present
2497 in order to decide whether to re-load; should check module !=
2498 NULL, then load != NULL)
2499 (image_handler_load): Check in present working directory,
2500 makes it easier to debug for now
2501 (file_formats): This array initializer was seriously on crack,
2502 was assigning a function pointer to a GModule*
2504 * src/testpixbuf.c (main): Change type of pixbuf_loader to GdkPixbufLoader*
2506 1999-10-27 Havoc Pennington <hp@pobox.com>
2508 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_finalize):
2509 Fix typo that prevented compilation
2510 (gdk_pixbuf_loader_destroy): ditto
2512 1999-10-27 Federico Mena Quintero <federico@redhat.com>
2514 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_new): Return a
2515 GdkPixbufLoader, not a GtkObject.
2516 (gtk_marshal_NONE__INT_INT_INT_INT): Made static.
2517 (gdk_pixbuf_loader_get_type): Documented.
2518 (gdk_pixbuf_loader_class_init): Initialize the parent class
2520 (gdk_pixbuf_loader_destroy): Added sanity checks. Call the parent
2521 class destroy function.
2522 (gdk_pixbuf_loader_new): Documented.
2523 (gdk_pixbuf_loader_finalize): Call the parent class finalize
2525 (gdk_pixbuf_loader_write): Use size_t for count.
2527 1999-10-27 Michael Fulbright <drmike@redhat.com>
2529 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_destroy): Fixed
2530 logic so we only try to close loader if it wasn't previously closed.
2532 1999-10-27 Michael Fulbright <drmike@redhat.com>
2534 * src/gdk-pixbuf-loader.c: Made sure image_loader struct member of
2535 pixbuf_loader properly initialized.
2537 * src/testpixbuf.c: Made sure we cleanup pixbuf_loader properly
2540 1999-10-26 Jonathan Blandford <jrb@redhat.com>
2542 * src/gdk-pixbuf-io.c (image_handler_load): load the vtable fully.
2544 * src/gdk-pixbuf-loader.c: Finished initial cut at the object.
2546 1999-10-26 Havoc Pennington <hp@pobox.com>
2548 * src/gdk-pixbuf-loader.h: fix signals
2550 * src/gdk-pixbuf-io.h: add new vtable fields
2553 1999-10-26 Jonathan Blandford <jrb@redhat.com>
2555 * src/gdk-pixbuf-loader.h: New Class. Beginning of progrssive
2558 1999-10-25 Federico Mena Quintero <federico@redhat.com>
2560 * configure.in (CFLAGS): Patch from Uwe Koloska
2561 <koloska@Rcs1.urz.tu-dresden.de> to fix a stupid typo of mine.
2563 1999-10-22 Havoc Pennington <hp@pobox.com>
2565 * src/io-xpm.c (mem_buffer): Clean up stupid
2566 increment-inside-array-dereference thing
2568 * src/testpixbuf.c: Add XPM data tests.
2570 * src/io-xpm.c: Make the XPM data buffer const, fix const
2571 correctness throughout the code.
2573 1999-10-22 Havoc Pennington <hp@pobox.com>
2575 * src/gdk-pixbuf.h: Export gdk_pixbuf_new_from_xpm_data()
2577 1999-10-22 Havoc Pennington <hp@pobox.com>
2579 * src/io-xpm.c (image_load_xpm_data): Export this symbol for
2580 loading an XPM from memory.
2582 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): New
2583 function, loads pixbuf from xpm data
2584 (image_handler_load): Add g_return_if_fail() to ensure the same
2585 module isn't loaded twice. Add g_module_symbol() to scan for XPM
2588 1999-10-22 Federico Mena Quintero <federico@redhat.com>
2590 * src/io-png.c (image_load): Patch from Kristian Hogsberg
2591 Kristensen <hogsberg@daimi.au.dk> to avoid allocating extra row
2592 buffers; the rows can be read in directly into the main pixel
2595 1999-10-20 Federico Mena Quintero <federico@redhat.com>
2597 * src/gdk-pixbuf-io.c (image_handler_load): Free path.
2599 1999-10-20 Federico Mena Quintero <federico@redhat.com>
2601 * configure.in: Bumped version number to 0.3.
2603 * src/Makefile.am (lbgdk_pixbuf_la_LDFLAGS): Added a libtool
2604 version number for the library.
2606 1999-10-20 Federico Mena Quintero <federico@redhat.com>
2608 * src/gdk-pixbuf.h (GdkPixbuf): Removed the unref_fn field. Now
2609 all memory management of the buffer is done by libart.
2611 * src/gdk-pixbuf.c (gdk_pixbuf_unref): Do destruction here.
2612 Removed gdk_pixbuf_destroy, gdk_pixbuf_duplicate.
2614 * src/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Implemented in
2615 terms of the libart functions. Removed the old code.
2617 * src/gdk-pixbuf-io.c (image_handler_load): Removed the save
2618 symbols. Saving will not be implemented in GdkPixbuf.
2620 * src/io-gif.c: Removed the saving stub.
2621 (image_load): Fixed memory management to fail gracefully if we run
2622 out of memory while loading the image. Close the gif file when we
2623 are done. This still needs more error handling for the DGif
2626 * src/io-jpeg.c (image_load): Some robustness fixes.
2628 * src/io-png.c: Removed the saving stuff.
2629 (image_load): Some memory management fixes.
2631 * src/io-tiff.c (image_load): Ditto.
2633 * src/io-xpm.c (pixbuf_create_from_xpm): Ditto.
2635 1999-10-18 Havoc Pennington <hp@pobox.com>
2637 * subautogen.sh: New name for macros/autogen.sh
2639 * autogen.sh: use subautogen.sh
2641 1999-10-18 Federico Mena Quintero <federico@redhat.com>
2643 * src/*: Reindented to use the GNOME Indentation. Renamed
2644 GdkPixBuf to GdkPixbuf, for consistency with the function names
2645 (and it is also easier to type) :-)
2647 1999-10-18 Havoc Pennington <hp@pobox.com>
2649 * configure.in: Use AM_PATH_GLIB instead of glib-config directly
2651 * src/Makefile.am: Re-enable testpixbuf with GTK_CFLAGS/GTK_LIBS
2653 1999-10-18 Havoc Pennington <hp@pobox.com>
2655 * Makefile.am (SUBDIRS): Remove "macros"
2657 * configure.in: Don't use GNOME_INIT, handle case where we are
2658 inside gnome-libs. AM_PATH_GTK for the GIF test
2660 * src/Makefile.am: Change flags to work without libgnomeui,
2661 comment out testpixbuf for now
2663 1999-10-18 Federico Mena Quintero <federico@redhat.com>
2665 * configure.in: Use $GTK_LIBS as the extra libs when checking for
2666 libgif/libungif, as they need the X libraries. Fixes bug #2472.
2668 1999-10-10 Cody Russell <bratsche@dfw.net>
2669 * src/gdk-pixbuf-drawable.c: core function now determines whether
2670 the requested geometry is on screen or not, and if some is not
2671 then the request is clamped to geometry that is on the screen.
2673 Changed 'pixbuf' to 'art_pixbuf' in core function.
2675 1999-10-08 Michael Fulbright <drmike@redhat.com>
2677 * src/gdk-pixbuf-data.c: Added to load rgb data from const data.
2679 * src/testpifbuf: Changed test program to display cdrom from rgb data
2680 if no filename given to test program.
2682 1999-10-07 Cody Russell <bratsche@dfw.net>
2683 * src/gdk-pixbuf-drawable.[ch]: Added. (Actually, Miguel committed
2684 them, but I wrote them).
2686 * src/gdk-pixbuf-drawable.h: Added a missing ; so things will now
2689 * src/Makefile.am: Added gdk-pixbuf-drawable.[ch] to
2690 libgdk_pixbuf_la_SOURCES and libgdk_pixbufinclude_HEADERS.
2692 * src/gdk-pixbuf-drawable.c: Added #include "gdk-pixbuf-drawable.h"
2695 * src/gdk-pixbuf-drawable.[ch]: Changed functions to return
2696 GdkPixBuf* instead of ArtPixBuf*.
2698 1999-09-22 Michael Meeks <michael@nuclecu.unam.mx>
2700 * src/gdk-pixbuf.c (gdk_pixbuf_new): created.
2701 (gdk_pixbuf_scale): use gdk_pixbuf_new + return a new scaled image.
2703 * src/gdk-pixbuf.h (struct _GdkPixBuf): Re-organise struct, + add
2704 GdkPixBufUnrefFunc + gdk_pixbuf_new.
2706 * src/io-jpeg.c (image_load): clean to use gdk_pixbuf_new.
2708 * src/io-xpm.c (_pixbuf_create_from_xpm): ditto.
2710 * src/io-tiff.c (image_load): ditto + fix leak
2712 * src/io-png.c (image_load): ditto + add more exit points; monitor.png
2713 crashes this module ( add warning :-)
2715 * src/io-bmp.c (image_load): ditto.
2717 * src/io-gif.c (image_load): ditto.
2719 1999-09-18 Michael Meeks <michael@nuclecu.unam.mx>
2721 * src/gdk-pixbuf.c (gdk_pixbuf_scale): Hack rgba support in so
2722 it doesn't crash scaling with alpha.
2724 1999-09-17 Federico Mena Quintero <federico@redhat.com>
2726 * src/io-bmp.c (image_load): Set the initial ref_count to 1.
2728 * src/io-gif.c (image_load): Likewise.
2730 * src/io-jpeg.c (image_load): Likewise.
2732 * src/io-png.c (image_load): Likewise.
2734 * src/io-tiff.c (image_load): Likewise.
2736 * src/io-xpm.c (_pixbuf_create_from_xpm): Likewise.
2738 * src/gdk-pixbuf-io.c (gdk_pixbuf_load_image): Added an assertion
2739 for the ref_count to be != 0.
2741 * src/gdk-pixbuf.c (gdk_pixbuf_ref): Be more paranoid with sanity
2743 (gdk_pixbuf_unref): Fix incorrect sanity check and comparison.
2745 1999-08-09 Federico Mena Quintero <federico@nuclecu.unam.mx>
2747 * src/io-png.c (image_save): Fixed compiler warnings. Fixed write
2748 to unallocated memory (row_ptr), and fixed its type as well. Take
2749 into account the ArtPixbuf's rowstride when assigning the row
2752 * src/gdk-pixbuf.c: Fixup includes.
2754 * src/gdk-pixbuf-io.c: Likewise.
2756 Sat Jul 31 19:19:47 CEST 1999
2758 * src/gdk-pixbuf-io.c:
2759 * src/io-png.c: Fixed two obvious C syntax bugs
2761 1999-07-29 Mark Crichton <crichton@gimp.org>
2763 * src/io-png.c (image_save): Added PNG saving function
2765 * src/gdk-pixbuf-io.c: Changed image_save function format. Now it's
2766 image_save(GdkPixBuf *p, FILE *f, ...)
2769 1999-07-26 Michael Zucchi <mzucchi@denr.sa.gov.au>
2771 * src/Makefile.am (*_LIB): Only build the relevant loaders which
2772 require extra libraries if we actually have those libraries.
2774 1999-07-23 Richard Hestilow <hestgray@ionet.net>
2776 * src/gdk-pixbuf.h: Include glib.h as it uses g* datatypes
2777 * gdk_pixbufConf.sh.in: Added for gnome-config
2779 * configure.in: Modified to generate gdk_pixbufConf.sh
2781 1999-07-20 Mark Crichton <crichton@gimp.org>
2783 * src/gdk-pixbuf.c (gdk_pixbuf_rotate): Fixed rotation. Now a bbox
2784 calculation needs to be done.
2786 1999-07-18 Larry Ewing <lewing@gimp.org>
2791 * src/io-jpeg.c: Fix a few memory leaks in the, most of them in
2792 error cases but one or two in the common case. There are probably
2793 a few small ones left.
2795 1999-07-18 Mark Crichton <crichton@gimp.org>
2797 * configure.in: removed version.h.
2799 * src/gdk-pixbuf-io.c (pixbuf_check_tiff): Minor readability
2802 1999-07-17 Mark Crichton <crichton@gimp.org>
2804 * src/gdk-pixbuf.c: Removed gdk_pixbuf_free, redundant code.
2805 (gdk_pixbuf_rotate): Added pixbuf rotation code.
2806 (gdk_pixbuf_scale): Changed // comments to /* */
2808 * src/gdk-pixbuf.h (gdk_pixbuf_destroy): Added gdk_pixbuf_destroy
2811 1999-07-16 Larry Ewing <lewing@gimp.org>
2813 * src/testpixbuf.c (expose_func): reverted the expose everything
2814 changes, I'm not sure why these went in.
2815 (config_func): bring this up to date with the new pixbuf_scale
2818 * src/gdk-pixbuf-io.c: added a couple of warnings to the module
2819 loading code so that poeple can diagnose problems better.
2821 * src/gdk-pixbuf.c (gdk_pixbux_scale): fix the borkedness, also it
2822 no longer allocates a new pixbuf, which make things nicer for the
2823 rest of the code. Unfortunately there is still a problem with
2824 scaling rgba images.
2826 1999-07-16 Mark Crichton <crichton@gimp.org>
2828 * src/testpixbuf.c (config_func): ConfigureEvent handler. This
2829 calls gdk_pixbuf_scale. However, something is not working.
2830 N.B.: current pixmap is now stored in user_data with a key of
2833 * src/gdk-pixbuf.c (gdk_pixbuf_scale): Implemented scaling function.
2834 Something is still borked, however.
2836 1999-07-15 Larry Ewing <lewing@gimp.org>
2838 * src/io-jpeg.c (image_load): add raph@gimp.org's fix to the jpeg
2841 * src/testpixbuf.c (main): fix up the file routines a little so
2842 that you can load multiple files given the file names
2844 1999-07-14 Larry Ewing <lewing@gimp.org>
2846 * src/testpixbuf.c (expose_func): added an almost proper expose
2847 handler for testpixbuf
2849 1999-07-13 Mark Crichton <crichton@gimp.org>
2851 * configure.in: Fixed GIF check. Replaced " with '
2852 * src/gdk-pixbuf.c: More (minor) work on gdk_pixbuf_scale
2854 1999-07-13 Mark Crichton <crichton@gimp.org>
2856 * configure.in: I am a bonehead. Added gif-lib check.