1 2000-08-10 Havoc Pennington <hp@redhat.com>
3 * Makefile.am (EXTRA_DIST): The *.def files had the wrong names
4 (s/pixbuf_/pixbufloader_)
6 2000-08-02 Tor Lillqvist <tml@iki.fi>
12 * io-wbmp.c: Conditionalise inclusion of <unistd.h>.
14 * makefile.mingw.in: List loaders alphabetically. Add the wbmp
15 one. Fix names of DLLs to have '-' instead of '_'.
17 2000-07-31 Elliot Lee <sopwith@redhat.com>
18 * io-wbmp.c: Some bug fixes - now tested to work.
20 2000-07-27 Elliot Lee <sopwith@redhat.com>
21 * gdk-pixbuf-io.h, gdk-pixbuf-io.c: Add gdk_pixbuf_get_named_module() function to facilitate above change
22 * io-wbmp.c, pixbufloader_wbmp.defs, gdk-pixbuf-io.c, Makefile: Implement loader for WBMP format.
23 * io-bmp.c: Don't malloc a temporary buffer - use stack instead.
25 2000-07-23 Tor Lillqvist <tml@iki.fi>
30 * pixops/makefile.mingw.in
31 * pixbuf_*.def: New files.
34 * pixops/Makefile.am: Add them. Add rule to generate makefile.mingw.
36 * gdk-pixbuf-io.c (gtk_win32_get_installation_directory):
37 New function, to get the GTK+ installation directory from
38 the Windows Registry, where the installation program
39 for whatever software includes GTK+ has stored it.
41 Used to avoid having hardcoding the directory where to look for
42 loaders. This function is needed by gtk, too, so it should
43 really be just in one place. Maybe a small static library
44 one level up from here?
46 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file)
47 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file):
48 Open file in binary mode. This *is* standard C. (No-op on Unix,
51 * io-jpeg.c: If we don't HAVE_SIGSETJMP, use normal setjmp().
53 * io-tiff.c: Use g_get_tmp_dir(). If we don't HAVE_MKSTEMP, use
55 (gdk_pixbuf__tiff_image_stop_load): g_free() also the tempname.
57 * pixops/*.S: The Gas from mingw32 doesn't like the .type
58 pseudo-op. Conditionalise on __MINGW32__, but probably
59 should conditionalise on Gas version instead? Or could we
60 do without .type on all systems?
62 * pixops/timescale.c: Use g_get_current_time()
63 instead of gettimeofday().
65 Sat Jul 22 10:57:22 2000 Owen Taylor <otaylor@redhat.com>
67 * Makefile.am (test_gdk_pixbuf_LDADD): Remove -lgmodule
69 Tue Jul 11 11:26:42 2000 Owen Taylor <otaylor@redhat.com>
71 * gdk-pixbuf.c: Add <string.h> include.
73 Tue Jul 11 06:20:14 2000 Tim Janik <timj@gtk.org>
75 * io-gif.c (gdk_pixbuf__gif_image_load_animation):
76 * gdk-pixbuf-data.c (gdk_pixbuf_new_from_data):
77 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file):
78 use g_object_new() instead of g_type_create_instance() which
79 is a private function for fundamental type implementations.
81 Thu Jul 6 11:49:47 2000 Owen Taylor <otaylor@redhat.com>
83 * Makefile.am (libgdk_pixbuf_la_LDFLAGS): Use GTK+ version
84 soname scheme for gdk-pixbuf.
86 2000-06-21 Havoc Pennington <hp@pobox.com>
88 * gdk-pixbuf.c: Convert GdkPixbuf to GObject, leaving it opaque
89 (i.e. derivation is not allowed, and there are no virtual methods
91 (gdk_pixbuf_preinit): Call g_type_init() here.
92 (gdk_pixbuf_init): Add a user-friendly init function, for users
93 of standalone gdk-pixbuf
95 * gdk-pixbuf-animation.c: Convert to GObject, in the same
96 way GdkPixbufAnimation was done.
98 * gdk-pixbuf.h: Remove gdk_pixbuf_set_unref_handler() and
99 gdk_pixbuf_finalize() from API, since these are broken and don't
100 make sense with new GObject stuff.
102 Wed Jun 21 16:02:48 2000 Owen Taylor <otaylor@redhat.com>
104 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): Add feature to
105 support a GDK_PIXBUF_MODULEDIR env variable as a secondary
108 2000-06-10 Federico Mena Quintero <federico@helixcode.com>
110 * demo/pixbuf-demo.c: It was cold and rainy this Saturday morning,
111 so I needed something to warm my thighs. Running plain infinite
112 loops on your laptop to make it hot is not very much fun. A demo
113 of the gdk-pixbuf scaling functions is way better, and looks
116 * configure.in (AC_OUTPUT): Added the demo Makefile.
118 * Makefile.am (SUBDIRS): Added the demo directory.
120 2000-06-09 Larry Ewing <lewing@helixcode.com>
122 * gdk-pixbuf/io-png.c (gdk_pixbuf__png_image_load_increment):
123 setjmp for the png error handler. It seems setting the error
124 handling functions does not avoid the jump, and so not calling
125 setjmp was causing the incremental loader to jump into lala land.
126 (gdk_pixbuf__png_image_begin_load): setjmp for error handling, I'm
127 not sure this one is actually required but the docs say it must be
128 set for every call to a png_* function.
129 Also changed the comment to reflect the fact that setting the
130 error handlers does _not_ avoid the longjmp.
132 2000-06-06 Larry Ewing <lewing@helixcode.com>
134 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
135 take frame offest into account when trying to calculate the
136 animation bbox. Also set the width to the width not the height.
137 (gdk_pixbuf_loader_animation_done): cycle over the frames to
138 calculate bbox because now we finally have all the offset
139 information for each frame.
141 2000-06-05 Mathieu Lacage <mathieu@gnome.org>
143 * configure.in: add some gtk parameters to the
144 GDK_PIXBUF_LIBĀ²S and GDK_PIXBUG_INCLUDEDIR vars. One more
145 fight in my crusade for strange prefix compile...
147 2000-05-30 Not Zed <NotZed@HelixCode.com>
149 * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_begin_load):
150 Initialise the error handler exit routine to our own. Note this
151 means that every function that accesses the jpeg lib on this
152 object MUST do a setjmp.
153 (gdk_pixbuf__jpeg_image_stop_load): setjmp before accessing jpeg
154 lib for handling fatal error.
155 (gdk_pixbuf__jpeg_image_load_increment): And here too. So now
156 your applications dont quit if there's a jpeg error!
158 2000-05-30 Federico Mena Quintero <federico@helixcode.com>
160 * gdk-pixbuf.spec.in: Include all the loader libraries. Patch
161 from Frank de Lange <frank@unternet.org>.
163 2000-05-09 Darin Adler <darin@eazel.com>
165 * gdk-pixbuf/test-gdk-pixbuf.c:
166 Fixed includes to get rid of accidental GNOME dependency.
168 2000-05-26 Cody Russell <car0969@gamma2.uta.edu>
169 * Makefile.am: Added gdk-pixbuf.spec to EXTRA_DIST
171 2000-05-22 Federico Mena Quintero <federico@helixcode.com>
173 * configure.in: Bumped version number to 0.8.0.
175 * doc/Makefile.am (content_files): The toplevel gdk-pixbuf.sgml
176 file was not being distributed.
178 * gdk-pixbuf/pixops/Makefile.am (EXTRA_DIST): Added DETAILS.
180 2000-05-09 Darin Adler <darin@eazel.com>
182 * gdk-pixbuf/gdk-pixbuf-drawable.c: (rgb565lsb), (rgb565msb),
183 (rgb565alsb), (rgb565amsb), (rgb555lsb), (rgb555msb), (rgb555alsb),
184 (rgb555amsb), (convert_real_slow): Change all conversion from 16-bit
185 formats to 32-bit formats to re-use the high bits of the color values
186 so that white maps to full white.
188 Fri May 5 12:16:32 2000 Owen Taylor <otaylor@redhat.com>
190 * gdk-pixbuf/pixops/DETAILS: Add beginnings of file with
191 detailed information about the structure and algorithms
192 of pixops so people can fix it instead of breaking it.
194 2000-05-04 Darin Adler <darin@eazel.com>
196 * gdk-pixbuf/pixops/pixops.c: (pixops_composite_nearest),
197 (composite_pixel), (composite_line):
198 * gdk-pixbuf/test-gdk-pixbuf.c: (simple_composite_test_one_type):
199 Now that Owen explained the algorithm, I think I implemented it
200 right for the cases where the destination pixbuf is not opaque.
201 The test does seem to confirm it.
203 2000-05-04 Darin Adler <darin@eazel.com>
205 * gdk-pixbuf/.cvsignore:
206 * gdk-pixbuf/Makefile.am:
207 * gdk-pixbuf/test-gdk-pixbuf.c (store_pixel), (fill_with_pixel),
208 (load_pixel), (simple_composite_test_one),
209 (simple_composite_test_one_type), (simple_composite_test), (main):
210 Added some tests of composite to highlight problems in the old
211 implementation. These tests run without any user interaction.
212 Just do "make check".
214 * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest),
215 (composite_pixel), (composite_line): Fix composite to do a textbook
216 "A over B" composite. This was clearly the intent, and it was easy
217 to fix the code to do it. (Note to those that read my earlier tries
218 at a patch; this version fixes typos that were present in all
219 my patch attempts. I checked the final version by adding more tests.)
221 2000-04-22 05:27:43 2000 Owen Taylor <otaylor@redhat.com>
223 * gdk-pixbuf/pixops/pixops.c (pixops_scale_nearest): Properly
224 offset y coordinate accordining to render_y0.
226 * gdk-pixbuf/gdk-pixbuf-scale.c: Properly handle nonzero
229 2000-04-22 James Henstridge <james@daa.com.au>
231 * gdk-pixbuf.spec.in (%files): moved %{prefix}/bin/* from the main
232 package to the devel package. The only file installed in bin is
233 gdk-pixbuf-config, which belongs in -devel. This should allow having
234 multiple versions of the main gdk-pixbuf package installed.
236 2000-04-17 Karl Eichwalder <ke@suse.de>
238 * gdk-pixbuf/Makefile.am (INCLUDES): Add $(GNOME_CFLAGS).
239 Reported by Jens Finke.
241 2000-04-14 Tomasz KĀ³opczko <kloczek@pld.org.pl>
243 * gdk-pixbuf/pixops/makefile.am: $(LIBART_CFLAGS) replaced by
244 $(GTK_CFLAGS) - now gdk-pixbuf compiles correctly.
246 2000-04-13 James Henstridge <james@daa.com.au>
248 * configure.in: when performing the configure check to see if
249 gmodule works, set CFLAGS to GLIB_CFLAGS and LIBS to GLIB_LIBS,
250 rather than the other way round. Also, call AC_MSG_RESULT in the
251 even that dynamic modules were not supported.
253 2000-04-12 Federico Mena Quintero <federico@helixcode.com>
255 This comes from an excellent idea by Tim Janik (timj@gtk.org) to
256 hook to the last unref operation.
258 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_set_last_unref_handler): New
259 function to set the last unref handler for a pixbuf.
260 (gdk_pixbuf_finalize): New function to actually finalize a pixbuf.
261 It calls the pixbuf's destroy notification function and frees the
262 GdkPixbuf structure itself.
263 (gdk_pixbuf_unref): Use the last unref function of the pixbuf if
266 * gdk-pixbuf/gdk-pixbuf-private.h (struct _GdkPixbuf): New fields
267 for the last unref handler and its user data.
269 * gdk-pixbuf/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Use
270 g_new0() to allocate the pixbuf.
272 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
273 Fixed the call to gtk_signal_new() for the "frame_done" signal; it
274 was not specifying the `frame' argument.
276 * gdk-pixbuf/gdk-pixbuf-animation.c
277 (gdk_pixbuf_animation_get_width): Fixed docstring.
278 (gdk_pixbuf_animation_get_height): Likewise.
279 (gdk_pixbuf_animation_get_num_frames): Likewise.
280 (gdk_pixbuf_animation_get_frames): Likewise.
282 * doc/gdk-pixbuf-sections.txt: Updated with the new functions and
285 * doc/tmpl/gdk-pixbuf.sgml: Added the description for GdkColorspace.
287 * doc/tmpl/scaling.sgml: Added the description for GdkInterpType.
289 * doc/tmpl/refcounting.sgml: Updated with the information about
290 the last unref handler.
292 * doc/tmpl/*.sgml: Markup tweaks.
294 * gdk-pixbuf/Makefile.am (libgnomecanvaspixbuf_la_LDFLAGS): Sigh,
295 update the libtool version number for libgnomecanvaspixbuf as
297 (libpixbufloader_*_la_LDFLAGS): The loaders need to be versioned
298 as well, or the old ones won't work with the new stuff. Also,
299 renamed the modules as follows.
301 * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_load_module): Now the
302 modules are called "libpixbufloader-<format>.so" instead of
303 "libpixbuf-<format>.so". They needed renaming so that the new
304 loaders won't overwrite the old ones; even with the versioning
305 stuff, the new .so symlink to the .so.1.0.0 would overwrite the
308 2000-04-12 Paolo Molaro <lupus@debian.org>
310 * .cvsignore, src/.cvsignore: shut up cvs.
312 2000-04-11 Federico Mena Quintero <federico@helixcode.com>
314 Most of this patch is based on a patch by Havoc Pennington
315 (hp@redhat.com) to make GdkPixbuf's structures opaque and to
316 remove the libart dependency.
318 * gdk-pixbuf/gdk-pixbuf.h: Removed the public structures.
319 (GdkColorspace): New enum that for now only contains
321 (GdkPixbufDestroyNotify): New type for the pixbuf's pixels destroy
322 notification function.
323 (GdkInterpType): New num with interpolation types.
325 * *.[ch]: Replace the libart stuff with our own stuff.
327 * pixops/*.[ch]: Likewise.
329 * gdk-pixbuf/gdk-pixbuf-private.h: New file with the private
330 declarations of the GdkPixbuf structures.
332 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_new_from_art_pixbuf):
334 (gdk_pixbuf_get_format): Constify.
335 (gdk_pixbuf_get_n_channels): Constify.
336 (gdk_pixbuf_get_has_alpha): Constify.
337 (gdk_pixbuf_get_bits_per_sample): Constify.
338 (gdk_pixbuf_get_pixels): Constify.
339 (gdk_pixbuf_get_width): Constify.
340 (gdk_pixbuf_get_height): Constify.
341 (gdk_pixbuf_get_rowstride): Constify.
343 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_copy): New function to copy
346 * gdk-pixbuf/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Added a
347 bits_per_sample argument; currently only 8 bits per sample are
350 * gdk-pixbuf/gdk-pixbuf-animation.c (gdk_pixbuf_frame_get_pixbuf):
352 (gdk_pixbuf_frame_get_x_offset): New accessor.
353 (gdk_pixbuf_frame_get_y_offset): New accessor.
354 (gdk_pixbuf_frame_get_delay_time): New accessor.
355 (gdk_pixbuf_frame_get_action): New accessor.
357 * gdk-pixbuf/gdk-pixbuf-render.c
358 (gdk_pixbuf_render_pixmap_and_mask): Instead of returning a solid
359 mask rectangle for pixbufs without an alpha channel, set the
360 *mask_return to NULL.
362 * gdk-pixbuf/gdk-pixbuf-util.c (gdk_pixbuf_add_alpha): Constify.
364 * gdk-pixbuf/gdk-pixbuf-scale.c: Fix includes.
366 * gdk-pixbuf/gdk-pixbuf-scale.c (gdk_pixbuf_scale): Added some
367 preconditions. Maybe we should also check for the colorspace,
368 bits per pixel, and such.
369 (gdk_pixbuf_composite): Likewise.
370 (gdk_pixbuf_composite_color): Likewise.
371 (gdk_pixbuf_scale_simple): Likewise, and fail gracefully if we
372 cannot allocate the new pixbuf.
373 (gdk_pixbuf_composite_color_simple): Likewise.
375 * gdk-pixbuf/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_render):
376 Use art_rgb_rgba_affine() or art_rgb_affine() since we no longer
379 * gdk-pixbuf/io-bmp.c: Fix includes.
381 * gdk-pixbuf/pixops/pixops.c (pixops_scale_nearest): Fixed cast in
386 * configure.in: Removed checks for libart.
388 * gdk-pixbuf/Makefile.am: Removed references to libart.
389 (noinst_HEADERS): Added gdk-pixbuf-private.h.
391 * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_LDFLAGS): Incremented
392 the version number of the libtool library to indicate that this
393 definitely is not compatible with the old usage. I know you love
396 * configure.in: Bumped version number to 0.7.0.
400 * gdk-pixbuf-config.in (--libs): We no longer require libart.
402 * DEPENDS.libgdk_pixbuf: We no longer depend on libart.
404 * gdk-pixbuf.spec.in: Updated, but I don't guarantee anything.
406 2000-04-06 Jonathan Blandford <jrb@redhat.com>
408 * gdk-pixbuf/testanimation.c (main): add more info to the
409 testanimation frames.
411 2000-04-04 Ettore Perazzoli <ettore@helixcode.com>
413 * gdk-pixbuf/gdk-pixbuf-animation.c
414 (gdk_pixbuf_animation_get_width): New accessor function.
415 (gdk_pixbuf_animation_get_height): New accessor function.
416 (gdk_pixbuf_animation_get_num_frames): New accessor function.
417 (gdk_pixbuf_animation_get_frames): New accessor function.
419 2000-04-01 Federico Mena Quintero <federico@helixcode.com>
421 * gdk-pixbuf/gdk-pixbuf.c: Reverted Mark's change. The refcount
422 is private information, and the art_pixbuf will go away soon.
424 2000-03-31 Mark Crichton <crichton@gimp.org>
426 * gdk-pixbuf/gdk-pixbuf.c: Added gdk_pixbuf_get_refcount
427 and gdk_pixbuf_get_artpixbuf accessor functions.
429 2000-03-29 Federico Mena Quintero <federico@helixcode.com>
431 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_get_has_alpha): Return
432 gboolean instead of int.
434 2000-03-29 Radek Doulik <rodo@helixcode.com>
436 * gdk-pixbuf/gdk-pixbuf-animation.c
437 (gdk_pixbuf_animation_new_from_file): same as below
439 * gdk-pixbuf/io-gif.c (gif_get_lzw): added update of width and
440 height in GdkPixbufAnimation
442 2000-03-28 Radek Doulik <rodo@helixcode.com>
444 * gdk-pixbuf/io-gif.c (gif_get_lzw): test also for
445 context->frame_done_func and context->anim_done_func to make
446 progressive animation loading work
448 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
449 added priv->pixbuf = NULL as pixbuf is now in frame (and to make
450 gdk_pixbuf_loader_prepare happy)
451 (gdk_pixbuf_loader_frame_done): update animation bbox
453 * gdk-pixbuf/gdk-pixbuf.h: added bbox size (width, height) to
456 2000-03-27 Radek Doulik <rodo@helixcode.com>
458 * gdk-pixbuf/io-gif.c (gif_get_lzw): use frame_len and frame_width
459 instead of width and height
461 2000-03-27 Owen Taylor <otaylor@redhat.com>
463 * gdk-pixbuf/pixops/pixops.c: Fix problem with
464 precendence of >> and & which was keeping composite_color
465 from working with non-gray images.
467 2000-03-08 Jonathan Blandford <jrb@redhat.com>
469 * gdk-pixbuf/io-gif.c (gdk_pixbuf__gif_image_load): free the context.
470 (gdk_pixbuf__gif_image_load_animation): free the context.
472 2000-03-06 Arjan van de Ven <arjan@fenrus.demon.nl>
474 * gdk-pixbuf/io-bmp.c: Fixed to pointer-bugs and a
475 mis-interpretation of the Microsoft documentation. Now
476 it can load .BMP files that are not generated by The Gimp
479 2000-03-01 Mark Crichton <crichton@gimp.org>
481 * configure.in: Added BUILD_CANVAS_ITEM stuff to (finally)
482 fix the last auto* build bug (where we have libart, but no
485 * gdk-pixbuf/Makefile.am: Same.
487 2000-02-28 Matt Wilson <msw@redhat.com>
489 * gdk-pixbuf/gdk-pixbuf-drawable.c: s/unsigned long/guint32/g,
490 s/unsigned short/guint16/g, s/unsigned char/guint8/g
492 2000-02-26 Federico Mena Quintero <federico@helixcode.com>
494 * README: We don't require libgif/ungif nor libXpm.
496 * NEWS: This was outdated, so updated it.
498 2000-02-25 Federico Mena Quintero <federico@helixcode.com>
500 * gdk-pixbuf.m4: Use the correct name for
501 gdk-pixbuf/gdk-pixbuf.h. Thanks to Jacob Berkman for pointing
504 2000-02-21 Federico Mena Quintero <federico@helixcode.com>
506 * configure.in (GDK_PIXBUF_MINOR): Bumped version number to 0.6.0.
508 * doc/compiling.sgml: New appendix documenting the gdk-pixbuf
509 library's particular options to configure.in.
511 * doc/gdk-pixbuf.sgml: Include compiling.sgml appendix via an
514 * doc/Makefile.am (gdk-pixbuf.html): Added compiling.sgml.
516 * gdk-pixbuf/io-ico.c (gdk_pixbuf__ico_image_load_increment):
517 Fixed typo in prototype name.
519 * configure.in: Changed duplicated AC_MSG_CHECKING message to
520 something more meaningful; now it is "checking whether dynamic
523 * gdk-pixbuf/pixops/Makefile.am (noinst_PROGRAMS): Do not install
524 the timescale program.
526 Integrated Miguel de Icaza's <miguel@gnu.org> patch for optionally
527 creating a single static library with all the image format modules
530 2000-02-20 Miguel de Icaza <miguel@gnu.org>
532 * gdk-pixbuf/io-xpm.c (gdk_pixbuf__xpm_image_load): Add prefix.
533 (gdk_pixbuf__xpm_image_load_xpm_data): Add prefix.
535 * gdk-pixbuf/io-tiff.c (gdk_pixbuf__tiff_image_load_real): Add prefix.
536 (gdk_pixbuf__tiff_image_stop_load): Add prefix.
537 (gdk_pixbuf__tiff_image_load_increment): Add prefix.
538 (gdk_pixbuf__tiff_image_load): Add prefix.
539 (gdk_pixbuf__tiff_image_stop_load): Update invocation.
540 (gdk_pixbuf__tiff_image_begin_load): Add prefix.
542 * gdk-pixbuf/io-ras.c (gdk_pixbuf__ras_image_load): Add prefix.
543 (gdk_pixbuf__ras_image_load): Updated invocation.
544 (gdk_pixbuf__ras_image_begin_load): Add prefix.
545 (gdk_pixbuf__ras_image_stop_load): Add prefix.
546 (gdk_pixbuf__ras_image_load_increment): Add prefix.
548 * gdk-pixbuf/io-pnm.c (gdk_pixbuf__pnm_image_begin_load): Add prefix.
549 (gdk_pixbuf__pnm_image_stop_load): Add prefix.
550 (gdk_pixbuf__pnm_image_load_increment): Add prefix
551 (gdk_pixbuf__pnm_image_load): Add prefix.
553 * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_load): Add prefix.
554 (gdk_pixbuf__jpeg_image_load_increment): Add prefix.
555 (gdk_pixbuf__jpeg_image_begin_load): Add prefix.
556 (gdk_pixbuf__jpeg_image_stop_load): Add prefix.
558 * gdk-pixbuf/io-ico.c (gdk_pixbuf__ico_image_load): Add prefix.
559 (gdk_pixbuf__ico_image_load): update invocation.
560 (gdk_pixbuf__ico_image_load_increment): Add prefix.
561 (gdk_pixbuf__ico_image_load): update invocation.
562 (gdk_pixbuf__ico_image_begin_load): Add prefix.
563 (gdk_pixbuf__ico_image_load): update invocation.
564 (gdk_pixbuf__ico_image_stop_load): Add prefix.
566 * gdk-pixbuf/io-gif.c (gdk_pixbuf__gif_image_load_animation): Add prefix.
567 (gdk_pixbuf__gif_image_load): Add prefix.
568 (gdk_pixbuf__gif_image_begin_load): Add prefix.
569 (gdk_pixbuf__gif_image_load_increment): Add prefix.
570 (gdk_pixbuf__gif_image_load_animation): Add prefix.
571 (gdk_pixbuf__gif_image_stop_load): Add prefix.
573 * gdk-pixbuf/io-bmp.c (gdk_pixbuf__bmp_image_load): Add prefix.
574 (gdk_pixbuf__bmp_image_load): Rename function called.
575 (gdk_pixbuf__bmp_image_load_increment): Add prefix
577 * gdk-pixbuf/io-png.c (gdk_pixbuf__png_image_load): Add prefix.
578 (gdk_pixbuf__png_image_begin_load): Add prefix.
579 (gdk_pixbuf__png_image_stop_load): Add prefix.
580 (gdk_pixbuf__png_image_load_increment): Add prefix.
582 * gdk-pixbuf/gdk-pixbuf-io.c (file_formats): Make this static.
583 (gdk_pixbuf_load_module): Load the shared library entry points
584 using a "gdk_pixbuf__$module_name" prefix.
585 (pixbuf_module_symbol): Wrapper routine that uses the module
586 prefix for the modules to load the information.
588 * configure.in (GDK_PIXBUF_VERSION): New option --disable-modules
589 lets the user specify that gdk-pixbuf should link all image loader
590 code into the library instaed of creating shared library modules.
592 (dynworks): Renamed the automake conditional DYNAMIC_MODULES_WORK
593 to BUILD_DYNAMIC_MODULES.
595 2000-02-19 Jonathan Blandford <jrb@redhat.com>
597 * gdk-pixbuf/io-gif.c (new_context): fix case where initial
598 colormap entry is Transparent.
600 2000-02-19 Owen Taylor <otaylor@redhat.com>
602 * gdk-pixbuf/pixops/pixops.c (scale_pixel): Fix error in
603 scale factors for non-alpha case.
605 2000-02-14 Mark Crichton <crichton@gimp.org>
607 * gdk-pixbuf/io-xpm.c (xpm_extract_color): Added check for "g" color type.
608 Imlib/libXpm handle this, but we didn't.
610 2000-02-14 Darin Adler <darin@eazel.com>
612 * gdk-pixbuf/testpixbuf.c: Remove now-unnecessary cast.
613 * .cvsignore: gdk-pixbuf/.cvsignore: More to ignore.
615 2000-02-14 Elliot Lee <sopwith@redhat.com>
616 * gdk-pixbuf/gdk-pixbuf.h, gdk-pixbuf/gdk-pixbuf-data.c: Make passed-in argument 'const'.
618 2000-02-04 Michael Meeks <mmeeks@gnu.org>
620 * gdk-pixbuf/io-gif.c (struct _GifContext): add x,y_offset.
621 (gif_get_frame_info): put the offsets on the context.
622 (gif_get_lzw): copy them off into the frame.
623 (new_context): no change required; will 0 offsets by default.
625 2000-01-28 Michael Meeks <michael@mejm2.dow.cam.ac.uk>
627 * gdk-pixbuf/pixops/pixops.c (pixops_process): const + nasty
630 * gdk-pixbuf/pixops/pixops.h: const.
632 * gdk-pixbuf/gdk-pixbuf-util.c: const.
634 * gdk-pixbuf/gdk-pixbuf-scale.c: const.
636 * gdk-pixbuf/gdk-pixbuf.h: constify lots of things.
638 2000-02-03 Federico Mena Quintero <federico@helixcode.com>
640 * gdk-pixbuf/gdk-pixbuf-render.c
641 (gdk_pixbuf_render_threshold_alpha): Added sanity check for width
642 and height being >= 0. Also, do nothing if either of them is
643 zero. Thanks to Ettore for pointing this out.
644 (gdk_pixbuf_render_to_drawable): Likewise.
645 (gdk_pixbuf_render_to_drawable_alpha): Likewise.
647 2000-02-02 Federico Mena Quintero <federico@helixcode.com>
649 * gdk-pixbuf/io-gif.c (gif_get_lzw): Removed debugging g_print.
650 Thanks to John Sullivan <sullivan@eazel.com> for the patch.
652 * gdk-pixbuf/testpixbuf-drawable.c (configure_cb): Get a new area
653 of the screen when the window is resized. Thanks to David
654 N. Welton <davidw@linuxcare.com> for pointing this out.
655 Misc. cleanups to the rest of the file.
657 2000-02-01 Federico Mena Quintero <federico@helixcode.com>
659 * doc/tmpl/rendering.sgml: gnome_init() does not call
660 gdk_rgb_init(), so don't mention that it does in the
661 documentation. Thanks to Alexander Kruuse <kruuse@home.se> for
664 2000-01-31 Havoc Pennington <hp@redhat.com>
666 * gdk-pixbuf/Makefile.am (noinst_PROGRAMS): no testpixbuf-foo target
668 Mon Jan 31 12:38:50 2000 Owen Taylor <otaylor@redhat.com>
670 * gdk-pixbuf/pixops/pixops.c (scale_line): Fix from Peter
671 Wainwright to fix 4a => 4a scaling.
673 2000-01-29 Mark Crichton <crichton@gimp.org>
675 * gdk-pixbuf-config: Oh dear, we weren't Telsa/Alan proof...
676 put `libart-config --libs` in instead of -lart_lgpl.
678 2000-01-22 Federico Mena Quintero <federico@helixcode.com>
680 * gdk-pixbuf/io-pnm.c (pnm_read_raw_scanline): Return an error on
682 (pnm_read_ascii_scanline): Initialize data and mask.
684 * gdk-pixbuf/io-xpm.c (pixbuf_create_from_xpm): Initialize
685 fallbackcolor to keep gcc happy.
687 * configure.in: Bumped version number to 0.5.0.
689 * gdk-pixbuf/pixops/timescale.c (dump_array): Removed unused variable.
692 * gdk-pixbuf/pixops/pixops.c (pixops_composite_color_nearest): Put
693 parentheses around + in a shift to remove a compiler warning.
694 (pixops_process): Likewise.
696 Patch from Ross Golder <rossigee@bigfoot.com> to create an RPM
699 * configure.in: Added gdk-pixbuf.spec to AC_OUTPUT.
701 * Makefile.am (EXTRA_DIST): Added gdk-pixbuf.spec.in
703 2000-01-22 Federico Mena Quintero <federico@helixcode.com>
705 * gdk-pixbuf/gnome-canvas-pixbuf.c (PixbufPrivate): Removed the
706 x_set and y_set arguments. Now they are always on and start with
707 defaults of 0.0 in units.
708 (gnome_canvas_pixbuf_class_init): Likewise.
709 (gnome_canvas_pixbuf_set_arg): Likewise.
710 (gnome_canvas_pixbuf_get_arg): Likewise.
711 (compute_viewport_affine): Likewise; always use the priv->x and
714 * doc/tmpl/gnome-canvas-pixbuf.sgml: Modified to reflect the
715 removal of the x_set/y_set arguments.
717 2000-01-21 Federico Mena Quintero <federico@helixcode.com>
719 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_ref): Return the same pixbuf
720 as the input parameter.
722 * gdk-pixbuf/gdk-pixbuf-animation.c (gdk_pixbuf_animation_ref):
723 Return the same animation as the input parameter.
725 2000-01-16 Elliot Lee <sopwith@redhat.com>
727 * gdk-pixbuf/Makefile.am: Don't link against libgnomecanvaspixbuf.la
729 2000-01-16 Federico Mena Quintero <federico@helixcode.com>
731 * configure.in: Removed the broken --enable-canvas-pixbuf option.
732 Added the stuff necessary to substitute the variables in
733 gnomecanvaspixbufConf.sh.in.
735 * gnomecanvaspixbufConf.sh.in: New gnome-config handler for the
736 tiny gnomecanvaspixbuf library.
738 * Makefile.am: Build gnomecanvaspixbufConf.sh.
740 * gdk-pixbuf/Makefile.am: Create a libgnomecanvaspixbuf and only
741 build it if gdk-pixbuf is being built outside of gnome-libs.
743 * doc/gdk-pixbuf-sections.txt: Added gdk_pixbuf_render_pixmap_and_mask().
745 * gdk-pixbuf/gdk-pixbuf-render.c
746 (gdk_pixbuf_render_pixmap_and_mask): Renamed from
747 gdk_pixbuf_render_pixmap(). Do not create the mask if it is not
748 needed, and do not use a clipping mask when rendering the pixmap.
749 Tweaked documentation a little.
751 * HACKING: New file with hacking policies for the gdk-pixbuf
754 * doc/Makefile.am (tmpl_sources): Added missing backslash.
756 * doc/Makefile.am: Use gnomecanvaspixbuf in gnome-config when
757 scanning for docstrings.
759 * gdk-pixbuf/gdk-pixbuf-util.c (gdk_pixbuf_copy_area): Made sanity
760 checks more stringent. Removed "gint" abominations. Made
761 documentation consistent with the rest of the functions.
763 * doc/gdk-pixbuf-sections.txt: Added gdk_pixbuf_copy_area() to the
766 2000-01-14 Jonathan Blandford <jrb@redhat.com>
768 * gdk-pixbuf/gdk-pixbuf-render.c (gdk_pixbuf_render_pixmap): new
769 function to let you create a gdk_pixmap from a gdk_pixbuf.
771 2000-01-11 Jacob Berkman <jacob@helixcode.com>
773 * gdk-pixbuf/pixops/Makefile.am (INCLUDES): added
774 $LIBART_CFLAGS to $INCLUDES
776 2000-01-10 Elliot Lee <sopwith@redhat.com>
778 * configure.in, gdk-pixbuf/Makefile.am: Build a libcanvas_pixbuf.
780 * configure.in: Define version macros. Generate
781 gdk-pixbuf/gdk-pixbuf-features.h. Always INSIDE_GNOME.
783 * gdk-pixbuf/Makefile.am: Add gdk-pixbuf-features.h
785 * gdk-pixbuf/gdk-pixbuf.c: Add definitions of
786 gdk-pixbuf-features.h declarations, plus some initialization
789 2000-01-05 Owen Taylor <otaylor@redhat.com>
791 * gdk-pixbuf/pixops/pixops.c: Fixed src_channels/dest_channels
792 confusion. (Again caught by Tomas Ogren's Purify)
794 2000-01-07 Jonathan Blandford <jrb@redhat.com>
796 * gdk-pixbuf/gdk-pixbuf-xform.c (gdk_pixbuf_rotate): comment out
799 * gdk-pixbuf/gdk-pixbuf-io.c: Added progressive animation loading.
800 * gdk-pixbuf/gdk-pixbuf-io.h: Added progressive animation loading.
801 * gdk-pixbuf/gdk-pixbuf-loader.c: Added progressive animation
803 * gdk-pixbuf/gdk-pixbuf-loader.h: Added progressive animation
805 * gdk-pixbuf/io-gif.c (image_load_increment): I think the
806 ref-counting mess is finally fixed. Added progressive animation
808 (gif_get_lzw): remove memory_leak
810 * doc/tmpl/gdk-pixbuf-loader.sgml: much longer long description
813 2000-01-05 Owen Taylor <otaylor@redhat.com>
815 * gdk-pixbuf/pixops/pixops.c (pixops_process): Fix computation of end of run indices.
817 * gdk-pixbuf/pixops/pixops.c: Fix double increments when dest_channels == 4.
818 (Pointed out by Tomas Ogren)
820 2000-01-05 Mark Crichton <crichton@gimp.org>
822 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_eat_header_write):
823 Return 0 if gdk_pixbuf_load_loader_module returns FALSE.
825 2000-01-05 Elliot Lee <sopwith@redhat.com>
827 * gdk-pixbuf/pixops/Makefile.am: Link with -lm (to get 'ceil' function)
829 2000-01-05 Owen Taylor <otaylor@redhat.com>
831 * doc/Makefile.am doc/gdk-pixbuf-sections.txt
832 doc/gdk-pixbuf.sgml doc/tmpl/scaling.sgml:
833 Added scaling functions into gtk-doc framework.
835 * gdk-pixbuf/gdk-pixbuf-scale.c: Documentation fixes.
837 * gdk-pixbuf/testpixbuf-scale.c (expose_cb): Simplify a bit.
839 * gdk-pixbuf/pixops/pixops.c (pixops_composite_color): Return
840 immediately if scale_x or scale_y is 0.
842 2000-01-05 Owen Taylor <otaylor@redhat.com>
844 * gdk-pixbuf/pixops/timescale.c: quick fix for initializing
847 2000-01-05 Jonathan Blandford <jrb@redhat.com>
849 * gdk-pixbuf/gdk-pixbuf-io.h: Change the order of the update func
850 to make it more compatible with the rest of GTK. Added animation
851 framework for progressive loading.
853 * gdk-pixbuf/io-bmp.c (image_begin_load): Modified to handle new
855 * gdk-pixbuf/io-ico.c (image_begin_load): ditto
856 * gdk-pixbuf/io-png.c (image_begin_load): ditto
857 * gdk-pixbuf/io-ras.c (image_begin_load): ditto
858 * gdk-pixbuf/io-jpeg.c (image_begin_load): ditto
859 * gdk-pixbuf/io-pnm.c (image_begin_load): ditto
860 * gdk-pixbuf/io-tiff.c (image_begin_load): ditto
861 * gdk-pixbuf/io-gif.c (image_begin_load): ditto
863 2000-01-05 Owen Taylor <otaylor@redhat.com>
865 * gdk-pixbuf/pixops/README: Added a README with a TODO
866 and some explainations of the algorithms.
868 * gdk-pixbuf/testpixbuf-scale.c: Set a background pixmap of None
869 to reduce flashing when resizing.
871 2000-01-05 Owen Taylor <otaylor@redhat.com>
873 * gdk-pixbuf/pixops/: Directory full of pixel data scaling
874 code that will eventually migrate into libart.
876 * configure.in acconfig.h: Add checks for MMX compiler support
878 * gdk-pixbuf/gdk-pixbuf.h gdk-pixbuf/gdk-pixbuf-scale.c:
879 Nice wrapper routines for the code in pixops that operate
880 on pixbufs instead of raw data.
882 * gdk-pixbuf/testpixbuf-scale: Test program for scaling
885 2000-01-05 Jonathan Blandford <jrb@redhat.com>
887 * doc/tmpl/animation.sgml: Documentation changes.
889 2000-01-01 Federico Mena Quintero <federico@helixcode.com>
891 * gdk-pixbuf/gdk-pixbuf.h (GdkPixbufAnimation): Added reference
892 counting to animations. A web browser may want to share a single
893 copy of an animated GIF if it appears multiple times in a web
896 * gdk-pixbuf/gdk-pixbuf-animation.c: New file. Moved the
897 animation functions here.
898 (gdk_pixbuf_animation_new_from_file): Prettified. Return a NULL
899 animation if the loader does not support multiframe loading and
900 the single-frame load returned NULL. Check that the filename is
901 not NULL. Updated inline documentation.
902 (gdk_pixbuf_animation_ref): New function.
903 (gdk_pixbuf_animation_unref): New function.
904 Removed gdk_pixbuf_animation_destroy() in favor of reference
907 * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_new_from_file):
908 Prettified. Made ref_count assertion more paranoid. Check that
909 the filename is not NULL.
910 (gdk_pixbuf_get_module): Use guchar * and guint for buffer and
912 (gdk_pixbuf_new_from_xpm_data): Changed the "data" argument to
915 * gdk-pixbuf/io-gif.c (image_load_animation): Create the animation
916 with a reference count of 1.
918 * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_SOURCES): Added
919 gdk-pixbuf-animation.c.
921 * doc/tmpl/animation.sgml: Populated. It is still missing a
922 description of the overlay modes.
924 * doc/gdk-pixbuf-sections.txt: Added the animation section. Moved
925 the canvas item section to the end, as it will be moved later to
928 * doc/gdk-pixbuf.sgml: Added the animation section.
930 * doc/Makefile.am (tmpl_sources): Added tmpl/animation.sgml.
932 1999-12-26 Peter Teichman <pat@gnu.org>
934 * gdk-pixbuf/Makefile.am (libpixbuf_tiff_la_LIBADD): add
935 $(LIBTIFF) to libpixbuf_tiff_la_LIBADD, proxying for mmarker.
936 This closes bug #4676.
938 1999-12-23 Havoc Pennington <hp@pobox.com>
940 * gdk-pixbuf/io-gif.c (image_load): Stuff that should have been
941 set to NULL here (specifically context->animation) was not being
942 set to NULL. use g_new0() to alloc the struct.
944 1999-12-20 Jonathan Blandford <jrb@redhat.com>
946 * gdk-pixbuf/io-gif.c: finished work to make animated gifs load
947 correctly. Progressive loading needs some work, but that all
948 needs doing from the gdk-pixbuf-loader end, not here.
950 1999-12-17 Jonathan Blandford <jrb@redhat.com>
952 * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_animation_new_from_file):
953 moved the file here. It seems natural to put this function here,
954 as that's where the gdk_pixbuf_new_from_file function is, but it's
955 still a little convoluted. The source files might be played with
958 1999-12-14 Jonathan Blandford <jrb@redhat.com>
960 * gdk-pixbuf/gdk-pixbuf-loader.c
961 (gdk_pixbuf_loader_get_animation): Gets the animation from the
964 1999-12-16 Federico Mena Quintero <federico@redhat.com>
966 * doc/tmpl/rendering.sgml: Added notice about initializing GdkRGB
967 before using the GdkPixbuf rendering functions. Thanks to Joe
968 Shaw <joe@off.net> for pointing this out.
970 1999-12-13 Federico Mena Quintero <federico@redhat.com>
972 * gdk-pixbuf/gnome-canvas-pixbuf.c
973 (gnome_canvas_pixbuf_class_init): Renamed arguments to
974 width_in_pixels, height_in_pixels, x_in_pixels, y_in_pixels, for
975 consistency with the new canvas.
976 (PixbufPrivate): Do the same renaming in the structure fields, for
979 * doc/tmpl/gnome-canvas-pixbuf.sgml: Updated for new argument names.
981 1999-12-12 Federico Mena Quintero <federico@redhat.com>
983 * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_LDFLAGS): Use a
984 conditional to see whether to link $(GNOME_LIBS) or not.
986 1999-12-10 Jonathan Blandford <jrb@redhat.com>
988 * gdk-pixbuf/gdk-pixbuf-io.h: thinking about the new loading API.
990 * gdk-pixbuf/gdk-pixbuf-drawable.c (gdk_pixbuf_get_from_drawable):
991 make a warning go away.
993 * gdk-pixbuf/gdk-pixbuf.h: added new prototypes for animations.
995 * gdk-pixbuf/gdk-pixbuf-loader.h: added new prototypes for
998 1999-12-09 Michael Zucchi <zucchi@zedzone.mmc.com.au>
1000 * gdk-pixbuf/gdk-pixbuf.h: Enable gdk_pixbuf_get_from_drawable()
1003 * gdk-pixbuf/gdk-pixbuf-drawable.c (gdk_pixbuf_get_from_drawable):
1004 Filled in body of function.
1005 (rgbconvert): Added GdkColormap parameter, and to all conversion
1007 (convert_real_slow): New function - should convert ANY visual/data
1008 format properly, but it aint fast. Used as a fallback when an
1009 optimised routine wont match.
1010 (rgbconvert): Do very specific tests on the data format to verify
1011 properly if the optimised version will do, otherwise use the
1012 fallback function for all other data formats.
1014 * gdk-pixbuf/Makefile.am: Re-enabled building of
1015 textpixbuf-drawable.
1017 * gdk-pixbuf/testpixbuf-drawable.c (main): Changed to use
1018 gdk_pixbuf_get_from_drawable().
1020 1999-12-08 Arjan van de Ven <arjan@fenrus.demon.nl>
1022 * gdk-pixbuf/gdk-pixbuf-drawable.c : Fixed the red/green/red
1023 bug on two occasions.
1024 * gdk-pixbuf/io-ras.c: Changed from the custom be32_to_cpu
1025 function to the generic glib one.
1027 1999-12-08 Federico Mena Quintero <federico@redhat.com>
1029 * gdk-pixbuf/gdk-pixbuf-drawable.c: Fix includes.
1030 (gdk_pixbuf_get_from_drawable): Implemented the zillion sanity
1031 checks and API definition. The body needs filling in and it needs
1032 to do the Right Thing(tm) for pixmaps plus the given colormap and
1033 windows and their own colormaps.
1035 * gdk-pixbuf/gdk-pixbuf.h: Added prototype for
1036 gdk_pixbuf_get_from_drawable(). Killed gdk-pixbuf-drawable.h.
1038 * gdk-pixbuf/Makefile.am: Re-added the gdk-pixbuf-drawable sources.
1040 * doc/tmpl/from-drawables.sgml: Populated.
1042 * doc/gdk-pixbuf.sgml: Added the from-drawables section.
1044 * doc/Makefile.am (tmpl_sources): Added tmpl/from-drawables.sgml.
1046 * doc/gdk-pixbuf-sections.txt: Added a section for getting pixbufs
1049 1999-12-07 Federico Mena Quintero <federico@redhat.com>
1051 * doc/tmpl/gnome-canvas-pixbuf.sgml: Added clarification about
1052 reference counting for GdkPixbuf structures.
1054 1999-12-07 Martin Baulig <martin@home-of-linux.org>
1056 * gdk-pixbuf/Makefile.am (testpixbuf_LDADD): Conditionally
1057 include $(GNOME_LIBS) here.
1059 1999-12-05 Arjan van de Ven <arjan@fenrus.demon.nl>
1061 Added missing "include <string.h>" to:
1062 * gdk-pixbuf/io-ras.c
1063 * gdk-pixbuf/io-bmp.c
1064 * gdk-pixbuf/io-ico.c
1066 1999-12-06 Federico Mena Quintero <federico@redhat.com>
1068 * gdk-pixbuf/gdk-pixbuf-io.c (file_formats): Patch from Arjan to
1071 1999-12-05 Federico Mena Quintero <federico@redhat.com>
1073 * gdk-pixbuf/Makefile.am (testpixbuf_LDADD): Add back
1074 $(GNOME_LIBS). This must compile outside of gnome-libs. If you
1075 want, send me a patch to do the conditional stuff properly.
1076 Otherwise, please read the GNOME Programming Guidelines,
1077 especially the "CVS policies" section.
1079 1999-12-05 Jaka Mocnik <jaka.mocnik@kiss.uni-lj.si>
1081 * gdk-pixbuf/Makefile.am: removed GNOME_LIBS from testpixbuf_LDADD.
1083 1999-12-05 Arjan van de Ven <arjan@fenrus.demon.nl>
1085 * gdk-pixbuf/io-ico.c: Bug in palet-size
1088 1999-12-04 Arjan van de Ven <arjan@fenrus.demon.nl>
1090 * gdk-pixbuf/io-bmp.c: Major cleanup, added support for
1091 32 bpp and 4 bpp (uncompressed) images, fixed 1bpp.
1093 * gdk-pixbuf/io-ras.c: Minor cleanup, ran through lclint
1095 * gdk-pixbuf/io-ico.c: Minor cleanup, fixed 1bpp icons,
1098 * gdk-pixbuf/gdk-pixbuf-io.c: Added detection of .CUR files
1099 (Windows Cursor files). These are identical to .ICO files,
1100 except for the signature and 2 extra fields for the hotspot.
1102 1999-12-03 Federico Mena Quintero <federico@redhat.com>
1104 * gdk-pixbuf/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_get_arg):
1105 Removed unused variable `item'.
1107 1999-12-03 Jonathan Blandford <jrb@redhat.com>
1109 * gdk-pixbuf/io-gif.c (gif_fill_in_lines): added a comment to
1110 explain this function better.
1112 1999-12-02 Federico Mena Quintero <federico@redhat.com>
1114 Source files moved from src/ to gdk-pixbuf/, to be consistent with
1117 * doc/Makefile.am: Modified for the new source directory.
1119 * configure.in: Likewise.
1121 * Makefile.am: Likewise.
1123 * autogen.sh: Likewise.
1125 * gdk-pixbuf/Makefile.am: Likewise.
1127 1999-12-02 Federico Mena Quintero <federico@redhat.com>
1129 * src/testpixbuf.c: #include <config.h>, and fix includes.
1131 * src/testpixbuf-drawable.c: #include <config.h>, and fix includes.
1133 * src/io-xpm.c: Fix includes.
1135 * src/io-tiff.c: Fix includes.
1137 * src/io-ras.c: Fix includes, and do not include more stuff than needed.
1139 * src/io-pnm.c: Fix inlcudes, and do not include more stuff than needed.
1141 * src/io-png.c: Fix includes.
1143 * src/io-ico.c: Fix includes, and do not include more stuff than needed.
1145 * src/io-gif.c: Fix includes, and do not include more stuff than needed.
1147 * src/io-bmp.c: Fix includes, and do not include more stuff than needed.
1149 * src/gnome-canvas-pixbuf.c: Fix includes.
1151 * src/gdk-pixbuf.c: Fix includes.
1153 * src/gdk-pixbuf-util.c: Fix includes.
1155 * src/gdk-pixbuf-render.c: Fix includes.
1157 * src/gdk-pixbuf-io.h: Fix includes.
1159 * src/gdk-pixbuf-drawable.c: Fix includes.
1161 * src/gdk-pixbuf-drawable.h: Use angle brackets for the gdk-pixbuf
1164 * src/gdk-pixbuf-data.c: Fix includes.
1166 * src/gdk-pixbuf-loader.c: #include <config.h>
1168 * src/gdk-pixbuf-loader.h: Use angle brackets for the gdk-pixbuf
1171 * src/Makefile.am: Commented out the gdk-pixbuf-drawable stuff,
1172 since it is not finished.
1174 * src/gdk-pixbuf.h: Removed unused transformation prototypes.
1176 * src/gdk-pixbuf-util.c: New file with utility and convenience
1177 functions for pixbufs.
1179 * src/Makefile.am (libgdk_pixbuf_la_SOURCES): Added gdk-pixbuf-util.c.
1181 * doc/gdk-pixbuf-sections.txt: Added section for utility functions.
1183 * doc/Makefile.am (tmpl_sources): Added tmpl/util.sgml.
1185 * doc/gdk-pixbuf.sgml: Added the utilities section.
1187 * doc/tmpl/util.sgml: Documentation for the utility functions.
1189 1999-11-29 Owen Taylor <otaylor@redhat.com>
1191 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
1192 Keep the mask around until after we draw ... since
1193 the GC changes aren't flushed to the X server until we
1194 draw, destroying it before that may result in BadPixmap
1197 1999-11-30 Havoc Pennington <hp@pobox.com>
1199 * configure.in: Add AM_CONDITIONAL for inside gnome-libs
1201 * src/Makefile.am: conditionalize GnomeCanvasPixbuf
1203 1999-11-29 Federico Mena Quintero <federico@redhat.com>
1205 * src/Makefile.am: Uncomment the GnomeCanvasPixbuf sources. This
1206 should be made conditional, not blindly commented out.
1208 1999-11-29 Jonathan Blandford <jrb@redhat.com>
1210 * src/Makefile.am (ICO_LIB): Added another loader from Arjan to
1211 handle .ico files. Cool.
1213 1999-11-24 Jonathan Blandford <jrb@redhat.com>
1215 * src/io-bmp.c (OneLine24): new patch from Arjan to handle
1218 1999-11-24 James Henstridge <james@daa.com.au>
1220 * configure.in (AC_OUTPUT): altered hack to place the symlink in the
1221 top builddir rather than src. This still builds fine, and does not
1222 get gtk-doc into an infinite loop when trying to find all the source
1225 1999-11-23 Jonathan Blandford <jrb@redhat.com>
1227 * Removed #PRAGMA } from headers. Also, make compile if you don't
1228 have it installed, already.
1230 1999-11-22 Federico Mena Quintero <federico@redhat.com>
1232 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_draw): Create the
1233 temporary buffer to the size of the interesction of the bounding
1234 box and the expose area, not the whole expose area. This speeds
1237 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_threshold_alpha): Do
1238 not paint black on the mask, since we already cleared it in a
1239 single gdk_draw_rectangle() operation.
1241 1999-11-22 Raja R Harinath <harinath@cs.umn.edu>
1243 * configure.in (GDK_PIXBUF_DIR): Fix for srcdir != builddir.
1245 1999-11-22 Havoc Pennington <hp@pobox.com>
1247 * src/Makefile.am (GDK_PIXBUF_LIBS): Patch from Paul Fisher
1248 <pnfisher@redhat.com> adds all -lgdk-pixbuf and all other
1249 dependencies to LIBADD variables for loadable modules. Necessary
1250 for a Java dynamic loading thing to be able to figure it out.
1252 1999-11-22 Havoc Pennington <hp@pobox.com>
1254 * src/io-png.c (image_load_increment): Call the update_area
1255 callback depending on the number of rows loaded in this increment.
1257 * src/testpixbuf.c (main): slow down the progressive load demo
1259 1999-11-16 Havoc Pennington <hp@pobox.com>
1261 * src/gdk-pixbuf-drawable.h: Get the quotes right on the #include
1263 1999-11-22 Jonathan Blandford <jrb@redhat.com>
1265 * configure.in (GDK_PIXBUF_DIR): make the symlink. Does not work
1266 for srcdir != buildir != . Beats me why; I can't figure it out.
1267 AC_OUTPUT_COMMANDS doesn't seem to let me substitute it correctly.
1269 1999-11-21 Jonathan Blandford <jrb@redhat.com>
1271 * src/gdk-pixbuf-io.c: added io-bmp from Arjan
1272 <arjan@fenrus.demon.nl>
1274 1999-11-20 Michael Zucchi <zucchi@zedzone.mmc.com.au>
1276 * src/gdk-pixbuf-drawable.c (gdk_pixbuf_from_drawable_core):
1277 Rework/reorder of the code. Each case has been separated into
1278 another function; its big but it should be quick.
1279 gdk_pixbuf_rgba_from_drawable() will now return a pixbuf with
1280 opaque alpha information. Not all depths/formats have been
1281 tested, but 8, 15/16 and 24 (alinged 32) should work ok.
1283 1999-11-17 Larry Ewing <lewing@gimp.org>
1285 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_bounds):
1286 implement the bounds method correctly.
1287 (compute_viewport_affine): compute the affine need to fit the
1288 image within the viewport given by the args.
1289 (compute_render_affine): call compute_viewport_affine.
1291 1999-11-16 Havoc Pennington <hp@pobox.com>
1293 * src/gdk-pixbuf-drawable.h: Use includes from the current
1294 directory, not the system directory.
1296 Mon Nov 15 17:18:28 1999 George Lebl <jirka@5z.com>
1298 * src/testpixbuf-drawable.c: use includes from the current directory
1299 rather then from the system include directory as gdk-pixbuf
1300 includes are not yet installed when this is compiled.
1302 1999-11-13 Cody Russell <bratsche@dfw.net>
1303 * src/testpixbuf-drawable.c: Added a test program for drawable
1306 * src/Makefile.am: Build testpixbuf-drawable.
1308 1999-11-12 Cody Russell <bratsche@dfw.net>
1310 * src/gdk-pixbuf-drawable.c: Merged in Michael Zucchi's changes.
1312 1999-11-10 Federico Mena Quintero <federico@redhat.com>
1314 * doc/tmpl/gdk-pixbuf-loader.sgml: Populated.
1316 * doc/gdk-pixbuf.signals: Put in the real names of signal
1319 * src/gdk-pixbuf-loader.c: Improved documentation comments.
1321 1999-11-10 Jonathan Blandford <jrb@redhat.com>
1323 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): emit the
1326 * src/io-ras.c (OneLineMapped_file): Now can handle indexing
1327 correctly. Patch from Arjan to do so.
1329 1999-11-10 Michael Fulbright <drmike@redhat.com>
1331 * src/io-pnm.c (pnm_ascii_read_scanline): Fixed loading of ASCII PNM
1334 * src/testpixbuf.c: Added final queued draw when done loading image.
1336 1999-11-10 Jonathan Blandford <jrb@redhat.com>
1338 * src/gdk-pixbuf-io.c (gdk_pixbuf_load_module): removed spurious
1341 1999-11-10 Federico Mena Quintero <federico@redhat.com>
1343 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): Added
1346 1999-11-09 Federico Mena Quintero <federico@redhat.com>
1348 * src/io-png.c: Fixed some incompatible pointer initializations.
1350 * src/io-jpeg.c (image_load_increment): Remove unused variable.
1352 1999-11-09 Michael Fulbright <drmike@redhat.com>
1354 * src/testpixbuf.c: Fixed it to use timeout to read from file
1355 for progressive loading. Set TBF_KBPS=n, where n is the number of
1356 kilobytes/second to simulate in downloading. n has to be an integer.
1358 * src/io-jpeg.c: Slight cosmetic cleanup.
1360 * src/io-pnm.c: Fixed raw PNM loading bug. Also discovered that ASCII
1361 PBM loading has a similar problem and will address tomorrow.
1363 1999-11-09 Havoc Pennington <hp@pobox.com>
1365 * src/Makefile.am (libgdk_pixbuf_la_SOURCES): build the
1366 gdk-pixbuf-drawable stuff.
1368 1999-11-09 Federico Mena Quintero <federico@redhat.com>
1370 * configure.in: Bumped version number to 0.4.
1372 1999-11-09 Michael Fulbright <drmike@redhat.com>
1374 * src/io-pnm.c : Finished progressive PNM loading code. Should handle
1375 all types of PNM files now.
1377 * src/io-jpeg.c (image_load_increment): Figured out problem with
1378 loading Progressive JPEG's progressively (say that 10 times fast).
1379 Currently for Progressive JPEG's the entire image is loaded before
1380 it is displayed. libjpeg supports a fancier mechanism which I may
1383 With these changes all JPEG formats appear to load properly for me.
1385 1999-11-08 Jonathan Blandford <jrb@redhat.com>
1387 * src/io-ras.c (image_load_increment): Final patch from Arjan.
1388 Seems to do progressive loading.
1390 1999-11-08 Michael Fulbright <drmike@redhat.com>
1392 * src/io-pnm.c image_load (): Fixed so we do not create a separate
1393 pixel buffer when reading in image - we reuse the pixel data in
1394 the GdkPixbuf structure instead.
1396 1999-11-08 Michael Fulbright <drmike@redhat.com>
1398 * src/io-pnm.c pnm_read_ascii_scanline (): Added support for
1399 ASCII PNM files. Note I haven't tested loaded ASCII PBM files because
1400 I can't seem to find a utility to convert into this format.
1401 Next is to add progressive loading support for the PNM format.
1403 1999-11-07 Federico Mena Quintero <federico@redhat.com>
1405 * doc/tmpl/gnome-canvas-pixbuf.sgml: Finished detailed explanation
1406 of the width, height, x, and y setting and pixels arguments.
1408 1999-11-05 Jonathan Blandford <jrb@redhat.com>
1410 * src/io-ras.c (image_load): third patch. Now it seems to load.
1412 * src/gdk-pixbuf-io.c: second patch Arjan van de Ven
1413 <arjan@fenrus.demon.nl> to autodetect/load the sunras files.
1415 * src/io-ras.c (image_load): new file from Arjan van de Ven
1416 <arjan@fenrus.demon.nl> to begin the ras loader.
1418 1999-11-05 Federico Mena Quintero <federico@redhat.com>
1420 * doc/gdk-pixbuf-sections.txt: Removed gdk-pixbuf-io, since it is
1421 for internal use only.
1423 * doc/gdk-pixbuf.sgml: Likewise.
1425 * doc/tmpl/gnome-canvas-pixbuf.sgml: Finished docs.
1427 1999-11-05 Michael Fulbright <drmike@redhat.com>
1429 * src/io-pnm.c: Implemented support for reading raw PBM/PGM/PPM
1430 files from a file. Next step is support for ASCII files, and
1431 then incremental loading.
1433 1999-11-04 Federico Mena Quintero <federico@redhat.com>
1435 * Makefile.am: Added doc to SUBDIRS.
1437 1999-11-04 Michael Fulbright <drmike@redhat.com>
1439 * src/io-jpeg.c: Prettied up code slightly.
1440 * src/io-pnm.c: Start of pnm loader (from file and progressively).
1441 Doesn't do much yet (will finish tomorrow).
1442 * src/gdk-pixbuf-io.c: Added pnm to structure of known types.
1444 1999-11-04 Federico Mena Quintero <federico@redhat.com>
1446 * doc/tmpl/rendering.sgml: Populated.
1448 * doc/Makefile.am: Added the template files.
1450 1999-11-04 Havoc Pennington <hp@pobox.com>
1452 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable): In
1453 docs, explain what a dither offset is for.
1454 (gdk_pixbuf_render_to_drawable_alpha): Explain why you would use
1455 this function vs. gdk_pixbuf_render_to_drawable().
1457 1999-11-04 Havoc Pennington <hp@pobox.com>
1459 * configure.in: Use libart-config correctly; find gnome-config
1460 separately. Fix GNOME_LIBS to be correct in "no gnome installed
1463 * src/Makefile.am: Link to GNOME_LIBS instead of a hardcoded
1466 Patch untested in the inside-gnome-libs case, I need to commit
1467 then check out to the gnome-libs I'm using.
1469 1999-11-04 Michael Fulbright <drmike@redhat.com>
1471 * src/io-jpeg.c (image_begin_load): Add update_func callback.
1472 * src/io-jpeg.c (image_load_increment): Call updated callback when
1473 new graphic data decoded.
1475 1999-11-04 Jonathan Blandford <jrb@redhat.com>
1477 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_update): handle the
1479 * src/io-png.c (image_begin_load): add a update_func callback.
1480 * src/io-gif.c (image_begin_load): add a update_func callback.
1481 (gif_get_lzw): added the update_func ability
1483 * src/io-tiff.c (image_begin_load): add a update_func callback.
1485 1999-11-04 Federico Mena Quintero <federico@redhat.com>
1487 * doc/tmpl/gdk-pixbuf.sgml: Populated.
1489 * doc/tmpl/refcounting.sgml: Populated.
1491 * doc/tmpl/file-loading.sgml: Populated.
1493 * src/gdk-pixbuf.c: Added documentation comments.
1495 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_file): Added
1496 documentation comments.
1498 * doc/: Finished integrating the documentation framework.
1500 1999-11-03 Federico Mena Quintero <federico@redhat.com>
1502 * configure.in: Removed libgif stuff now that we do not depend on it.
1503 Added the necessary cruft for gtk-doc.
1505 * src/Makefile.am: Unconditionally build the GIF loader.
1507 1999-11-03 Jonathan Blandford <jrb@redhat.com>
1509 * src/io-gif.c (gif_read): renamed ReadOK to gif_read.
1510 Added a lot of comments to the file.
1512 * src/Makefile.am (libpixbuf_gif_la_LIBADD): Remove dependency on
1515 1999-11-03 Michael Fulbright <drmike@redhat.com>
1517 * src/io-jpeg.c (image_load_increment): Further removal of
1518 bugginess in local buffering code. Handles grayscale jpegs
1521 * src/io-jpeg.c (image_load_stop): Was freeing local context
1522 for jpeg library before calling jpeg_decompres_finish ().
1524 1999-11-03 Jonathan Blandford <jrb@redhat.com>
1526 * src/io-gif.c (image_load_increment): now handle arbitrary buffer
1528 (gif_get_lzw): set the transparency to the right val.
1530 1999-11-03 Federico Mena Quintero <federico@redhat.com>
1532 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_init):
1533 Initiailize the x and y fields.
1534 (gnome_canvas_pixbuf_destroy): Queue a redraw upon destruction.
1535 (PixbufPrivate): Renamed need_size_update to need_xform_update.
1536 (recompute_bounding_box): Do not use temporary values.
1538 1999-11-03 Jonathan Blandford <jrb@redhat.com>
1540 * src/io-gif.c (set_gif_lzw_clear_code): new state. Fixes
1543 * src/gnome-canvas-pixbuf.c (recompute_bounding_box): remove
1544 unneeded x,y,h,w vars.
1546 1999-11-03 Larry Ewing <lewing@gimp.org>
1548 * src/gnome-canvas-pixbuf.c (compute_render_affine): adjust
1549 render_affine calculation for x,y offsets.
1550 (gnome_canvas_pixbuf_set_arg): add x,y args.
1551 (gnome_canvas_pixbuf_get_arg): add x,y args.
1552 (recompute_bounding_box): simply code using ArtDrect and the
1553 render_affine. Removed compute_xform_vectors as it was no longer
1556 1999-11-03 Federico Mena Quintero <federico@redhat.com>
1558 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_point): I'm a
1559 doofus. Return a distance, not a boolean, for opaque images.
1561 * src/gnome-canvas-pixbuf.c (recompute_bounding_box): Do proper
1562 rounding of bounding box coordinates.
1563 (gnome_canvas_pixbuf_bounds): Implemented the ::bounds() method.
1564 (gnome_canvas_pixbuf_draw): Use the correct alpha threshold value.
1566 1999-11-03 Jonathan Blandford <jrb@redhat.com>
1568 * src/io-gif.c (gif_prepare_lzw): s/lwz/lzw/g
1570 1999-11-03 Michael Fulbright <drmike@redhat.com>
1572 * src/io-jpg.c (image_load_increment): Fixed code which moved
1573 buffer around as new data comes in to work properly. JPEG progressive
1574 loading should be working now except for grayscale JPEG's, which I
1575 will look into next.
1577 1999-11-03 <sopwith@redhat.com>
1578 * src/testpixbuf.c: A GtkFunction needs to return a value for deterministic behaviour.
1579 Also put dot printing back in.
1581 1999-11-03 <jrb@redhat.com>
1583 * src/io-gif.c (gif_get_extension): Read 'til the next empty block
1586 1999-11-02 Cody Russell <bratsche@dfw.net>
1587 * src/gdk-pixbuf-drawable.c: Changed the behavior to return NULL
1588 if part of the requested image is offscreen, rather than clipping
1591 1999-11-02 Jonathan Blandford <jrb@redhat.com>
1593 * src/io-gif.c (gif_fill_in_lines): Fill in the gif's blank areas
1594 for interlacing and progressive loading.
1596 1999-11-02 Cody Russell <bratsche@dfw.net>
1597 * src/gdk-pixbuf-drawable.c (gdk_pixbuf_from_drawable_core): Now
1598 calls gdk_pixbuf_new_from_art_pixbuf() instead of gdk_pixbuf_new().
1600 1999-11-02 Jonathan Blandford <jrb@redhat.com>
1602 * src/io-gif.c (gif_main_loop): Now progressive gif loading works!
1603 It's a little slow though. )-:
1605 1999-11-02 Elliot Lee <sopwith@redhat.com>
1606 * src/gdk-pixbuf-loader.[ch], src/gdk-pixbuf-io.h: Make the arguments to the
1607 write/load_increment operations const-correct.
1609 1999-11-02 Federico Mena Quintero <federico@redhat.com>
1611 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_point):
1612 Implemented the ::point() method. We do a simple containment test
1613 instead of a full distance calculation since the canvas is going
1614 to change to that scheme, anyways.
1616 1999-11-02 Elliot Lee <sopwith@redhat.com>
1618 * src/testpixbuf.c: Allow using $TBF_READLEN to specify the size of the chunks
1619 that are read from the input file.
1621 1999-11-02 Larry Ewing <lewing@gimp.org>
1623 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_render): add aa
1625 (gnome_canvas_pixbuf_class_init): add gnome_canvas_pixbuf_render
1628 1999-11-02 Federico Mena Quintero <federico@redhat.com>
1630 * src/gnome-canvas-pixbuf.c (compute_render_affine): Moved the
1631 affine computation code from ::draw() to here, since it is needed
1632 by ::point() as well.
1634 1999-11-02 Elliot Lee <sopwith@redhat.com>
1636 * src/gdk-pixbuf-loader.c: Reorganize gdk_pixbuf_loader_write into
1637 three functions, and eliminate duplication of code from write()
1638 and close(). Also fix bug where the 128-byte header was being
1641 1999-11-01 Federico Mena Quintero <federico@redhat.com>
1642 * src/gnome-canvas-pixbuf.c (recompute_bounding_box): Fixed
1643 bounding box computation.
1645 1999-11-01 Federico Mena Quintero <federico@redhat.com>
1647 * src/gnome-canvas-pixbuf.c: Start of the pixbuf canvas item.
1648 Drawing affines seem to work. Bounding box is fubared. ::point()
1649 is not implemented. This is a work in progress.
1651 * src/Makefile.am: Added gnome-canvas-pixbuf.[ch] to the list of
1654 * configure.in: Sigh. We need to link in libgnomeui for the
1655 canvas stuff. This mess will disappear when gdk-pixbuf gets
1656 folded into gnome-libs.
1658 1999-10-30 Jonathan Blandford <jrb@redhat.com>
1660 * src/io-gif.c: Some more work. Now it generates a gdk_pixbuf of
1661 the right size, at a minimum, even if the image is squished and
1663 (ReadImage): lets get the offset right. This will let transparent
1666 1999-10-29 Michael Fulbright <drmike@redhat.com>
1668 * src/io-jpeg.c: image_load_increment(): Fixed bug when
1669 image width was not a multiple of 4 - always use the
1670 gdk_pixbuf rowstride to increment pointers!
1672 1999-10-29 Michael Fulbright <drmike@redhat.com>
1674 * src/io-jpeg.c: Added first cut at progressive jpeg loading.
1675 Currently does not handle either progressive jpeg files (jpeg
1676 files with multiple scans at different quality settings), but
1677 I plan on adding this support soon. These are fairly rare in
1678 my experience, so it shouldn't slow people down too much.
1679 Grayscale jpegs also don't work but that should be easy to fix.
1681 1999-10-29 Michael Fulbright <drmike@redhat.com>
1683 * src/testpixbuf.c: Added title to windows so you can identify
1684 progressive and file windows.
1686 1999-10-29 Michael Fulbright <drmike@redhat.com>
1688 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): Actually
1689 load the image handler when we determine the image type.
1691 * src/gdk-pixbuf-io.[ch] (gdk_pixbuf_load_module): Changed the
1692 previously static function load_image_handler () to
1693 a public function gdk_pixbuf_load_module (). It is needed in
1694 gdk-pixbuf-loader.c to load image handler modules. This function
1695 is different from gdk_pixbuf_get_module (), which only returns
1696 a reference to the required handler, because it actually loads
1697 the handler into memory. Both actions should possibly be combined
1698 in a convenience function since one w/o the other doesn't seem to
1701 1999-10-28 Jonathan Blandford <jrb@redhat.com>
1703 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): don't send a
1706 1999-10-28 Federico Mena Quintero <federico@redhat.com>
1708 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable): New
1709 function to render a portion of a pixbuf to a drawable. Ignores
1710 alpha information and takes in a GC.
1711 (gdk_pixbuf_render_to_drawable_alpha): New function to render a
1712 portion of a pixbuf to a drawable. It automatically creates a GC
1713 and a clipping mask for alpha pixbufs.
1715 1999-10-28 Jonathan Blandford <jrb@redhat.com>
1717 * src/gdk-pixbuf.h: turned convenience macros into convenience
1718 functions so some error checking could be added.
1720 * src/io-tiff.c (image_load_increment): started work on the tiff
1721 non-incremental loader.
1722 (image_begin_load): Finished the incremental loader.
1724 * src/io-gif.c (image_load_increment): started work on the gif
1727 * src/gdk-pixbuf-io.h: Changed ModuleType to GdkPixbufModule.
1729 1999-10-27 Federico Mena Quintero <federico@redhat.com>
1731 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_threshold_alpha): New
1732 function to threshold a pixbuf's alpha channel into a bitmap.
1734 * src/gdk-pixbuf.c (gdk_pixbuf_new): Fixed so that it will
1735 contemplate future extensions to ArtPixBuf's formats.
1737 * src/io-png.c (png_info_callback): Use the new API of gdk_pixbuf_new().
1739 * src/gdk-pixbuf.h (gdk_pixbuf_get_height): Added some convenience
1740 macros to fetch the ArtPixBuf's fields.
1742 1999-10-27 Havoc Pennington <hp@pobox.com>
1744 * src/testpixbuf.c (main): Display the progressive load
1746 * src/io-png.c (setup_png_transformations): Break transformation
1747 code into separate function
1748 (png_info_callback): Use setup_png_transformations
1750 1999-10-27 Havoc Pennington <hp@pobox.com>
1752 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): Check
1753 properly whether the XPM module has already been loaded
1754 (gdk_pixbuf_new_from_file): Check properly if loader module
1755 was already loaded (was checking if load symbol was present
1756 in order to decide whether to re-load; should check module !=
1757 NULL, then load != NULL)
1758 (image_handler_load): Check in present working directory,
1759 makes it easier to debug for now
1760 (file_formats): This array initializer was seriously on crack,
1761 was assigning a function pointer to a GModule*
1763 * src/testpixbuf.c (main): Change type of pixbuf_loader to GdkPixbufLoader*
1765 1999-10-27 Havoc Pennington <hp@pobox.com>
1767 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_finalize):
1768 Fix typo that prevented compilation
1769 (gdk_pixbuf_loader_destroy): ditto
1771 1999-10-27 Federico Mena Quintero <federico@redhat.com>
1773 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_new): Return a
1774 GdkPixbufLoader, not a GtkObject.
1775 (gtk_marshal_NONE__INT_INT_INT_INT): Made static.
1776 (gdk_pixbuf_loader_get_type): Documented.
1777 (gdk_pixbuf_loader_class_init): Initialize the parent class
1779 (gdk_pixbuf_loader_destroy): Added sanity checks. Call the parent
1780 class destroy function.
1781 (gdk_pixbuf_loader_new): Documented.
1782 (gdk_pixbuf_loader_finalize): Call the parent class finalize
1784 (gdk_pixbuf_loader_write): Use size_t for count.
1786 1999-10-27 Michael Fulbright <drmike@redhat.com>
1788 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_destroy): Fixed
1789 logic so we only try to close loader if it wasn't previously closed.
1791 1999-10-27 Michael Fulbright <drmike@redhat.com>
1793 * src/gdk-pixbuf-loader.c: Made sure image_loader struct member of
1794 pixbuf_loader properly initialized.
1796 * src/testpixbuf.c: Made sure we cleanup pixbuf_loader properly
1799 1999-10-26 Jonathan Blandford <jrb@redhat.com>
1801 * src/gdk-pixbuf-io.c (image_handler_load): load the vtable fully.
1803 * src/gdk-pixbuf-loader.c: Finished initial cut at the object.
1805 1999-10-26 Havoc Pennington <hp@pobox.com>
1807 * src/gdk-pixbuf-loader.h: fix signals
1809 * src/gdk-pixbuf-io.h: add new vtable fields
1812 1999-10-26 Jonathan Blandford <jrb@redhat.com>
1814 * src/gdk-pixbuf-loader.h: New Class. Beginning of progrssive
1817 1999-10-25 Federico Mena Quintero <federico@redhat.com>
1819 * configure.in (CFLAGS): Patch from Uwe Koloska
1820 <koloska@Rcs1.urz.tu-dresden.de> to fix a stupid typo of mine.
1822 1999-10-22 Havoc Pennington <hp@pobox.com>
1824 * src/io-xpm.c (mem_buffer): Clean up stupid
1825 increment-inside-array-dereference thing
1827 * src/testpixbuf.c: Add XPM data tests.
1829 * src/io-xpm.c: Make the XPM data buffer const, fix const
1830 correctness throughout the code.
1832 1999-10-22 Havoc Pennington <hp@pobox.com>
1834 * src/gdk-pixbuf.h: Export gdk_pixbuf_new_from_xpm_data()
1836 1999-10-22 Havoc Pennington <hp@pobox.com>
1838 * src/io-xpm.c (image_load_xpm_data): Export this symbol for
1839 loading an XPM from memory.
1841 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): New
1842 function, loads pixbuf from xpm data
1843 (image_handler_load): Add g_return_if_fail() to ensure the same
1844 module isn't loaded twice. Add g_module_symbol() to scan for XPM
1847 1999-10-22 Federico Mena Quintero <federico@redhat.com>
1849 * src/io-png.c (image_load): Patch from Kristian Hogsberg
1850 Kristensen <hogsberg@daimi.au.dk> to avoid allocating extra row
1851 buffers; the rows can be read in directly into the main pixel
1854 1999-10-20 Federico Mena Quintero <federico@redhat.com>
1856 * src/gdk-pixbuf-io.c (image_handler_load): Free path.
1858 1999-10-20 Federico Mena Quintero <federico@redhat.com>
1860 * configure.in: Bumped version number to 0.3.
1862 * src/Makefile.am (lbgdk_pixbuf_la_LDFLAGS): Added a libtool
1863 version number for the library.
1865 1999-10-20 Federico Mena Quintero <federico@redhat.com>
1867 * src/gdk-pixbuf.h (GdkPixbuf): Removed the unref_fn field. Now
1868 all memory management of the buffer is done by libart.
1870 * src/gdk-pixbuf.c (gdk_pixbuf_unref): Do destruction here.
1871 Removed gdk_pixbuf_destroy, gdk_pixbuf_duplicate.
1873 * src/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Implemented in
1874 terms of the libart functions. Removed the old code.
1876 * src/gdk-pixbuf-io.c (image_handler_load): Removed the save
1877 symbols. Saving will not be implemented in GdkPixbuf.
1879 * src/io-gif.c: Removed the saving stub.
1880 (image_load): Fixed memory management to fail gracefully if we run
1881 out of memory while loading the image. Close the gif file when we
1882 are done. This still needs more error handling for the DGif
1885 * src/io-jpeg.c (image_load): Some robustness fixes.
1887 * src/io-png.c: Removed the saving stuff.
1888 (image_load): Some memory management fixes.
1890 * src/io-tiff.c (image_load): Ditto.
1892 * src/io-xpm.c (pixbuf_create_from_xpm): Ditto.
1894 1999-10-18 Havoc Pennington <hp@pobox.com>
1896 * subautogen.sh: New name for macros/autogen.sh
1898 * autogen.sh: use subautogen.sh
1900 1999-10-18 Federico Mena Quintero <federico@redhat.com>
1902 * src/*: Reindented to use the GNOME Indentation. Renamed
1903 GdkPixBuf to GdkPixbuf, for consistency with the function names
1904 (and it is also easier to type) :-)
1906 1999-10-18 Havoc Pennington <hp@pobox.com>
1908 * configure.in: Use AM_PATH_GLIB instead of glib-config directly
1910 * src/Makefile.am: Re-enable testpixbuf with GTK_CFLAGS/GTK_LIBS
1912 1999-10-18 Havoc Pennington <hp@pobox.com>
1914 * Makefile.am (SUBDIRS): Remove "macros"
1916 * configure.in: Don't use GNOME_INIT, handle case where we are
1917 inside gnome-libs. AM_PATH_GTK for the GIF test
1919 * src/Makefile.am: Change flags to work without libgnomeui,
1920 comment out testpixbuf for now
1922 1999-10-18 Federico Mena Quintero <federico@redhat.com>
1924 * configure.in: Use $GTK_LIBS as the extra libs when checking for
1925 libgif/libungif, as they need the X libraries. Fixes bug #2472.
1927 1999-10-10 Cody Russell <bratsche@dfw.net>
1928 * src/gdk-pixbuf-drawable.c: core function now determines whether
1929 the requested geometry is on screen or not, and if some is not
1930 then the request is clamped to geometry that is on the screen.
1932 Changed 'pixbuf' to 'art_pixbuf' in core function.
1934 1999-10-08 Michael Fulbright <drmike@redhat.com>
1936 * src/gdk-pixbuf-data.c: Added to load rgb data from const data.
1938 * src/testpifbuf: Changed test program to display cdrom from rgb data
1939 if no filename given to test program.
1941 1999-10-07 Cody Russell <bratsche@dfw.net>
1942 * src/gdk-pixbuf-drawable.[ch]: Added. (Actually, Miguel committed
1943 them, but I wrote them).
1945 * src/gdk-pixbuf-drawable.h: Added a missing ; so things will now
1948 * src/Makefile.am: Added gdk-pixbuf-drawable.[ch] to
1949 libgdk_pixbuf_la_SOURCES and libgdk_pixbufinclude_HEADERS.
1951 * src/gdk-pixbuf-drawable.c: Added #include "gdk-pixbuf-drawable.h"
1954 * src/gdk-pixbuf-drawable.[ch]: Changed functions to return
1955 GdkPixBuf* instead of ArtPixBuf*.
1957 1999-09-22 Michael Meeks <michael@nuclecu.unam.mx>
1959 * src/gdk-pixbuf.c (gdk_pixbuf_new): created.
1960 (gdk_pixbuf_scale): use gdk_pixbuf_new + return a new scaled image.
1962 * src/gdk-pixbuf.h (struct _GdkPixBuf): Re-organise struct, + add
1963 GdkPixBufUnrefFunc + gdk_pixbuf_new.
1965 * src/io-jpeg.c (image_load): clean to use gdk_pixbuf_new.
1967 * src/io-xpm.c (_pixbuf_create_from_xpm): ditto.
1969 * src/io-tiff.c (image_load): ditto + fix leak
1971 * src/io-png.c (image_load): ditto + add more exit points; monitor.png
1972 crashes this module ( add warning :-)
1974 * src/io-bmp.c (image_load): ditto.
1976 * src/io-gif.c (image_load): ditto.
1978 1999-09-18 Michael Meeks <michael@nuclecu.unam.mx>
1980 * src/gdk-pixbuf.c (gdk_pixbuf_scale): Hack rgba support in so
1981 it doesn't crash scaling with alpha.
1983 1999-09-17 Federico Mena Quintero <federico@redhat.com>
1985 * src/io-bmp.c (image_load): Set the initial ref_count to 1.
1987 * src/io-gif.c (image_load): Likewise.
1989 * src/io-jpeg.c (image_load): Likewise.
1991 * src/io-png.c (image_load): Likewise.
1993 * src/io-tiff.c (image_load): Likewise.
1995 * src/io-xpm.c (_pixbuf_create_from_xpm): Likewise.
1997 * src/gdk-pixbuf-io.c (gdk_pixbuf_load_image): Added an assertion
1998 for the ref_count to be != 0.
2000 * src/gdk-pixbuf.c (gdk_pixbuf_ref): Be more paranoid with sanity
2002 (gdk_pixbuf_unref): Fix incorrect sanity check and comparison.
2004 1999-08-09 Federico Mena Quintero <federico@nuclecu.unam.mx>
2006 * src/io-png.c (image_save): Fixed compiler warnings. Fixed write
2007 to unallocated memory (row_ptr), and fixed its type as well. Take
2008 into account the ArtPixbuf's rowstride when assigning the row
2011 * src/gdk-pixbuf.c: Fixup includes.
2013 * src/gdk-pixbuf-io.c: Likewise.
2015 Sat Jul 31 19:19:47 CEST 1999
2017 * src/gdk-pixbuf-io.c:
2018 * src/io-png.c: Fixed two obvious C syntax bugs
2020 1999-07-29 Mark Crichton <crichton@gimp.org>
2022 * src/io-png.c (image_save): Added PNG saving function
2024 * src/gdk-pixbuf-io.c: Changed image_save function format. Now it's
2025 image_save(GdkPixBuf *p, FILE *f, ...)
2028 1999-07-26 Michael Zucchi <mzucchi@denr.sa.gov.au>
2030 * src/Makefile.am (*_LIB): Only build the relevant loaders which
2031 require extra libraries if we actually have those libraries.
2033 1999-07-23 Richard Hestilow <hestgray@ionet.net>
2035 * src/gdk-pixbuf.h: Include glib.h as it uses g* datatypes
2036 * gdk_pixbufConf.sh.in: Added for gnome-config
2038 * configure.in: Modified to generate gdk_pixbufConf.sh
2040 1999-07-20 Mark Crichton <crichton@gimp.org>
2042 * src/gdk-pixbuf.c (gdk_pixbuf_rotate): Fixed rotation. Now a bbox
2043 calculation needs to be done.
2045 1999-07-18 Larry Ewing <lewing@gimp.org>
2050 * src/io-jpeg.c: Fix a few memory leaks in the, most of them in
2051 error cases but one or two in the common case. There are probably
2052 a few small ones left.
2054 1999-07-18 Mark Crichton <crichton@gimp.org>
2056 * configure.in: removed version.h.
2058 * src/gdk-pixbuf-io.c (pixbuf_check_tiff): Minor readability
2061 1999-07-17 Mark Crichton <crichton@gimp.org>
2063 * src/gdk-pixbuf.c: Removed gdk_pixbuf_free, redundant code.
2064 (gdk_pixbuf_rotate): Added pixbuf rotation code.
2065 (gdk_pixbuf_scale): Changed // comments to /* */
2067 * src/gdk-pixbuf.h (gdk_pixbuf_destroy): Added gdk_pixbuf_destroy
2070 1999-07-16 Larry Ewing <lewing@gimp.org>
2072 * src/testpixbuf.c (expose_func): reverted the expose everything
2073 changes, I'm not sure why these went in.
2074 (config_func): bring this up to date with the new pixbuf_scale
2077 * src/gdk-pixbuf-io.c: added a couple of warnings to the module
2078 loading code so that poeple can diagnose problems better.
2080 * src/gdk-pixbuf.c (gdk_pixbux_scale): fix the borkedness, also it
2081 no longer allocates a new pixbuf, which make things nicer for the
2082 rest of the code. Unfortunately there is still a problem with
2083 scaling rgba images.
2085 1999-07-16 Mark Crichton <crichton@gimp.org>
2087 * src/testpixbuf.c (config_func): ConfigureEvent handler. This
2088 calls gdk_pixbuf_scale. However, something is not working.
2089 N.B.: current pixmap is now stored in user_data with a key of
2092 * src/gdk-pixbuf.c (gdk_pixbuf_scale): Implemented scaling function.
2093 Something is still borked, however.
2095 1999-07-15 Larry Ewing <lewing@gimp.org>
2097 * src/io-jpeg.c (image_load): add raph@gimp.org's fix to the jpeg
2100 * src/testpixbuf.c (main): fix up the file routines a little so
2101 that you can load multiple files given the file names
2103 1999-07-14 Larry Ewing <lewing@gimp.org>
2105 * src/testpixbuf.c (expose_func): added an almost proper expose
2106 handler for testpixbuf
2108 1999-07-13 Mark Crichton <crichton@gimp.org>
2110 * configure.in: Fixed GIF check. Replaced " with '
2111 * src/gdk-pixbuf.c: More (minor) work on gdk_pixbuf_scale
2113 1999-07-13 Mark Crichton <crichton@gimp.org>
2115 * configure.in: I am a bonehead. Added gif-lib check.