1 2000-11-01 Havoc Pennington <hp@pobox.com>
3 * gdk-pixbuf.c (gdk_pixbuf_new_subpixbuf): New function to create
4 a pixbuf pointing to a subregion of another pixbuf.
6 2000-10-16 Tor Lillqvist <tml@iki.fi>
8 * gdk-pixbuf-io.c: Define also m_save (for the non-gmodule case).
10 2000-10-16 Havoc Pennington <hp@redhat.com>
12 * gdk-pixbuf-io.c (gdk_pixbuf_get_module)
13 (gdk_pixbuf_get_named_module) (gdk_pixbuf_load_module):
14 add error reporting here also
16 * make-inline-pixbuf.c (main): use GError
18 * io-xpm.c: include unistd.h
20 * gdk-pixbuf-util.c: include string.h
22 * io-*.c: add error reporting
24 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file): add
27 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file): Add error reporting
29 * gdk-pixbuf-io.h: Add GError** to load_increment and load
32 * gdk-pixbuf-io.c (gdk_pixbuf_save) (gdk_pixbuf_savev): return
33 a G_FILE_ERROR if we fail to write or close the file.
35 * gdk-pixbuf.h: remove GDK_PIXBUF_ERROR_IO, instead we'll use
36 G_FILE_ERROR_*. Rename enum to GdkPixbufError, properly following
37 the GError naming rules. Add GError** to load functions.
39 2000-10-06 Havoc Pennington <hp@redhat.com>
41 * gdk-pixbuf.h: add GdkPixbufAlphaMode
43 2000-10-06 Havoc Pennington <hp@redhat.com>
45 This entry is a summary of the merged-in changes from 1.0.
46 Relevant original ChangeLog entries are spliced in after
47 this entry; the files they refer to are from the 1.0
50 * pixops/pixops.c (pixops_composite_nearest): sync a small fix
53 * io-xpm.c (xpm_seek_string): add fscanf error check from 1.0
54 Add progressive loader from 1.0
56 * io-tiff.c (gdk_pixbuf__tiff_image_begin_load): mem leak fixes
59 * io-pnm.c: new version from 1.0 tree
61 * io-jpeg.c (gdk_pixbuf__jpeg_image_load): sync from 1.0, use
64 * io-gif.c (lzw_read_byte): sync from 1.0, change a g_error to
66 (gif_get_next_step): return 0 here, sync from 1.0
68 * gdk-pixbuf-util.c: sync email address change for Cody
71 2000-09-11 Jeffrey Stedfast <fejj@helixcode.com>
73 * gdk-pixbuf/io-pnm.c: Pretty much totally rewrote again because
74 last nights code was still "broken". Should now properly handle
75 all error conditions gracefully.
77 2000-09-10 Jeffrey Stedfast <fejj@helixcode.com>
79 * gdk-pixbuf/io-pnm.c: Rewrote.
81 2000-09-09 Federico Mena Quintero <federico@helixcode.com>
83 * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest): Compute
84 the correct dest offset.
86 2000-08-25 Federico Mena Quintero <federico@helixcode.com>
88 * gdk-pixbuf/io-xpm.c: #include <unistd.h>
90 2000-08-05 Larry Ewing <lewing@helixcode.com>
92 * gdk-pixbuf/io-tiff.c: stop leaking context->tempname.
94 * gdk-pixbuf/io-xpm.c: same as above.
96 2000-07-26 Michael Meeks <michael@helixcode.com>
98 * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_load): make
101 2000-07-21 Larry Ewing <lewing@helixcode.com>
103 * gdk-pixbuf/io-xpm.c: add a fake progressive loader so that
104 xpm at least supports the progressive interface like the one in
105 io-tiff.c. This should be reimplemented as an actual progressive
108 2000-07-19 Jonathan Blandford <jrb@redhat.com>
110 * demo/pixbuf-demo.c (update_timeout): changed scaling level to
112 * gdk-pixbuf/testpixbuf.c (update_timeout): Patch from michael
113 meeks to handle errors better.
115 2000-10-07 Tor Lillqvist <tml@iki.fi>
118 * pixbufloader_jpeg.def
119 * pixbufloader_png.def: Add new entry points.
121 * makefile.mingw.in: Use libintl.
123 2000-10-06 Havoc Pennington <hp@redhat.com>
125 * gdk-pixbuf-io.c (gdk_pixbuf_save): s/format/type/g to be
126 consistent with gdk_pixbuf_loader_new_with_type().
127 Return runtime error if a module is missing.
129 * gdk-pixbuf.h: add GDK_PIXBUF_ERROR_UNKNOWN_TYPE
131 2000-10-05 Havoc Pennington <hp@redhat.com>
133 Pixbuf saving, patch from David Welton.
135 * Makefile.am (GDK_PIXBUF_LIBS): add INTLLIBS
136 (libgdk_pixbuf_1_3_la_SOURCES): add gdk-pixbuf-i18n.h
138 * gdk-pixbuf-i18n.h: Add _() to gdk-pixbuf
140 * io-png.c (gdk_pixbuf__png_image_save): PNG save routine.
142 * io-jpeg.c (gdk_pixbuf__jpeg_image_save): JPEG save routine.
144 * gdk-pixbuf-io.c (gdk_pixbuf_save):
145 (gdk_pixbuf_savev): Implement pixbuf saving routines
147 * gdk-pixbuf.c (gdk_pixbuf_error_quark): pixbuf error quark
150 * gdk-pixbuf.h: Add public save routines; add pixbuf error
153 * gdk-pixbuf-io.h: Add save function to GdkPixbufModule
155 2000-10-05 Dan Winship <danw@helixcode.com>
157 * io-png.c, io-tiff.c, io-xpm.c: Fix comments to not claim that
158 all three of these files are the JPEG image loader. (From
161 2000-10-03 Tor Lillqvist <tml@iki.fi>
163 * makefile.mingw.in: Add rule for make-inline-pixbuf. Use
164 gdk-pixbuf's version number in the rule for makefile.mingw itself.
166 * gdk_pixbuf.def: Add new entry points.
168 2000-09-26 Havoc Pennington <hp@redhat.com>
170 * gdk-pixbuf-util.c (gdk_pixbuf_saturate_and_pixelate): Add this
171 function here, instead of putting it in a private GTK+ file.
173 * gdk-pixbuf-private.h (GdkPixbufInlineFormat): include an
174 enum here for the known formats of inlined pixbufs.
175 Also, #define our file magic here.
177 2000-06-23 Havoc Pennington <hp@redhat.com>
179 * make-inline-pixbuf.c: Small program that creates C variable
180 declarations of inline pixbuf data. This can be read
181 by gdk_pixbuf_new_from_inline.
183 * gdk-pixbuf.h (gdk_pixbuf_new_from_inline): New function to read
184 inline pixbuf data and create a pixbuf from it.
186 * gdk-pixbuf-data.c (gdk_pixbuf_new_from_inline): implement here
188 2000-09-07 Tor Lillqvist <tml@iki.fi>
190 * makefile.mingw.in: Use own version number for gdk-pixbuf DLLs,
193 2000-08-12 Tor Lillqvist <tml@iki.fi>
195 * gdk_pixbuf.def: Add missing entry point.
197 2000-08-10 Havoc Pennington <hp@redhat.com>
199 * Makefile.am (EXTRA_DIST): The *.def files had the wrong names
200 (s/pixbuf_/pixbufloader_)
202 2000-08-02 Tor Lillqvist <tml@iki.fi>
208 * io-wbmp.c: Conditionalise inclusion of <unistd.h>.
210 * makefile.mingw.in: List loaders alphabetically. Add the wbmp
211 one. Fix names of DLLs to have '-' instead of '_'.
213 2000-07-31 Elliot Lee <sopwith@redhat.com>
214 * io-wbmp.c: Some bug fixes - now tested to work.
216 2000-07-27 Elliot Lee <sopwith@redhat.com>
218 * gdk-pixbuf-io.h, gdk-pixbuf-io.c: Add gdk_pixbuf_get_named_module() function to facilitate above change
219 * io-wbmp.c, pixbufloader_wbmp.defs, gdk-pixbuf-io.c, Makefile: Implement loader for WBMP format.
220 * io-bmp.c: Don't malloc a temporary buffer - use stack instead.
222 2000-07-23 Tor Lillqvist <tml@iki.fi>
227 * pixops/makefile.mingw.in
228 * pixbuf_*.def: New files.
231 * pixops/Makefile.am: Add them. Add rule to generate makefile.mingw.
233 * gdk-pixbuf-io.c (gtk_win32_get_installation_directory):
234 New function, to get the GTK+ installation directory from
235 the Windows Registry, where the installation program
236 for whatever software includes GTK+ has stored it.
238 Used to avoid having hardcoding the directory where to look for
239 loaders. This function is needed by gtk, too, so it should
240 really be just in one place. Maybe a small static library
241 one level up from here?
243 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file)
244 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file):
245 Open file in binary mode. This *is* standard C. (No-op on Unix,
248 * io-jpeg.c: If we don't HAVE_SIGSETJMP, use normal setjmp().
250 * io-tiff.c: Use g_get_tmp_dir(). If we don't HAVE_MKSTEMP, use
252 (gdk_pixbuf__tiff_image_stop_load): g_free() also the tempname.
254 * pixops/*.S: The Gas from mingw32 doesn't like the .type
255 pseudo-op. Conditionalise on __MINGW32__, but probably
256 should conditionalise on Gas version instead? Or could we
257 do without .type on all systems?
259 * pixops/timescale.c: Use g_get_current_time()
260 instead of gettimeofday().
262 Sat Jul 22 10:57:22 2000 Owen Taylor <otaylor@redhat.com>
264 * Makefile.am (test_gdk_pixbuf_LDADD): Remove -lgmodule
266 Tue Jul 11 11:26:42 2000 Owen Taylor <otaylor@redhat.com>
268 * gdk-pixbuf.c: Add <string.h> include.
270 Tue Jul 11 06:20:14 2000 Tim Janik <timj@gtk.org>
272 * io-gif.c (gdk_pixbuf__gif_image_load_animation):
273 * gdk-pixbuf-data.c (gdk_pixbuf_new_from_data):
274 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file):
275 use g_object_new() instead of g_type_create_instance() which
276 is a private function for fundamental type implementations.
278 Thu Jul 6 11:49:47 2000 Owen Taylor <otaylor@redhat.com>
280 * Makefile.am (libgdk_pixbuf_la_LDFLAGS): Use GTK+ version
281 soname scheme for gdk-pixbuf.
283 2000-06-21 Havoc Pennington <hp@pobox.com>
285 * gdk-pixbuf.c: Convert GdkPixbuf to GObject, leaving it opaque
286 (i.e. derivation is not allowed, and there are no virtual methods
288 (gdk_pixbuf_preinit): Call g_type_init() here.
289 (gdk_pixbuf_init): Add a user-friendly init function, for users
290 of standalone gdk-pixbuf
292 * gdk-pixbuf-animation.c: Convert to GObject, in the same
293 way GdkPixbufAnimation was done.
295 * gdk-pixbuf.h: Remove gdk_pixbuf_set_unref_handler() and
296 gdk_pixbuf_finalize() from API, since these are broken and don't
297 make sense with new GObject stuff.
299 Wed Jun 21 16:02:48 2000 Owen Taylor <otaylor@redhat.com>
301 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): Add feature to
302 support a GDK_PIXBUF_MODULEDIR env variable as a secondary
305 2000-06-10 Federico Mena Quintero <federico@helixcode.com>
307 * demo/pixbuf-demo.c: It was cold and rainy this Saturday morning,
308 so I needed something to warm my thighs. Running plain infinite
309 loops on your laptop to make it hot is not very much fun. A demo
310 of the gdk-pixbuf scaling functions is way better, and looks
313 * configure.in (AC_OUTPUT): Added the demo Makefile.
315 * Makefile.am (SUBDIRS): Added the demo directory.
317 2000-06-09 Larry Ewing <lewing@helixcode.com>
319 * gdk-pixbuf/io-png.c (gdk_pixbuf__png_image_load_increment):
320 setjmp for the png error handler. It seems setting the error
321 handling functions does not avoid the jump, and so not calling
322 setjmp was causing the incremental loader to jump into lala land.
323 (gdk_pixbuf__png_image_begin_load): setjmp for error handling, I'm
324 not sure this one is actually required but the docs say it must be
325 set for every call to a png_* function.
326 Also changed the comment to reflect the fact that setting the
327 error handlers does _not_ avoid the longjmp.
329 2000-06-06 Larry Ewing <lewing@helixcode.com>
331 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
332 take frame offest into account when trying to calculate the
333 animation bbox. Also set the width to the width not the height.
334 (gdk_pixbuf_loader_animation_done): cycle over the frames to
335 calculate bbox because now we finally have all the offset
336 information for each frame.
338 2000-06-05 Mathieu Lacage <mathieu@gnome.org>
340 * configure.in: add some gtk parameters to the
341 GDK_PIXBUF_LIB²S and GDK_PIXBUG_INCLUDEDIR vars. One more
342 fight in my crusade for strange prefix compile...
344 2000-05-30 Not Zed <NotZed@HelixCode.com>
346 * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_begin_load):
347 Initialise the error handler exit routine to our own. Note this
348 means that every function that accesses the jpeg lib on this
349 object MUST do a setjmp.
350 (gdk_pixbuf__jpeg_image_stop_load): setjmp before accessing jpeg
351 lib for handling fatal error.
352 (gdk_pixbuf__jpeg_image_load_increment): And here too. So now
353 your applications dont quit if there's a jpeg error!
355 2000-05-30 Federico Mena Quintero <federico@helixcode.com>
357 * gdk-pixbuf.spec.in: Include all the loader libraries. Patch
358 from Frank de Lange <frank@unternet.org>.
360 2000-05-09 Darin Adler <darin@eazel.com>
362 * gdk-pixbuf/test-gdk-pixbuf.c:
363 Fixed includes to get rid of accidental GNOME dependency.
365 2000-05-26 Cody Russell <car0969@gamma2.uta.edu>
366 * Makefile.am: Added gdk-pixbuf.spec to EXTRA_DIST
368 2000-05-22 Federico Mena Quintero <federico@helixcode.com>
370 * configure.in: Bumped version number to 0.8.0.
372 * doc/Makefile.am (content_files): The toplevel gdk-pixbuf.sgml
373 file was not being distributed.
375 * gdk-pixbuf/pixops/Makefile.am (EXTRA_DIST): Added DETAILS.
377 2000-05-09 Darin Adler <darin@eazel.com>
379 * gdk-pixbuf/gdk-pixbuf-drawable.c: (rgb565lsb), (rgb565msb),
380 (rgb565alsb), (rgb565amsb), (rgb555lsb), (rgb555msb), (rgb555alsb),
381 (rgb555amsb), (convert_real_slow): Change all conversion from 16-bit
382 formats to 32-bit formats to re-use the high bits of the color values
383 so that white maps to full white.
385 Fri May 5 12:16:32 2000 Owen Taylor <otaylor@redhat.com>
387 * gdk-pixbuf/pixops/DETAILS: Add beginnings of file with
388 detailed information about the structure and algorithms
389 of pixops so people can fix it instead of breaking it.
391 2000-05-04 Darin Adler <darin@eazel.com>
393 * gdk-pixbuf/pixops/pixops.c: (pixops_composite_nearest),
394 (composite_pixel), (composite_line):
395 * gdk-pixbuf/test-gdk-pixbuf.c: (simple_composite_test_one_type):
396 Now that Owen explained the algorithm, I think I implemented it
397 right for the cases where the destination pixbuf is not opaque.
398 The test does seem to confirm it.
400 2000-05-04 Darin Adler <darin@eazel.com>
402 * gdk-pixbuf/.cvsignore:
403 * gdk-pixbuf/Makefile.am:
404 * gdk-pixbuf/test-gdk-pixbuf.c (store_pixel), (fill_with_pixel),
405 (load_pixel), (simple_composite_test_one),
406 (simple_composite_test_one_type), (simple_composite_test), (main):
407 Added some tests of composite to highlight problems in the old
408 implementation. These tests run without any user interaction.
409 Just do "make check".
411 * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest),
412 (composite_pixel), (composite_line): Fix composite to do a textbook
413 "A over B" composite. This was clearly the intent, and it was easy
414 to fix the code to do it. (Note to those that read my earlier tries
415 at a patch; this version fixes typos that were present in all
416 my patch attempts. I checked the final version by adding more tests.)
418 2000-04-22 05:27:43 2000 Owen Taylor <otaylor@redhat.com>
420 * gdk-pixbuf/pixops/pixops.c (pixops_scale_nearest): Properly
421 offset y coordinate accordining to render_y0.
423 * gdk-pixbuf/gdk-pixbuf-scale.c: Properly handle nonzero
426 2000-04-22 James Henstridge <james@daa.com.au>
428 * gdk-pixbuf.spec.in (%files): moved %{prefix}/bin/* from the main
429 package to the devel package. The only file installed in bin is
430 gdk-pixbuf-config, which belongs in -devel. This should allow having
431 multiple versions of the main gdk-pixbuf package installed.
433 2000-04-17 Karl Eichwalder <ke@suse.de>
435 * gdk-pixbuf/Makefile.am (INCLUDES): Add $(GNOME_CFLAGS).
436 Reported by Jens Finke.
438 2000-04-14 Tomasz K³opczko <kloczek@pld.org.pl>
440 * gdk-pixbuf/pixops/makefile.am: $(LIBART_CFLAGS) replaced by
441 $(GTK_CFLAGS) - now gdk-pixbuf compiles correctly.
443 2000-04-13 James Henstridge <james@daa.com.au>
445 * configure.in: when performing the configure check to see if
446 gmodule works, set CFLAGS to GLIB_CFLAGS and LIBS to GLIB_LIBS,
447 rather than the other way round. Also, call AC_MSG_RESULT in the
448 even that dynamic modules were not supported.
450 2000-04-12 Federico Mena Quintero <federico@helixcode.com>
452 This comes from an excellent idea by Tim Janik (timj@gtk.org) to
453 hook to the last unref operation.
455 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_set_last_unref_handler): New
456 function to set the last unref handler for a pixbuf.
457 (gdk_pixbuf_finalize): New function to actually finalize a pixbuf.
458 It calls the pixbuf's destroy notification function and frees the
459 GdkPixbuf structure itself.
460 (gdk_pixbuf_unref): Use the last unref function of the pixbuf if
463 * gdk-pixbuf/gdk-pixbuf-private.h (struct _GdkPixbuf): New fields
464 for the last unref handler and its user data.
466 * gdk-pixbuf/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Use
467 g_new0() to allocate the pixbuf.
469 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
470 Fixed the call to gtk_signal_new() for the "frame_done" signal; it
471 was not specifying the `frame' argument.
473 * gdk-pixbuf/gdk-pixbuf-animation.c
474 (gdk_pixbuf_animation_get_width): Fixed docstring.
475 (gdk_pixbuf_animation_get_height): Likewise.
476 (gdk_pixbuf_animation_get_num_frames): Likewise.
477 (gdk_pixbuf_animation_get_frames): Likewise.
479 * doc/gdk-pixbuf-sections.txt: Updated with the new functions and
482 * doc/tmpl/gdk-pixbuf.sgml: Added the description for GdkColorspace.
484 * doc/tmpl/scaling.sgml: Added the description for GdkInterpType.
486 * doc/tmpl/refcounting.sgml: Updated with the information about
487 the last unref handler.
489 * doc/tmpl/*.sgml: Markup tweaks.
491 * gdk-pixbuf/Makefile.am (libgnomecanvaspixbuf_la_LDFLAGS): Sigh,
492 update the libtool version number for libgnomecanvaspixbuf as
494 (libpixbufloader_*_la_LDFLAGS): The loaders need to be versioned
495 as well, or the old ones won't work with the new stuff. Also,
496 renamed the modules as follows.
498 * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_load_module): Now the
499 modules are called "libpixbufloader-<format>.so" instead of
500 "libpixbuf-<format>.so". They needed renaming so that the new
501 loaders won't overwrite the old ones; even with the versioning
502 stuff, the new .so symlink to the .so.1.0.0 would overwrite the
505 2000-04-12 Paolo Molaro <lupus@debian.org>
507 * .cvsignore, src/.cvsignore: shut up cvs.
509 2000-04-11 Federico Mena Quintero <federico@helixcode.com>
511 Most of this patch is based on a patch by Havoc Pennington
512 (hp@redhat.com) to make GdkPixbuf's structures opaque and to
513 remove the libart dependency.
515 * gdk-pixbuf/gdk-pixbuf.h: Removed the public structures.
516 (GdkColorspace): New enum that for now only contains
518 (GdkPixbufDestroyNotify): New type for the pixbuf's pixels destroy
519 notification function.
520 (GdkInterpType): New num with interpolation types.
522 * *.[ch]: Replace the libart stuff with our own stuff.
524 * pixops/*.[ch]: Likewise.
526 * gdk-pixbuf/gdk-pixbuf-private.h: New file with the private
527 declarations of the GdkPixbuf structures.
529 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_new_from_art_pixbuf):
531 (gdk_pixbuf_get_format): Constify.
532 (gdk_pixbuf_get_n_channels): Constify.
533 (gdk_pixbuf_get_has_alpha): Constify.
534 (gdk_pixbuf_get_bits_per_sample): Constify.
535 (gdk_pixbuf_get_pixels): Constify.
536 (gdk_pixbuf_get_width): Constify.
537 (gdk_pixbuf_get_height): Constify.
538 (gdk_pixbuf_get_rowstride): Constify.
540 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_copy): New function to copy
543 * gdk-pixbuf/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Added a
544 bits_per_sample argument; currently only 8 bits per sample are
547 * gdk-pixbuf/gdk-pixbuf-animation.c (gdk_pixbuf_frame_get_pixbuf):
549 (gdk_pixbuf_frame_get_x_offset): New accessor.
550 (gdk_pixbuf_frame_get_y_offset): New accessor.
551 (gdk_pixbuf_frame_get_delay_time): New accessor.
552 (gdk_pixbuf_frame_get_action): New accessor.
554 * gdk-pixbuf/gdk-pixbuf-render.c
555 (gdk_pixbuf_render_pixmap_and_mask): Instead of returning a solid
556 mask rectangle for pixbufs without an alpha channel, set the
557 *mask_return to NULL.
559 * gdk-pixbuf/gdk-pixbuf-util.c (gdk_pixbuf_add_alpha): Constify.
561 * gdk-pixbuf/gdk-pixbuf-scale.c: Fix includes.
563 * gdk-pixbuf/gdk-pixbuf-scale.c (gdk_pixbuf_scale): Added some
564 preconditions. Maybe we should also check for the colorspace,
565 bits per pixel, and such.
566 (gdk_pixbuf_composite): Likewise.
567 (gdk_pixbuf_composite_color): Likewise.
568 (gdk_pixbuf_scale_simple): Likewise, and fail gracefully if we
569 cannot allocate the new pixbuf.
570 (gdk_pixbuf_composite_color_simple): Likewise.
572 * gdk-pixbuf/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_render):
573 Use art_rgb_rgba_affine() or art_rgb_affine() since we no longer
576 * gdk-pixbuf/io-bmp.c: Fix includes.
578 * gdk-pixbuf/pixops/pixops.c (pixops_scale_nearest): Fixed cast in
583 * configure.in: Removed checks for libart.
585 * gdk-pixbuf/Makefile.am: Removed references to libart.
586 (noinst_HEADERS): Added gdk-pixbuf-private.h.
588 * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_LDFLAGS): Incremented
589 the version number of the libtool library to indicate that this
590 definitely is not compatible with the old usage. I know you love
593 * configure.in: Bumped version number to 0.7.0.
597 * gdk-pixbuf-config.in (--libs): We no longer require libart.
599 * DEPENDS.libgdk_pixbuf: We no longer depend on libart.
601 * gdk-pixbuf.spec.in: Updated, but I don't guarantee anything.
603 2000-04-06 Jonathan Blandford <jrb@redhat.com>
605 * gdk-pixbuf/testanimation.c (main): add more info to the
606 testanimation frames.
608 2000-04-04 Ettore Perazzoli <ettore@helixcode.com>
610 * gdk-pixbuf/gdk-pixbuf-animation.c
611 (gdk_pixbuf_animation_get_width): New accessor function.
612 (gdk_pixbuf_animation_get_height): New accessor function.
613 (gdk_pixbuf_animation_get_num_frames): New accessor function.
614 (gdk_pixbuf_animation_get_frames): New accessor function.
616 2000-04-01 Federico Mena Quintero <federico@helixcode.com>
618 * gdk-pixbuf/gdk-pixbuf.c: Reverted Mark's change. The refcount
619 is private information, and the art_pixbuf will go away soon.
621 2000-03-31 Mark Crichton <crichton@gimp.org>
623 * gdk-pixbuf/gdk-pixbuf.c: Added gdk_pixbuf_get_refcount
624 and gdk_pixbuf_get_artpixbuf accessor functions.
626 2000-03-29 Federico Mena Quintero <federico@helixcode.com>
628 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_get_has_alpha): Return
629 gboolean instead of int.
631 2000-03-29 Radek Doulik <rodo@helixcode.com>
633 * gdk-pixbuf/gdk-pixbuf-animation.c
634 (gdk_pixbuf_animation_new_from_file): same as below
636 * gdk-pixbuf/io-gif.c (gif_get_lzw): added update of width and
637 height in GdkPixbufAnimation
639 2000-03-28 Radek Doulik <rodo@helixcode.com>
641 * gdk-pixbuf/io-gif.c (gif_get_lzw): test also for
642 context->frame_done_func and context->anim_done_func to make
643 progressive animation loading work
645 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
646 added priv->pixbuf = NULL as pixbuf is now in frame (and to make
647 gdk_pixbuf_loader_prepare happy)
648 (gdk_pixbuf_loader_frame_done): update animation bbox
650 * gdk-pixbuf/gdk-pixbuf.h: added bbox size (width, height) to
653 2000-03-27 Radek Doulik <rodo@helixcode.com>
655 * gdk-pixbuf/io-gif.c (gif_get_lzw): use frame_len and frame_width
656 instead of width and height
658 2000-03-27 Owen Taylor <otaylor@redhat.com>
660 * gdk-pixbuf/pixops/pixops.c: Fix problem with
661 precendence of >> and & which was keeping composite_color
662 from working with non-gray images.
664 2000-03-08 Jonathan Blandford <jrb@redhat.com>
666 * gdk-pixbuf/io-gif.c (gdk_pixbuf__gif_image_load): free the context.
667 (gdk_pixbuf__gif_image_load_animation): free the context.
669 2000-03-06 Arjan van de Ven <arjan@fenrus.demon.nl>
671 * gdk-pixbuf/io-bmp.c: Fixed to pointer-bugs and a
672 mis-interpretation of the Microsoft documentation. Now
673 it can load .BMP files that are not generated by The Gimp
676 2000-03-01 Mark Crichton <crichton@gimp.org>
678 * configure.in: Added BUILD_CANVAS_ITEM stuff to (finally)
679 fix the last auto* build bug (where we have libart, but no
682 * gdk-pixbuf/Makefile.am: Same.
684 2000-02-28 Matt Wilson <msw@redhat.com>
686 * gdk-pixbuf/gdk-pixbuf-drawable.c: s/unsigned long/guint32/g,
687 s/unsigned short/guint16/g, s/unsigned char/guint8/g
689 2000-02-26 Federico Mena Quintero <federico@helixcode.com>
691 * README: We don't require libgif/ungif nor libXpm.
693 * NEWS: This was outdated, so updated it.
695 2000-02-25 Federico Mena Quintero <federico@helixcode.com>
697 * gdk-pixbuf.m4: Use the correct name for
698 gdk-pixbuf/gdk-pixbuf.h. Thanks to Jacob Berkman for pointing
701 2000-02-21 Federico Mena Quintero <federico@helixcode.com>
703 * configure.in (GDK_PIXBUF_MINOR): Bumped version number to 0.6.0.
705 * doc/compiling.sgml: New appendix documenting the gdk-pixbuf
706 library's particular options to configure.in.
708 * doc/gdk-pixbuf.sgml: Include compiling.sgml appendix via an
711 * doc/Makefile.am (gdk-pixbuf.html): Added compiling.sgml.
713 * gdk-pixbuf/io-ico.c (gdk_pixbuf__ico_image_load_increment):
714 Fixed typo in prototype name.
716 * configure.in: Changed duplicated AC_MSG_CHECKING message to
717 something more meaningful; now it is "checking whether dynamic
720 * gdk-pixbuf/pixops/Makefile.am (noinst_PROGRAMS): Do not install
721 the timescale program.
723 Integrated Miguel de Icaza's <miguel@gnu.org> patch for optionally
724 creating a single static library with all the image format modules
727 2000-02-20 Miguel de Icaza <miguel@gnu.org>
729 * gdk-pixbuf/io-xpm.c (gdk_pixbuf__xpm_image_load): Add prefix.
730 (gdk_pixbuf__xpm_image_load_xpm_data): Add prefix.
732 * gdk-pixbuf/io-tiff.c (gdk_pixbuf__tiff_image_load_real): Add prefix.
733 (gdk_pixbuf__tiff_image_stop_load): Add prefix.
734 (gdk_pixbuf__tiff_image_load_increment): Add prefix.
735 (gdk_pixbuf__tiff_image_load): Add prefix.
736 (gdk_pixbuf__tiff_image_stop_load): Update invocation.
737 (gdk_pixbuf__tiff_image_begin_load): Add prefix.
739 * gdk-pixbuf/io-ras.c (gdk_pixbuf__ras_image_load): Add prefix.
740 (gdk_pixbuf__ras_image_load): Updated invocation.
741 (gdk_pixbuf__ras_image_begin_load): Add prefix.
742 (gdk_pixbuf__ras_image_stop_load): Add prefix.
743 (gdk_pixbuf__ras_image_load_increment): Add prefix.
745 * gdk-pixbuf/io-pnm.c (gdk_pixbuf__pnm_image_begin_load): Add prefix.
746 (gdk_pixbuf__pnm_image_stop_load): Add prefix.
747 (gdk_pixbuf__pnm_image_load_increment): Add prefix
748 (gdk_pixbuf__pnm_image_load): Add prefix.
750 * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_load): Add prefix.
751 (gdk_pixbuf__jpeg_image_load_increment): Add prefix.
752 (gdk_pixbuf__jpeg_image_begin_load): Add prefix.
753 (gdk_pixbuf__jpeg_image_stop_load): Add prefix.
755 * gdk-pixbuf/io-ico.c (gdk_pixbuf__ico_image_load): Add prefix.
756 (gdk_pixbuf__ico_image_load): update invocation.
757 (gdk_pixbuf__ico_image_load_increment): Add prefix.
758 (gdk_pixbuf__ico_image_load): update invocation.
759 (gdk_pixbuf__ico_image_begin_load): Add prefix.
760 (gdk_pixbuf__ico_image_load): update invocation.
761 (gdk_pixbuf__ico_image_stop_load): Add prefix.
763 * gdk-pixbuf/io-gif.c (gdk_pixbuf__gif_image_load_animation): Add prefix.
764 (gdk_pixbuf__gif_image_load): Add prefix.
765 (gdk_pixbuf__gif_image_begin_load): Add prefix.
766 (gdk_pixbuf__gif_image_load_increment): Add prefix.
767 (gdk_pixbuf__gif_image_load_animation): Add prefix.
768 (gdk_pixbuf__gif_image_stop_load): Add prefix.
770 * gdk-pixbuf/io-bmp.c (gdk_pixbuf__bmp_image_load): Add prefix.
771 (gdk_pixbuf__bmp_image_load): Rename function called.
772 (gdk_pixbuf__bmp_image_load_increment): Add prefix
774 * gdk-pixbuf/io-png.c (gdk_pixbuf__png_image_load): Add prefix.
775 (gdk_pixbuf__png_image_begin_load): Add prefix.
776 (gdk_pixbuf__png_image_stop_load): Add prefix.
777 (gdk_pixbuf__png_image_load_increment): Add prefix.
779 * gdk-pixbuf/gdk-pixbuf-io.c (file_formats): Make this static.
780 (gdk_pixbuf_load_module): Load the shared library entry points
781 using a "gdk_pixbuf__$module_name" prefix.
782 (pixbuf_module_symbol): Wrapper routine that uses the module
783 prefix for the modules to load the information.
785 * configure.in (GDK_PIXBUF_VERSION): New option --disable-modules
786 lets the user specify that gdk-pixbuf should link all image loader
787 code into the library instaed of creating shared library modules.
789 (dynworks): Renamed the automake conditional DYNAMIC_MODULES_WORK
790 to BUILD_DYNAMIC_MODULES.
792 2000-02-19 Jonathan Blandford <jrb@redhat.com>
794 * gdk-pixbuf/io-gif.c (new_context): fix case where initial
795 colormap entry is Transparent.
797 2000-02-19 Owen Taylor <otaylor@redhat.com>
799 * gdk-pixbuf/pixops/pixops.c (scale_pixel): Fix error in
800 scale factors for non-alpha case.
802 2000-02-14 Mark Crichton <crichton@gimp.org>
804 * gdk-pixbuf/io-xpm.c (xpm_extract_color): Added check for "g" color type.
805 Imlib/libXpm handle this, but we didn't.
807 2000-02-14 Darin Adler <darin@eazel.com>
809 * gdk-pixbuf/testpixbuf.c: Remove now-unnecessary cast.
810 * .cvsignore: gdk-pixbuf/.cvsignore: More to ignore.
812 2000-02-14 Elliot Lee <sopwith@redhat.com>
813 * gdk-pixbuf/gdk-pixbuf.h, gdk-pixbuf/gdk-pixbuf-data.c: Make passed-in argument 'const'.
815 2000-02-04 Michael Meeks <mmeeks@gnu.org>
817 * gdk-pixbuf/io-gif.c (struct _GifContext): add x,y_offset.
818 (gif_get_frame_info): put the offsets on the context.
819 (gif_get_lzw): copy them off into the frame.
820 (new_context): no change required; will 0 offsets by default.
822 2000-01-28 Michael Meeks <michael@mejm2.dow.cam.ac.uk>
824 * gdk-pixbuf/pixops/pixops.c (pixops_process): const + nasty
827 * gdk-pixbuf/pixops/pixops.h: const.
829 * gdk-pixbuf/gdk-pixbuf-util.c: const.
831 * gdk-pixbuf/gdk-pixbuf-scale.c: const.
833 * gdk-pixbuf/gdk-pixbuf.h: constify lots of things.
835 2000-02-03 Federico Mena Quintero <federico@helixcode.com>
837 * gdk-pixbuf/gdk-pixbuf-render.c
838 (gdk_pixbuf_render_threshold_alpha): Added sanity check for width
839 and height being >= 0. Also, do nothing if either of them is
840 zero. Thanks to Ettore for pointing this out.
841 (gdk_pixbuf_render_to_drawable): Likewise.
842 (gdk_pixbuf_render_to_drawable_alpha): Likewise.
844 2000-02-02 Federico Mena Quintero <federico@helixcode.com>
846 * gdk-pixbuf/io-gif.c (gif_get_lzw): Removed debugging g_print.
847 Thanks to John Sullivan <sullivan@eazel.com> for the patch.
849 * gdk-pixbuf/testpixbuf-drawable.c (configure_cb): Get a new area
850 of the screen when the window is resized. Thanks to David
851 N. Welton <davidw@linuxcare.com> for pointing this out.
852 Misc. cleanups to the rest of the file.
854 2000-02-01 Federico Mena Quintero <federico@helixcode.com>
856 * doc/tmpl/rendering.sgml: gnome_init() does not call
857 gdk_rgb_init(), so don't mention that it does in the
858 documentation. Thanks to Alexander Kruuse <kruuse@home.se> for
861 2000-01-31 Havoc Pennington <hp@redhat.com>
863 * gdk-pixbuf/Makefile.am (noinst_PROGRAMS): no testpixbuf-foo target
865 Mon Jan 31 12:38:50 2000 Owen Taylor <otaylor@redhat.com>
867 * gdk-pixbuf/pixops/pixops.c (scale_line): Fix from Peter
868 Wainwright to fix 4a => 4a scaling.
870 2000-01-29 Mark Crichton <crichton@gimp.org>
872 * gdk-pixbuf-config: Oh dear, we weren't Telsa/Alan proof...
873 put `libart-config --libs` in instead of -lart_lgpl.
875 2000-01-22 Federico Mena Quintero <federico@helixcode.com>
877 * gdk-pixbuf/io-pnm.c (pnm_read_raw_scanline): Return an error on
879 (pnm_read_ascii_scanline): Initialize data and mask.
881 * gdk-pixbuf/io-xpm.c (pixbuf_create_from_xpm): Initialize
882 fallbackcolor to keep gcc happy.
884 * configure.in: Bumped version number to 0.5.0.
886 * gdk-pixbuf/pixops/timescale.c (dump_array): Removed unused variable.
889 * gdk-pixbuf/pixops/pixops.c (pixops_composite_color_nearest): Put
890 parentheses around + in a shift to remove a compiler warning.
891 (pixops_process): Likewise.
893 Patch from Ross Golder <rossigee@bigfoot.com> to create an RPM
896 * configure.in: Added gdk-pixbuf.spec to AC_OUTPUT.
898 * Makefile.am (EXTRA_DIST): Added gdk-pixbuf.spec.in
900 2000-01-22 Federico Mena Quintero <federico@helixcode.com>
902 * gdk-pixbuf/gnome-canvas-pixbuf.c (PixbufPrivate): Removed the
903 x_set and y_set arguments. Now they are always on and start with
904 defaults of 0.0 in units.
905 (gnome_canvas_pixbuf_class_init): Likewise.
906 (gnome_canvas_pixbuf_set_arg): Likewise.
907 (gnome_canvas_pixbuf_get_arg): Likewise.
908 (compute_viewport_affine): Likewise; always use the priv->x and
911 * doc/tmpl/gnome-canvas-pixbuf.sgml: Modified to reflect the
912 removal of the x_set/y_set arguments.
914 2000-01-21 Federico Mena Quintero <federico@helixcode.com>
916 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_ref): Return the same pixbuf
917 as the input parameter.
919 * gdk-pixbuf/gdk-pixbuf-animation.c (gdk_pixbuf_animation_ref):
920 Return the same animation as the input parameter.
922 2000-01-16 Elliot Lee <sopwith@redhat.com>
924 * gdk-pixbuf/Makefile.am: Don't link against libgnomecanvaspixbuf.la
926 2000-01-16 Federico Mena Quintero <federico@helixcode.com>
928 * configure.in: Removed the broken --enable-canvas-pixbuf option.
929 Added the stuff necessary to substitute the variables in
930 gnomecanvaspixbufConf.sh.in.
932 * gnomecanvaspixbufConf.sh.in: New gnome-config handler for the
933 tiny gnomecanvaspixbuf library.
935 * Makefile.am: Build gnomecanvaspixbufConf.sh.
937 * gdk-pixbuf/Makefile.am: Create a libgnomecanvaspixbuf and only
938 build it if gdk-pixbuf is being built outside of gnome-libs.
940 * doc/gdk-pixbuf-sections.txt: Added gdk_pixbuf_render_pixmap_and_mask().
942 * gdk-pixbuf/gdk-pixbuf-render.c
943 (gdk_pixbuf_render_pixmap_and_mask): Renamed from
944 gdk_pixbuf_render_pixmap(). Do not create the mask if it is not
945 needed, and do not use a clipping mask when rendering the pixmap.
946 Tweaked documentation a little.
948 * HACKING: New file with hacking policies for the gdk-pixbuf
951 * doc/Makefile.am (tmpl_sources): Added missing backslash.
953 * doc/Makefile.am: Use gnomecanvaspixbuf in gnome-config when
954 scanning for docstrings.
956 * gdk-pixbuf/gdk-pixbuf-util.c (gdk_pixbuf_copy_area): Made sanity
957 checks more stringent. Removed "gint" abominations. Made
958 documentation consistent with the rest of the functions.
960 * doc/gdk-pixbuf-sections.txt: Added gdk_pixbuf_copy_area() to the
963 2000-01-14 Jonathan Blandford <jrb@redhat.com>
965 * gdk-pixbuf/gdk-pixbuf-render.c (gdk_pixbuf_render_pixmap): new
966 function to let you create a gdk_pixmap from a gdk_pixbuf.
968 2000-01-11 Jacob Berkman <jacob@helixcode.com>
970 * gdk-pixbuf/pixops/Makefile.am (INCLUDES): added
971 $LIBART_CFLAGS to $INCLUDES
973 2000-01-10 Elliot Lee <sopwith@redhat.com>
975 * configure.in, gdk-pixbuf/Makefile.am: Build a libcanvas_pixbuf.
977 * configure.in: Define version macros. Generate
978 gdk-pixbuf/gdk-pixbuf-features.h. Always INSIDE_GNOME.
980 * gdk-pixbuf/Makefile.am: Add gdk-pixbuf-features.h
982 * gdk-pixbuf/gdk-pixbuf.c: Add definitions of
983 gdk-pixbuf-features.h declarations, plus some initialization
986 2000-01-05 Owen Taylor <otaylor@redhat.com>
988 * gdk-pixbuf/pixops/pixops.c: Fixed src_channels/dest_channels
989 confusion. (Again caught by Tomas Ogren's Purify)
991 2000-01-07 Jonathan Blandford <jrb@redhat.com>
993 * gdk-pixbuf/gdk-pixbuf-xform.c (gdk_pixbuf_rotate): comment out
996 * gdk-pixbuf/gdk-pixbuf-io.c: Added progressive animation loading.
997 * gdk-pixbuf/gdk-pixbuf-io.h: Added progressive animation loading.
998 * gdk-pixbuf/gdk-pixbuf-loader.c: Added progressive animation
1000 * gdk-pixbuf/gdk-pixbuf-loader.h: Added progressive animation
1002 * gdk-pixbuf/io-gif.c (image_load_increment): I think the
1003 ref-counting mess is finally fixed. Added progressive animation
1005 (gif_get_lzw): remove memory_leak
1007 * doc/tmpl/gdk-pixbuf-loader.sgml: much longer long description
1010 2000-01-05 Owen Taylor <otaylor@redhat.com>
1012 * gdk-pixbuf/pixops/pixops.c (pixops_process): Fix computation of end of run indices.
1014 * gdk-pixbuf/pixops/pixops.c: Fix double increments when dest_channels == 4.
1015 (Pointed out by Tomas Ogren)
1017 2000-01-05 Mark Crichton <crichton@gimp.org>
1019 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_eat_header_write):
1020 Return 0 if gdk_pixbuf_load_loader_module returns FALSE.
1022 2000-01-05 Elliot Lee <sopwith@redhat.com>
1024 * gdk-pixbuf/pixops/Makefile.am: Link with -lm (to get 'ceil' function)
1026 2000-01-05 Owen Taylor <otaylor@redhat.com>
1028 * doc/Makefile.am doc/gdk-pixbuf-sections.txt
1029 doc/gdk-pixbuf.sgml doc/tmpl/scaling.sgml:
1030 Added scaling functions into gtk-doc framework.
1032 * gdk-pixbuf/gdk-pixbuf-scale.c: Documentation fixes.
1034 * gdk-pixbuf/testpixbuf-scale.c (expose_cb): Simplify a bit.
1036 * gdk-pixbuf/pixops/pixops.c (pixops_composite_color): Return
1037 immediately if scale_x or scale_y is 0.
1039 2000-01-05 Owen Taylor <otaylor@redhat.com>
1041 * gdk-pixbuf/pixops/timescale.c: quick fix for initializing
1042 arrays in benchmark.
1044 2000-01-05 Jonathan Blandford <jrb@redhat.com>
1046 * gdk-pixbuf/gdk-pixbuf-io.h: Change the order of the update func
1047 to make it more compatible with the rest of GTK. Added animation
1048 framework for progressive loading.
1050 * gdk-pixbuf/io-bmp.c (image_begin_load): Modified to handle new
1052 * gdk-pixbuf/io-ico.c (image_begin_load): ditto
1053 * gdk-pixbuf/io-png.c (image_begin_load): ditto
1054 * gdk-pixbuf/io-ras.c (image_begin_load): ditto
1055 * gdk-pixbuf/io-jpeg.c (image_begin_load): ditto
1056 * gdk-pixbuf/io-pnm.c (image_begin_load): ditto
1057 * gdk-pixbuf/io-tiff.c (image_begin_load): ditto
1058 * gdk-pixbuf/io-gif.c (image_begin_load): ditto
1060 2000-01-05 Owen Taylor <otaylor@redhat.com>
1062 * gdk-pixbuf/pixops/README: Added a README with a TODO
1063 and some explainations of the algorithms.
1065 * gdk-pixbuf/testpixbuf-scale.c: Set a background pixmap of None
1066 to reduce flashing when resizing.
1068 2000-01-05 Owen Taylor <otaylor@redhat.com>
1070 * gdk-pixbuf/pixops/: Directory full of pixel data scaling
1071 code that will eventually migrate into libart.
1073 * configure.in acconfig.h: Add checks for MMX compiler support
1075 * gdk-pixbuf/gdk-pixbuf.h gdk-pixbuf/gdk-pixbuf-scale.c:
1076 Nice wrapper routines for the code in pixops that operate
1077 on pixbufs instead of raw data.
1079 * gdk-pixbuf/testpixbuf-scale: Test program for scaling
1082 2000-01-05 Jonathan Blandford <jrb@redhat.com>
1084 * doc/tmpl/animation.sgml: Documentation changes.
1086 2000-01-01 Federico Mena Quintero <federico@helixcode.com>
1088 * gdk-pixbuf/gdk-pixbuf.h (GdkPixbufAnimation): Added reference
1089 counting to animations. A web browser may want to share a single
1090 copy of an animated GIF if it appears multiple times in a web
1093 * gdk-pixbuf/gdk-pixbuf-animation.c: New file. Moved the
1094 animation functions here.
1095 (gdk_pixbuf_animation_new_from_file): Prettified. Return a NULL
1096 animation if the loader does not support multiframe loading and
1097 the single-frame load returned NULL. Check that the filename is
1098 not NULL. Updated inline documentation.
1099 (gdk_pixbuf_animation_ref): New function.
1100 (gdk_pixbuf_animation_unref): New function.
1101 Removed gdk_pixbuf_animation_destroy() in favor of reference
1104 * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_new_from_file):
1105 Prettified. Made ref_count assertion more paranoid. Check that
1106 the filename is not NULL.
1107 (gdk_pixbuf_get_module): Use guchar * and guint for buffer and
1109 (gdk_pixbuf_new_from_xpm_data): Changed the "data" argument to
1112 * gdk-pixbuf/io-gif.c (image_load_animation): Create the animation
1113 with a reference count of 1.
1115 * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_SOURCES): Added
1116 gdk-pixbuf-animation.c.
1118 * doc/tmpl/animation.sgml: Populated. It is still missing a
1119 description of the overlay modes.
1121 * doc/gdk-pixbuf-sections.txt: Added the animation section. Moved
1122 the canvas item section to the end, as it will be moved later to
1125 * doc/gdk-pixbuf.sgml: Added the animation section.
1127 * doc/Makefile.am (tmpl_sources): Added tmpl/animation.sgml.
1129 1999-12-26 Peter Teichman <pat@gnu.org>
1131 * gdk-pixbuf/Makefile.am (libpixbuf_tiff_la_LIBADD): add
1132 $(LIBTIFF) to libpixbuf_tiff_la_LIBADD, proxying for mmarker.
1133 This closes bug #4676.
1135 1999-12-23 Havoc Pennington <hp@pobox.com>
1137 * gdk-pixbuf/io-gif.c (image_load): Stuff that should have been
1138 set to NULL here (specifically context->animation) was not being
1139 set to NULL. use g_new0() to alloc the struct.
1141 1999-12-20 Jonathan Blandford <jrb@redhat.com>
1143 * gdk-pixbuf/io-gif.c: finished work to make animated gifs load
1144 correctly. Progressive loading needs some work, but that all
1145 needs doing from the gdk-pixbuf-loader end, not here.
1147 1999-12-17 Jonathan Blandford <jrb@redhat.com>
1149 * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_animation_new_from_file):
1150 moved the file here. It seems natural to put this function here,
1151 as that's where the gdk_pixbuf_new_from_file function is, but it's
1152 still a little convoluted. The source files might be played with
1155 1999-12-14 Jonathan Blandford <jrb@redhat.com>
1157 * gdk-pixbuf/gdk-pixbuf-loader.c
1158 (gdk_pixbuf_loader_get_animation): Gets the animation from the
1161 1999-12-16 Federico Mena Quintero <federico@redhat.com>
1163 * doc/tmpl/rendering.sgml: Added notice about initializing GdkRGB
1164 before using the GdkPixbuf rendering functions. Thanks to Joe
1165 Shaw <joe@off.net> for pointing this out.
1167 1999-12-13 Federico Mena Quintero <federico@redhat.com>
1169 * gdk-pixbuf/gnome-canvas-pixbuf.c
1170 (gnome_canvas_pixbuf_class_init): Renamed arguments to
1171 width_in_pixels, height_in_pixels, x_in_pixels, y_in_pixels, for
1172 consistency with the new canvas.
1173 (PixbufPrivate): Do the same renaming in the structure fields, for
1176 * doc/tmpl/gnome-canvas-pixbuf.sgml: Updated for new argument names.
1178 1999-12-12 Federico Mena Quintero <federico@redhat.com>
1180 * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_LDFLAGS): Use a
1181 conditional to see whether to link $(GNOME_LIBS) or not.
1183 1999-12-10 Jonathan Blandford <jrb@redhat.com>
1185 * gdk-pixbuf/gdk-pixbuf-io.h: thinking about the new loading API.
1187 * gdk-pixbuf/gdk-pixbuf-drawable.c (gdk_pixbuf_get_from_drawable):
1188 make a warning go away.
1190 * gdk-pixbuf/gdk-pixbuf.h: added new prototypes for animations.
1192 * gdk-pixbuf/gdk-pixbuf-loader.h: added new prototypes for
1195 1999-12-09 Michael Zucchi <zucchi@zedzone.mmc.com.au>
1197 * gdk-pixbuf/gdk-pixbuf.h: Enable gdk_pixbuf_get_from_drawable()
1200 * gdk-pixbuf/gdk-pixbuf-drawable.c (gdk_pixbuf_get_from_drawable):
1201 Filled in body of function.
1202 (rgbconvert): Added GdkColormap parameter, and to all conversion
1204 (convert_real_slow): New function - should convert ANY visual/data
1205 format properly, but it aint fast. Used as a fallback when an
1206 optimised routine wont match.
1207 (rgbconvert): Do very specific tests on the data format to verify
1208 properly if the optimised version will do, otherwise use the
1209 fallback function for all other data formats.
1211 * gdk-pixbuf/Makefile.am: Re-enabled building of
1212 textpixbuf-drawable.
1214 * gdk-pixbuf/testpixbuf-drawable.c (main): Changed to use
1215 gdk_pixbuf_get_from_drawable().
1217 1999-12-08 Arjan van de Ven <arjan@fenrus.demon.nl>
1219 * gdk-pixbuf/gdk-pixbuf-drawable.c : Fixed the red/green/red
1220 bug on two occasions.
1221 * gdk-pixbuf/io-ras.c: Changed from the custom be32_to_cpu
1222 function to the generic glib one.
1224 1999-12-08 Federico Mena Quintero <federico@redhat.com>
1226 * gdk-pixbuf/gdk-pixbuf-drawable.c: Fix includes.
1227 (gdk_pixbuf_get_from_drawable): Implemented the zillion sanity
1228 checks and API definition. The body needs filling in and it needs
1229 to do the Right Thing(tm) for pixmaps plus the given colormap and
1230 windows and their own colormaps.
1232 * gdk-pixbuf/gdk-pixbuf.h: Added prototype for
1233 gdk_pixbuf_get_from_drawable(). Killed gdk-pixbuf-drawable.h.
1235 * gdk-pixbuf/Makefile.am: Re-added the gdk-pixbuf-drawable sources.
1237 * doc/tmpl/from-drawables.sgml: Populated.
1239 * doc/gdk-pixbuf.sgml: Added the from-drawables section.
1241 * doc/Makefile.am (tmpl_sources): Added tmpl/from-drawables.sgml.
1243 * doc/gdk-pixbuf-sections.txt: Added a section for getting pixbufs
1246 1999-12-07 Federico Mena Quintero <federico@redhat.com>
1248 * doc/tmpl/gnome-canvas-pixbuf.sgml: Added clarification about
1249 reference counting for GdkPixbuf structures.
1251 1999-12-07 Martin Baulig <martin@home-of-linux.org>
1253 * gdk-pixbuf/Makefile.am (testpixbuf_LDADD): Conditionally
1254 include $(GNOME_LIBS) here.
1256 1999-12-05 Arjan van de Ven <arjan@fenrus.demon.nl>
1258 Added missing "include <string.h>" to:
1259 * gdk-pixbuf/io-ras.c
1260 * gdk-pixbuf/io-bmp.c
1261 * gdk-pixbuf/io-ico.c
1263 1999-12-06 Federico Mena Quintero <federico@redhat.com>
1265 * gdk-pixbuf/gdk-pixbuf-io.c (file_formats): Patch from Arjan to
1268 1999-12-05 Federico Mena Quintero <federico@redhat.com>
1270 * gdk-pixbuf/Makefile.am (testpixbuf_LDADD): Add back
1271 $(GNOME_LIBS). This must compile outside of gnome-libs. If you
1272 want, send me a patch to do the conditional stuff properly.
1273 Otherwise, please read the GNOME Programming Guidelines,
1274 especially the "CVS policies" section.
1276 1999-12-05 Jaka Mocnik <jaka.mocnik@kiss.uni-lj.si>
1278 * gdk-pixbuf/Makefile.am: removed GNOME_LIBS from testpixbuf_LDADD.
1280 1999-12-05 Arjan van de Ven <arjan@fenrus.demon.nl>
1282 * gdk-pixbuf/io-ico.c: Bug in palet-size
1285 1999-12-04 Arjan van de Ven <arjan@fenrus.demon.nl>
1287 * gdk-pixbuf/io-bmp.c: Major cleanup, added support for
1288 32 bpp and 4 bpp (uncompressed) images, fixed 1bpp.
1290 * gdk-pixbuf/io-ras.c: Minor cleanup, ran through lclint
1292 * gdk-pixbuf/io-ico.c: Minor cleanup, fixed 1bpp icons,
1295 * gdk-pixbuf/gdk-pixbuf-io.c: Added detection of .CUR files
1296 (Windows Cursor files). These are identical to .ICO files,
1297 except for the signature and 2 extra fields for the hotspot.
1299 1999-12-03 Federico Mena Quintero <federico@redhat.com>
1301 * gdk-pixbuf/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_get_arg):
1302 Removed unused variable `item'.
1304 1999-12-03 Jonathan Blandford <jrb@redhat.com>
1306 * gdk-pixbuf/io-gif.c (gif_fill_in_lines): added a comment to
1307 explain this function better.
1309 1999-12-02 Federico Mena Quintero <federico@redhat.com>
1311 Source files moved from src/ to gdk-pixbuf/, to be consistent with
1314 * doc/Makefile.am: Modified for the new source directory.
1316 * configure.in: Likewise.
1318 * Makefile.am: Likewise.
1320 * autogen.sh: Likewise.
1322 * gdk-pixbuf/Makefile.am: Likewise.
1324 1999-12-02 Federico Mena Quintero <federico@redhat.com>
1326 * src/testpixbuf.c: #include <config.h>, and fix includes.
1328 * src/testpixbuf-drawable.c: #include <config.h>, and fix includes.
1330 * src/io-xpm.c: Fix includes.
1332 * src/io-tiff.c: Fix includes.
1334 * src/io-ras.c: Fix includes, and do not include more stuff than needed.
1336 * src/io-pnm.c: Fix inlcudes, and do not include more stuff than needed.
1338 * src/io-png.c: Fix includes.
1340 * src/io-ico.c: Fix includes, and do not include more stuff than needed.
1342 * src/io-gif.c: Fix includes, and do not include more stuff than needed.
1344 * src/io-bmp.c: Fix includes, and do not include more stuff than needed.
1346 * src/gnome-canvas-pixbuf.c: Fix includes.
1348 * src/gdk-pixbuf.c: Fix includes.
1350 * src/gdk-pixbuf-util.c: Fix includes.
1352 * src/gdk-pixbuf-render.c: Fix includes.
1354 * src/gdk-pixbuf-io.h: Fix includes.
1356 * src/gdk-pixbuf-drawable.c: Fix includes.
1358 * src/gdk-pixbuf-drawable.h: Use angle brackets for the gdk-pixbuf
1361 * src/gdk-pixbuf-data.c: Fix includes.
1363 * src/gdk-pixbuf-loader.c: #include <config.h>
1365 * src/gdk-pixbuf-loader.h: Use angle brackets for the gdk-pixbuf
1368 * src/Makefile.am: Commented out the gdk-pixbuf-drawable stuff,
1369 since it is not finished.
1371 * src/gdk-pixbuf.h: Removed unused transformation prototypes.
1373 * src/gdk-pixbuf-util.c: New file with utility and convenience
1374 functions for pixbufs.
1376 * src/Makefile.am (libgdk_pixbuf_la_SOURCES): Added gdk-pixbuf-util.c.
1378 * doc/gdk-pixbuf-sections.txt: Added section for utility functions.
1380 * doc/Makefile.am (tmpl_sources): Added tmpl/util.sgml.
1382 * doc/gdk-pixbuf.sgml: Added the utilities section.
1384 * doc/tmpl/util.sgml: Documentation for the utility functions.
1386 1999-11-29 Owen Taylor <otaylor@redhat.com>
1388 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
1389 Keep the mask around until after we draw ... since
1390 the GC changes aren't flushed to the X server until we
1391 draw, destroying it before that may result in BadPixmap
1394 1999-11-30 Havoc Pennington <hp@pobox.com>
1396 * configure.in: Add AM_CONDITIONAL for inside gnome-libs
1398 * src/Makefile.am: conditionalize GnomeCanvasPixbuf
1400 1999-11-29 Federico Mena Quintero <federico@redhat.com>
1402 * src/Makefile.am: Uncomment the GnomeCanvasPixbuf sources. This
1403 should be made conditional, not blindly commented out.
1405 1999-11-29 Jonathan Blandford <jrb@redhat.com>
1407 * src/Makefile.am (ICO_LIB): Added another loader from Arjan to
1408 handle .ico files. Cool.
1410 1999-11-24 Jonathan Blandford <jrb@redhat.com>
1412 * src/io-bmp.c (OneLine24): new patch from Arjan to handle
1415 1999-11-24 James Henstridge <james@daa.com.au>
1417 * configure.in (AC_OUTPUT): altered hack to place the symlink in the
1418 top builddir rather than src. This still builds fine, and does not
1419 get gtk-doc into an infinite loop when trying to find all the source
1422 1999-11-23 Jonathan Blandford <jrb@redhat.com>
1424 * Removed #PRAGMA } from headers. Also, make compile if you don't
1425 have it installed, already.
1427 1999-11-22 Federico Mena Quintero <federico@redhat.com>
1429 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_draw): Create the
1430 temporary buffer to the size of the interesction of the bounding
1431 box and the expose area, not the whole expose area. This speeds
1434 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_threshold_alpha): Do
1435 not paint black on the mask, since we already cleared it in a
1436 single gdk_draw_rectangle() operation.
1438 1999-11-22 Raja R Harinath <harinath@cs.umn.edu>
1440 * configure.in (GDK_PIXBUF_DIR): Fix for srcdir != builddir.
1442 1999-11-22 Havoc Pennington <hp@pobox.com>
1444 * src/Makefile.am (GDK_PIXBUF_LIBS): Patch from Paul Fisher
1445 <pnfisher@redhat.com> adds all -lgdk-pixbuf and all other
1446 dependencies to LIBADD variables for loadable modules. Necessary
1447 for a Java dynamic loading thing to be able to figure it out.
1449 1999-11-22 Havoc Pennington <hp@pobox.com>
1451 * src/io-png.c (image_load_increment): Call the update_area
1452 callback depending on the number of rows loaded in this increment.
1454 * src/testpixbuf.c (main): slow down the progressive load demo
1456 1999-11-16 Havoc Pennington <hp@pobox.com>
1458 * src/gdk-pixbuf-drawable.h: Get the quotes right on the #include
1460 1999-11-22 Jonathan Blandford <jrb@redhat.com>
1462 * configure.in (GDK_PIXBUF_DIR): make the symlink. Does not work
1463 for srcdir != buildir != . Beats me why; I can't figure it out.
1464 AC_OUTPUT_COMMANDS doesn't seem to let me substitute it correctly.
1466 1999-11-21 Jonathan Blandford <jrb@redhat.com>
1468 * src/gdk-pixbuf-io.c: added io-bmp from Arjan
1469 <arjan@fenrus.demon.nl>
1471 1999-11-20 Michael Zucchi <zucchi@zedzone.mmc.com.au>
1473 * src/gdk-pixbuf-drawable.c (gdk_pixbuf_from_drawable_core):
1474 Rework/reorder of the code. Each case has been separated into
1475 another function; its big but it should be quick.
1476 gdk_pixbuf_rgba_from_drawable() will now return a pixbuf with
1477 opaque alpha information. Not all depths/formats have been
1478 tested, but 8, 15/16 and 24 (alinged 32) should work ok.
1480 1999-11-17 Larry Ewing <lewing@gimp.org>
1482 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_bounds):
1483 implement the bounds method correctly.
1484 (compute_viewport_affine): compute the affine need to fit the
1485 image within the viewport given by the args.
1486 (compute_render_affine): call compute_viewport_affine.
1488 1999-11-16 Havoc Pennington <hp@pobox.com>
1490 * src/gdk-pixbuf-drawable.h: Use includes from the current
1491 directory, not the system directory.
1493 Mon Nov 15 17:18:28 1999 George Lebl <jirka@5z.com>
1495 * src/testpixbuf-drawable.c: use includes from the current directory
1496 rather then from the system include directory as gdk-pixbuf
1497 includes are not yet installed when this is compiled.
1499 1999-11-13 Cody Russell <bratsche@dfw.net>
1500 * src/testpixbuf-drawable.c: Added a test program for drawable
1503 * src/Makefile.am: Build testpixbuf-drawable.
1505 1999-11-12 Cody Russell <bratsche@dfw.net>
1507 * src/gdk-pixbuf-drawable.c: Merged in Michael Zucchi's changes.
1509 1999-11-10 Federico Mena Quintero <federico@redhat.com>
1511 * doc/tmpl/gdk-pixbuf-loader.sgml: Populated.
1513 * doc/gdk-pixbuf.signals: Put in the real names of signal
1516 * src/gdk-pixbuf-loader.c: Improved documentation comments.
1518 1999-11-10 Jonathan Blandford <jrb@redhat.com>
1520 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): emit the
1523 * src/io-ras.c (OneLineMapped_file): Now can handle indexing
1524 correctly. Patch from Arjan to do so.
1526 1999-11-10 Michael Fulbright <drmike@redhat.com>
1528 * src/io-pnm.c (pnm_ascii_read_scanline): Fixed loading of ASCII PNM
1531 * src/testpixbuf.c: Added final queued draw when done loading image.
1533 1999-11-10 Jonathan Blandford <jrb@redhat.com>
1535 * src/gdk-pixbuf-io.c (gdk_pixbuf_load_module): removed spurious
1538 1999-11-10 Federico Mena Quintero <federico@redhat.com>
1540 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): Added
1543 1999-11-09 Federico Mena Quintero <federico@redhat.com>
1545 * src/io-png.c: Fixed some incompatible pointer initializations.
1547 * src/io-jpeg.c (image_load_increment): Remove unused variable.
1549 1999-11-09 Michael Fulbright <drmike@redhat.com>
1551 * src/testpixbuf.c: Fixed it to use timeout to read from file
1552 for progressive loading. Set TBF_KBPS=n, where n is the number of
1553 kilobytes/second to simulate in downloading. n has to be an integer.
1555 * src/io-jpeg.c: Slight cosmetic cleanup.
1557 * src/io-pnm.c: Fixed raw PNM loading bug. Also discovered that ASCII
1558 PBM loading has a similar problem and will address tomorrow.
1560 1999-11-09 Havoc Pennington <hp@pobox.com>
1562 * src/Makefile.am (libgdk_pixbuf_la_SOURCES): build the
1563 gdk-pixbuf-drawable stuff.
1565 1999-11-09 Federico Mena Quintero <federico@redhat.com>
1567 * configure.in: Bumped version number to 0.4.
1569 1999-11-09 Michael Fulbright <drmike@redhat.com>
1571 * src/io-pnm.c : Finished progressive PNM loading code. Should handle
1572 all types of PNM files now.
1574 * src/io-jpeg.c (image_load_increment): Figured out problem with
1575 loading Progressive JPEG's progressively (say that 10 times fast).
1576 Currently for Progressive JPEG's the entire image is loaded before
1577 it is displayed. libjpeg supports a fancier mechanism which I may
1580 With these changes all JPEG formats appear to load properly for me.
1582 1999-11-08 Jonathan Blandford <jrb@redhat.com>
1584 * src/io-ras.c (image_load_increment): Final patch from Arjan.
1585 Seems to do progressive loading.
1587 1999-11-08 Michael Fulbright <drmike@redhat.com>
1589 * src/io-pnm.c image_load (): Fixed so we do not create a separate
1590 pixel buffer when reading in image - we reuse the pixel data in
1591 the GdkPixbuf structure instead.
1593 1999-11-08 Michael Fulbright <drmike@redhat.com>
1595 * src/io-pnm.c pnm_read_ascii_scanline (): Added support for
1596 ASCII PNM files. Note I haven't tested loaded ASCII PBM files because
1597 I can't seem to find a utility to convert into this format.
1598 Next is to add progressive loading support for the PNM format.
1600 1999-11-07 Federico Mena Quintero <federico@redhat.com>
1602 * doc/tmpl/gnome-canvas-pixbuf.sgml: Finished detailed explanation
1603 of the width, height, x, and y setting and pixels arguments.
1605 1999-11-05 Jonathan Blandford <jrb@redhat.com>
1607 * src/io-ras.c (image_load): third patch. Now it seems to load.
1609 * src/gdk-pixbuf-io.c: second patch Arjan van de Ven
1610 <arjan@fenrus.demon.nl> to autodetect/load the sunras files.
1612 * src/io-ras.c (image_load): new file from Arjan van de Ven
1613 <arjan@fenrus.demon.nl> to begin the ras loader.
1615 1999-11-05 Federico Mena Quintero <federico@redhat.com>
1617 * doc/gdk-pixbuf-sections.txt: Removed gdk-pixbuf-io, since it is
1618 for internal use only.
1620 * doc/gdk-pixbuf.sgml: Likewise.
1622 * doc/tmpl/gnome-canvas-pixbuf.sgml: Finished docs.
1624 1999-11-05 Michael Fulbright <drmike@redhat.com>
1626 * src/io-pnm.c: Implemented support for reading raw PBM/PGM/PPM
1627 files from a file. Next step is support for ASCII files, and
1628 then incremental loading.
1630 1999-11-04 Federico Mena Quintero <federico@redhat.com>
1632 * Makefile.am: Added doc to SUBDIRS.
1634 1999-11-04 Michael Fulbright <drmike@redhat.com>
1636 * src/io-jpeg.c: Prettied up code slightly.
1637 * src/io-pnm.c: Start of pnm loader (from file and progressively).
1638 Doesn't do much yet (will finish tomorrow).
1639 * src/gdk-pixbuf-io.c: Added pnm to structure of known types.
1641 1999-11-04 Federico Mena Quintero <federico@redhat.com>
1643 * doc/tmpl/rendering.sgml: Populated.
1645 * doc/Makefile.am: Added the template files.
1647 1999-11-04 Havoc Pennington <hp@pobox.com>
1649 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable): In
1650 docs, explain what a dither offset is for.
1651 (gdk_pixbuf_render_to_drawable_alpha): Explain why you would use
1652 this function vs. gdk_pixbuf_render_to_drawable().
1654 1999-11-04 Havoc Pennington <hp@pobox.com>
1656 * configure.in: Use libart-config correctly; find gnome-config
1657 separately. Fix GNOME_LIBS to be correct in "no gnome installed
1660 * src/Makefile.am: Link to GNOME_LIBS instead of a hardcoded
1663 Patch untested in the inside-gnome-libs case, I need to commit
1664 then check out to the gnome-libs I'm using.
1666 1999-11-04 Michael Fulbright <drmike@redhat.com>
1668 * src/io-jpeg.c (image_begin_load): Add update_func callback.
1669 * src/io-jpeg.c (image_load_increment): Call updated callback when
1670 new graphic data decoded.
1672 1999-11-04 Jonathan Blandford <jrb@redhat.com>
1674 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_update): handle the
1676 * src/io-png.c (image_begin_load): add a update_func callback.
1677 * src/io-gif.c (image_begin_load): add a update_func callback.
1678 (gif_get_lzw): added the update_func ability
1680 * src/io-tiff.c (image_begin_load): add a update_func callback.
1682 1999-11-04 Federico Mena Quintero <federico@redhat.com>
1684 * doc/tmpl/gdk-pixbuf.sgml: Populated.
1686 * doc/tmpl/refcounting.sgml: Populated.
1688 * doc/tmpl/file-loading.sgml: Populated.
1690 * src/gdk-pixbuf.c: Added documentation comments.
1692 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_file): Added
1693 documentation comments.
1695 * doc/: Finished integrating the documentation framework.
1697 1999-11-03 Federico Mena Quintero <federico@redhat.com>
1699 * configure.in: Removed libgif stuff now that we do not depend on it.
1700 Added the necessary cruft for gtk-doc.
1702 * src/Makefile.am: Unconditionally build the GIF loader.
1704 1999-11-03 Jonathan Blandford <jrb@redhat.com>
1706 * src/io-gif.c (gif_read): renamed ReadOK to gif_read.
1707 Added a lot of comments to the file.
1709 * src/Makefile.am (libpixbuf_gif_la_LIBADD): Remove dependency on
1712 1999-11-03 Michael Fulbright <drmike@redhat.com>
1714 * src/io-jpeg.c (image_load_increment): Further removal of
1715 bugginess in local buffering code. Handles grayscale jpegs
1718 * src/io-jpeg.c (image_load_stop): Was freeing local context
1719 for jpeg library before calling jpeg_decompres_finish ().
1721 1999-11-03 Jonathan Blandford <jrb@redhat.com>
1723 * src/io-gif.c (image_load_increment): now handle arbitrary buffer
1725 (gif_get_lzw): set the transparency to the right val.
1727 1999-11-03 Federico Mena Quintero <federico@redhat.com>
1729 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_init):
1730 Initiailize the x and y fields.
1731 (gnome_canvas_pixbuf_destroy): Queue a redraw upon destruction.
1732 (PixbufPrivate): Renamed need_size_update to need_xform_update.
1733 (recompute_bounding_box): Do not use temporary values.
1735 1999-11-03 Jonathan Blandford <jrb@redhat.com>
1737 * src/io-gif.c (set_gif_lzw_clear_code): new state. Fixes
1740 * src/gnome-canvas-pixbuf.c (recompute_bounding_box): remove
1741 unneeded x,y,h,w vars.
1743 1999-11-03 Larry Ewing <lewing@gimp.org>
1745 * src/gnome-canvas-pixbuf.c (compute_render_affine): adjust
1746 render_affine calculation for x,y offsets.
1747 (gnome_canvas_pixbuf_set_arg): add x,y args.
1748 (gnome_canvas_pixbuf_get_arg): add x,y args.
1749 (recompute_bounding_box): simply code using ArtDrect and the
1750 render_affine. Removed compute_xform_vectors as it was no longer
1753 1999-11-03 Federico Mena Quintero <federico@redhat.com>
1755 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_point): I'm a
1756 doofus. Return a distance, not a boolean, for opaque images.
1758 * src/gnome-canvas-pixbuf.c (recompute_bounding_box): Do proper
1759 rounding of bounding box coordinates.
1760 (gnome_canvas_pixbuf_bounds): Implemented the ::bounds() method.
1761 (gnome_canvas_pixbuf_draw): Use the correct alpha threshold value.
1763 1999-11-03 Jonathan Blandford <jrb@redhat.com>
1765 * src/io-gif.c (gif_prepare_lzw): s/lwz/lzw/g
1767 1999-11-03 Michael Fulbright <drmike@redhat.com>
1769 * src/io-jpg.c (image_load_increment): Fixed code which moved
1770 buffer around as new data comes in to work properly. JPEG progressive
1771 loading should be working now except for grayscale JPEG's, which I
1772 will look into next.
1774 1999-11-03 <sopwith@redhat.com>
1775 * src/testpixbuf.c: A GtkFunction needs to return a value for deterministic behaviour.
1776 Also put dot printing back in.
1778 1999-11-03 <jrb@redhat.com>
1780 * src/io-gif.c (gif_get_extension): Read 'til the next empty block
1783 1999-11-02 Cody Russell <bratsche@dfw.net>
1784 * src/gdk-pixbuf-drawable.c: Changed the behavior to return NULL
1785 if part of the requested image is offscreen, rather than clipping
1788 1999-11-02 Jonathan Blandford <jrb@redhat.com>
1790 * src/io-gif.c (gif_fill_in_lines): Fill in the gif's blank areas
1791 for interlacing and progressive loading.
1793 1999-11-02 Cody Russell <bratsche@dfw.net>
1794 * src/gdk-pixbuf-drawable.c (gdk_pixbuf_from_drawable_core): Now
1795 calls gdk_pixbuf_new_from_art_pixbuf() instead of gdk_pixbuf_new().
1797 1999-11-02 Jonathan Blandford <jrb@redhat.com>
1799 * src/io-gif.c (gif_main_loop): Now progressive gif loading works!
1800 It's a little slow though. )-:
1802 1999-11-02 Elliot Lee <sopwith@redhat.com>
1803 * src/gdk-pixbuf-loader.[ch], src/gdk-pixbuf-io.h: Make the arguments to the
1804 write/load_increment operations const-correct.
1806 1999-11-02 Federico Mena Quintero <federico@redhat.com>
1808 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_point):
1809 Implemented the ::point() method. We do a simple containment test
1810 instead of a full distance calculation since the canvas is going
1811 to change to that scheme, anyways.
1813 1999-11-02 Elliot Lee <sopwith@redhat.com>
1815 * src/testpixbuf.c: Allow using $TBF_READLEN to specify the size of the chunks
1816 that are read from the input file.
1818 1999-11-02 Larry Ewing <lewing@gimp.org>
1820 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_render): add aa
1822 (gnome_canvas_pixbuf_class_init): add gnome_canvas_pixbuf_render
1825 1999-11-02 Federico Mena Quintero <federico@redhat.com>
1827 * src/gnome-canvas-pixbuf.c (compute_render_affine): Moved the
1828 affine computation code from ::draw() to here, since it is needed
1829 by ::point() as well.
1831 1999-11-02 Elliot Lee <sopwith@redhat.com>
1833 * src/gdk-pixbuf-loader.c: Reorganize gdk_pixbuf_loader_write into
1834 three functions, and eliminate duplication of code from write()
1835 and close(). Also fix bug where the 128-byte header was being
1838 1999-11-01 Federico Mena Quintero <federico@redhat.com>
1839 * src/gnome-canvas-pixbuf.c (recompute_bounding_box): Fixed
1840 bounding box computation.
1842 1999-11-01 Federico Mena Quintero <federico@redhat.com>
1844 * src/gnome-canvas-pixbuf.c: Start of the pixbuf canvas item.
1845 Drawing affines seem to work. Bounding box is fubared. ::point()
1846 is not implemented. This is a work in progress.
1848 * src/Makefile.am: Added gnome-canvas-pixbuf.[ch] to the list of
1851 * configure.in: Sigh. We need to link in libgnomeui for the
1852 canvas stuff. This mess will disappear when gdk-pixbuf gets
1853 folded into gnome-libs.
1855 1999-10-30 Jonathan Blandford <jrb@redhat.com>
1857 * src/io-gif.c: Some more work. Now it generates a gdk_pixbuf of
1858 the right size, at a minimum, even if the image is squished and
1860 (ReadImage): lets get the offset right. This will let transparent
1863 1999-10-29 Michael Fulbright <drmike@redhat.com>
1865 * src/io-jpeg.c: image_load_increment(): Fixed bug when
1866 image width was not a multiple of 4 - always use the
1867 gdk_pixbuf rowstride to increment pointers!
1869 1999-10-29 Michael Fulbright <drmike@redhat.com>
1871 * src/io-jpeg.c: Added first cut at progressive jpeg loading.
1872 Currently does not handle either progressive jpeg files (jpeg
1873 files with multiple scans at different quality settings), but
1874 I plan on adding this support soon. These are fairly rare in
1875 my experience, so it shouldn't slow people down too much.
1876 Grayscale jpegs also don't work but that should be easy to fix.
1878 1999-10-29 Michael Fulbright <drmike@redhat.com>
1880 * src/testpixbuf.c: Added title to windows so you can identify
1881 progressive and file windows.
1883 1999-10-29 Michael Fulbright <drmike@redhat.com>
1885 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): Actually
1886 load the image handler when we determine the image type.
1888 * src/gdk-pixbuf-io.[ch] (gdk_pixbuf_load_module): Changed the
1889 previously static function load_image_handler () to
1890 a public function gdk_pixbuf_load_module (). It is needed in
1891 gdk-pixbuf-loader.c to load image handler modules. This function
1892 is different from gdk_pixbuf_get_module (), which only returns
1893 a reference to the required handler, because it actually loads
1894 the handler into memory. Both actions should possibly be combined
1895 in a convenience function since one w/o the other doesn't seem to
1898 1999-10-28 Jonathan Blandford <jrb@redhat.com>
1900 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): don't send a
1903 1999-10-28 Federico Mena Quintero <federico@redhat.com>
1905 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable): New
1906 function to render a portion of a pixbuf to a drawable. Ignores
1907 alpha information and takes in a GC.
1908 (gdk_pixbuf_render_to_drawable_alpha): New function to render a
1909 portion of a pixbuf to a drawable. It automatically creates a GC
1910 and a clipping mask for alpha pixbufs.
1912 1999-10-28 Jonathan Blandford <jrb@redhat.com>
1914 * src/gdk-pixbuf.h: turned convenience macros into convenience
1915 functions so some error checking could be added.
1917 * src/io-tiff.c (image_load_increment): started work on the tiff
1918 non-incremental loader.
1919 (image_begin_load): Finished the incremental loader.
1921 * src/io-gif.c (image_load_increment): started work on the gif
1924 * src/gdk-pixbuf-io.h: Changed ModuleType to GdkPixbufModule.
1926 1999-10-27 Federico Mena Quintero <federico@redhat.com>
1928 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_threshold_alpha): New
1929 function to threshold a pixbuf's alpha channel into a bitmap.
1931 * src/gdk-pixbuf.c (gdk_pixbuf_new): Fixed so that it will
1932 contemplate future extensions to ArtPixBuf's formats.
1934 * src/io-png.c (png_info_callback): Use the new API of gdk_pixbuf_new().
1936 * src/gdk-pixbuf.h (gdk_pixbuf_get_height): Added some convenience
1937 macros to fetch the ArtPixBuf's fields.
1939 1999-10-27 Havoc Pennington <hp@pobox.com>
1941 * src/testpixbuf.c (main): Display the progressive load
1943 * src/io-png.c (setup_png_transformations): Break transformation
1944 code into separate function
1945 (png_info_callback): Use setup_png_transformations
1947 1999-10-27 Havoc Pennington <hp@pobox.com>
1949 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): Check
1950 properly whether the XPM module has already been loaded
1951 (gdk_pixbuf_new_from_file): Check properly if loader module
1952 was already loaded (was checking if load symbol was present
1953 in order to decide whether to re-load; should check module !=
1954 NULL, then load != NULL)
1955 (image_handler_load): Check in present working directory,
1956 makes it easier to debug for now
1957 (file_formats): This array initializer was seriously on crack,
1958 was assigning a function pointer to a GModule*
1960 * src/testpixbuf.c (main): Change type of pixbuf_loader to GdkPixbufLoader*
1962 1999-10-27 Havoc Pennington <hp@pobox.com>
1964 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_finalize):
1965 Fix typo that prevented compilation
1966 (gdk_pixbuf_loader_destroy): ditto
1968 1999-10-27 Federico Mena Quintero <federico@redhat.com>
1970 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_new): Return a
1971 GdkPixbufLoader, not a GtkObject.
1972 (gtk_marshal_NONE__INT_INT_INT_INT): Made static.
1973 (gdk_pixbuf_loader_get_type): Documented.
1974 (gdk_pixbuf_loader_class_init): Initialize the parent class
1976 (gdk_pixbuf_loader_destroy): Added sanity checks. Call the parent
1977 class destroy function.
1978 (gdk_pixbuf_loader_new): Documented.
1979 (gdk_pixbuf_loader_finalize): Call the parent class finalize
1981 (gdk_pixbuf_loader_write): Use size_t for count.
1983 1999-10-27 Michael Fulbright <drmike@redhat.com>
1985 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_destroy): Fixed
1986 logic so we only try to close loader if it wasn't previously closed.
1988 1999-10-27 Michael Fulbright <drmike@redhat.com>
1990 * src/gdk-pixbuf-loader.c: Made sure image_loader struct member of
1991 pixbuf_loader properly initialized.
1993 * src/testpixbuf.c: Made sure we cleanup pixbuf_loader properly
1996 1999-10-26 Jonathan Blandford <jrb@redhat.com>
1998 * src/gdk-pixbuf-io.c (image_handler_load): load the vtable fully.
2000 * src/gdk-pixbuf-loader.c: Finished initial cut at the object.
2002 1999-10-26 Havoc Pennington <hp@pobox.com>
2004 * src/gdk-pixbuf-loader.h: fix signals
2006 * src/gdk-pixbuf-io.h: add new vtable fields
2009 1999-10-26 Jonathan Blandford <jrb@redhat.com>
2011 * src/gdk-pixbuf-loader.h: New Class. Beginning of progrssive
2014 1999-10-25 Federico Mena Quintero <federico@redhat.com>
2016 * configure.in (CFLAGS): Patch from Uwe Koloska
2017 <koloska@Rcs1.urz.tu-dresden.de> to fix a stupid typo of mine.
2019 1999-10-22 Havoc Pennington <hp@pobox.com>
2021 * src/io-xpm.c (mem_buffer): Clean up stupid
2022 increment-inside-array-dereference thing
2024 * src/testpixbuf.c: Add XPM data tests.
2026 * src/io-xpm.c: Make the XPM data buffer const, fix const
2027 correctness throughout the code.
2029 1999-10-22 Havoc Pennington <hp@pobox.com>
2031 * src/gdk-pixbuf.h: Export gdk_pixbuf_new_from_xpm_data()
2033 1999-10-22 Havoc Pennington <hp@pobox.com>
2035 * src/io-xpm.c (image_load_xpm_data): Export this symbol for
2036 loading an XPM from memory.
2038 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): New
2039 function, loads pixbuf from xpm data
2040 (image_handler_load): Add g_return_if_fail() to ensure the same
2041 module isn't loaded twice. Add g_module_symbol() to scan for XPM
2044 1999-10-22 Federico Mena Quintero <federico@redhat.com>
2046 * src/io-png.c (image_load): Patch from Kristian Hogsberg
2047 Kristensen <hogsberg@daimi.au.dk> to avoid allocating extra row
2048 buffers; the rows can be read in directly into the main pixel
2051 1999-10-20 Federico Mena Quintero <federico@redhat.com>
2053 * src/gdk-pixbuf-io.c (image_handler_load): Free path.
2055 1999-10-20 Federico Mena Quintero <federico@redhat.com>
2057 * configure.in: Bumped version number to 0.3.
2059 * src/Makefile.am (lbgdk_pixbuf_la_LDFLAGS): Added a libtool
2060 version number for the library.
2062 1999-10-20 Federico Mena Quintero <federico@redhat.com>
2064 * src/gdk-pixbuf.h (GdkPixbuf): Removed the unref_fn field. Now
2065 all memory management of the buffer is done by libart.
2067 * src/gdk-pixbuf.c (gdk_pixbuf_unref): Do destruction here.
2068 Removed gdk_pixbuf_destroy, gdk_pixbuf_duplicate.
2070 * src/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Implemented in
2071 terms of the libart functions. Removed the old code.
2073 * src/gdk-pixbuf-io.c (image_handler_load): Removed the save
2074 symbols. Saving will not be implemented in GdkPixbuf.
2076 * src/io-gif.c: Removed the saving stub.
2077 (image_load): Fixed memory management to fail gracefully if we run
2078 out of memory while loading the image. Close the gif file when we
2079 are done. This still needs more error handling for the DGif
2082 * src/io-jpeg.c (image_load): Some robustness fixes.
2084 * src/io-png.c: Removed the saving stuff.
2085 (image_load): Some memory management fixes.
2087 * src/io-tiff.c (image_load): Ditto.
2089 * src/io-xpm.c (pixbuf_create_from_xpm): Ditto.
2091 1999-10-18 Havoc Pennington <hp@pobox.com>
2093 * subautogen.sh: New name for macros/autogen.sh
2095 * autogen.sh: use subautogen.sh
2097 1999-10-18 Federico Mena Quintero <federico@redhat.com>
2099 * src/*: Reindented to use the GNOME Indentation. Renamed
2100 GdkPixBuf to GdkPixbuf, for consistency with the function names
2101 (and it is also easier to type) :-)
2103 1999-10-18 Havoc Pennington <hp@pobox.com>
2105 * configure.in: Use AM_PATH_GLIB instead of glib-config directly
2107 * src/Makefile.am: Re-enable testpixbuf with GTK_CFLAGS/GTK_LIBS
2109 1999-10-18 Havoc Pennington <hp@pobox.com>
2111 * Makefile.am (SUBDIRS): Remove "macros"
2113 * configure.in: Don't use GNOME_INIT, handle case where we are
2114 inside gnome-libs. AM_PATH_GTK for the GIF test
2116 * src/Makefile.am: Change flags to work without libgnomeui,
2117 comment out testpixbuf for now
2119 1999-10-18 Federico Mena Quintero <federico@redhat.com>
2121 * configure.in: Use $GTK_LIBS as the extra libs when checking for
2122 libgif/libungif, as they need the X libraries. Fixes bug #2472.
2124 1999-10-10 Cody Russell <bratsche@dfw.net>
2125 * src/gdk-pixbuf-drawable.c: core function now determines whether
2126 the requested geometry is on screen or not, and if some is not
2127 then the request is clamped to geometry that is on the screen.
2129 Changed 'pixbuf' to 'art_pixbuf' in core function.
2131 1999-10-08 Michael Fulbright <drmike@redhat.com>
2133 * src/gdk-pixbuf-data.c: Added to load rgb data from const data.
2135 * src/testpifbuf: Changed test program to display cdrom from rgb data
2136 if no filename given to test program.
2138 1999-10-07 Cody Russell <bratsche@dfw.net>
2139 * src/gdk-pixbuf-drawable.[ch]: Added. (Actually, Miguel committed
2140 them, but I wrote them).
2142 * src/gdk-pixbuf-drawable.h: Added a missing ; so things will now
2145 * src/Makefile.am: Added gdk-pixbuf-drawable.[ch] to
2146 libgdk_pixbuf_la_SOURCES and libgdk_pixbufinclude_HEADERS.
2148 * src/gdk-pixbuf-drawable.c: Added #include "gdk-pixbuf-drawable.h"
2151 * src/gdk-pixbuf-drawable.[ch]: Changed functions to return
2152 GdkPixBuf* instead of ArtPixBuf*.
2154 1999-09-22 Michael Meeks <michael@nuclecu.unam.mx>
2156 * src/gdk-pixbuf.c (gdk_pixbuf_new): created.
2157 (gdk_pixbuf_scale): use gdk_pixbuf_new + return a new scaled image.
2159 * src/gdk-pixbuf.h (struct _GdkPixBuf): Re-organise struct, + add
2160 GdkPixBufUnrefFunc + gdk_pixbuf_new.
2162 * src/io-jpeg.c (image_load): clean to use gdk_pixbuf_new.
2164 * src/io-xpm.c (_pixbuf_create_from_xpm): ditto.
2166 * src/io-tiff.c (image_load): ditto + fix leak
2168 * src/io-png.c (image_load): ditto + add more exit points; monitor.png
2169 crashes this module ( add warning :-)
2171 * src/io-bmp.c (image_load): ditto.
2173 * src/io-gif.c (image_load): ditto.
2175 1999-09-18 Michael Meeks <michael@nuclecu.unam.mx>
2177 * src/gdk-pixbuf.c (gdk_pixbuf_scale): Hack rgba support in so
2178 it doesn't crash scaling with alpha.
2180 1999-09-17 Federico Mena Quintero <federico@redhat.com>
2182 * src/io-bmp.c (image_load): Set the initial ref_count to 1.
2184 * src/io-gif.c (image_load): Likewise.
2186 * src/io-jpeg.c (image_load): Likewise.
2188 * src/io-png.c (image_load): Likewise.
2190 * src/io-tiff.c (image_load): Likewise.
2192 * src/io-xpm.c (_pixbuf_create_from_xpm): Likewise.
2194 * src/gdk-pixbuf-io.c (gdk_pixbuf_load_image): Added an assertion
2195 for the ref_count to be != 0.
2197 * src/gdk-pixbuf.c (gdk_pixbuf_ref): Be more paranoid with sanity
2199 (gdk_pixbuf_unref): Fix incorrect sanity check and comparison.
2201 1999-08-09 Federico Mena Quintero <federico@nuclecu.unam.mx>
2203 * src/io-png.c (image_save): Fixed compiler warnings. Fixed write
2204 to unallocated memory (row_ptr), and fixed its type as well. Take
2205 into account the ArtPixbuf's rowstride when assigning the row
2208 * src/gdk-pixbuf.c: Fixup includes.
2210 * src/gdk-pixbuf-io.c: Likewise.
2212 Sat Jul 31 19:19:47 CEST 1999
2214 * src/gdk-pixbuf-io.c:
2215 * src/io-png.c: Fixed two obvious C syntax bugs
2217 1999-07-29 Mark Crichton <crichton@gimp.org>
2219 * src/io-png.c (image_save): Added PNG saving function
2221 * src/gdk-pixbuf-io.c: Changed image_save function format. Now it's
2222 image_save(GdkPixBuf *p, FILE *f, ...)
2225 1999-07-26 Michael Zucchi <mzucchi@denr.sa.gov.au>
2227 * src/Makefile.am (*_LIB): Only build the relevant loaders which
2228 require extra libraries if we actually have those libraries.
2230 1999-07-23 Richard Hestilow <hestgray@ionet.net>
2232 * src/gdk-pixbuf.h: Include glib.h as it uses g* datatypes
2233 * gdk_pixbufConf.sh.in: Added for gnome-config
2235 * configure.in: Modified to generate gdk_pixbufConf.sh
2237 1999-07-20 Mark Crichton <crichton@gimp.org>
2239 * src/gdk-pixbuf.c (gdk_pixbuf_rotate): Fixed rotation. Now a bbox
2240 calculation needs to be done.
2242 1999-07-18 Larry Ewing <lewing@gimp.org>
2247 * src/io-jpeg.c: Fix a few memory leaks in the, most of them in
2248 error cases but one or two in the common case. There are probably
2249 a few small ones left.
2251 1999-07-18 Mark Crichton <crichton@gimp.org>
2253 * configure.in: removed version.h.
2255 * src/gdk-pixbuf-io.c (pixbuf_check_tiff): Minor readability
2258 1999-07-17 Mark Crichton <crichton@gimp.org>
2260 * src/gdk-pixbuf.c: Removed gdk_pixbuf_free, redundant code.
2261 (gdk_pixbuf_rotate): Added pixbuf rotation code.
2262 (gdk_pixbuf_scale): Changed // comments to /* */
2264 * src/gdk-pixbuf.h (gdk_pixbuf_destroy): Added gdk_pixbuf_destroy
2267 1999-07-16 Larry Ewing <lewing@gimp.org>
2269 * src/testpixbuf.c (expose_func): reverted the expose everything
2270 changes, I'm not sure why these went in.
2271 (config_func): bring this up to date with the new pixbuf_scale
2274 * src/gdk-pixbuf-io.c: added a couple of warnings to the module
2275 loading code so that poeple can diagnose problems better.
2277 * src/gdk-pixbuf.c (gdk_pixbux_scale): fix the borkedness, also it
2278 no longer allocates a new pixbuf, which make things nicer for the
2279 rest of the code. Unfortunately there is still a problem with
2280 scaling rgba images.
2282 1999-07-16 Mark Crichton <crichton@gimp.org>
2284 * src/testpixbuf.c (config_func): ConfigureEvent handler. This
2285 calls gdk_pixbuf_scale. However, something is not working.
2286 N.B.: current pixmap is now stored in user_data with a key of
2289 * src/gdk-pixbuf.c (gdk_pixbuf_scale): Implemented scaling function.
2290 Something is still borked, however.
2292 1999-07-15 Larry Ewing <lewing@gimp.org>
2294 * src/io-jpeg.c (image_load): add raph@gimp.org's fix to the jpeg
2297 * src/testpixbuf.c (main): fix up the file routines a little so
2298 that you can load multiple files given the file names
2300 1999-07-14 Larry Ewing <lewing@gimp.org>
2302 * src/testpixbuf.c (expose_func): added an almost proper expose
2303 handler for testpixbuf
2305 1999-07-13 Mark Crichton <crichton@gimp.org>
2307 * configure.in: Fixed GIF check. Replaced " with '
2308 * src/gdk-pixbuf.c: More (minor) work on gdk_pixbuf_scale
2310 1999-07-13 Mark Crichton <crichton@gimp.org>
2312 * configure.in: I am a bonehead. Added gif-lib check.