1 2002-11-28 Matthias Clasen <maclas@gmx.de>
3 * gdk-pixbuf/gdk-pixbuf-io.c:
4 * gdk-pixbuf/gdk-pixbuf-loader.c:
5 * gdk-pixbuf/gdk-pixbuf.c: Document 2.2 API additions. I'm not
6 going to list all individual functions here; if you want to see
7 the list, grep for "Since: 2.2".
9 Fri Nov 8 19:06:07 2002 Owen Taylor <otaylor@redhat.com>
11 * Makefile.am (gdk-pixbuf.loaders): Make gdk-pixbuf.loaders
12 file depend on the loaders (#97096, Jeff Waugh)
14 Wed Nov 6 15:19:53 2002 Owen Taylor <otaylor@redhat.com>
16 * io-gif.c (CHECK_LZW_SP): Fix trailing semicolon on macro,
19 2002-11-05 Matthias Clasen <maclas@gmx.de>
21 * gdk-pixbuf-loader.c: Reindent to follow the gdk-pixbuf indentation.
23 Tue Nov 5 14:16:17 2002 Owen Taylor <otaylor@redhat.com>
25 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Fix
26 leaked pixbuf reference (#96823, Morten Welinder)
28 2002-10-23 Matthias Clasen <maclas@gmx.de>
30 * io-gif.c (lzw_read_byte): Check for stack overflow throughout.
33 2002-10-21 Matthias Clasen <maclas@gmx.de>
35 Support the Netscape application extension for gif animations
39 * io-gif-animation.c (gdk_pixbuf_gif_anim_iter_advance):
40 Add loop count to GdkPixbufGifAnim and use it in the advance
41 method of GdkPixbufGifAnimIter.
43 * io-gif.c (gif_get_extension): Parse Netscape application
44 extension block and set the animation loop count.
46 2002-10-11 Matthias Clasen <maclas@gmx.de>
48 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_format): Remove
51 * gdk-pixbuf-io.h: Remove unused typedef
52 GdkPixbufModuleGetSignatureFunc.
54 2002-10-04 jacob berkman <jacob@ximian.com>
56 * queryloaders.c (query_module): make legal C
58 2002-10-04 Matthias Clasen <maclas@gmx.de>
60 * Makefile.am gdk-pixbuf-animation.c gdk-pixbuf-data.c
61 gdk-pixbuf-io.c gdk-pixbuf-io.h gdk-pixbuf-loader.c
62 gdk-pixbuf-loader.h gdk-pixbuf-private.h gdk-pixbuf.h
63 gdk-pixdata.c io-ani-animation.h io-ani.c io-bmp.c
64 io-gif-animation.c io-gif-animation.h io-gif.c io-ico.c
65 io-jpeg.c io-png.c io-pnm.c io-ras.c io-tga.c io-tiff.c
66 io-wbmp.c io-xbm.c io-xpm.c pixbufloader_ani.def
67 pixbufloader_bmp.def pixbufloader_gif.def pixbufloader_ico.def
68 pixbufloader_jpeg.def pixbufloader_png.def
69 pixbufloader_pnm.def pixbufloader_ras.def pixbufloader_tga.def
70 pixbufloader_tiff.def pixbufloader_wbmp.def
71 pixbufloader_xbm.def pixbufloader_xpm.def test-gdk-pixbuf.c
72 gdk-pixbuf-animation.h queryloaders.c: Support for separately
73 installed loaders. (#77486)
75 Thu Oct 3 18:25:57 2002 Owen Taylor <otaylor@redhat.com>
77 * io-jpeg.c (gdk_pixbuf__jpeg_image_save):
78 Fix memory leak. (#94399)
80 Tue Oct 1 17:35:43 2002 Owen Taylor <otaylor@redhat.com>
82 * gdkpixdata.c: Patch from Andy Wingo to always
83 escape ? to avoid accidentally generating trigraphs
84 in the output (#94631)
86 2002-09-28 Tor Lillqvist <tml@iki.fi>
88 * pixops/*.S: Don't use .type on Cygwin, either (#91597, Masahiro
91 2002-09-27 Federico Mena Quintero <federico@ximian.com>
93 * io-ico.c (gdk_pixbuf__ico_image_begin_load): Free the context if
94 we cannot allocate the HeaderBuf.
96 2002-09-27 Federico Mena Quintero <federico@ximian.com>
98 * io-bmp.c (OneLine): Fix the update region notification to handle
99 top-to-bottom and bottom-to-top BMPs correctly.
101 2002-09-19 Matthias Clasen <maclas@gmx.de>
103 * Revert the previous change; the symbols need to be exported
104 to be usable from dlopened modules.
106 2002-09-18 Matthias Clasen <maclas@gmx.de>
108 * io-xpm.c, io-xbm.c, io-ico.c, io-ani.c, io-png.c,
109 gdk-pixbuf.c, gdk-pixbuf-animation.c, gdk-pixbuf-loader.c,
110 gdk-pixbuf-private.h: _-prefix gdk_pixbuf_non_anim_new and
111 gdk_pixbuf_set_option. Adjust all callers.
113 2002-09-14 Hans Breuer <hans@breuer.org>
115 * pixops/Makefile.am : added makefile.msc to EXTRA_DIST
117 2002-09-12 Matthias Clasen <maclas@gmx.de>
119 * io-gif-animation.h:
120 * gdk-pixbuf.h: Move GdkPixbufFrame from the public header to
121 the gif-animation-specific private header. (#91929)
123 2002-09-12 Federico Mena Quintero <federico@ximian.com>
125 * io-jpeg.c (gdk_pixbuf__jpeg_image_load): Unref the pixbuf if we
126 hit an unsupported colorspace.
128 2002-09-06 Matthias Clasen <maclas@gmx.de>
130 * io-ani.c, io-ani-animation.h, io-ani-animation.c,
131 pixbufloader_ani.def, Makefile.am, gdk-pixbuf-io.c: New loader,
134 * io-xpm.c (pixbuf_create_from_xpm):
135 * io-xbm.c (gdk_pixbuf__xbm_image_load_real):
136 * io-ico.c (DecodeHeader): Attach hotspot coordinates to the
137 pixbuf as options "x_hot" and "y_hot".
139 2002-09-04 Matthias Clasen <maclas@gmx.de>
141 * io-tga.c (io_buffer_append):
142 * io-ico.c (DecodeHeader):
143 * io-bmp.c (grow_buffer): Don't leak memory if g_try_realloc fails.
145 * gdk-pixbuf-io.c (pixbuf_check_ico): Fix loading of .CUR files.
148 2002-08-25 Tor Lillqvist <tml@iki.fi>
150 * Makefile.am (libgdk_pixbuf_2_0_la_DEPENDENCIES): Add
151 gdk_pixbuf_win32res_lo. (#87101, J. Ali Harlow)
153 2002-08-22 Matthias Clasen <maclas@gmx.de>
156 gdk-pixbuf-io.c (_gdk_pixbuf_generic_image_load): No longer
157 static, thus _gdk_pixbuf-prefixed.
159 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file):
160 Keep this logic in sync with gdk_pixbuf_new_from_file(). (Based
161 on a patch by Anders Carlsson)
163 * io-png.c (gdk_pixbuf__png_image_save): Plug a memory
164 leak. (#91422, Sven Neumann)
166 2002-07-31 Sven Neumann <sven@gimp.org>
168 * gdk-pixdata.c (gdk_pixdata_to_csource): free the result of
169 gdk_pixdata_serialize() (bug #89411).
171 Mon Jul 29 23:06:10 2002 Owen Taylor <otaylor@redhat.com>
173 * gdk-pixbuf-scale.c: Fix some warnings by adding
174 casts to PixopsInterpType. (#85839, David L. Cooper, II.)
176 2002-07-16 Matthias Clasen <maclas@gmx.de>
178 * io-ras.c (DoCompressed): Avoid unnecessary casting.
180 2002-07-07 Matthias Clasen <maclas@gmx.de>
182 * gdk-pixbuf-io.c (generic_image_load): New function for loading
183 an image from a file either via module->load or incrementally.
184 (prepared_notify): ModulePreparedNotifyFunc for generic_image_load.
185 (gdk_pixbuf_new_from_file): Use generic_image_load.
186 * io-bmp.c, io-ico.c, io-ras.c, io-wbmp.c: Remove trivial
187 implementations of module->load. (#71266)
189 * io-ico.c (DecodeHeader): Correct computation of image height.
190 (OneLine): Correct update notification.
192 Load-at-size functionality (#53726):
194 * gdk-pixbuf-io.h (ModuleSizeFunc): New.
195 (_GdkPixbufModule): Prepend a ModuleSizeFunc to the
196 begin_load arguments. Adjust all modules.
197 * gdk-pixbuf-loader.c (struct GdkPixbufLoaderPrivate): Add
198 fields width, height, size_fixed, need_scale.
199 (gdk_pixbuf_loader_class_init): Add size_prepared signal.
200 (gdk_pixbuf_loader_set_size): New function.
201 (gdk_pixbuf_loader_size_func): ModuleSizeFunc which gets
202 passed to the module, emits size_prepared.
203 (gdk_pixbuf_loader_prepare): Call gdk_pixbuf_loader_size_func
204 if necessary, only emit area_prepared if no separate scaling
206 (gdk_pixbuf_loader_update): Only emit area_updated if no
207 separate scaling is required.
208 (gdk_pixbuf_loader_load_module): Add size_func as first argument.
209 (gdk_pixbuf_loader_close): If necessary scale the image
210 to the desired size and emit area_prepared and area_updated.
211 * gdk-pixbuf-loader.h (struct _GdkPixbufLoaderClass): Add
212 size_prepared signal.
213 (gdk_pixbuf_loader_set_size) New API.
214 * gdk-pixbuf-marshal.list: Add VOID:INT,INT.
215 * io-jpeg.c: User cinfo->output_width/height instead of
216 cinfo->image_width/height throughout when adressing the pixbuf.
217 (gdk_pixbuf__jpeg_image_load_increment): Call size_func, and
218 find the nearest possible output size which libjpeg can produce
219 that is still larger than the desired size.
221 2002-07-06 Matthias Clasen <maclas@gmx.de>
223 * io-tiff.c (tiff_set_error): Handle global_error == NULL
225 (tiff_image_parse): Don't trust TIFFRGBAImageBegin to set
226 the "put" routine. (Fixes #87384)
227 (gdk_pixbuf__tiff_image_stop_load): Don't call TIFFClose too
230 2002-07-02 Matthias Clasen <maclas@gmx.de>
232 Miscellaneous bmp loader fixes (#85448, #86286, #86287):
234 * io-bmp.c (grow_buffer): New function to avoid crashes
235 on unchecked reallocs.
236 (DecodeHeader, DecodeColormap, decode_bitmasks,
237 DoCompressed): Use grow_buffer instead of g_realloc
238 throughout. Change signatures where necessary to pass the
240 (OneLine16): Fix loading of 16bpp BI_RGB bmps.
241 (DoCompressed): Rewritten to properly support BI_RLE4 and
244 Support for compressed ras images (#84994):
246 * io-ras.c (RAS2State): Error on unsupported ras variations.
247 (OneLine8): Fix colormap indexing.
248 (OneLine): Call updated_func with proper region.
249 (DoCompressed): New function, handles compressed ras data.
250 (gdk_pixbuf__ras_image_load_increment): Handle compressed ras
253 Better colorspace support for the jpeg loader (#61211):
255 * io-jpeg.c (convert_cmyk_to_rgb): New function.
256 (gdk_pixbuf__jpeg_image_load,
257 gdk_pixbuf__jpeg_image_load_increment): Allocate a pixbuf with
258 alpha for 4-channel jpegs and call convert_cmyk_to_rgb for these.
260 All of this needs to be merged to GNOME 1.4 gdk-pixbuf.
262 2002-06-28 Sven Neumann <sven@gimp.org>
264 * gdk-pixbuf-csource.c (print_blurb): converted a Tab to spaces.
266 Thu Jun 13 18:11:11 2002 Owen Taylor <otaylor@redhat.com>
268 * pixops/pixops.c: Fix problem where when no alpha was
269 involved, we scaled rather than composited, but then
270 went ahead and composited anyways. (#76958, Patch
271 from Matthias Clasen). Needs to be merged to GNOME
274 2002-06-13 Matthias Clasen <maclas@gmx.de>
276 * io-jpeg.c: Use libjpeg in buffered-image mode in order to
277 incrementally display incrementally loaded progressive jpegs.
279 2002-06-07 Federico Mena Quintero <federico@ximian.com>
282 (lsb_16): New functions to fetch 32 or 16-bit little-endian values
283 starting at a specific memory location. We do this instead of
284 GINT32_FROM_LE() as the latter is simply dereferences a cast,
285 which doesn't work on platforms with alignment requirements.
288 2002-06-01 Matthias Clasen <maclas@gmx.de>
290 * gdk-pixbuf-io.c (pixbuf_check_xbm): Accept xbms starting
291 with a C comment - those seem to be not uncommon, e.g. the Gimp
292 produces them. (#82706)
294 * io-xbm.c (read_bitmap_file_data): Don't leak memory on certain
296 (gdk_pixbuf__xbm_image_load_real): Don't leak memory on valid inputs.
298 2002-05-22 Tor Lillqvist <tml@iki.fi>
300 * gdk-pixbuf-io.c (get_libdir): Use GTK_BINARY_VERSION (and not
301 GTK_VERSION) in the path to the loaders on Win32, too.
303 * Makefile.am: Pass GTK_BINARY_VERSION.
305 2002-05-22 Federico Mena Quintero <federico@ximian.com>
307 * io-xpm.c (pixbuf_create_from_xpm): Ahem, take the rowstride into
308 account!!! Fixes #82515.
310 [This bug is not present in the GNOME 1.4 branch as its XPM loader
311 does not use gdk_pixbuf_new(); rather it malloc()s a buffer with
312 no row padding and then uses gdk_pixbuf_new_from_data() on it.]
314 [IMPORTANT: The comment above is to make my life easier when
315 merging stuff across branches. If you make changes to gdk-pixbuf
316 in either branch, please include a comment in the ChangeLog that
317 indicates whether this should be merged into the other branch.
320 2002-05-18 Matthias Clasen <maclas@gmx.de>
322 * io-tiff.c (tiff_image_parse): fix packing order on bigendian
325 Thu May 16 15:17:30 2002 Owen Taylor <otaylor@redhat.com>
327 * pixops/pixops.c: Patch from Matthias Clasen to fix some typos
330 Thu May 16 15:02:46 2002 Owen Taylor <otaylor@redhat.com>
332 * gdk-pixdata.c (gdk_pixdata_to_csource): Fix 64-bit warning.
335 2002-05-07 Michael Natterer <mitch@gimp.org>
337 * gdk-pixbuf/Makefile.am: build the static pixbuf loaders
338 conditionally like the dynamic ones so --without-lib<foo> is
339 honored when building with --disable-modules. (#66867)
341 Sun May 5 02:27:01 2002 Soeren Sandmann <sandmann@daimi.au.dk>
343 * Makefile.am (noinst_PROGRAMS): remove test-loaders (moved to
345 * test-loaders.c, test-images.h: remove
347 2002-04-24 Matthias Clasen <maclas@gmx.de>
349 * gdk-pixbuf-io.c (gdk_pixbuf_save): Remove the ISO8859-1
350 restriction from the description of png tEXt parameters.
352 * io-png.c (png_text_to_pixbuf_option):
353 (gdk_pixbuf__png_image_save): If libpng supports it,
354 store and retrieve non-ISO8859-1 text as UTF-8. (#76172)
356 2002-04-11 Matthias Clasen <maclas@gmx.de>
358 More fixes for #77807:
360 * io-tga.c (get_contiguous_pixbuf): Helper function to create
361 a pixbuf with a contiguous pixel array while being careful about
364 * io-tga.c (fill_in_context, get_image_pseudocolor,
365 get_image_truecolor, get_image_grayscale): Use
366 get_contiguous_pixbuf instead of manually allocating image
369 * io-xpm.c (pixbuf_create_from_xpm):
370 * io-pnm.c (gdk_pixbuf__pnm_image_load):
371 * io-jpeg.c (gdk_pixbuf__jpeg_image_load): Use gdk_pixbuf_new
372 instead of manually allocating image storage.
374 2002-04-09 Matthias Clasen <maclas@gmx.de>
376 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_load_module): Use
377 priv->image_module->module_name instead of image_type which may
380 2002-04-06 Matthias Clasen <maclas@gmx.de>
382 * io-png.c (gdk_pixbuf__png_image_load): Restructured to use
383 gdk_pixbuf_new instead of manually allocating image storage. This
384 gives us a good rowstride and overflow checks. (#77807)
386 2002-04-05 Matthias Clasen <maclas@gmx.de>
388 * io-tiff.c (tiff_image_parse): Avoid allocating an extra copy of
389 the image by using a TIFFRGBAImage{Begin,Get,End} with suitable
390 put functions instead of TIFFRGBAImage. And check image dimensions
393 2002-04-03 Matthias Clasen <maclas@gmx.de>
395 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_type): Fix a doc typo.
397 2002-03-29 Matthias Clasen <maclas@gmx.de>
399 * io-png.c (png_simple_error_callback): libpng error handlers must
400 not return to their callers, thus longjmp out. This prevents
401 annoying stderr output from the default error handler.
403 2002-03-27 Matthias Clasen <maclas@gmx.de>
405 * io-png.c (gdk_pixbuf__png_image_stop_load): Don't leak info_ptr.
407 * io-png.c (gdk_pixbuf__png_image_load): Get rid of unused
408 end_info. Also call png_read_end to check proper ending of the png
409 file and catch text chunks after the image data.
411 2002-03-27 Matthias Clasen <maclas@gmx.de>
413 * io-png.c (gdk_pixbuf__png_image_load,
414 gdk_pixbuf__png_image_begin_load): Make libpng use g_malloc
415 instead of system malloc.
417 2002-03-26 Matthias Clasen <maclas@gmx.de>
419 * io-tiff.c (tiff_image_parse): Don't leak pixbuf on error.
421 * io-gif.c (gdk_pixbuf__gif_image_load_increment): Don't leak
422 context->buf on error.
424 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Make sure to call
425 stop_load even for short images to prevent memleaks.
427 2002-03-25 Matthias Clasen <maclas@gmx.de>
429 * io-png.c (setup_png_transformations): Changed signature to
430 return success and set a GError parameter, adjusted all callers.
431 Also work around a possible FPE in libpng and always check that
432 the new info is sane.
434 2002-03-23 Matthias Clasen <maclas@gmx.de>
436 * io-wbmp.c (gdk_pixbuf__wbmp_image_load_increment):
437 context->updated_func is NULL during a nonincremental load.
438 (gdk_pixbuf__wbmp_image_load): Stop reading after the first error.
440 2002-03-18 Matthias Clasen <maclas@gmx.de>
442 * io-tga.c: Fix assumptions on rowstride by manually allocating a
443 contiguous pixel buffer. Catch buffer overruns in RLE-modi.
444 Support grayscale + alpha (which can be written, but not read (!)
447 2002-03-15 Matthias Clasen <maclas@gmx.de>
449 * io-gif.c (gif_get_frame_info): Catch invalid frame dimensions.
451 2002-03-13 Matthias Clasen <maclas@gmx.de>
453 * test-images.h: Add valid_ras_test and invalid_bmp_1.
455 * test-loaders.c (main): Add random tests for ras and pnm and an
456 invalid bmp which was a crasher until my 2002-03-12 commit.
458 * io-pnm.c (gdk_pixbuf__pnm_image_load_increment): Don't unref the
461 * io-ras.c: Handle some errors.
463 2002-03-12 Sven Neumann <sven@gimp.org>
465 * gdk-pixbuf.c (gdk_pixbuf_fill): use sequential writes instead of
466 calling memcpy(). Simpler and potentially faster. (#70332)
468 2002-03-12 Matthias Clasen <maclas@gmx.de>
470 * io-bmp.c (DecodeHeader): Replace a g_assert_not_reached ()
471 which could actually be reached by a proper error status return.
473 2002-03-05 Matthias Clasen <maclas@gmx.de>
475 * test-loaders.c, test-images.h: More random tests.
477 * io-bmp.c (DecodeHeader): Fail gracefully on OOM here.
479 Tue Mar 5 10:39:03 2002 Owen Taylor <otaylor@redhat.com>
481 * Makefile.am (loaderdir): Put the modules into the
482 GTK_BINARY_VERSION directory for consistency with
483 immodules and theme engines.
485 Sat Mar 2 22:11:10 2002 Owen Taylor <otaylor@redhat.com>
487 * gdk-pixbuf-io.c (_gdk_pixbuf_load_module): If we
488 can't load the module using the g_module_build_path()
489 filename, try loading it as a .la file.
491 * test-loaders.c: Look for modules in current directory
492 rather than .libs, so we find the right .la files.
494 * test-loaders.c: Back out some accidental commits.
496 Sat Mar 2 21:28:03 2002 Owen Taylor <otaylor@redhat.com>
498 * gdk-pixbuf.c (gdk_pixbuf_new): Bullet-proof against integer
501 2002-03-03 Tor Lillqvist <tml@iki.fi>
503 * gtk-pixbuf.rc.in: Remove.
505 * gdk_pixbuf.rc.in: Name like this instead (wrong name used by
508 * makefile.msc: Corresponding changes.
510 * Makefile.am: Use gdk_pixbuf.rc on Win32. Distribute it.
512 2002-02-28 Matthias Clasen <maclas@gmx.de>
514 * pixops/pixops.c (tile_make_weights): Move the call to
515 correct_total() to the right spot. (#72732)
517 Wed Feb 27 18:33:04 2002 Owen Taylor <otaylor@redhat.com>
519 * gdk-pixdata.c (gdk_pixdata_to_csource): Use {} not
520 () to group around string assigned to char[]. (#72767,
523 2002-02-21 Havoc Pennington <hp@pobox.com>
525 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_load_module): remove
526 C++-commented debug spew, reported by David L. Cooper
528 2002-02-15 Matthias Clasen <maclas@gmx.de>
530 * pixops/pixops.c (correct_total): New function to make sure
531 that the weights sum up to the correct total without introducing
533 (tile_make_weights, bilinear_make_fast_weights,
534 bilinear_make_weights): Use correct_total.
536 2002-02-10 Matthias Clasen <maclas@gmx.de>
538 * test-images.h (tiff1_test_3), test-loaders.c (main): Add a
539 (#ifdef 0'ed) test provoking a segfault in TIFFReadDirectory().
541 * io-ico.c (DecodeHeader): Check that pixbuf could be allocated.
543 * test-images.h (ico_test_2), test-loaders.c (main): Test the
546 * io-wbmp.c (gdk_pixbuf__wbmp_image_load_increment): Don't write
547 beyond the end of buffer if width % 8 != 0.
549 * io-tga.c (try_preload): Enforce that ctx->hdr->type is one of
550 the supported types, otherwise parse_data_for_row () will not make
551 any progress, leading to an infinite loop.
553 Mon Feb 11 14:31:53 2002 Owen Taylor <otaylor@redhat.com>
555 * pixops/pixops.c (bilinear_make_weights): Fix handing of
558 2002-02-10 Matthias Clasen <maclas@gmx.de>
560 * test-loaders.c (main): Enable some tests which should work
563 * io-wbmp.c (gdk_pixbuf__wbmp_image_load_increment): Detect
564 invalid image dimensions and insufficient memory.
566 * io-tga.c (try_preload): Detect invalid image dimensions.
567 (gdk_pixbuf__tga_stop_load): Don't try to unref NULL pointers.
569 * io-ico.c (DecodeHeader): Detect some invalid headers and
572 Fri Feb 8 23:11:15 2002 Owen Taylor <otaylor@redhat.com>
574 * pixops/pixops.c: Force all weight arrays to sum exactly
575 to 65535. (Fixes #70971, reported by Federico Mena Quintero)
577 * Makefile.am (libgdk_pixbuf_1_3_la_DEPENDENCIES): Add
580 2002-02-08 Federico Mena Quintero <federico@ximian.com>
582 * pixops/pixops.h: Fix comment; PixopsInterpType -> GdkInterpType.
584 2002-02-08 Darin Adler <darin@bentspoon.com>
586 * io-xbm.c: (next_int): Wean this from <ctype.h>.
588 2002-02-01 Matthias Clasen <matthiasc@poet.de>
590 * Makefile.am: Build the tga loader as a static library. (#70157)
592 * io-ico.c: Merge 16- and 32-bit ico support from the stable
595 * io-gif.c: Recomposite all images if the animation size changes
596 while loading. (#70055)
598 * gdk-pixbuf.c (gdk-pixbuf-fill): Make it work for subpixbufs.
601 Sat Jan 19 20:49:20 2002 Manish Singh <yosh@gimp.org>
603 * io-jpeg.c, io-png.c: Made sure all the error cases involving
604 jpeg or png load/saves clean themselves up properly. Marked some
605 variables needed for cleanup volatile so they aren't clobbered by
608 Fri Jan 11 18:05:07 2002 Owen Taylor <otaylor@redhat.com>
610 * pixops/pixops.c: Fix integer overflow for the values
611 passed to the pixel functions. (#55148, fix from Michael Hore)
613 Fri Jan 11 17:53:58 2002 Owen Taylor <otaylor@redhat.com>
615 * pixops/pixops.c (pixops_scale_nearest): Remove meaningless
618 * pixops/pixops.c (pixops_process): Comment the computation
619 of run_end_index and fix some edge cases.
621 * pixops/{scale_line_22_33_mmx.S, composite_line_22_4a4_mmx.S:
622 composite_line_color_22_4a4_mmx.S}: Handle the case where
623 dest <= dest_end properly. (#52001, fix from Michael Hore)
625 Thu Jan 10 16:48:30 2002 Owen Taylor <otaylor@redhat.com>
627 * pixops/pixops.c: Replace some hardcoded values with the
628 SUBSAMPLE constant used elsewhere. (#51033)
630 Wed Jan 9 11:29:44 2002 Owen Taylor <otaylor@redhat.com>
632 * Makefile.am (s-enum-types-h): Include glib-object.h,
633 Add G_BEGIN_DECLS/END_DECLS to gdk-pixbuf-enum-types.h. (#68325,
636 * *.h: G_BEGIN_DECLS cleanups.
638 Tue Jan 8 10:58:04 2002 Owen Taylor <otaylor@redhat.com>
640 * gdk-pixbuf-util.c (gdk_pixbuf_saturate_and_pixelate):
641 - Massive cleanup, make actually legible.
642 - Fix some clamp-to-range bugs found by Jim Cape (#68231).
643 - Add a g_return_if_fail() if src and dest alpha don't match.
644 - Allow for src_rowstride != dest_rowstride.
646 2002-01-04 Hans Breuer <hans@breuer.org>
648 * gdk_pixbuf.def : don't export functions prefixed
651 * makefile.msc : use -FImsvc_recommende_pragmas.h
653 Thu Jan 3 19:31:58 2002 Owen Taylor <otaylor@redhat.com>
655 * pixops/pixops.c (scale_line_22_33): Fix and uncomment
658 * pixops/pixops.c (pixops_composite_nearest): Remove a
661 * pixops/pixops.c (pixops_composite): Add some docs
662 about the parameters.
664 * pixops/README: Add notes about the correct algorithms
665 for alpha compositing and how to implement them quickly.
667 2001-12-29 Tor Lillqvist <tml@iki.fi>
669 * Makefile.am (EXTRA_DIST): Add makefile.msc.
671 Sat Dec 22 15:31:20 2001 Owen Taylor <otaylor@redhat.com>
673 * gdk-pixdata.h: Fix trailing "," in enumeration.
675 2001-12-17 Matthias Clasen <matthiasc@poet.de>
677 * gdk-pixbuf.c, gdk-pixbuf-io.c, gdk-pixbuf-animation.c,
678 gdk-pixbuf-data.c, gdk-pixbuf-loader.c, gdk-pixbuf-scale.c,
679 gdk-pixbuf-util.c, gdk-pixdata.c: Markup fixes.
681 2001-12-16 Havoc Pennington <hp@pobox.com>
683 * gdk-pixbuf-scale.c: docs enhancements
685 2001-12-14 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
687 * io-xpm.c: Use g_ascii_strcasecmp() instead of g_strcasecmp().
689 2001-12-13 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
691 * gdk-pixbuf-animation.c, gdk-pixbuf-loader.c, gdk-pixpuf.c,
692 io-gif-animation.c, io-gif.c, io-tiff.c, test-loaders.c: Remove
693 assorted G_OBJECT casts where unnecessary.
695 * gdk-pixbuf-loader.c: Call g_object_ref and g_object_unref
696 instead of gdk_pixbuf_animation_ref and gdk_pixbuf_animation_unref
699 * gdk-pixbuf-csource.c, io-bmp.c, io-gif-animation.c, io-ico.c,
700 io-jpeg.c, io-png.c, io-pnm.c, io-ras.c, io-tga.c, io-wbmp.c,
701 io-xbm.c, io-xpm.c, test-gdk-pixbuf.c: Dito for gdk_pixbuf_ref and
704 * Makefile.am, pixops/Makefile.am: Compile everything with
705 -DG_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED
707 * gdk-pixdata.c: Use g_ascii_strup() instead of g_strup().
709 * io-xpm.c: Use g_ascii_strcasecmp() instead of g_strcasecmp().
711 2001-12-12 Matthias Clasen <matthiasc@poet.de>
713 * gdk-pixbuf-io.c: Markup fixes.
715 2001-12-12 Matthias Clasen <matthiasc@poet.de>
717 * Makefile.am (INCLUDES): Define G_LOG_DOMAIN. (#66412)
719 * gdk-pixbuf-loader.c, gdk-pixbuf-util.c: Markup fixes.
721 2001-12-11 Michael Natterer <mitch@gimp.org>
723 * io-png.c: gdk_pixbuf__png_image_save: removed wrong endian
724 conversion stuff; don't copy RGB pixbufs' lines around before
727 2001-12-05 Matthias Clasen <matthiasc@poet.de>
729 * gdk-pixbuf.h (gdk_pixbuf_ref, gdk_pixbuf_unref,
730 gdk_pixbuf_animation_ref, gdk_pixbuf_animation_unref):
733 Tue Dec 4 11:45:45 2001 Owen Taylor <otaylor@redhat.com>
735 * io-xpm.c (pixbuf_create_from_xpm): Fill in color
736 fields to black for transparent colors since we'll
737 later initialize pixels from them. (Fixes purify
738 errors, #66093, HideToshi Tajima)
740 2001-11-30 Tor Lillqvist <tml@iki.fi>
742 * gdk_pixbuf.def: Add gdk_pixbuf_get_option.
744 Fri Nov 30 15:55:34 2001 Owen Taylor <otaylor@redhat.com>
746 * gdk-pixdata.c (gdk_pixdata_deserialize): Fix
747 alignment problem in deserialization, (#65785,
748 reported by Hidetoshi Tajima)
750 2001-11-28 Manish Singh <yosh@gimp.org>
752 * gdk-pixbuf/io-bmp.c (gdk_pixbuf__bmp_image_load_increment): Fill
753 in missing error parameters to DecodeHeader and DecodeColormap.
755 2001-11-21 Federico Mena Quintero <federico@ximian.com>
757 Fix Ximian bug #12125; merged from gdk-pixbuf stable.
759 * gdk-pixbuf/io-bmp.c (gdk_pixbuf__bmp_image_load_increment): Use
760 a simple state machine instead of a scary if/else chain.
761 (DecodeHeader): Set the reading state.
762 (DecodeColormap): Set the reading state.
763 (decode_bitmasks): New function, decodes the bitmasks for
765 (OneLine32): Handle BI_BITFIELDS coding.
766 (OneLine16): Likewise.
768 2001-11-18 Hans Breuer <hans@breuer.org>
770 * io-xpm.c : use g_strcasecmp(), some poor platforms
771 don't have strcasecmp()
773 * makefile.msc : do INCLUDE_png etc. definition here to avoid
774 my temporary 'gdk-pixbuf-io-include.h' hack
776 Sun Nov 18 07:54:22 2001 Owen Taylor <otaylor@redhat.com>
778 * gdk-pixbuf-loader.c: Remove include of gobject/signal.h.
780 2001-11-03 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
782 * gdk-pixbuf-loader.c, gdk-pixbuf-scale.c: Documentation fixes.
784 2001-10-29 Tor Lillqvist <tml@iki.fi>
786 * Makefile.am: Use -no-undefined on Win32. Make
787 libgdk_pixbuf_1_3_la_OBJECTS depend on
788 gdk-pixbuf-marshal.c. Install import libraries.
790 * gdk_pixbuf.def: Update.
792 * gdk-pixbuf-io.c: (Win32) Use G_WIN32_DLLMAIN_FOR_DLL_NAME, saves
793 the actual DLL name of libgdk_pixbuf.
794 (get_libdir): Use it instead of guessing.
796 * io-xbm.c (gdk_pixbuf__xbm_image_begin_load): Use
797 g_file_open_tmp() insread of mkstemp().
799 2001-10-18 Matthias Clasen <matthiasc@poet.de>
801 * io-xbm.c (gdk_pixbuf__xbm_image_load_real): Don't dereference
802 context when it may be NULL. (#62344)
804 2001-10-16 Matthias Clasen <matthiasc@poet.de>
806 * gdk-pixdata.c, gdk-pixdata.h: Documentation.
808 * gdk-pixbuf-csource.1: Spelling fixes.
810 Wed Oct 10 11:52:17 2001 Owen Taylor <otaylor@redhat.com>
812 * gdk-pixdata.c gdk-pixbuf.h: Get rid of
813 GDK_PIXBUF_ERROR_HEADER/PIXEL_CORRUPT and use CORRUPT_IMAGE.
814 Get rid fo GD_PIXBUF_ERROR_UNKNOWN_FORMAT and use the
815 existing UKNOWN_TYPE error. (#58308)
817 * gdk-pixbuf.h, gdk-pixdata.c: Rename gdk_pixbuf_new_from_stream()
818 back to gdk_pixbuf_new_from_inline(). Rework docs to try
819 and be helpful for the common case. (#58308)
821 2001-10-05 Sven Neumann <sven@gimp.org>
823 * gdk-pixbuf/gdk-pixbuf-io.c
824 * gdk-pixbuf/gdk-pixbuf-private.h
825 * gdk-pixbuf/gdk-pixbuf.c
826 * gdk-pixbuf/gdk-pixbuf.h
827 * gdk-pixbuf/io-jpeg.c
828 * gdk-pixbuf/io-png.c: changed GDK_PIXBUF_ERROR_BAD_OPTION_VALUE to
829 GDK_PIXBUF_ERROR_BAD_OPTION to we can use it for bad keys too. Added
830 new public API gdk_pixbuf_get_option() to retrieve key/value pairs
831 set by an image loader. Added support for saving and reading PNG tEXt
832 chunks in PNG images.
834 Tue Oct 2 11:29:50 2001 Owen Taylor <otaylor@redhat.com>
836 * gdk-pixdata.c (gdk_pixdata_to_csource): Fix indentation
837 use a macro to make code a bit more readable.
839 2001-10-02 Sven Neumann <sven@gimp.org>
841 * gdk-pixdata.c: g_string_printfa => g_string_append_printf.
843 Wed Sep 26 18:08:19 2001 Owen Taylor <otaylor@redhat.com>
845 * Makefile.am (s-enum-types-h): Fix a typo in the include
846 guards. (#61254, Skip Montaro)
848 2001-09-21 Matthias Clasen <matthiasc@poet.de>
850 * io-xpm.c (xpm_extract_color): Rewritten to handle
851 xpm colormap entries more thoroughly. (#59939)
853 2001-09-21 Hans Breuer <hans@breuer.org>
855 * gdk-pixbuf.def : updated externals
857 * makefile.msc : generate gdk-pixbuf-enum-types.[hc]
859 Thu Sep 20 17:22:48 2001 Owen Taylor <otaylor@redhat.com>
861 * io-tiff.c (gdk_pixbuf__tiff_image_load): On OSF, apparently fseek()
862 works in some on-demand way, so the fseek gdk_pixbuf_new_from_file() doesn't
863 work here since we are using the raw file descriptor. So, we call lseek()
864 on the fileno(f) before using it. (#60840).
866 2001-09-20 James Henstridge <james@daa.com.au>
868 * Makefile.am (gdk-pixbuf-enum-types.c): same change as in pango,
869 so that flags types are registered as flags rather than enums (not
870 that there are any flags here at the moment).
872 Wed Sep 19 00:28:24 2001 Owen Taylor <otaylor@redhat.com>
874 * Makefile.am (gdk_pixbuf_headers): Don't include
875 gkd-pixbuf-features.h here since is in builddir
876 and confuses autogen rules.
878 * Makefile.am: Don't += variables before they have values,
879 automake-1.5 doesn't like it.
881 * Makefile.am: Fix srcdir != builddir for gdk-pixbuf-enum-types.c.
883 * Makefile.am: The whitespace strikes back.
885 2001-09-17 Matt Wilson <msw@redhat.com>
887 * Makefile.am (libpixbufloader_xbm_la_LDFLAGS): removed duplicate
888 LDFLAGS definition, use the -avoid-version one.
889 (libpixbufloader_tga_la_LDFLAGS): likewise
891 Mon Sep 17 11:49:02 2001 Owen Taylor <otaylor@redhat.com>
893 * pixops/*: Mirror GdkInterpType to PixopsInterpType
894 to avoid including gdk-pixbuf headers.
896 2001-09-16 James Henstridge <james@daa.com.au>
898 * .cvsignore: add generated files to ignore list.
900 * gdk-pixbuf.h: include gdk-pixbuf-enum-types.h
902 * Makefile.am: add rules to build gdk-pixbuf-enum-types.[ch]
904 Fri Sep 14 23:22:12 2001 Matthias Clasen <matthiasc@poet.de>
906 * io-pnm.c (pnm_read_header): Use GDK_PIXBUF_ERROR_CORRUPT_IMAGE,
907 not GDK_PIXBUF_ERROR_HEADER_CORRUPT. (#58308)
909 Fri Sep 14 22:53:45 2001 Matthias Clasen <matthiasc@poet.de>
911 * io-jpeg.c (gdk_pixbuf__jpeg_image_begin_load): Handle
912 out-of-memory situation better.
914 * io-pnm.c: Robustness fixes for pnm loader
916 * io-gif.c: Make gif loader survive TEST_RANDOMLY_MODIFY
918 * io-xpm.c (parse_color): detect very long color strings
920 All of the above from Matthias Clasen <matthiasc@poet.de>,
921 the remaining from Soeren Sandmann <sandmann@daimi.au.dk>.
923 * test-images.h: add tests:
924 - four valid ppm's, eight invalid (matthiasc@poet.de)
925 - one invalid xpm (matthiasc@poet.de)
926 - one valid tga, one invalid (sandmann@daimi.au.dk)
927 - one invalid tiff (sandmann@daimi.au.dk
929 * test-loaders.c: enable tests for ppm, png, gif, tga, tiff, xpm
931 * io-tiff.c (gdk_pixbuf__tiff_image_stop_load): TIFFClientOpen can
932 fail - detect it when it happens
934 * io-tga.c (gdk_pixbuf__tga_load_increment): Fail if there is too
937 * gdk-pixbuf-io.c: moved wbmb check after ico check to avoid false
940 Fri Sep 14 00:30:48 2001 Tim Janik <timj@gtk.org>
942 * Makefile.am: don't used BUILT_SOURCES to build marshal
943 files, as in conjunction with stamp files, this can
944 lead to endless rebuilding loops.
946 Tue Sep 4 00:22:07 2001 Owen Taylor <otaylor@redhat.com>
948 * Makefile.am: Fix EXTRA_DIST for gdk-pixbuf-csource.1
950 Tue Sep 4 03:09:52 2001 Tim Janik <timj@gtk.org>
952 * gdk-pixbuf-csource.1: new file, manual page for
953 the publically installed gdk-pixbuf-csource utility.
955 Thu Aug 30 08:30:03 2001 Matthias Clasen <matthiasc@poet.de>
957 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Propagate
958 errors from gdk_pixbuf_loader_load_module.
960 Thu Aug 30 08:27:37 2001 Matthias Clasen <matthiasc@poet.de>
962 * io-png.c (png_row_callback): Check that row_num is valid.
964 Tue Aug 28 21:05:26 2001 Matthias Clasen <matthiasc@poet.de>
966 * io-bmp.c (OneLine): Emit area_updated signal with proper
967 area information. (#52002)
969 Tue Aug 28 20:03:43 2001 Matthias Clasen <matthiasc@poet.de>
971 * test-loaders.c (test_loader): Catch errors at close time.
972 * test-loaders.c (main): Remove C++ comments.
974 2001-08-21 Matthias Clasen <matthiasc@poet.de>
976 * Makefile.am, gdk-pixbuf-io.c, pixbufloader_tga.def,
977 io-tga.c: Add tga loader, patch by Nicola Girardi. (#56067)
979 2001-08-20 Matthias Clasen <matthiasc@poet.de>
981 * test-images.h, test-loaders.c: Add ico and wbmp tests.
982 * io-jpeg.c (gdk_pixbuf__jpeg_image_save): Fail with a suitable
983 error if buffer allocation fails.
984 * io-ico.c: Make .ICO loader more robust.
985 All of these are due to sandmann@daimi.au.dk (#50187)
987 2001-08-19 Sven Neumann <sven@gimp.org>
989 * pixops/pixops.c: applied some simple but effective optimizations
990 to pixops_composite_nearest() and pixops_composite_color_nearest().
992 2001-08-07 Sven Neumann <sven@gimp.org>
994 * gdk-pixbuf.c (gdk_pixbuf_fill): a comment asked to optimize this
995 function, so that's what I did.
997 2001-08-06 Kjartan Maraas <kmaraas@gnome.org>
999 * gdk-pixdata.c: Fix a typo.
1001 2001-07-30 Hans Breuer <hans@breuer.org>
1003 * pixops/makefile.msc : new file
1004 * makefile.msc : use it to complete the build
1006 2001-07-20 Hans Breuer <hans@breuer.org>
1008 * gdk-pixdata.c : don't 'g_tohl (*istream++)', but move
1009 pointer increment out of the macro, because at least one
1010 compiler (msvc 5.0) gets confused otherwise (applies the
1013 * gdk_pixbuf.def : updated exports
1015 * makefile.msc : reflect gdk-pixbuf-csource changes
1017 2001-07-17 Darin Adler <darin@bentspoon.com>
1019 * gdk-pixbuf-csource.c: Add missing <stdlib.h> include.
1020 * io-png.c: (setup_png_transformations): Add ifdef so we compile
1021 without warnings with G_DISABLE_CHECKS on.
1022 * io-pnm.c: (gdk_pixbuf__pnm_image_load_increment): Add a missing
1024 * io-wbmp.c: (getin), (get_mbi): Add a missing const.
1025 * io-xbm.c: (gdk_pixbuf__xbm_image_load_real): Get rid of some
1026 unused locals and add an initial value to quiet the compiler's
1027 unintialized variable warning.
1028 * pixops/pixops.c: Put an ifdef around some dead code.
1030 Thu Jul 5 10:17:15 2001 Owen Taylor <otaylor@redhat.com>
1032 * pixops/Makefile.am (noinst_LTLIBRARIES): Switch
1033 over to the new include flags AC_SUBST(). (Problem
1034 pointed out by Mikael Hermansson.)
1036 2001-06-29 Havoc Pennington <hp@redhat.com>
1038 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): fix for
1041 Thu Jun 28 21:54:19 2001 Owen Taylor <otaylor@redhat.com>
1043 * make-inline-pixbuf.c test-gdk-pixbuf.c test-loaders.c
1044 gdk-pixbuf-csource.c: Fix args to g_type_init ().
1046 2001-06-28 Havoc Pennington <hp@pobox.com>
1048 * gdk-pixdata.c: <string.h>
1050 * gdk-pixbuf-io.c (get_libdir): fix typo in dll name (aren't we
1051 also leaking memory here from g_strdup_printf?)
1053 Tue Jun 26 09:48:02 2001 Tim Janik <timj@gtk.org>
1055 * Makefile.am (noinst_PROGRAMS): get rid of make-inline-pixbuf
1057 * gdk-pixbuf-data.[hc]: provide gdk_pixbuf_new_from_stream()
1058 instead from gdk_pixbuf_new_from_inline().
1060 * gdk-pixdata.[hc]: auxillary GdkPixdata structure, public
1061 installed API for applications that need to serialize/deserialize
1062 on their own (gimp, BEAST).
1064 * gdk-pixbuf/gdk-pixbuf-csource.c: provide publically installed
1065 program that can dump images in CSource format and Pixbuf
1066 stream format. supports RLE encoding, MACRO formatting etc...
1069 Mon Jun 25 00:28:11 2001 Owen Taylor <otaylor@redhat.com>
1071 * Makefile.am: Actually update timestamps, so rules don't
1074 2001-06-11 Havoc Pennington <hp@redhat.com>
1076 * Makefile.am (stamp-gdk-pixbuf-marshal.c): glib_genmarshal
1077 already includes top_builddir
1079 2001-06-08 Havoc Pennington <hp@redhat.com>
1081 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_load_module): remove
1082 bogus g_return_if_fail
1084 * io-gif.c (gif_get_lzw): if delay time is 0 or smaller than
1085 likely timeout resolution, set it to an arbitrarily-chosen short
1087 Fixes bug #55953 from warmenhoven@yahoo.com
1089 2001-06-07 Havoc Pennington <hp@redhat.com>
1091 * Makefile.am: use Owen's new way of doing stampfiles/generated
1094 2001-06-07 Havoc Pennington <hp@redhat.com>
1096 * Makefile.am (gdk-pixbuf-marshal.c): fix up the glib-genmarshal path
1098 2001-06-05 Havoc Pennington <hp@redhat.com>
1100 * test-loaders.c (main): use putenv not setenv, reported by
1103 2001-05-08 Havoc Pennington <hp@redhat.com>
1105 * gdk-pixbuf-util.c (gdk_pixbuf_add_alpha): docs fixup,
1106 and fix behavior to still subst color if the original image
1109 2001-06-04 Havoc Pennington <hp@redhat.com>
1111 * io-pnm.c (pnm_skip_whitespace): patch from Szekeres Istvan,
1114 2001-06-01 Havoc Pennington <hp@redhat.com>
1116 Apply patch from sandmann@daimi.au.dk, with some tweaks.
1117 Makes things a bit more robust, and adds test-loaders.c
1118 which is good for finding further robustness bugs to fix.
1120 * io-tiff.c: Try to work around libtiff suckiness a bit;
1121 put a giant thread lock on the whole loader,
1122 paranoically check both whether error handlers were called and
1123 also whether functions return false. Handle case where width or
1124 height is 0. Various cleanups.
1126 * io-png.c (gdk_pixbuf__png_image_stop_load): only unref pixbuf
1128 (png_error_callback): apparently libpng expects you to longjmp out
1131 * io-gif.c (struct _GifContext): remove unused "pixbuf" field
1132 (lzw_read_byte): change "Mail jrb if this fails" g_warning
1134 (gif_get_lzw): check for out-of-memory
1135 (gif_prepare_lzw): catch/report an error
1136 (new_context): use try_malloc, since GifContext is nearly 70K
1137 (gdk_pixbuf__gif_image_load_increment): set context->buf to NULL
1138 so we don't crash later.
1140 * Makefile.am: Add test-loaders
1142 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): handle context ==
1145 2001-05-29 Darin Adler <darin@eazel.com>
1147 * gdk-pixbuf.h: Fix prototype to use "(void)" instead of "()".
1149 Mon May 28 14:21:35 2001 Jonathan Blandford <jrb@redhat.com>
1151 * io-bmp.c: Patch from Helmethead <hoshem@mel.comcen.com.au> to
1152 fix up bmp decoder to:
1153 - adds 16 bpp bmp support (bug #53884)
1154 - adds OS/2 1.x format bmp support (bug #54964)
1155 - adds 4 bpp RLE compressed bmp support
1156 - adds 1 bpp colormap support
1157 - fixes negative height (top down) bmp support
1159 2001-05-25 Hans Breuer <hans@breuer.org>
1161 * gdk_pixbuf.def : reflect Havoc's recent api change
1163 Sun May 20 12:53:49 2001 Owen Taylor <otaylor@redhat.com>
1165 * Makefile.am (libgdk_pixbuf_1_3_la_LDFLAGS): Remove an
1166 excess $(GLIB_LIBS).
1168 Sun May 13 11:59:11 2001 Owen Taylor <otaylor@redhat.com>
1170 * Makefile.am: Make modules depend on libgdk_pixbuf.la.
1172 2001-05-04 Havoc Pennington <hp@redhat.com>
1174 * pixops/pixops.c (pixops_process): merge fix from stable: Patch
1175 from hoshem@mel.comcen.com.au to fix nonzero X offsets. Fixes
1178 * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest): merge
1179 from stable: Patch from OKADA Mitsuru <m-okada@fjb.co.jp> to fix
1180 confusion of using "src" instead of "p".
1181 (pixops_composite_color_nearest): Use a more accurate (and
1182 correct, to begin with) compositing method. This cures checks
1183 showing through on images with no alpha.
1185 * gdk-pixbuf.c (gdk_pixbuf_fill): fix bug that left some trailing
1188 * gdk-pixbuf-io.h: fix UpdatedNotifyFunc to use signed ints
1190 * gdk-pixbuf-loader.h (struct _GdkPixbufLoaderClass): Change
1191 area_updated signal to use signed ints. Removed animation-related
1194 * io-gif.c, io-gif-animation.h, io-gif-animation.c: Massive
1197 * gdk-pixbuf-animation.c: Add GdkPixbufAnimationIter to abstract
1198 all the pesky details. Remove old frame-based API. Make
1199 GdkPixbufAnimation an abstract base class, derived by the loaders.
1201 Sun Apr 22 15:51:32 2001 Owen Taylor <otaylor@redhat.com>
1203 * Makefile.am (LDADDS): Add $(MATH_LIB).
1205 2001-04-18 Havoc Pennington <hp@redhat.com>
1207 * gdk-pixbuf.c (gdk_pixbuf_fill): Function to fill pixbuf with a
1210 Wed Apr 4 01:41:02 2001 Tim Janik <timj@gtk.org>
1212 * pixops/Makefile.am (noinst_LTLIBRARIES): include $top_srcdir
1213 so we don't try to get <gtk/gtkobject.h> from standard search
1216 * Makefile.am (gdk-pixbuf-marshal.c): use deps from srcdir.
1217 add gdk-pixbuf-marshal.list to EXTRA_DIST.
1218 take gdk-pixbuf-marshal.h out of _la sources.
1220 2001-03-19 Tor Lillqvist <tml@iki.fi>
1222 * makefile.mingw.in: Handle gdk-pixbuf-marshal.c.
1224 * gdk_pixbuf.def: Update.
1226 * pixbufloader_*.def: Just export the fill_vtable functions now.
1228 2001-03-18 Mike Kestner <mkestner@ameritech.net>
1230 * make-inline-pixbuf.c (main): Added logic to remove output when
1233 2001-03-14 Havoc Pennington <hp@redhat.com>
1235 * Makefile.am (gdk-pixbuf-marshal.c): Use different temporary file
1236 from gdk-pixbuf-marshal.h, fixes parallel makes.
1238 Thu Mar 1 04:01:57 2001 Tim Janik <timj@gtk.org>
1240 * test-gdk-pixbuf.c: fixed includes.
1242 2001-02-18 Havoc Pennington <hp@pobox.com>
1244 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): prepend underscore
1245 (gdk_pixbuf_get_named_module): prepend underscore
1246 (gdk_pixbuf_get_module): prepend underscore
1248 2001-02-19 Havoc Pennington <hp@redhat.com>
1250 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): const fix
1252 2001-02-17 Havoc Pennington <hp@pobox.com>
1254 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_new_with_type): docs
1256 2001-02-07 Alexander Larsson <alexl@redhat.com>
1258 * io-xpm.c (free_buffer):
1259 Use g_free, since the buffer is allocated with g_try_alloc().
1261 2001-02-06 Christophe Merlet <redfox@eikonex.org>
1263 * gdk-pixbuf-data.c: Fixes a minor typo.
1265 Sun Feb 4 07:59:57 2001 Tim Janik <timj@gtk.org>
1267 * gdk-pixbuf.h: DOH! don't include glib/gobject.h but glib-object.h,
1268 we finally need the gobject->gruntime rename.
1270 * *.c: scratched calls to g_type_init(), there's simply no point in
1271 doing that, use gtk_init().
1273 2001-02-01 Havoc Pennington <hp@pobox.com>
1275 * gdk-pixbuf-loader.c, gdk-pixbuf-loader.h: rename "private" field
1276 in struct to "priv" for C++
1278 2001-01-31 Havoc Pennington <hp@pobox.com>
1280 * gdk-pixbuf.c: include glib-object.h instead of gvaluetypes.h
1282 2001-01-26 Havoc Pennington <hp@redhat.com>
1284 * gdk-pixbuf-io.c (mname): fix included modules case.
1286 2001-01-22 Havoc Pennington <hp@redhat.com>
1288 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): check errors
1289 from gdk_pixbuf_load_module
1291 2001-01-22 Havoc Pennington <hp@redhat.com>
1293 * Makefile.am: Add built marshaller files to support
1294 GdkPixbufLoader signals
1296 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): have
1297 GDK_PIXBUF_MODULEDIR unconditionally replace the compiled-in
1298 module location, rather than acting as a fallback, because we are
1299 using GDK_PIXBUF_MODULEDIR to use gdk-pixbuf before installing it.
1301 * gdk-pixbuf.h: include gdk-pixbuf-loader.h
1303 * gdk-pixbuf-loader.h, gdk-pixbuf-loader.c: Move back over here
1304 from gtk, and add error to close(), because stop_load may do
1305 parsing of the image.
1307 * pixops/have_mmx.S (_pixops_have_mmx): add newline at end of file
1309 * io-*.c: make individual operations static, and add fill_vtable
1310 functions which are exported. Fix the collection of type warnings
1311 that surfaced, including a number of functions that didn't
1312 properly take a GError and some that weren't
1313 const-correct. Involved adding error handling for a few loaders.
1315 * gdk-pixbuf-io.h: Add error reporting to stop_load function
1317 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): change to just look up
1318 a function that fills in the GdkPixbufModule vtable, instead of
1319 looking up all the image functions individually; this means we
1320 can get type safety within modules for the loader functions.
1321 Also it means you don't have to keep the statically compiled and
1322 GModule versions in sync.
1324 * test-gdk-pixbuf.c (main): remove gdk_pixbuf_init()
1326 * make-inline-pixbuf.c (main): remove call to gdk_pixbuf_init()
1328 * gdk-pixbuf.h: nuke gdk_pixbuf_init()
1330 * gdk-pixbuf-animation.c (gdk_pixbuf_frame_get_type): g_type_init
1333 * gdk-pixbuf.c (gdk_pixbuf_get_type): g_type_init () here
1335 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_get_type):
1338 2001-01-20 John Harper <jsh@eazel.com>
1340 * io-xbm.c: new pixbuf loader, for X bitmap files. Basically a
1341 collision between Xlib's RdBitF.c and io-tiff.c
1343 * gdk-pixbuf-io.c, Makefile.am, pixbufloader_xbm.def: added
1346 [ merged from stable gdk-pixbuf module. Untested, but it
1347 compiles, and works fine in the stable module ]
1349 2001-01-18 Tor Lillqvist <tml@iki.fi>
1351 * gdk-pixbuf-io.c (get_libdir): (Win32) Use the new
1352 g_win32_get_package_installation_subdirectory() function. No need
1353 to include windows.h.
1354 (gtk_win32_get_installation_directory): Remove this then.
1356 2001-01-01 Havoc Pennington <hp@redhat.com>
1358 * Makefile.am (libgdk_pixbuf_1_3_la_LDFLAGS): add
1359 @LIBTOOL_EXPORT_OPTIONS@
1361 2000-12-30 Tor Lillqvist <tml@iki.fi>
1363 * gdk_pixbuf.def: Update.
1365 2000-12-16 Havoc Pennington <hp@pobox.com>
1367 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file): ref
1368 the pixbuf in the frame, so we can use gdk_pixbuf_frame_free
1369 (gdk_pixbuf_frame_copy): new function
1370 (gdk_pixbuf_frame_free): new function
1371 (gdk_pixbuf_frame_get_type): new function
1372 (GDK_TYPE_PIXBUF_FRAME): macro to get type for GdkPixbufFrame
1374 Tue Nov 14 11:51:26 2000 Owen Taylor <otaylor@redhat.com>
1376 * Makefile.am: Add -avoid-version for all modules.
1378 2000-11-13 Havoc Pennington <hp@redhat.com>
1380 * io-png.c (png_simple_error_callback): fix error message to not
1381 say "save" since it's used for loading
1383 2000-11-11 Hans Breuer <Hans@Breuer.Org>
1385 * gdk-pixbuf-io.c : Fix all function prototype macros for self
1386 contained image handlers (!USE_G_MODULE). Files to save should
1387 be opened in binary mode, fopen(s, "wb").
1389 * io-xpm.c : added HAVE_UNISTD_H condition
1391 2000-11-11 Tor Lillqvist <tml@iki.fi>
1393 * gdk_pixbuf.def: Add gdk_pixbuf_new_subpixbuf.
1395 * io-tiff.c (gdk_pixbuf__tiff_image_begin_load): Use
1396 g_file_open_tmp() (just added to GLib) instead of mkstemp() (or
1397 mktemp() and open()).
1399 * io-xpm.c (gdk_pixbuf__xpm_image_begin_load): Ditto.
1401 2000-11-01 Havoc Pennington <hp@pobox.com>
1403 * gdk-pixbuf.c (gdk_pixbuf_new_subpixbuf): New function to create
1404 a pixbuf pointing to a subregion of another pixbuf.
1406 2000-10-16 Tor Lillqvist <tml@iki.fi>
1408 * gdk-pixbuf-io.c: Define also m_save (for the non-gmodule case).
1410 2000-10-16 Havoc Pennington <hp@redhat.com>
1412 * gdk-pixbuf-io.c (gdk_pixbuf_get_module)
1413 (gdk_pixbuf_get_named_module) (gdk_pixbuf_load_module):
1414 add error reporting here also
1416 * make-inline-pixbuf.c (main): use GError
1418 * io-xpm.c: include unistd.h
1420 * gdk-pixbuf-util.c: include string.h
1422 * io-*.c: add error reporting
1424 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file): add
1427 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file): Add error reporting
1429 * gdk-pixbuf-io.h: Add GError** to load_increment and load
1432 * gdk-pixbuf-io.c (gdk_pixbuf_save) (gdk_pixbuf_savev): return
1433 a G_FILE_ERROR if we fail to write or close the file.
1435 * gdk-pixbuf.h: remove GDK_PIXBUF_ERROR_IO, instead we'll use
1436 G_FILE_ERROR_*. Rename enum to GdkPixbufError, properly following
1437 the GError naming rules. Add GError** to load functions.
1439 2000-10-06 Havoc Pennington <hp@redhat.com>
1441 * gdk-pixbuf.h: add GdkPixbufAlphaMode
1443 2000-10-06 Havoc Pennington <hp@redhat.com>
1445 This entry is a summary of the merged-in changes from 1.0.
1446 Relevant original ChangeLog entries are spliced in after
1447 this entry; the files they refer to are from the 1.0
1450 * pixops/pixops.c (pixops_composite_nearest): sync a small fix
1453 * io-xpm.c (xpm_seek_string): add fscanf error check from 1.0
1454 Add progressive loader from 1.0
1456 * io-tiff.c (gdk_pixbuf__tiff_image_begin_load): mem leak fixes
1459 * io-pnm.c: new version from 1.0 tree
1461 * io-jpeg.c (gdk_pixbuf__jpeg_image_load): sync from 1.0, use
1464 * io-gif.c (lzw_read_byte): sync from 1.0, change a g_error to
1466 (gif_get_next_step): return 0 here, sync from 1.0
1468 * gdk-pixbuf-util.c: sync email address change for Cody
1471 2000-09-11 Jeffrey Stedfast <fejj@helixcode.com>
1473 * gdk-pixbuf/io-pnm.c: Pretty much totally rewrote again because
1474 last nights code was still "broken". Should now properly handle
1475 all error conditions gracefully.
1477 2000-09-10 Jeffrey Stedfast <fejj@helixcode.com>
1479 * gdk-pixbuf/io-pnm.c: Rewrote.
1481 2000-09-09 Federico Mena Quintero <federico@helixcode.com>
1483 * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest): Compute
1484 the correct dest offset.
1486 2000-08-25 Federico Mena Quintero <federico@helixcode.com>
1488 * gdk-pixbuf/io-xpm.c: #include <unistd.h>
1490 2000-08-05 Larry Ewing <lewing@helixcode.com>
1492 * gdk-pixbuf/io-tiff.c: stop leaking context->tempname.
1494 * gdk-pixbuf/io-xpm.c: same as above.
1496 2000-07-26 Michael Meeks <michael@helixcode.com>
1498 * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_load): make
1501 2000-07-21 Larry Ewing <lewing@helixcode.com>
1503 * gdk-pixbuf/io-xpm.c: add a fake progressive loader so that
1504 xpm at least supports the progressive interface like the one in
1505 io-tiff.c. This should be reimplemented as an actual progressive
1508 2000-07-19 Jonathan Blandford <jrb@redhat.com>
1510 * demo/pixbuf-demo.c (update_timeout): changed scaling level to
1511 make it look better.
1512 * gdk-pixbuf/testpixbuf.c (update_timeout): Patch from michael
1513 meeks to handle errors better.
1515 2000-10-07 Tor Lillqvist <tml@iki.fi>
1518 * pixbufloader_jpeg.def
1519 * pixbufloader_png.def: Add new entry points.
1521 * makefile.mingw.in: Use libintl.
1523 2000-10-06 Havoc Pennington <hp@redhat.com>
1525 * gdk-pixbuf-io.c (gdk_pixbuf_save): s/format/type/g to be
1526 consistent with gdk_pixbuf_loader_new_with_type().
1527 Return runtime error if a module is missing.
1529 * gdk-pixbuf.h: add GDK_PIXBUF_ERROR_UNKNOWN_TYPE
1531 2000-10-05 Havoc Pennington <hp@redhat.com>
1533 Pixbuf saving, patch from David Welton.
1535 * Makefile.am (GDK_PIXBUF_LIBS): add INTLLIBS
1536 (libgdk_pixbuf_1_3_la_SOURCES): add gdk-pixbuf-i18n.h
1538 * gdk-pixbuf-i18n.h: Add _() to gdk-pixbuf
1540 * io-png.c (gdk_pixbuf__png_image_save): PNG save routine.
1542 * io-jpeg.c (gdk_pixbuf__jpeg_image_save): JPEG save routine.
1544 * gdk-pixbuf-io.c (gdk_pixbuf_save):
1545 (gdk_pixbuf_savev): Implement pixbuf saving routines
1547 * gdk-pixbuf.c (gdk_pixbuf_error_quark): pixbuf error quark
1550 * gdk-pixbuf.h: Add public save routines; add pixbuf error
1553 * gdk-pixbuf-io.h: Add save function to GdkPixbufModule
1555 2000-10-05 Dan Winship <danw@helixcode.com>
1557 * io-png.c, io-tiff.c, io-xpm.c: Fix comments to not claim that
1558 all three of these files are the JPEG image loader. (From
1561 2000-10-03 Tor Lillqvist <tml@iki.fi>
1563 * makefile.mingw.in: Add rule for make-inline-pixbuf. Use
1564 gdk-pixbuf's version number in the rule for makefile.mingw itself.
1566 * gdk_pixbuf.def: Add new entry points.
1568 2000-09-26 Havoc Pennington <hp@redhat.com>
1570 * gdk-pixbuf-util.c (gdk_pixbuf_saturate_and_pixelate): Add this
1571 function here, instead of putting it in a private GTK+ file.
1573 * gdk-pixbuf-private.h (GdkPixbufInlineFormat): include an
1574 enum here for the known formats of inlined pixbufs.
1575 Also, #define our file magic here.
1577 2000-06-23 Havoc Pennington <hp@redhat.com>
1579 * make-inline-pixbuf.c: Small program that creates C variable
1580 declarations of inline pixbuf data. This can be read
1581 by gdk_pixbuf_new_from_inline.
1583 * gdk-pixbuf.h (gdk_pixbuf_new_from_inline): New function to read
1584 inline pixbuf data and create a pixbuf from it.
1586 * gdk-pixbuf-data.c (gdk_pixbuf_new_from_inline): implement here
1588 2000-09-07 Tor Lillqvist <tml@iki.fi>
1590 * makefile.mingw.in: Use own version number for gdk-pixbuf DLLs,
1593 2000-08-12 Tor Lillqvist <tml@iki.fi>
1595 * gdk_pixbuf.def: Add missing entry point.
1597 2000-08-10 Havoc Pennington <hp@redhat.com>
1599 * Makefile.am (EXTRA_DIST): The *.def files had the wrong names
1600 (s/pixbuf_/pixbufloader_)
1602 2000-08-02 Tor Lillqvist <tml@iki.fi>
1608 * io-wbmp.c: Conditionalise inclusion of <unistd.h>.
1610 * makefile.mingw.in: List loaders alphabetically. Add the wbmp
1611 one. Fix names of DLLs to have '-' instead of '_'.
1613 2000-07-31 Elliot Lee <sopwith@redhat.com>
1614 * io-wbmp.c: Some bug fixes - now tested to work.
1616 2000-07-27 Elliot Lee <sopwith@redhat.com>
1618 * gdk-pixbuf-io.h, gdk-pixbuf-io.c: Add
1619 gdk_pixbuf_get_named_module() function to facilitate above change
1620 * io-wbmp.c, pixbufloader_wbmp.defs, gdk-pixbuf-io.c, Makefile:
1621 Implement loader for WBMP format.
1622 * io-bmp.c: Don't malloc a temporary buffer - use stack instead.
1624 2000-07-23 Tor Lillqvist <tml@iki.fi>
1629 * pixops/makefile.mingw.in
1630 * pixbuf_*.def: New files.
1633 * pixops/Makefile.am: Add them. Add rule to generate makefile.mingw.
1635 * gdk-pixbuf-io.c (gtk_win32_get_installation_directory):
1636 New function, to get the GTK+ installation directory from
1637 the Windows Registry, where the installation program
1638 for whatever software includes GTK+ has stored it.
1640 Used to avoid having hardcoding the directory where to look for
1641 loaders. This function is needed by gtk, too, so it should
1642 really be just in one place. Maybe a small static library
1643 one level up from here?
1645 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file)
1646 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file):
1647 Open file in binary mode. This *is* standard C. (No-op on Unix,
1650 * io-jpeg.c: If we don't HAVE_SIGSETJMP, use normal setjmp().
1652 * io-tiff.c: Use g_get_tmp_dir(). If we don't HAVE_MKSTEMP, use
1653 mktemp() and open().
1654 (gdk_pixbuf__tiff_image_stop_load): g_free() also the tempname.
1656 * pixops/*.S: The Gas from mingw32 doesn't like the .type
1657 pseudo-op. Conditionalise on __MINGW32__, but probably
1658 should conditionalise on Gas version instead? Or could we
1659 do without .type on all systems?
1661 * pixops/timescale.c: Use g_get_current_time()
1662 instead of gettimeofday().
1664 Sat Jul 22 10:57:22 2000 Owen Taylor <otaylor@redhat.com>
1666 * Makefile.am (test_gdk_pixbuf_LDADD): Remove -lgmodule
1668 Tue Jul 11 11:26:42 2000 Owen Taylor <otaylor@redhat.com>
1670 * gdk-pixbuf.c: Add <string.h> include.
1672 Tue Jul 11 06:20:14 2000 Tim Janik <timj@gtk.org>
1674 * io-gif.c (gdk_pixbuf__gif_image_load_animation):
1675 * gdk-pixbuf-data.c (gdk_pixbuf_new_from_data):
1676 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file):
1677 use g_object_new() instead of g_type_create_instance() which
1678 is a private function for fundamental type implementations.
1680 Thu Jul 6 11:49:47 2000 Owen Taylor <otaylor@redhat.com>
1682 * Makefile.am (libgdk_pixbuf_la_LDFLAGS): Use GTK+ version
1683 soname scheme for gdk-pixbuf.
1685 2000-06-21 Havoc Pennington <hp@pobox.com>
1687 * gdk-pixbuf.c: Convert GdkPixbuf to GObject, leaving it opaque
1688 (i.e. derivation is not allowed, and there are no virtual methods
1690 (gdk_pixbuf_preinit): Call g_type_init() here.
1691 (gdk_pixbuf_init): Add a user-friendly init function, for users
1692 of standalone gdk-pixbuf
1694 * gdk-pixbuf-animation.c: Convert to GObject, in the same
1695 way GdkPixbufAnimation was done.
1697 * gdk-pixbuf.h: Remove gdk_pixbuf_set_unref_handler() and
1698 gdk_pixbuf_finalize() from API, since these are broken and don't
1699 make sense with new GObject stuff.
1701 Wed Jun 21 16:02:48 2000 Owen Taylor <otaylor@redhat.com>
1703 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): Add feature to
1704 support a GDK_PIXBUF_MODULEDIR env variable as a secondary
1707 2000-06-10 Federico Mena Quintero <federico@helixcode.com>
1709 * demo/pixbuf-demo.c: It was cold and rainy this Saturday morning,
1710 so I needed something to warm my thighs. Running plain infinite
1711 loops on your laptop to make it hot is not very much fun. A demo
1712 of the gdk-pixbuf scaling functions is way better, and looks
1715 * configure.in (AC_OUTPUT): Added the demo Makefile.
1717 * Makefile.am (SUBDIRS): Added the demo directory.
1719 2000-06-09 Larry Ewing <lewing@helixcode.com>
1721 * gdk-pixbuf/io-png.c (gdk_pixbuf__png_image_load_increment):
1722 setjmp for the png error handler. It seems setting the error
1723 handling functions does not avoid the jump, and so not calling
1724 setjmp was causing the incremental loader to jump into lala land.
1725 (gdk_pixbuf__png_image_begin_load): setjmp for error handling, I'm
1726 not sure this one is actually required but the docs say it must be
1727 set for every call to a png_* function.
1728 Also changed the comment to reflect the fact that setting the
1729 error handlers does _not_ avoid the longjmp.
1731 2000-06-06 Larry Ewing <lewing@helixcode.com>
1733 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
1734 take frame offest into account when trying to calculate the
1735 animation bbox. Also set the width to the width not the height.
1736 (gdk_pixbuf_loader_animation_done): cycle over the frames to
1737 calculate bbox because now we finally have all the offset
1738 information for each frame.
1740 2000-06-05 Mathieu Lacage <mathieu@gnome.org>
1742 * configure.in: add some gtk parameters to the
1743 GDK_PIXBUF_LIBÃ�²S and GDK_PIXBUG_INCLUDEDIR vars. One more
1744 fight in my crusade for strange prefix compile...
1746 2000-05-30 Not Zed <NotZed@HelixCode.com>
1748 * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_begin_load):
1749 Initialise the error handler exit routine to our own. Note this
1750 means that every function that accesses the jpeg lib on this
1751 object MUST do a setjmp.
1752 (gdk_pixbuf__jpeg_image_stop_load): setjmp before accessing jpeg
1753 lib for handling fatal error.
1754 (gdk_pixbuf__jpeg_image_load_increment): And here too. So now
1755 your applications dont quit if there's a jpeg error!
1757 2000-05-30 Federico Mena Quintero <federico@helixcode.com>
1759 * gdk-pixbuf.spec.in: Include all the loader libraries. Patch
1760 from Frank de Lange <frank@unternet.org>.
1762 2000-05-09 Darin Adler <darin@eazel.com>
1764 * gdk-pixbuf/test-gdk-pixbuf.c:
1765 Fixed includes to get rid of accidental GNOME dependency.
1767 2000-05-26 Cody Russell <car0969@gamma2.uta.edu>
1768 * Makefile.am: Added gdk-pixbuf.spec to EXTRA_DIST
1770 2000-05-22 Federico Mena Quintero <federico@helixcode.com>
1772 * configure.in: Bumped version number to 0.8.0.
1774 * doc/Makefile.am (content_files): The toplevel gdk-pixbuf.sgml
1775 file was not being distributed.
1777 * gdk-pixbuf/pixops/Makefile.am (EXTRA_DIST): Added DETAILS.
1779 2000-05-09 Darin Adler <darin@eazel.com>
1781 * gdk-pixbuf/gdk-pixbuf-drawable.c: (rgb565lsb), (rgb565msb),
1782 (rgb565alsb), (rgb565amsb), (rgb555lsb), (rgb555msb), (rgb555alsb),
1783 (rgb555amsb), (convert_real_slow): Change all conversion from 16-bit
1784 formats to 32-bit formats to re-use the high bits of the color values
1785 so that white maps to full white.
1787 Fri May 5 12:16:32 2000 Owen Taylor <otaylor@redhat.com>
1789 * gdk-pixbuf/pixops/DETAILS: Add beginnings of file with
1790 detailed information about the structure and algorithms
1791 of pixops so people can fix it instead of breaking it.
1793 2000-05-04 Darin Adler <darin@eazel.com>
1795 * gdk-pixbuf/pixops/pixops.c: (pixops_composite_nearest),
1796 (composite_pixel), (composite_line):
1797 * gdk-pixbuf/test-gdk-pixbuf.c: (simple_composite_test_one_type):
1798 Now that Owen explained the algorithm, I think I implemented it
1799 right for the cases where the destination pixbuf is not opaque.
1800 The test does seem to confirm it.
1802 2000-05-04 Darin Adler <darin@eazel.com>
1804 * gdk-pixbuf/.cvsignore:
1805 * gdk-pixbuf/Makefile.am:
1806 * gdk-pixbuf/test-gdk-pixbuf.c (store_pixel), (fill_with_pixel),
1807 (load_pixel), (simple_composite_test_one),
1808 (simple_composite_test_one_type), (simple_composite_test), (main):
1809 Added some tests of composite to highlight problems in the old
1810 implementation. These tests run without any user interaction.
1811 Just do "make check".
1813 * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest),
1814 (composite_pixel), (composite_line): Fix composite to do a textbook
1815 "A over B" composite. This was clearly the intent, and it was easy
1816 to fix the code to do it. (Note to those that read my earlier tries
1817 at a patch; this version fixes typos that were present in all
1818 my patch attempts. I checked the final version by adding more tests.)
1820 2000-04-22 05:27:43 2000 Owen Taylor <otaylor@redhat.com>
1822 * gdk-pixbuf/pixops/pixops.c (pixops_scale_nearest): Properly
1823 offset y coordinate accordining to render_y0.
1825 * gdk-pixbuf/gdk-pixbuf-scale.c: Properly handle nonzero
1828 2000-04-22 James Henstridge <james@daa.com.au>
1830 * gdk-pixbuf.spec.in (%files): moved %{prefix}/bin/* from the main
1831 package to the devel package. The only file installed in bin is
1832 gdk-pixbuf-config, which belongs in -devel. This should allow having
1833 multiple versions of the main gdk-pixbuf package installed.
1835 2000-04-17 Karl Eichwalder <ke@suse.de>
1837 * gdk-pixbuf/Makefile.am (INCLUDES): Add $(GNOME_CFLAGS).
1838 Reported by Jens Finke.
1840 2000-04-14 Tomasz KÃ�³opczko <kloczek@pld.org.pl>
1842 * gdk-pixbuf/pixops/makefile.am: $(LIBART_CFLAGS) replaced by
1843 $(GTK_CFLAGS) - now gdk-pixbuf compiles correctly.
1845 2000-04-13 James Henstridge <james@daa.com.au>
1847 * configure.in: when performing the configure check to see if
1848 gmodule works, set CFLAGS to GLIB_CFLAGS and LIBS to GLIB_LIBS,
1849 rather than the other way round. Also, call AC_MSG_RESULT in the
1850 even that dynamic modules were not supported.
1852 2000-04-12 Federico Mena Quintero <federico@helixcode.com>
1854 This comes from an excellent idea by Tim Janik (timj@gtk.org) to
1855 hook to the last unref operation.
1857 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_set_last_unref_handler): New
1858 function to set the last unref handler for a pixbuf.
1859 (gdk_pixbuf_finalize): New function to actually finalize a pixbuf.
1860 It calls the pixbuf's destroy notification function and frees the
1861 GdkPixbuf structure itself.
1862 (gdk_pixbuf_unref): Use the last unref function of the pixbuf if
1865 * gdk-pixbuf/gdk-pixbuf-private.h (struct _GdkPixbuf): New fields
1866 for the last unref handler and its user data.
1868 * gdk-pixbuf/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Use
1869 g_new0() to allocate the pixbuf.
1871 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
1872 Fixed the call to gtk_signal_new() for the "frame_done" signal; it
1873 was not specifying the `frame' argument.
1875 * gdk-pixbuf/gdk-pixbuf-animation.c
1876 (gdk_pixbuf_animation_get_width): Fixed docstring.
1877 (gdk_pixbuf_animation_get_height): Likewise.
1878 (gdk_pixbuf_animation_get_num_frames): Likewise.
1879 (gdk_pixbuf_animation_get_frames): Likewise.
1881 * doc/gdk-pixbuf-sections.txt: Updated with the new functions and
1884 * doc/tmpl/gdk-pixbuf.sgml: Added the description for GdkColorspace.
1886 * doc/tmpl/scaling.sgml: Added the description for GdkInterpType.
1888 * doc/tmpl/refcounting.sgml: Updated with the information about
1889 the last unref handler.
1891 * doc/tmpl/*.sgml: Markup tweaks.
1893 * gdk-pixbuf/Makefile.am (libgnomecanvaspixbuf_la_LDFLAGS): Sigh,
1894 update the libtool version number for libgnomecanvaspixbuf as
1896 (libpixbufloader_*_la_LDFLAGS): The loaders need to be versioned
1897 as well, or the old ones won't work with the new stuff. Also,
1898 renamed the modules as follows.
1900 * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_load_module): Now the
1901 modules are called "libpixbufloader-<format>.so" instead of
1902 "libpixbuf-<format>.so". They needed renaming so that the new
1903 loaders won't overwrite the old ones; even with the versioning
1904 stuff, the new .so symlink to the .so.1.0.0 would overwrite the
1907 2000-04-12 Paolo Molaro <lupus@debian.org>
1909 * .cvsignore, src/.cvsignore: shut up cvs.
1911 2000-04-11 Federico Mena Quintero <federico@helixcode.com>
1913 Most of this patch is based on a patch by Havoc Pennington
1914 (hp@redhat.com) to make GdkPixbuf's structures opaque and to
1915 remove the libart dependency.
1917 * gdk-pixbuf/gdk-pixbuf.h: Removed the public structures.
1918 (GdkColorspace): New enum that for now only contains
1920 (GdkPixbufDestroyNotify): New type for the pixbuf's pixels destroy
1921 notification function.
1922 (GdkInterpType): New num with interpolation types.
1924 * *.[ch]: Replace the libart stuff with our own stuff.
1926 * pixops/*.[ch]: Likewise.
1928 * gdk-pixbuf/gdk-pixbuf-private.h: New file with the private
1929 declarations of the GdkPixbuf structures.
1931 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_new_from_art_pixbuf):
1933 (gdk_pixbuf_get_format): Constify.
1934 (gdk_pixbuf_get_n_channels): Constify.
1935 (gdk_pixbuf_get_has_alpha): Constify.
1936 (gdk_pixbuf_get_bits_per_sample): Constify.
1937 (gdk_pixbuf_get_pixels): Constify.
1938 (gdk_pixbuf_get_width): Constify.
1939 (gdk_pixbuf_get_height): Constify.
1940 (gdk_pixbuf_get_rowstride): Constify.
1942 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_copy): New function to copy
1945 * gdk-pixbuf/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Added a
1946 bits_per_sample argument; currently only 8 bits per sample are
1949 * gdk-pixbuf/gdk-pixbuf-animation.c (gdk_pixbuf_frame_get_pixbuf):
1951 (gdk_pixbuf_frame_get_x_offset): New accessor.
1952 (gdk_pixbuf_frame_get_y_offset): New accessor.
1953 (gdk_pixbuf_frame_get_delay_time): New accessor.
1954 (gdk_pixbuf_frame_get_action): New accessor.
1956 * gdk-pixbuf/gdk-pixbuf-render.c
1957 (gdk_pixbuf_render_pixmap_and_mask): Instead of returning a solid
1958 mask rectangle for pixbufs without an alpha channel, set the
1959 *mask_return to NULL.
1961 * gdk-pixbuf/gdk-pixbuf-util.c (gdk_pixbuf_add_alpha): Constify.
1963 * gdk-pixbuf/gdk-pixbuf-scale.c: Fix includes.
1965 * gdk-pixbuf/gdk-pixbuf-scale.c (gdk_pixbuf_scale): Added some
1966 preconditions. Maybe we should also check for the colorspace,
1967 bits per pixel, and such.
1968 (gdk_pixbuf_composite): Likewise.
1969 (gdk_pixbuf_composite_color): Likewise.
1970 (gdk_pixbuf_scale_simple): Likewise, and fail gracefully if we
1971 cannot allocate the new pixbuf.
1972 (gdk_pixbuf_composite_color_simple): Likewise.
1974 * gdk-pixbuf/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_render):
1975 Use art_rgb_rgba_affine() or art_rgb_affine() since we no longer
1978 * gdk-pixbuf/io-bmp.c: Fix includes.
1980 * gdk-pixbuf/pixops/pixops.c (pixops_scale_nearest): Fixed cast in
1985 * configure.in: Removed checks for libart.
1987 * gdk-pixbuf/Makefile.am: Removed references to libart.
1988 (noinst_HEADERS): Added gdk-pixbuf-private.h.
1990 * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_LDFLAGS): Incremented
1991 the version number of the libtool library to indicate that this
1992 definitely is not compatible with the old usage. I know you love
1995 * configure.in: Bumped version number to 0.7.0.
1999 * gdk-pixbuf-config.in (--libs): We no longer require libart.
2001 * DEPENDS.libgdk_pixbuf: We no longer depend on libart.
2003 * gdk-pixbuf.spec.in: Updated, but I don't guarantee anything.
2005 2000-04-06 Jonathan Blandford <jrb@redhat.com>
2007 * gdk-pixbuf/testanimation.c (main): add more info to the
2008 testanimation frames.
2010 2000-04-04 Ettore Perazzoli <ettore@helixcode.com>
2012 * gdk-pixbuf/gdk-pixbuf-animation.c
2013 (gdk_pixbuf_animation_get_width): New accessor function.
2014 (gdk_pixbuf_animation_get_height): New accessor function.
2015 (gdk_pixbuf_animation_get_num_frames): New accessor function.
2016 (gdk_pixbuf_animation_get_frames): New accessor function.
2018 2000-04-01 Federico Mena Quintero <federico@helixcode.com>
2020 * gdk-pixbuf/gdk-pixbuf.c: Reverted Mark's change. The refcount
2021 is private information, and the art_pixbuf will go away soon.
2023 2000-03-31 Mark Crichton <crichton@gimp.org>
2025 * gdk-pixbuf/gdk-pixbuf.c: Added gdk_pixbuf_get_refcount
2026 and gdk_pixbuf_get_artpixbuf accessor functions.
2028 2000-03-29 Federico Mena Quintero <federico@helixcode.com>
2030 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_get_has_alpha): Return
2031 gboolean instead of int.
2033 2000-03-29 Radek Doulik <rodo@helixcode.com>
2035 * gdk-pixbuf/gdk-pixbuf-animation.c
2036 (gdk_pixbuf_animation_new_from_file): same as below
2038 * gdk-pixbuf/io-gif.c (gif_get_lzw): added update of width and
2039 height in GdkPixbufAnimation
2041 2000-03-28 Radek Doulik <rodo@helixcode.com>
2043 * gdk-pixbuf/io-gif.c (gif_get_lzw): test also for
2044 context->frame_done_func and context->anim_done_func to make
2045 progressive animation loading work
2047 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
2048 added priv->pixbuf = NULL as pixbuf is now in frame (and to make
2049 gdk_pixbuf_loader_prepare happy)
2050 (gdk_pixbuf_loader_frame_done): update animation bbox
2052 * gdk-pixbuf/gdk-pixbuf.h: added bbox size (width, height) to
2055 2000-03-27 Radek Doulik <rodo@helixcode.com>
2057 * gdk-pixbuf/io-gif.c (gif_get_lzw): use frame_len and frame_width
2058 instead of width and height
2060 2000-03-27 Owen Taylor <otaylor@redhat.com>
2062 * gdk-pixbuf/pixops/pixops.c: Fix problem with
2063 precendence of >> and & which was keeping composite_color
2064 from working with non-gray images.
2066 2000-03-08 Jonathan Blandford <jrb@redhat.com>
2068 * gdk-pixbuf/io-gif.c (gdk_pixbuf__gif_image_load): free the context.
2069 (gdk_pixbuf__gif_image_load_animation): free the context.
2071 2000-03-06 Arjan van de Ven <arjan@fenrus.demon.nl>
2073 * gdk-pixbuf/io-bmp.c: Fixed to pointer-bugs and a
2074 mis-interpretation of the Microsoft documentation. Now
2075 it can load .BMP files that are not generated by The Gimp
2078 2000-03-01 Mark Crichton <crichton@gimp.org>
2080 * configure.in: Added BUILD_CANVAS_ITEM stuff to (finally)
2081 fix the last auto* build bug (where we have libart, but no
2084 * gdk-pixbuf/Makefile.am: Same.
2086 2000-02-28 Matt Wilson <msw@redhat.com>
2088 * gdk-pixbuf/gdk-pixbuf-drawable.c: s/unsigned long/guint32/g,
2089 s/unsigned short/guint16/g, s/unsigned char/guint8/g
2091 2000-02-26 Federico Mena Quintero <federico@helixcode.com>
2093 * README: We don't require libgif/ungif nor libXpm.
2095 * NEWS: This was outdated, so updated it.
2097 2000-02-25 Federico Mena Quintero <federico@helixcode.com>
2099 * gdk-pixbuf.m4: Use the correct name for
2100 gdk-pixbuf/gdk-pixbuf.h. Thanks to Jacob Berkman for pointing
2103 2000-02-21 Federico Mena Quintero <federico@helixcode.com>
2105 * configure.in (GDK_PIXBUF_MINOR): Bumped version number to 0.6.0.
2107 * doc/compiling.sgml: New appendix documenting the gdk-pixbuf
2108 library's particular options to configure.in.
2110 * doc/gdk-pixbuf.sgml: Include compiling.sgml appendix via an
2113 * doc/Makefile.am (gdk-pixbuf.html): Added compiling.sgml.
2115 * gdk-pixbuf/io-ico.c (gdk_pixbuf__ico_image_load_increment):
2116 Fixed typo in prototype name.
2118 * configure.in: Changed duplicated AC_MSG_CHECKING message to
2119 something more meaningful; now it is "checking whether dynamic
2122 * gdk-pixbuf/pixops/Makefile.am (noinst_PROGRAMS): Do not install
2123 the timescale program.
2125 Integrated Miguel de Icaza's <miguel@gnu.org> patch for optionally
2126 creating a single static library with all the image format modules
2129 2000-02-20 Miguel de Icaza <miguel@gnu.org>
2131 * gdk-pixbuf/io-xpm.c (gdk_pixbuf__xpm_image_load): Add prefix.
2132 (gdk_pixbuf__xpm_image_load_xpm_data): Add prefix.
2134 * gdk-pixbuf/io-tiff.c (gdk_pixbuf__tiff_image_load_real): Add prefix.
2135 (gdk_pixbuf__tiff_image_stop_load): Add prefix.
2136 (gdk_pixbuf__tiff_image_load_increment): Add prefix.
2137 (gdk_pixbuf__tiff_image_load): Add prefix.
2138 (gdk_pixbuf__tiff_image_stop_load): Update invocation.
2139 (gdk_pixbuf__tiff_image_begin_load): Add prefix.
2141 * gdk-pixbuf/io-ras.c (gdk_pixbuf__ras_image_load): Add prefix.
2142 (gdk_pixbuf__ras_image_load): Updated invocation.
2143 (gdk_pixbuf__ras_image_begin_load): Add prefix.
2144 (gdk_pixbuf__ras_image_stop_load): Add prefix.
2145 (gdk_pixbuf__ras_image_load_increment): Add prefix.
2147 * gdk-pixbuf/io-pnm.c (gdk_pixbuf__pnm_image_begin_load): Add prefix.
2148 (gdk_pixbuf__pnm_image_stop_load): Add prefix.
2149 (gdk_pixbuf__pnm_image_load_increment): Add prefix
2150 (gdk_pixbuf__pnm_image_load): Add prefix.
2152 * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_load): Add prefix.
2153 (gdk_pixbuf__jpeg_image_load_increment): Add prefix.
2154 (gdk_pixbuf__jpeg_image_begin_load): Add prefix.
2155 (gdk_pixbuf__jpeg_image_stop_load): Add prefix.
2157 * gdk-pixbuf/io-ico.c (gdk_pixbuf__ico_image_load): Add prefix.
2158 (gdk_pixbuf__ico_image_load): update invocation.
2159 (gdk_pixbuf__ico_image_load_increment): Add prefix.
2160 (gdk_pixbuf__ico_image_load): update invocation.
2161 (gdk_pixbuf__ico_image_begin_load): Add prefix.
2162 (gdk_pixbuf__ico_image_load): update invocation.
2163 (gdk_pixbuf__ico_image_stop_load): Add prefix.
2165 * gdk-pixbuf/io-gif.c (gdk_pixbuf__gif_image_load_animation): Add prefix.
2166 (gdk_pixbuf__gif_image_load): Add prefix.
2167 (gdk_pixbuf__gif_image_begin_load): Add prefix.
2168 (gdk_pixbuf__gif_image_load_increment): Add prefix.
2169 (gdk_pixbuf__gif_image_load_animation): Add prefix.
2170 (gdk_pixbuf__gif_image_stop_load): Add prefix.
2172 * gdk-pixbuf/io-bmp.c (gdk_pixbuf__bmp_image_load): Add prefix.
2173 (gdk_pixbuf__bmp_image_load): Rename function called.
2174 (gdk_pixbuf__bmp_image_load_increment): Add prefix
2176 * gdk-pixbuf/io-png.c (gdk_pixbuf__png_image_load): Add prefix.
2177 (gdk_pixbuf__png_image_begin_load): Add prefix.
2178 (gdk_pixbuf__png_image_stop_load): Add prefix.
2179 (gdk_pixbuf__png_image_load_increment): Add prefix.
2181 * gdk-pixbuf/gdk-pixbuf-io.c (file_formats): Make this static.
2182 (gdk_pixbuf_load_module): Load the shared library entry points
2183 using a "gdk_pixbuf__$module_name" prefix.
2184 (pixbuf_module_symbol): Wrapper routine that uses the module
2185 prefix for the modules to load the information.
2187 * configure.in (GDK_PIXBUF_VERSION): New option --disable-modules
2188 lets the user specify that gdk-pixbuf should link all image loader
2189 code into the library instaed of creating shared library modules.
2191 (dynworks): Renamed the automake conditional DYNAMIC_MODULES_WORK
2192 to BUILD_DYNAMIC_MODULES.
2194 2000-02-19 Jonathan Blandford <jrb@redhat.com>
2196 * gdk-pixbuf/io-gif.c (new_context): fix case where initial
2197 colormap entry is Transparent.
2199 2000-02-19 Owen Taylor <otaylor@redhat.com>
2201 * gdk-pixbuf/pixops/pixops.c (scale_pixel): Fix error in
2202 scale factors for non-alpha case.
2204 2000-02-14 Mark Crichton <crichton@gimp.org>
2206 * gdk-pixbuf/io-xpm.c (xpm_extract_color): Added check for "g" color type.
2207 Imlib/libXpm handle this, but we didn't.
2209 2000-02-14 Darin Adler <darin@eazel.com>
2211 * gdk-pixbuf/testpixbuf.c: Remove now-unnecessary cast.
2212 * .cvsignore: gdk-pixbuf/.cvsignore: More to ignore.
2214 2000-02-14 Elliot Lee <sopwith@redhat.com>
2215 * gdk-pixbuf/gdk-pixbuf.h, gdk-pixbuf/gdk-pixbuf-data.c: Make passed-in argument 'const'.
2217 2000-02-04 Michael Meeks <mmeeks@gnu.org>
2219 * gdk-pixbuf/io-gif.c (struct _GifContext): add x,y_offset.
2220 (gif_get_frame_info): put the offsets on the context.
2221 (gif_get_lzw): copy them off into the frame.
2222 (new_context): no change required; will 0 offsets by default.
2224 2000-01-28 Michael Meeks <michael@mejm2.dow.cam.ac.uk>
2226 * gdk-pixbuf/pixops/pixops.c (pixops_process): const + nasty
2229 * gdk-pixbuf/pixops/pixops.h: const.
2231 * gdk-pixbuf/gdk-pixbuf-util.c: const.
2233 * gdk-pixbuf/gdk-pixbuf-scale.c: const.
2235 * gdk-pixbuf/gdk-pixbuf.h: constify lots of things.
2237 2000-02-03 Federico Mena Quintero <federico@helixcode.com>
2239 * gdk-pixbuf/gdk-pixbuf-render.c
2240 (gdk_pixbuf_render_threshold_alpha): Added sanity check for width
2241 and height being >= 0. Also, do nothing if either of them is
2242 zero. Thanks to Ettore for pointing this out.
2243 (gdk_pixbuf_render_to_drawable): Likewise.
2244 (gdk_pixbuf_render_to_drawable_alpha): Likewise.
2246 2000-02-02 Federico Mena Quintero <federico@helixcode.com>
2248 * gdk-pixbuf/io-gif.c (gif_get_lzw): Removed debugging g_print.
2249 Thanks to John Sullivan <sullivan@eazel.com> for the patch.
2251 * gdk-pixbuf/testpixbuf-drawable.c (configure_cb): Get a new area
2252 of the screen when the window is resized. Thanks to David
2253 N. Welton <davidw@linuxcare.com> for pointing this out.
2254 Misc. cleanups to the rest of the file.
2256 2000-02-01 Federico Mena Quintero <federico@helixcode.com>
2258 * doc/tmpl/rendering.sgml: gnome_init() does not call
2259 gdk_rgb_init(), so don't mention that it does in the
2260 documentation. Thanks to Alexander Kruuse <kruuse@home.se> for
2263 2000-01-31 Havoc Pennington <hp@redhat.com>
2265 * gdk-pixbuf/Makefile.am (noinst_PROGRAMS): no testpixbuf-foo target
2267 Mon Jan 31 12:38:50 2000 Owen Taylor <otaylor@redhat.com>
2269 * gdk-pixbuf/pixops/pixops.c (scale_line): Fix from Peter
2270 Wainwright to fix 4a => 4a scaling.
2272 2000-01-29 Mark Crichton <crichton@gimp.org>
2274 * gdk-pixbuf-config: Oh dear, we weren't Telsa/Alan proof...
2275 put `libart-config --libs` in instead of -lart_lgpl.
2277 2000-01-22 Federico Mena Quintero <federico@helixcode.com>
2279 * gdk-pixbuf/io-pnm.c (pnm_read_raw_scanline): Return an error on
2281 (pnm_read_ascii_scanline): Initialize data and mask.
2283 * gdk-pixbuf/io-xpm.c (pixbuf_create_from_xpm): Initialize
2284 fallbackcolor to keep gcc happy.
2286 * configure.in: Bumped version number to 0.5.0.
2288 * gdk-pixbuf/pixops/timescale.c (dump_array): Removed unused variable.
2291 * gdk-pixbuf/pixops/pixops.c (pixops_composite_color_nearest): Put
2292 parentheses around + in a shift to remove a compiler warning.
2293 (pixops_process): Likewise.
2295 Patch from Ross Golder <rossigee@bigfoot.com> to create an RPM
2298 * configure.in: Added gdk-pixbuf.spec to AC_OUTPUT.
2300 * Makefile.am (EXTRA_DIST): Added gdk-pixbuf.spec.in
2302 2000-01-22 Federico Mena Quintero <federico@helixcode.com>
2304 * gdk-pixbuf/gnome-canvas-pixbuf.c (PixbufPrivate): Removed the
2305 x_set and y_set arguments. Now they are always on and start with
2306 defaults of 0.0 in units.
2307 (gnome_canvas_pixbuf_class_init): Likewise.
2308 (gnome_canvas_pixbuf_set_arg): Likewise.
2309 (gnome_canvas_pixbuf_get_arg): Likewise.
2310 (compute_viewport_affine): Likewise; always use the priv->x and
2313 * doc/tmpl/gnome-canvas-pixbuf.sgml: Modified to reflect the
2314 removal of the x_set/y_set arguments.
2316 2000-01-21 Federico Mena Quintero <federico@helixcode.com>
2318 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_ref): Return the same pixbuf
2319 as the input parameter.
2321 * gdk-pixbuf/gdk-pixbuf-animation.c (gdk_pixbuf_animation_ref):
2322 Return the same animation as the input parameter.
2324 2000-01-16 Elliot Lee <sopwith@redhat.com>
2326 * gdk-pixbuf/Makefile.am: Don't link against libgnomecanvaspixbuf.la
2328 2000-01-16 Federico Mena Quintero <federico@helixcode.com>
2330 * configure.in: Removed the broken --enable-canvas-pixbuf option.
2331 Added the stuff necessary to substitute the variables in
2332 gnomecanvaspixbufConf.sh.in.
2334 * gnomecanvaspixbufConf.sh.in: New gnome-config handler for the
2335 tiny gnomecanvaspixbuf library.
2337 * Makefile.am: Build gnomecanvaspixbufConf.sh.
2339 * gdk-pixbuf/Makefile.am: Create a libgnomecanvaspixbuf and only
2340 build it if gdk-pixbuf is being built outside of gnome-libs.
2342 * doc/gdk-pixbuf-sections.txt: Added gdk_pixbuf_render_pixmap_and_mask().
2344 * gdk-pixbuf/gdk-pixbuf-render.c
2345 (gdk_pixbuf_render_pixmap_and_mask): Renamed from
2346 gdk_pixbuf_render_pixmap(). Do not create the mask if it is not
2347 needed, and do not use a clipping mask when rendering the pixmap.
2348 Tweaked documentation a little.
2350 * HACKING: New file with hacking policies for the gdk-pixbuf
2353 * doc/Makefile.am (tmpl_sources): Added missing backslash.
2355 * doc/Makefile.am: Use gnomecanvaspixbuf in gnome-config when
2356 scanning for docstrings.
2358 * gdk-pixbuf/gdk-pixbuf-util.c (gdk_pixbuf_copy_area): Made sanity
2359 checks more stringent. Removed "gint" abominations. Made
2360 documentation consistent with the rest of the functions.
2362 * doc/gdk-pixbuf-sections.txt: Added gdk_pixbuf_copy_area() to the
2365 2000-01-14 Jonathan Blandford <jrb@redhat.com>
2367 * gdk-pixbuf/gdk-pixbuf-render.c (gdk_pixbuf_render_pixmap): new
2368 function to let you create a gdk_pixmap from a gdk_pixbuf.
2370 2000-01-11 Jacob Berkman <jacob@helixcode.com>
2372 * gdk-pixbuf/pixops/Makefile.am (INCLUDES): added
2373 $LIBART_CFLAGS to $INCLUDES
2375 2000-01-10 Elliot Lee <sopwith@redhat.com>
2377 * configure.in, gdk-pixbuf/Makefile.am: Build a libcanvas_pixbuf.
2379 * configure.in: Define version macros. Generate
2380 gdk-pixbuf/gdk-pixbuf-features.h. Always INSIDE_GNOME.
2382 * gdk-pixbuf/Makefile.am: Add gdk-pixbuf-features.h
2384 * gdk-pixbuf/gdk-pixbuf.c: Add definitions of
2385 gdk-pixbuf-features.h declarations, plus some initialization
2388 2000-01-05 Owen Taylor <otaylor@redhat.com>
2390 * gdk-pixbuf/pixops/pixops.c: Fixed src_channels/dest_channels
2391 confusion. (Again caught by Tomas Ogren's Purify)
2393 2000-01-07 Jonathan Blandford <jrb@redhat.com>
2395 * gdk-pixbuf/gdk-pixbuf-xform.c (gdk_pixbuf_rotate): comment out
2398 * gdk-pixbuf/gdk-pixbuf-io.c: Added progressive animation loading.
2399 * gdk-pixbuf/gdk-pixbuf-io.h: Added progressive animation loading.
2400 * gdk-pixbuf/gdk-pixbuf-loader.c: Added progressive animation
2402 * gdk-pixbuf/gdk-pixbuf-loader.h: Added progressive animation
2404 * gdk-pixbuf/io-gif.c (image_load_increment): I think the
2405 ref-counting mess is finally fixed. Added progressive animation
2407 (gif_get_lzw): remove memory_leak
2409 * doc/tmpl/gdk-pixbuf-loader.sgml: much longer long description
2412 2000-01-05 Owen Taylor <otaylor@redhat.com>
2414 * gdk-pixbuf/pixops/pixops.c (pixops_process): Fix computation of end of run indices.
2416 * gdk-pixbuf/pixops/pixops.c: Fix double increments when dest_channels == 4.
2417 (Pointed out by Tomas Ogren)
2419 2000-01-05 Mark Crichton <crichton@gimp.org>
2421 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_eat_header_write):
2422 Return 0 if gdk_pixbuf_load_loader_module returns FALSE.
2424 2000-01-05 Elliot Lee <sopwith@redhat.com>
2426 * gdk-pixbuf/pixops/Makefile.am: Link with -lm (to get 'ceil' function)
2428 2000-01-05 Owen Taylor <otaylor@redhat.com>
2430 * doc/Makefile.am doc/gdk-pixbuf-sections.txt
2431 doc/gdk-pixbuf.sgml doc/tmpl/scaling.sgml:
2432 Added scaling functions into gtk-doc framework.
2434 * gdk-pixbuf/gdk-pixbuf-scale.c: Documentation fixes.
2436 * gdk-pixbuf/testpixbuf-scale.c (expose_cb): Simplify a bit.
2438 * gdk-pixbuf/pixops/pixops.c (pixops_composite_color): Return
2439 immediately if scale_x or scale_y is 0.
2441 2000-01-05 Owen Taylor <otaylor@redhat.com>
2443 * gdk-pixbuf/pixops/timescale.c: quick fix for initializing
2444 arrays in benchmark.
2446 2000-01-05 Jonathan Blandford <jrb@redhat.com>
2448 * gdk-pixbuf/gdk-pixbuf-io.h: Change the order of the update func
2449 to make it more compatible with the rest of GTK. Added animation
2450 framework for progressive loading.
2452 * gdk-pixbuf/io-bmp.c (image_begin_load): Modified to handle new
2454 * gdk-pixbuf/io-ico.c (image_begin_load): ditto
2455 * gdk-pixbuf/io-png.c (image_begin_load): ditto
2456 * gdk-pixbuf/io-ras.c (image_begin_load): ditto
2457 * gdk-pixbuf/io-jpeg.c (image_begin_load): ditto
2458 * gdk-pixbuf/io-pnm.c (image_begin_load): ditto
2459 * gdk-pixbuf/io-tiff.c (image_begin_load): ditto
2460 * gdk-pixbuf/io-gif.c (image_begin_load): ditto
2462 2000-01-05 Owen Taylor <otaylor@redhat.com>
2464 * gdk-pixbuf/pixops/README: Added a README with a TODO
2465 and some explainations of the algorithms.
2467 * gdk-pixbuf/testpixbuf-scale.c: Set a background pixmap of None
2468 to reduce flashing when resizing.
2470 2000-01-05 Owen Taylor <otaylor@redhat.com>
2472 * gdk-pixbuf/pixops/: Directory full of pixel data scaling
2473 code that will eventually migrate into libart.
2475 * configure.in acconfig.h: Add checks for MMX compiler support
2477 * gdk-pixbuf/gdk-pixbuf.h gdk-pixbuf/gdk-pixbuf-scale.c:
2478 Nice wrapper routines for the code in pixops that operate
2479 on pixbufs instead of raw data.
2481 * gdk-pixbuf/testpixbuf-scale: Test program for scaling
2484 2000-01-05 Jonathan Blandford <jrb@redhat.com>
2486 * doc/tmpl/animation.sgml: Documentation changes.
2488 2000-01-01 Federico Mena Quintero <federico@helixcode.com>
2490 * gdk-pixbuf/gdk-pixbuf.h (GdkPixbufAnimation): Added reference
2491 counting to animations. A web browser may want to share a single
2492 copy of an animated GIF if it appears multiple times in a web
2495 * gdk-pixbuf/gdk-pixbuf-animation.c: New file. Moved the
2496 animation functions here.
2497 (gdk_pixbuf_animation_new_from_file): Prettified. Return a NULL
2498 animation if the loader does not support multiframe loading and
2499 the single-frame load returned NULL. Check that the filename is
2500 not NULL. Updated inline documentation.
2501 (gdk_pixbuf_animation_ref): New function.
2502 (gdk_pixbuf_animation_unref): New function.
2503 Removed gdk_pixbuf_animation_destroy() in favor of reference
2506 * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_new_from_file):
2507 Prettified. Made ref_count assertion more paranoid. Check that
2508 the filename is not NULL.
2509 (gdk_pixbuf_get_module): Use guchar * and guint for buffer and
2511 (gdk_pixbuf_new_from_xpm_data): Changed the "data" argument to
2514 * gdk-pixbuf/io-gif.c (image_load_animation): Create the animation
2515 with a reference count of 1.
2517 * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_SOURCES): Added
2518 gdk-pixbuf-animation.c.
2520 * doc/tmpl/animation.sgml: Populated. It is still missing a
2521 description of the overlay modes.
2523 * doc/gdk-pixbuf-sections.txt: Added the animation section. Moved
2524 the canvas item section to the end, as it will be moved later to
2527 * doc/gdk-pixbuf.sgml: Added the animation section.
2529 * doc/Makefile.am (tmpl_sources): Added tmpl/animation.sgml.
2531 1999-12-26 Peter Teichman <pat@gnu.org>
2533 * gdk-pixbuf/Makefile.am (libpixbuf_tiff_la_LIBADD): add
2534 $(LIBTIFF) to libpixbuf_tiff_la_LIBADD, proxying for mmarker.
2535 This closes bug #4676.
2537 1999-12-23 Havoc Pennington <hp@pobox.com>
2539 * gdk-pixbuf/io-gif.c (image_load): Stuff that should have been
2540 set to NULL here (specifically context->animation) was not being
2541 set to NULL. use g_new0() to alloc the struct.
2543 1999-12-20 Jonathan Blandford <jrb@redhat.com>
2545 * gdk-pixbuf/io-gif.c: finished work to make animated gifs load
2546 correctly. Progressive loading needs some work, but that all
2547 needs doing from the gdk-pixbuf-loader end, not here.
2549 1999-12-17 Jonathan Blandford <jrb@redhat.com>
2551 * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_animation_new_from_file):
2552 moved the file here. It seems natural to put this function here,
2553 as that's where the gdk_pixbuf_new_from_file function is, but it's
2554 still a little convoluted. The source files might be played with
2557 1999-12-14 Jonathan Blandford <jrb@redhat.com>
2559 * gdk-pixbuf/gdk-pixbuf-loader.c
2560 (gdk_pixbuf_loader_get_animation): Gets the animation from the
2563 1999-12-16 Federico Mena Quintero <federico@redhat.com>
2565 * doc/tmpl/rendering.sgml: Added notice about initializing GdkRGB
2566 before using the GdkPixbuf rendering functions. Thanks to Joe
2567 Shaw <joe@off.net> for pointing this out.
2569 1999-12-13 Federico Mena Quintero <federico@redhat.com>
2571 * gdk-pixbuf/gnome-canvas-pixbuf.c
2572 (gnome_canvas_pixbuf_class_init): Renamed arguments to
2573 width_in_pixels, height_in_pixels, x_in_pixels, y_in_pixels, for
2574 consistency with the new canvas.
2575 (PixbufPrivate): Do the same renaming in the structure fields, for
2578 * doc/tmpl/gnome-canvas-pixbuf.sgml: Updated for new argument names.
2580 1999-12-12 Federico Mena Quintero <federico@redhat.com>
2582 * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_LDFLAGS): Use a
2583 conditional to see whether to link $(GNOME_LIBS) or not.
2585 1999-12-10 Jonathan Blandford <jrb@redhat.com>
2587 * gdk-pixbuf/gdk-pixbuf-io.h: thinking about the new loading API.
2589 * gdk-pixbuf/gdk-pixbuf-drawable.c (gdk_pixbuf_get_from_drawable):
2590 make a warning go away.
2592 * gdk-pixbuf/gdk-pixbuf.h: added new prototypes for animations.
2594 * gdk-pixbuf/gdk-pixbuf-loader.h: added new prototypes for
2597 1999-12-09 Michael Zucchi <zucchi@zedzone.mmc.com.au>
2599 * gdk-pixbuf/gdk-pixbuf.h: Enable gdk_pixbuf_get_from_drawable()
2602 * gdk-pixbuf/gdk-pixbuf-drawable.c (gdk_pixbuf_get_from_drawable):
2603 Filled in body of function.
2604 (rgbconvert): Added GdkColormap parameter, and to all conversion
2606 (convert_real_slow): New function - should convert ANY visual/data
2607 format properly, but it aint fast. Used as a fallback when an
2608 optimised routine wont match.
2609 (rgbconvert): Do very specific tests on the data format to verify
2610 properly if the optimised version will do, otherwise use the
2611 fallback function for all other data formats.
2613 * gdk-pixbuf/Makefile.am: Re-enabled building of
2614 textpixbuf-drawable.
2616 * gdk-pixbuf/testpixbuf-drawable.c (main): Changed to use
2617 gdk_pixbuf_get_from_drawable().
2619 1999-12-08 Arjan van de Ven <arjan@fenrus.demon.nl>
2621 * gdk-pixbuf/gdk-pixbuf-drawable.c : Fixed the red/green/red
2622 bug on two occasions.
2623 * gdk-pixbuf/io-ras.c: Changed from the custom be32_to_cpu
2624 function to the generic glib one.
2626 1999-12-08 Federico Mena Quintero <federico@redhat.com>
2628 * gdk-pixbuf/gdk-pixbuf-drawable.c: Fix includes.
2629 (gdk_pixbuf_get_from_drawable): Implemented the zillion sanity
2630 checks and API definition. The body needs filling in and it needs
2631 to do the Right Thing(tm) for pixmaps plus the given colormap and
2632 windows and their own colormaps.
2634 * gdk-pixbuf/gdk-pixbuf.h: Added prototype for
2635 gdk_pixbuf_get_from_drawable(). Killed gdk-pixbuf-drawable.h.
2637 * gdk-pixbuf/Makefile.am: Re-added the gdk-pixbuf-drawable sources.
2639 * doc/tmpl/from-drawables.sgml: Populated.
2641 * doc/gdk-pixbuf.sgml: Added the from-drawables section.
2643 * doc/Makefile.am (tmpl_sources): Added tmpl/from-drawables.sgml.
2645 * doc/gdk-pixbuf-sections.txt: Added a section for getting pixbufs
2648 1999-12-07 Federico Mena Quintero <federico@redhat.com>
2650 * doc/tmpl/gnome-canvas-pixbuf.sgml: Added clarification about
2651 reference counting for GdkPixbuf structures.
2653 1999-12-07 Martin Baulig <martin@home-of-linux.org>
2655 * gdk-pixbuf/Makefile.am (testpixbuf_LDADD): Conditionally
2656 include $(GNOME_LIBS) here.
2658 1999-12-05 Arjan van de Ven <arjan@fenrus.demon.nl>
2660 Added missing "include <string.h>" to:
2661 * gdk-pixbuf/io-ras.c
2662 * gdk-pixbuf/io-bmp.c
2663 * gdk-pixbuf/io-ico.c
2665 1999-12-06 Federico Mena Quintero <federico@redhat.com>
2667 * gdk-pixbuf/gdk-pixbuf-io.c (file_formats): Patch from Arjan to
2670 1999-12-05 Federico Mena Quintero <federico@redhat.com>
2672 * gdk-pixbuf/Makefile.am (testpixbuf_LDADD): Add back
2673 $(GNOME_LIBS). This must compile outside of gnome-libs. If you
2674 want, send me a patch to do the conditional stuff properly.
2675 Otherwise, please read the GNOME Programming Guidelines,
2676 especially the "CVS policies" section.
2678 1999-12-05 Jaka Mocnik <jaka.mocnik@kiss.uni-lj.si>
2680 * gdk-pixbuf/Makefile.am: removed GNOME_LIBS from testpixbuf_LDADD.
2682 1999-12-05 Arjan van de Ven <arjan@fenrus.demon.nl>
2684 * gdk-pixbuf/io-ico.c: Bug in palet-size
2687 1999-12-04 Arjan van de Ven <arjan@fenrus.demon.nl>
2689 * gdk-pixbuf/io-bmp.c: Major cleanup, added support for
2690 32 bpp and 4 bpp (uncompressed) images, fixed 1bpp.
2692 * gdk-pixbuf/io-ras.c: Minor cleanup, ran through lclint
2694 * gdk-pixbuf/io-ico.c: Minor cleanup, fixed 1bpp icons,
2697 * gdk-pixbuf/gdk-pixbuf-io.c: Added detection of .CUR files
2698 (Windows Cursor files). These are identical to .ICO files,
2699 except for the signature and 2 extra fields for the hotspot.
2701 1999-12-03 Federico Mena Quintero <federico@redhat.com>
2703 * gdk-pixbuf/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_get_arg):
2704 Removed unused variable `item'.
2706 1999-12-03 Jonathan Blandford <jrb@redhat.com>
2708 * gdk-pixbuf/io-gif.c (gif_fill_in_lines): added a comment to
2709 explain this function better.
2711 1999-12-02 Federico Mena Quintero <federico@redhat.com>
2713 Source files moved from src/ to gdk-pixbuf/, to be consistent with
2716 * doc/Makefile.am: Modified for the new source directory.
2718 * configure.in: Likewise.
2720 * Makefile.am: Likewise.
2722 * autogen.sh: Likewise.
2724 * gdk-pixbuf/Makefile.am: Likewise.
2726 1999-12-02 Federico Mena Quintero <federico@redhat.com>
2728 * src/testpixbuf.c: #include <config.h>, and fix includes.
2730 * src/testpixbuf-drawable.c: #include <config.h>, and fix includes.
2732 * src/io-xpm.c: Fix includes.
2734 * src/io-tiff.c: Fix includes.
2736 * src/io-ras.c: Fix includes, and do not include more stuff than needed.
2738 * src/io-pnm.c: Fix inlcudes, and do not include more stuff than needed.
2740 * src/io-png.c: Fix includes.
2742 * src/io-ico.c: Fix includes, and do not include more stuff than needed.
2744 * src/io-gif.c: Fix includes, and do not include more stuff than needed.
2746 * src/io-bmp.c: Fix includes, and do not include more stuff than needed.
2748 * src/gnome-canvas-pixbuf.c: Fix includes.
2750 * src/gdk-pixbuf.c: Fix includes.
2752 * src/gdk-pixbuf-util.c: Fix includes.
2754 * src/gdk-pixbuf-render.c: Fix includes.
2756 * src/gdk-pixbuf-io.h: Fix includes.
2758 * src/gdk-pixbuf-drawable.c: Fix includes.
2760 * src/gdk-pixbuf-drawable.h: Use angle brackets for the gdk-pixbuf
2763 * src/gdk-pixbuf-data.c: Fix includes.
2765 * src/gdk-pixbuf-loader.c: #include <config.h>
2767 * src/gdk-pixbuf-loader.h: Use angle brackets for the gdk-pixbuf
2770 * src/Makefile.am: Commented out the gdk-pixbuf-drawable stuff,
2771 since it is not finished.
2773 * src/gdk-pixbuf.h: Removed unused transformation prototypes.
2775 * src/gdk-pixbuf-util.c: New file with utility and convenience
2776 functions for pixbufs.
2778 * src/Makefile.am (libgdk_pixbuf_la_SOURCES): Added gdk-pixbuf-util.c.
2780 * doc/gdk-pixbuf-sections.txt: Added section for utility functions.
2782 * doc/Makefile.am (tmpl_sources): Added tmpl/util.sgml.
2784 * doc/gdk-pixbuf.sgml: Added the utilities section.
2786 * doc/tmpl/util.sgml: Documentation for the utility functions.
2788 1999-11-29 Owen Taylor <otaylor@redhat.com>
2790 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
2791 Keep the mask around until after we draw ... since
2792 the GC changes aren't flushed to the X server until we
2793 draw, destroying it before that may result in BadPixmap
2796 1999-11-30 Havoc Pennington <hp@pobox.com>
2798 * configure.in: Add AM_CONDITIONAL for inside gnome-libs
2800 * src/Makefile.am: conditionalize GnomeCanvasPixbuf
2802 1999-11-29 Federico Mena Quintero <federico@redhat.com>
2804 * src/Makefile.am: Uncomment the GnomeCanvasPixbuf sources. This
2805 should be made conditional, not blindly commented out.
2807 1999-11-29 Jonathan Blandford <jrb@redhat.com>
2809 * src/Makefile.am (ICO_LIB): Added another loader from Arjan to
2810 handle .ico files. Cool.
2812 1999-11-24 Jonathan Blandford <jrb@redhat.com>
2814 * src/io-bmp.c (OneLine24): new patch from Arjan to handle
2817 1999-11-24 James Henstridge <james@daa.com.au>
2819 * configure.in (AC_OUTPUT): altered hack to place the symlink in the
2820 top builddir rather than src. This still builds fine, and does not
2821 get gtk-doc into an infinite loop when trying to find all the source
2824 1999-11-23 Jonathan Blandford <jrb@redhat.com>
2826 * Removed #PRAGMA } from headers. Also, make compile if you don't
2827 have it installed, already.
2829 1999-11-22 Federico Mena Quintero <federico@redhat.com>
2831 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_draw): Create the
2832 temporary buffer to the size of the interesction of the bounding
2833 box and the expose area, not the whole expose area. This speeds
2836 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_threshold_alpha): Do
2837 not paint black on the mask, since we already cleared it in a
2838 single gdk_draw_rectangle() operation.
2840 1999-11-22 Raja R Harinath <harinath@cs.umn.edu>
2842 * configure.in (GDK_PIXBUF_DIR): Fix for srcdir != builddir.
2844 1999-11-22 Havoc Pennington <hp@pobox.com>
2846 * src/Makefile.am (GDK_PIXBUF_LIBS): Patch from Paul Fisher
2847 <pnfisher@redhat.com> adds all -lgdk-pixbuf and all other
2848 dependencies to LIBADD variables for loadable modules. Necessary
2849 for a Java dynamic loading thing to be able to figure it out.
2851 1999-11-22 Havoc Pennington <hp@pobox.com>
2853 * src/io-png.c (image_load_increment): Call the update_area
2854 callback depending on the number of rows loaded in this increment.
2856 * src/testpixbuf.c (main): slow down the progressive load demo
2858 1999-11-16 Havoc Pennington <hp@pobox.com>
2860 * src/gdk-pixbuf-drawable.h: Get the quotes right on the #include
2862 1999-11-22 Jonathan Blandford <jrb@redhat.com>
2864 * configure.in (GDK_PIXBUF_DIR): make the symlink. Does not work
2865 for srcdir != buildir != . Beats me why; I can't figure it out.
2866 AC_OUTPUT_COMMANDS doesn't seem to let me substitute it correctly.
2868 1999-11-21 Jonathan Blandford <jrb@redhat.com>
2870 * src/gdk-pixbuf-io.c: added io-bmp from Arjan
2871 <arjan@fenrus.demon.nl>
2873 1999-11-20 Michael Zucchi <zucchi@zedzone.mmc.com.au>
2875 * src/gdk-pixbuf-drawable.c (gdk_pixbuf_from_drawable_core):
2876 Rework/reorder of the code. Each case has been separated into
2877 another function; its big but it should be quick.
2878 gdk_pixbuf_rgba_from_drawable() will now return a pixbuf with
2879 opaque alpha information. Not all depths/formats have been
2880 tested, but 8, 15/16 and 24 (alinged 32) should work ok.
2882 1999-11-17 Larry Ewing <lewing@gimp.org>
2884 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_bounds):
2885 implement the bounds method correctly.
2886 (compute_viewport_affine): compute the affine need to fit the
2887 image within the viewport given by the args.
2888 (compute_render_affine): call compute_viewport_affine.
2890 1999-11-16 Havoc Pennington <hp@pobox.com>
2892 * src/gdk-pixbuf-drawable.h: Use includes from the current
2893 directory, not the system directory.
2895 Mon Nov 15 17:18:28 1999 George Lebl <jirka@5z.com>
2897 * src/testpixbuf-drawable.c: use includes from the current directory
2898 rather then from the system include directory as gdk-pixbuf
2899 includes are not yet installed when this is compiled.
2901 1999-11-13 Cody Russell <bratsche@dfw.net>
2902 * src/testpixbuf-drawable.c: Added a test program for drawable
2905 * src/Makefile.am: Build testpixbuf-drawable.
2907 1999-11-12 Cody Russell <bratsche@dfw.net>
2909 * src/gdk-pixbuf-drawable.c: Merged in Michael Zucchi's changes.
2911 1999-11-10 Federico Mena Quintero <federico@redhat.com>
2913 * doc/tmpl/gdk-pixbuf-loader.sgml: Populated.
2915 * doc/gdk-pixbuf.signals: Put in the real names of signal
2918 * src/gdk-pixbuf-loader.c: Improved documentation comments.
2920 1999-11-10 Jonathan Blandford <jrb@redhat.com>
2922 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): emit the
2925 * src/io-ras.c (OneLineMapped_file): Now can handle indexing
2926 correctly. Patch from Arjan to do so.
2928 1999-11-10 Michael Fulbright <drmike@redhat.com>
2930 * src/io-pnm.c (pnm_ascii_read_scanline): Fixed loading of ASCII PNM
2933 * src/testpixbuf.c: Added final queued draw when done loading image.
2935 1999-11-10 Jonathan Blandford <jrb@redhat.com>
2937 * src/gdk-pixbuf-io.c (gdk_pixbuf_load_module): removed spurious
2940 1999-11-10 Federico Mena Quintero <federico@redhat.com>
2942 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): Added
2945 1999-11-09 Federico Mena Quintero <federico@redhat.com>
2947 * src/io-png.c: Fixed some incompatible pointer initializations.
2949 * src/io-jpeg.c (image_load_increment): Remove unused variable.
2951 1999-11-09 Michael Fulbright <drmike@redhat.com>
2953 * src/testpixbuf.c: Fixed it to use timeout to read from file
2954 for progressive loading. Set TBF_KBPS=n, where n is the number of
2955 kilobytes/second to simulate in downloading. n has to be an integer.
2957 * src/io-jpeg.c: Slight cosmetic cleanup.
2959 * src/io-pnm.c: Fixed raw PNM loading bug. Also discovered that ASCII
2960 PBM loading has a similar problem and will address tomorrow.
2962 1999-11-09 Havoc Pennington <hp@pobox.com>
2964 * src/Makefile.am (libgdk_pixbuf_la_SOURCES): build the
2965 gdk-pixbuf-drawable stuff.
2967 1999-11-09 Federico Mena Quintero <federico@redhat.com>
2969 * configure.in: Bumped version number to 0.4.
2971 1999-11-09 Michael Fulbright <drmike@redhat.com>
2973 * src/io-pnm.c : Finished progressive PNM loading code. Should handle
2974 all types of PNM files now.
2976 * src/io-jpeg.c (image_load_increment): Figured out problem with
2977 loading Progressive JPEG's progressively (say that 10 times fast).
2978 Currently for Progressive JPEG's the entire image is loaded before
2979 it is displayed. libjpeg supports a fancier mechanism which I may
2982 With these changes all JPEG formats appear to load properly for me.
2984 1999-11-08 Jonathan Blandford <jrb@redhat.com>
2986 * src/io-ras.c (image_load_increment): Final patch from Arjan.
2987 Seems to do progressive loading.
2989 1999-11-08 Michael Fulbright <drmike@redhat.com>
2991 * src/io-pnm.c image_load (): Fixed so we do not create a separate
2992 pixel buffer when reading in image - we reuse the pixel data in
2993 the GdkPixbuf structure instead.
2995 1999-11-08 Michael Fulbright <drmike@redhat.com>
2997 * src/io-pnm.c pnm_read_ascii_scanline (): Added support for
2998 ASCII PNM files. Note I haven't tested loaded ASCII PBM files because
2999 I can't seem to find a utility to convert into this format.
3000 Next is to add progressive loading support for the PNM format.
3002 1999-11-07 Federico Mena Quintero <federico@redhat.com>
3004 * doc/tmpl/gnome-canvas-pixbuf.sgml: Finished detailed explanation
3005 of the width, height, x, and y setting and pixels arguments.
3007 1999-11-05 Jonathan Blandford <jrb@redhat.com>
3009 * src/io-ras.c (image_load): third patch. Now it seems to load.
3011 * src/gdk-pixbuf-io.c: second patch Arjan van de Ven
3012 <arjan@fenrus.demon.nl> to autodetect/load the sunras files.
3014 * src/io-ras.c (image_load): new file from Arjan van de Ven
3015 <arjan@fenrus.demon.nl> to begin the ras loader.
3017 1999-11-05 Federico Mena Quintero <federico@redhat.com>
3019 * doc/gdk-pixbuf-sections.txt: Removed gdk-pixbuf-io, since it is
3020 for internal use only.
3022 * doc/gdk-pixbuf.sgml: Likewise.
3024 * doc/tmpl/gnome-canvas-pixbuf.sgml: Finished docs.
3026 1999-11-05 Michael Fulbright <drmike@redhat.com>
3028 * src/io-pnm.c: Implemented support for reading raw PBM/PGM/PPM
3029 files from a file. Next step is support for ASCII files, and
3030 then incremental loading.
3032 1999-11-04 Federico Mena Quintero <federico@redhat.com>
3034 * Makefile.am: Added doc to SUBDIRS.
3036 1999-11-04 Michael Fulbright <drmike@redhat.com>
3038 * src/io-jpeg.c: Prettied up code slightly.
3039 * src/io-pnm.c: Start of pnm loader (from file and progressively).
3040 Doesn't do much yet (will finish tomorrow).
3041 * src/gdk-pixbuf-io.c: Added pnm to structure of known types.
3043 1999-11-04 Federico Mena Quintero <federico@redhat.com>
3045 * doc/tmpl/rendering.sgml: Populated.
3047 * doc/Makefile.am: Added the template files.
3049 1999-11-04 Havoc Pennington <hp@pobox.com>
3051 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable): In
3052 docs, explain what a dither offset is for.
3053 (gdk_pixbuf_render_to_drawable_alpha): Explain why you would use
3054 this function vs. gdk_pixbuf_render_to_drawable().
3056 1999-11-04 Havoc Pennington <hp@pobox.com>
3058 * configure.in: Use libart-config correctly; find gnome-config
3059 separately. Fix GNOME_LIBS to be correct in "no gnome installed
3062 * src/Makefile.am: Link to GNOME_LIBS instead of a hardcoded
3065 Patch untested in the inside-gnome-libs case, I need to commit
3066 then check out to the gnome-libs I'm using.
3068 1999-11-04 Michael Fulbright <drmike@redhat.com>
3070 * src/io-jpeg.c (image_begin_load): Add update_func callback.
3071 * src/io-jpeg.c (image_load_increment): Call updated callback when
3072 new graphic data decoded.
3074 1999-11-04 Jonathan Blandford <jrb@redhat.com>
3076 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_update): handle the
3078 * src/io-png.c (image_begin_load): add a update_func callback.
3079 * src/io-gif.c (image_begin_load): add a update_func callback.
3080 (gif_get_lzw): added the update_func ability
3082 * src/io-tiff.c (image_begin_load): add a update_func callback.
3084 1999-11-04 Federico Mena Quintero <federico@redhat.com>
3086 * doc/tmpl/gdk-pixbuf.sgml: Populated.
3088 * doc/tmpl/refcounting.sgml: Populated.
3090 * doc/tmpl/file-loading.sgml: Populated.
3092 * src/gdk-pixbuf.c: Added documentation comments.
3094 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_file): Added
3095 documentation comments.
3097 * doc/: Finished integrating the documentation framework.
3099 1999-11-03 Federico Mena Quintero <federico@redhat.com>
3101 * configure.in: Removed libgif stuff now that we do not depend on it.
3102 Added the necessary cruft for gtk-doc.
3104 * src/Makefile.am: Unconditionally build the GIF loader.
3106 1999-11-03 Jonathan Blandford <jrb@redhat.com>
3108 * src/io-gif.c (gif_read): renamed ReadOK to gif_read.
3109 Added a lot of comments to the file.
3111 * src/Makefile.am (libpixbuf_gif_la_LIBADD): Remove dependency on
3114 1999-11-03 Michael Fulbright <drmike@redhat.com>
3116 * src/io-jpeg.c (image_load_increment): Further removal of
3117 bugginess in local buffering code. Handles grayscale jpegs
3120 * src/io-jpeg.c (image_load_stop): Was freeing local context
3121 for jpeg library before calling jpeg_decompres_finish ().
3123 1999-11-03 Jonathan Blandford <jrb@redhat.com>
3125 * src/io-gif.c (image_load_increment): now handle arbitrary buffer
3127 (gif_get_lzw): set the transparency to the right val.
3129 1999-11-03 Federico Mena Quintero <federico@redhat.com>
3131 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_init):
3132 Initiailize the x and y fields.
3133 (gnome_canvas_pixbuf_destroy): Queue a redraw upon destruction.
3134 (PixbufPrivate): Renamed need_size_update to need_xform_update.
3135 (recompute_bounding_box): Do not use temporary values.
3137 1999-11-03 Jonathan Blandford <jrb@redhat.com>
3139 * src/io-gif.c (set_gif_lzw_clear_code): new state. Fixes
3142 * src/gnome-canvas-pixbuf.c (recompute_bounding_box): remove
3143 unneeded x,y,h,w vars.
3145 1999-11-03 Larry Ewing <lewing@gimp.org>
3147 * src/gnome-canvas-pixbuf.c (compute_render_affine): adjust
3148 render_affine calculation for x,y offsets.
3149 (gnome_canvas_pixbuf_set_arg): add x,y args.
3150 (gnome_canvas_pixbuf_get_arg): add x,y args.
3151 (recompute_bounding_box): simply code using ArtDrect and the
3152 render_affine. Removed compute_xform_vectors as it was no longer
3155 1999-11-03 Federico Mena Quintero <federico@redhat.com>
3157 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_point): I'm a
3158 doofus. Return a distance, not a boolean, for opaque images.
3160 * src/gnome-canvas-pixbuf.c (recompute_bounding_box): Do proper
3161 rounding of bounding box coordinates.
3162 (gnome_canvas_pixbuf_bounds): Implemented the ::bounds() method.
3163 (gnome_canvas_pixbuf_draw): Use the correct alpha threshold value.
3165 1999-11-03 Jonathan Blandford <jrb@redhat.com>
3167 * src/io-gif.c (gif_prepare_lzw): s/lwz/lzw/g
3169 1999-11-03 Michael Fulbright <drmike@redhat.com>
3171 * src/io-jpg.c (image_load_increment): Fixed code which moved
3172 buffer around as new data comes in to work properly. JPEG progressive
3173 loading should be working now except for grayscale JPEG's, which I
3174 will look into next.
3176 1999-11-03 <sopwith@redhat.com>
3177 * src/testpixbuf.c: A GtkFunction needs to return a value for deterministic behaviour.
3178 Also put dot printing back in.
3180 1999-11-03 <jrb@redhat.com>
3182 * src/io-gif.c (gif_get_extension): Read 'til the next empty block
3185 1999-11-02 Cody Russell <bratsche@dfw.net>
3186 * src/gdk-pixbuf-drawable.c: Changed the behavior to return NULL
3187 if part of the requested image is offscreen, rather than clipping
3190 1999-11-02 Jonathan Blandford <jrb@redhat.com>
3192 * src/io-gif.c (gif_fill_in_lines): Fill in the gif's blank areas
3193 for interlacing and progressive loading.
3195 1999-11-02 Cody Russell <bratsche@dfw.net>
3196 * src/gdk-pixbuf-drawable.c (gdk_pixbuf_from_drawable_core): Now
3197 calls gdk_pixbuf_new_from_art_pixbuf() instead of gdk_pixbuf_new().
3199 1999-11-02 Jonathan Blandford <jrb@redhat.com>
3201 * src/io-gif.c (gif_main_loop): Now progressive gif loading works!
3202 It's a little slow though. )-:
3204 1999-11-02 Elliot Lee <sopwith@redhat.com>
3205 * src/gdk-pixbuf-loader.[ch], src/gdk-pixbuf-io.h: Make the arguments to the
3206 write/load_increment operations const-correct.
3208 1999-11-02 Federico Mena Quintero <federico@redhat.com>
3210 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_point):
3211 Implemented the ::point() method. We do a simple containment test
3212 instead of a full distance calculation since the canvas is going
3213 to change to that scheme, anyways.
3215 1999-11-02 Elliot Lee <sopwith@redhat.com>
3217 * src/testpixbuf.c: Allow using $TBF_READLEN to specify the size of the chunks
3218 that are read from the input file.
3220 1999-11-02 Larry Ewing <lewing@gimp.org>
3222 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_render): add aa
3224 (gnome_canvas_pixbuf_class_init): add gnome_canvas_pixbuf_render
3227 1999-11-02 Federico Mena Quintero <federico@redhat.com>
3229 * src/gnome-canvas-pixbuf.c (compute_render_affine): Moved the
3230 affine computation code from ::draw() to here, since it is needed
3231 by ::point() as well.
3233 1999-11-02 Elliot Lee <sopwith@redhat.com>
3235 * src/gdk-pixbuf-loader.c: Reorganize gdk_pixbuf_loader_write into
3236 three functions, and eliminate duplication of code from write()
3237 and close(). Also fix bug where the 128-byte header was being
3240 1999-11-01 Federico Mena Quintero <federico@redhat.com>
3241 * src/gnome-canvas-pixbuf.c (recompute_bounding_box): Fixed
3242 bounding box computation.
3244 1999-11-01 Federico Mena Quintero <federico@redhat.com>
3246 * src/gnome-canvas-pixbuf.c: Start of the pixbuf canvas item.
3247 Drawing affines seem to work. Bounding box is fubared. ::point()
3248 is not implemented. This is a work in progress.
3250 * src/Makefile.am: Added gnome-canvas-pixbuf.[ch] to the list of
3253 * configure.in: Sigh. We need to link in libgnomeui for the
3254 canvas stuff. This mess will disappear when gdk-pixbuf gets
3255 folded into gnome-libs.
3257 1999-10-30 Jonathan Blandford <jrb@redhat.com>
3259 * src/io-gif.c: Some more work. Now it generates a gdk_pixbuf of
3260 the right size, at a minimum, even if the image is squished and
3262 (ReadImage): lets get the offset right. This will let transparent
3265 1999-10-29 Michael Fulbright <drmike@redhat.com>
3267 * src/io-jpeg.c: image_load_increment(): Fixed bug when
3268 image width was not a multiple of 4 - always use the
3269 gdk_pixbuf rowstride to increment pointers!
3271 1999-10-29 Michael Fulbright <drmike@redhat.com>
3273 * src/io-jpeg.c: Added first cut at progressive jpeg loading.
3274 Currently does not handle either progressive jpeg files (jpeg
3275 files with multiple scans at different quality settings), but
3276 I plan on adding this support soon. These are fairly rare in
3277 my experience, so it shouldn't slow people down too much.
3278 Grayscale jpegs also don't work but that should be easy to fix.
3280 1999-10-29 Michael Fulbright <drmike@redhat.com>
3282 * src/testpixbuf.c: Added title to windows so you can identify
3283 progressive and file windows.
3285 1999-10-29 Michael Fulbright <drmike@redhat.com>
3287 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): Actually
3288 load the image handler when we determine the image type.
3290 * src/gdk-pixbuf-io.[ch] (gdk_pixbuf_load_module): Changed the
3291 previously static function load_image_handler () to
3292 a public function gdk_pixbuf_load_module (). It is needed in
3293 gdk-pixbuf-loader.c to load image handler modules. This function
3294 is different from gdk_pixbuf_get_module (), which only returns
3295 a reference to the required handler, because it actually loads
3296 the handler into memory. Both actions should possibly be combined
3297 in a convenience function since one w/o the other doesn't seem to
3300 1999-10-28 Jonathan Blandford <jrb@redhat.com>
3302 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): don't send a
3305 1999-10-28 Federico Mena Quintero <federico@redhat.com>
3307 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable): New
3308 function to render a portion of a pixbuf to a drawable. Ignores
3309 alpha information and takes in a GC.
3310 (gdk_pixbuf_render_to_drawable_alpha): New function to render a
3311 portion of a pixbuf to a drawable. It automatically creates a GC
3312 and a clipping mask for alpha pixbufs.
3314 1999-10-28 Jonathan Blandford <jrb@redhat.com>
3316 * src/gdk-pixbuf.h: turned convenience macros into convenience
3317 functions so some error checking could be added.
3319 * src/io-tiff.c (image_load_increment): started work on the tiff
3320 non-incremental loader.
3321 (image_begin_load): Finished the incremental loader.
3323 * src/io-gif.c (image_load_increment): started work on the gif
3326 * src/gdk-pixbuf-io.h: Changed ModuleType to GdkPixbufModule.
3328 1999-10-27 Federico Mena Quintero <federico@redhat.com>
3330 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_threshold_alpha): New
3331 function to threshold a pixbuf's alpha channel into a bitmap.
3333 * src/gdk-pixbuf.c (gdk_pixbuf_new): Fixed so that it will
3334 contemplate future extensions to ArtPixBuf's formats.
3336 * src/io-png.c (png_info_callback): Use the new API of gdk_pixbuf_new().
3338 * src/gdk-pixbuf.h (gdk_pixbuf_get_height): Added some convenience
3339 macros to fetch the ArtPixBuf's fields.
3341 1999-10-27 Havoc Pennington <hp@pobox.com>
3343 * src/testpixbuf.c (main): Display the progressive load
3345 * src/io-png.c (setup_png_transformations): Break transformation
3346 code into separate function
3347 (png_info_callback): Use setup_png_transformations
3349 1999-10-27 Havoc Pennington <hp@pobox.com>
3351 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): Check
3352 properly whether the XPM module has already been loaded
3353 (gdk_pixbuf_new_from_file): Check properly if loader module
3354 was already loaded (was checking if load symbol was present
3355 in order to decide whether to re-load; should check module !=
3356 NULL, then load != NULL)
3357 (image_handler_load): Check in present working directory,
3358 makes it easier to debug for now
3359 (file_formats): This array initializer was seriously on crack,
3360 was assigning a function pointer to a GModule*
3362 * src/testpixbuf.c (main): Change type of pixbuf_loader to GdkPixbufLoader*
3364 1999-10-27 Havoc Pennington <hp@pobox.com>
3366 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_finalize):
3367 Fix typo that prevented compilation
3368 (gdk_pixbuf_loader_destroy): ditto
3370 1999-10-27 Federico Mena Quintero <federico@redhat.com>
3372 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_new): Return a
3373 GdkPixbufLoader, not a GtkObject.
3374 (gtk_marshal_NONE__INT_INT_INT_INT): Made static.
3375 (gdk_pixbuf_loader_get_type): Documented.
3376 (gdk_pixbuf_loader_class_init): Initialize the parent class
3378 (gdk_pixbuf_loader_destroy): Added sanity checks. Call the parent
3379 class destroy function.
3380 (gdk_pixbuf_loader_new): Documented.
3381 (gdk_pixbuf_loader_finalize): Call the parent class finalize
3383 (gdk_pixbuf_loader_write): Use size_t for count.
3385 1999-10-27 Michael Fulbright <drmike@redhat.com>
3387 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_destroy): Fixed
3388 logic so we only try to close loader if it wasn't previously closed.
3390 1999-10-27 Michael Fulbright <drmike@redhat.com>
3392 * src/gdk-pixbuf-loader.c: Made sure image_loader struct member of
3393 pixbuf_loader properly initialized.
3395 * src/testpixbuf.c: Made sure we cleanup pixbuf_loader properly
3398 1999-10-26 Jonathan Blandford <jrb@redhat.com>
3400 * src/gdk-pixbuf-io.c (image_handler_load): load the vtable fully.
3402 * src/gdk-pixbuf-loader.c: Finished initial cut at the object.
3404 1999-10-26 Havoc Pennington <hp@pobox.com>
3406 * src/gdk-pixbuf-loader.h: fix signals
3408 * src/gdk-pixbuf-io.h: add new vtable fields
3411 1999-10-26 Jonathan Blandford <jrb@redhat.com>
3413 * src/gdk-pixbuf-loader.h: New Class. Beginning of progrssive
3416 1999-10-25 Federico Mena Quintero <federico@redhat.com>
3418 * configure.in (CFLAGS): Patch from Uwe Koloska
3419 <koloska@Rcs1.urz.tu-dresden.de> to fix a stupid typo of mine.
3421 1999-10-22 Havoc Pennington <hp@pobox.com>
3423 * src/io-xpm.c (mem_buffer): Clean up stupid
3424 increment-inside-array-dereference thing
3426 * src/testpixbuf.c: Add XPM data tests.
3428 * src/io-xpm.c: Make the XPM data buffer const, fix const
3429 correctness throughout the code.
3431 1999-10-22 Havoc Pennington <hp@pobox.com>
3433 * src/gdk-pixbuf.h: Export gdk_pixbuf_new_from_xpm_data()
3435 1999-10-22 Havoc Pennington <hp@pobox.com>
3437 * src/io-xpm.c (image_load_xpm_data): Export this symbol for
3438 loading an XPM from memory.
3440 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): New
3441 function, loads pixbuf from xpm data
3442 (image_handler_load): Add g_return_if_fail() to ensure the same
3443 module isn't loaded twice. Add g_module_symbol() to scan for XPM
3446 1999-10-22 Federico Mena Quintero <federico@redhat.com>
3448 * src/io-png.c (image_load): Patch from Kristian Hogsberg
3449 Kristensen <hogsberg@daimi.au.dk> to avoid allocating extra row
3450 buffers; the rows can be read in directly into the main pixel
3453 1999-10-20 Federico Mena Quintero <federico@redhat.com>
3455 * src/gdk-pixbuf-io.c (image_handler_load): Free path.
3457 1999-10-20 Federico Mena Quintero <federico@redhat.com>
3459 * configure.in: Bumped version number to 0.3.
3461 * src/Makefile.am (lbgdk_pixbuf_la_LDFLAGS): Added a libtool
3462 version number for the library.
3464 1999-10-20 Federico Mena Quintero <federico@redhat.com>
3466 * src/gdk-pixbuf.h (GdkPixbuf): Removed the unref_fn field. Now
3467 all memory management of the buffer is done by libart.
3469 * src/gdk-pixbuf.c (gdk_pixbuf_unref): Do destruction here.
3470 Removed gdk_pixbuf_destroy, gdk_pixbuf_duplicate.
3472 * src/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Implemented in
3473 terms of the libart functions. Removed the old code.
3475 * src/gdk-pixbuf-io.c (image_handler_load): Removed the save
3476 symbols. Saving will not be implemented in GdkPixbuf.
3478 * src/io-gif.c: Removed the saving stub.
3479 (image_load): Fixed memory management to fail gracefully if we run
3480 out of memory while loading the image. Close the gif file when we
3481 are done. This still needs more error handling for the DGif
3484 * src/io-jpeg.c (image_load): Some robustness fixes.
3486 * src/io-png.c: Removed the saving stuff.
3487 (image_load): Some memory management fixes.
3489 * src/io-tiff.c (image_load): Ditto.
3491 * src/io-xpm.c (pixbuf_create_from_xpm): Ditto.
3493 1999-10-18 Havoc Pennington <hp@pobox.com>
3495 * subautogen.sh: New name for macros/autogen.sh
3497 * autogen.sh: use subautogen.sh
3499 1999-10-18 Federico Mena Quintero <federico@redhat.com>
3501 * src/*: Reindented to use the GNOME Indentation. Renamed
3502 GdkPixBuf to GdkPixbuf, for consistency with the function names
3503 (and it is also easier to type) :-)
3505 1999-10-18 Havoc Pennington <hp@pobox.com>
3507 * configure.in: Use AM_PATH_GLIB instead of glib-config directly
3509 * src/Makefile.am: Re-enable testpixbuf with GTK_CFLAGS/GTK_LIBS
3511 1999-10-18 Havoc Pennington <hp@pobox.com>
3513 * Makefile.am (SUBDIRS): Remove "macros"
3515 * configure.in: Don't use GNOME_INIT, handle case where we are
3516 inside gnome-libs. AM_PATH_GTK for the GIF test
3518 * src/Makefile.am: Change flags to work without libgnomeui,
3519 comment out testpixbuf for now
3521 1999-10-18 Federico Mena Quintero <federico@redhat.com>
3523 * configure.in: Use $GTK_LIBS as the extra libs when checking for
3524 libgif/libungif, as they need the X libraries. Fixes bug #2472.
3526 1999-10-10 Cody Russell <bratsche@dfw.net>
3527 * src/gdk-pixbuf-drawable.c: core function now determines whether
3528 the requested geometry is on screen or not, and if some is not
3529 then the request is clamped to geometry that is on the screen.
3531 Changed 'pixbuf' to 'art_pixbuf' in core function.
3533 1999-10-08 Michael Fulbright <drmike@redhat.com>
3535 * src/gdk-pixbuf-data.c: Added to load rgb data from const data.
3537 * src/testpifbuf: Changed test program to display cdrom from rgb data
3538 if no filename given to test program.
3540 1999-10-07 Cody Russell <bratsche@dfw.net>
3541 * src/gdk-pixbuf-drawable.[ch]: Added. (Actually, Miguel committed
3542 them, but I wrote them).
3544 * src/gdk-pixbuf-drawable.h: Added a missing ; so things will now
3547 * src/Makefile.am: Added gdk-pixbuf-drawable.[ch] to
3548 libgdk_pixbuf_la_SOURCES and libgdk_pixbufinclude_HEADERS.
3550 * src/gdk-pixbuf-drawable.c: Added #include "gdk-pixbuf-drawable.h"
3553 * src/gdk-pixbuf-drawable.[ch]: Changed functions to return
3554 GdkPixBuf* instead of ArtPixBuf*.
3556 1999-09-22 Michael Meeks <michael@nuclecu.unam.mx>
3558 * src/gdk-pixbuf.c (gdk_pixbuf_new): created.
3559 (gdk_pixbuf_scale): use gdk_pixbuf_new + return a new scaled image.
3561 * src/gdk-pixbuf.h (struct _GdkPixBuf): Re-organise struct, + add
3562 GdkPixBufUnrefFunc + gdk_pixbuf_new.
3564 * src/io-jpeg.c (image_load): clean to use gdk_pixbuf_new.
3566 * src/io-xpm.c (_pixbuf_create_from_xpm): ditto.
3568 * src/io-tiff.c (image_load): ditto + fix leak
3570 * src/io-png.c (image_load): ditto + add more exit points; monitor.png
3571 crashes this module ( add warning :-)
3573 * src/io-bmp.c (image_load): ditto.
3575 * src/io-gif.c (image_load): ditto.
3577 1999-09-18 Michael Meeks <michael@nuclecu.unam.mx>
3579 * src/gdk-pixbuf.c (gdk_pixbuf_scale): Hack rgba support in so
3580 it doesn't crash scaling with alpha.
3582 1999-09-17 Federico Mena Quintero <federico@redhat.com>
3584 * src/io-bmp.c (image_load): Set the initial ref_count to 1.
3586 * src/io-gif.c (image_load): Likewise.
3588 * src/io-jpeg.c (image_load): Likewise.
3590 * src/io-png.c (image_load): Likewise.
3592 * src/io-tiff.c (image_load): Likewise.
3594 * src/io-xpm.c (_pixbuf_create_from_xpm): Likewise.
3596 * src/gdk-pixbuf-io.c (gdk_pixbuf_load_image): Added an assertion
3597 for the ref_count to be != 0.
3599 * src/gdk-pixbuf.c (gdk_pixbuf_ref): Be more paranoid with sanity
3601 (gdk_pixbuf_unref): Fix incorrect sanity check and comparison.
3603 1999-08-09 Federico Mena Quintero <federico@nuclecu.unam.mx>
3605 * src/io-png.c (image_save): Fixed compiler warnings. Fixed write
3606 to unallocated memory (row_ptr), and fixed its type as well. Take
3607 into account the ArtPixbuf's rowstride when assigning the row
3610 * src/gdk-pixbuf.c: Fixup includes.
3612 * src/gdk-pixbuf-io.c: Likewise.
3614 Sat Jul 31 19:19:47 CEST 1999
3616 * src/gdk-pixbuf-io.c:
3617 * src/io-png.c: Fixed two obvious C syntax bugs
3619 1999-07-29 Mark Crichton <crichton@gimp.org>
3621 * src/io-png.c (image_save): Added PNG saving function
3623 * src/gdk-pixbuf-io.c: Changed image_save function format. Now it's
3624 image_save(GdkPixBuf *p, FILE *f, ...)
3627 1999-07-26 Michael Zucchi <mzucchi@denr.sa.gov.au>
3629 * src/Makefile.am (*_LIB): Only build the relevant loaders which
3630 require extra libraries if we actually have those libraries.
3632 1999-07-23 Richard Hestilow <hestgray@ionet.net>
3634 * src/gdk-pixbuf.h: Include glib.h as it uses g* datatypes
3635 * gdk_pixbufConf.sh.in: Added for gnome-config
3637 * configure.in: Modified to generate gdk_pixbufConf.sh
3639 1999-07-20 Mark Crichton <crichton@gimp.org>
3641 * src/gdk-pixbuf.c (gdk_pixbuf_rotate): Fixed rotation. Now a bbox
3642 calculation needs to be done.
3644 1999-07-18 Larry Ewing <lewing@gimp.org>
3649 * src/io-jpeg.c: Fix a few memory leaks in the, most of them in
3650 error cases but one or two in the common case. There are probably
3651 a few small ones left.
3653 1999-07-18 Mark Crichton <crichton@gimp.org>
3655 * configure.in: removed version.h.
3657 * src/gdk-pixbuf-io.c (pixbuf_check_tiff): Minor readability
3660 1999-07-17 Mark Crichton <crichton@gimp.org>
3662 * src/gdk-pixbuf.c: Removed gdk_pixbuf_free, redundant code.
3663 (gdk_pixbuf_rotate): Added pixbuf rotation code.
3664 (gdk_pixbuf_scale): Changed // comments to /* */
3666 * src/gdk-pixbuf.h (gdk_pixbuf_destroy): Added gdk_pixbuf_destroy
3669 1999-07-16 Larry Ewing <lewing@gimp.org>
3671 * src/testpixbuf.c (expose_func): reverted the expose everything
3672 changes, I'm not sure why these went in.
3673 (config_func): bring this up to date with the new pixbuf_scale
3676 * src/gdk-pixbuf-io.c: added a couple of warnings to the module
3677 loading code so that poeple can diagnose problems better.
3679 * src/gdk-pixbuf.c (gdk_pixbux_scale): fix the borkedness, also it
3680 no longer allocates a new pixbuf, which make things nicer for the
3681 rest of the code. Unfortunately there is still a problem with
3682 scaling rgba images.
3684 1999-07-16 Mark Crichton <crichton@gimp.org>
3686 * src/testpixbuf.c (config_func): ConfigureEvent handler. This
3687 calls gdk_pixbuf_scale. However, something is not working.
3688 N.B.: current pixmap is now stored in user_data with a key of
3691 * src/gdk-pixbuf.c (gdk_pixbuf_scale): Implemented scaling function.
3692 Something is still borked, however.
3694 1999-07-15 Larry Ewing <lewing@gimp.org>
3696 * src/io-jpeg.c (image_load): add raph@gimp.org's fix to the jpeg
3699 * src/testpixbuf.c (main): fix up the file routines a little so
3700 that you can load multiple files given the file names
3702 1999-07-14 Larry Ewing <lewing@gimp.org>
3704 * src/testpixbuf.c (expose_func): added an almost proper expose
3705 handler for testpixbuf
3707 1999-07-13 Mark Crichton <crichton@gimp.org>
3709 * configure.in: Fixed GIF check. Replaced " with '
3710 * src/gdk-pixbuf.c: More (minor) work on gdk_pixbuf_scale
3712 1999-07-13 Mark Crichton <crichton@gimp.org>
3714 * configure.in: I am a bonehead. Added gif-lib check.