1 2004-02-28 Hans Breuer <hans@breuer.org>
3 * io-tiff.c : include <io.h> for lseek()
4 * io-xbm.c : use HAVE_UNISTD_H
6 Tue Feb 24 14:45:03 2004 Owen Taylor <otaylor@redhat.com>
8 * === Released 2.3.3 ===
10 Sun Feb 22 01:09:55 2004 Matthias Clasen <maclas@gmx.de>
12 * io-bmp.c (gdk_pixbuf__bmp_image_begin_load): Remove debugging
15 Fri Feb 20 22:25:32 2004 Matthias Clasen <maclas@gmx.de>
17 * io-bmp.c (DecodeHeader): Store and sanity-check the clrUsed field
18 from the header for use in DecodeColormap.
19 * io-bmp.c (DecodeColormap): Don't read more colormap entries than
20 the header says are there. (#134235, Kazuho Okui)
22 Sun Feb 8 01:07:20 2004 Manish Singh <yosh@gimp.org>
24 * gdk-pixbuf-io.c: removed unnecessary G_OBJECT() cast checks.
26 * io-jpeg.c: make the return type for to_callback_empty_output_buffer
27 "boolean", which should be defined by the jpeg headers. The right
28 return type for this function depends on how the jpeg library
29 was built (one wonders what happens if different compilers are used).
31 2004-01-28 Hans Breuer <hans@breuer.org>
33 * gdk_pixbuf.def : updated externals
35 Sat Jan 17 23:02:55 2004 Matthias Clasen <maclas@gmx.de>
37 The second part of the fix for #114351 (see also
40 * gdk-pixbuf-i18n.h (P_): Use translation domain gtk20-properties.
42 Sat Jan 17 00:01:51 2004 Matthias Clasen <maclas@gmx.de>
44 The first part of the fix for #114351 (see also
47 * gdk-pixbuf-i18n.h: Define P_() for property blurbs and nicks.
49 * gdk-pixbuf.c: Mark property blurbs and nicks with P_().
51 Thu Jan 8 22:01:14 2004 Matthias Clasen <maclas@gmx.de>
53 * queryloaders.c (loader_sanity_check): Don't use bitwise operators
54 on booleans. (#130923, reported by Telsa Gwynne, fix by Dave Jones)
56 2004-01-06 Federico Mena Quintero <federico@ximian.com>
58 * gdk-pixbuf-io.c (gdk_pixbuf_save): Escape an ampersand in the
59 documentation comment, and hack around an empty line in the code
60 example so that gtk-doc won't put a <para> due to it.
62 * gdk-pixbuf.c (gdk_pixbuf_get_pixels): Link to the documentation
63 section on image data.
65 2004-01-06 Federico Mena Quintero <federico@ximian.com>
67 * gdk-pixdata.c (gdk_pixbuf_new_from_inline): Fix example in
68 documentation comment. Fixes #130701.
70 Wed Jan 7 02:41:14 2004 Matthias Clasen <maclas@gmx.de>
72 * gdk-pixbuf-io.c (gdk_pixbuf_save_to_bufferv):
73 * gdk-pixbuf-io.c (gdk_pixbuf_save_to_buffer):
74 * gdk-pixbuf-io.c (gdk_pixbuf_save_to_callbackv):
75 * gdk-pixbuf-io.c (gdk_pixbuf_save_to_callback): New public API
76 to save pixbufs to non-file locations. (#82203, Tim Evans)
79 * gdk-pixbuf.def: Declare the new public API.
81 * gdk-pixbuf-io.h: Add save_to_callback to the module interface.
84 * io-png.c: Implement save_to_callback.
86 * gdk-pixbuf-io.c (gdk_pixbuf_savev):
87 * gdk-pixbuf-io.c (gdk_pixbuf_save): Update documentation.
89 * gdk-pixbuf-io.c (gdk_pixbuf_real_save): Support saving via
90 image_module->save_to_callback.
92 * gdk-pixbuf-io.c (gdk_pixbuf_real_save_to_callback): New generic
93 save_to_callback function which falls back to image_module->save
96 Wed Jan 7 01:17:36 2004 Matthias Clasen <maclas@gmx.de>
98 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_size_func):
99 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_set_size):
100 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_init): Make it possible
101 to call gdk_pixbuf_loader_set_size (loader, 0, 0) by changing
102 the initial values of priv->width/height to -1.
104 * io-tiff.c (tiff_image_parse):
105 * io-ras.c (RAS2State):
106 * io-pnm.c (gdk_pixbuf__pnm_image_load_increment):
107 * io-pcx.c (gdk_pixbuf__pcx_load_increment):
108 * io-jpeg.c (gdk_pixbuf__jpeg_image_load_increment):
109 * io-png.c (png_info_callback):
110 * io-ico.c (DecodeHeader):
111 * io-bmp.c (DecodeHeader): Call size_func once the size is known,
112 even if the module can't make use of the scaling information. If
113 size_func returns 0, don't allocate a pixbuf and return, if
114 necessary with an error.
117 * gdk-pixbuf-io.c (gdk_pixbuf_get_file_info): A new function
118 to determine the type and size of an image file without loading
119 it completely. (#53725)
121 Sun Jan 4 00:44:57 2004 Matthias Clasen <maclas@gmx.de>
123 * gdk-pixbuf.c (gdk_pixbuf_class_init): Turn the pixbuf
124 attributes into (construct-only, but always readable)
125 properties. (#130196)
127 * gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Set properties
130 Mon Dec 22 01:35:36 2003 Matthias Clasen <maclas@gmx.de>
132 * Makefile.am (gdk-pixbuf.loaders): Fix building with
133 --disable-modules --with-included-loaders, create an
134 empty gdk-pixbuf.loaders file. (#124496, Arno Charlet, fix
135 proposed by Owen Taylor)
137 Thu Dec 11 01:57:05 2003 Matthias Clasen <maclas@gmx.de>
139 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): Move
140 the documentation for signals inline, to get proper parameter
141 documentation. (#128977)
143 Sat Nov 15 00:26:19 2003 Matthias Clasen <maclas@gmx.de>
145 * queryloaders.c (loader_sanity_check): Check that the mask
146 is NULL or a string of the same length consisting entirely of
147 ' ', '!', 'x', 'z', 'n'.
149 Mon Nov 10 00:17:52 2003 Matthias Clasen <maclas@gmx.de>
151 * Makefile.am (install-data-local): Typo fix in warning.
153 Sun Nov 9 23:07:05 2003 Matthias Clasen <maclas@gmx.de>
155 * gdk-pixbuf-io.c (_gdk_pixbuf_generic_image_load): If neither
156 load nor begin_load are available fall back to load_animation
157 and use gdk_pixbuf_animation_get_static_image() to obtain a
158 pixbuf. Inefficient, but at least doesn't crash.
160 Sun Nov 9 21:56:20 2003 Matthias Clasen <maclas@gmx.de>
162 * queryloaders.c (write_loader_info): New function to write
163 out the information for a single loader, factored out of
165 (loader_sanity_check): New function to perform
166 sanity checks on a loader.
167 (query_module): Use the new functions.
169 Thu Nov 6 00:27:27 2003 Matthias Clasen <maclas@gmx.de>
171 * io-pcx.c (gdk_pixbuf__pcx_load_increment): Fold two similar
172 strings into on. (#126204, Danilo Segan)
174 2003-09-19 Matthias Clasen <maclas@gmx.de>
176 * io-tga.c (try_preload): Remove a pointless check.
177 (#122710, Kjartan Maraas)
179 Mon Aug 18 10:25:29 2003 Owen Taylor <otaylor@redhat.com>
181 * gdk-pixdata.c (gdk_pixdata_to_csource): Add the correct
182 alignment magic for Sun compiler and for GCC to get
183 the strings aligned. (Patch from Brian Cameron, #117217)
185 2003-08-14 Matthias Clasen <maclas@gmx.de>
187 * gdk-pixdata.c (gdk_pixdata_to_csource): Improve doc comment
188 wording. (#119754, Doug Quale)
190 2003-08-03 Matthias Clasen <maclas@gmx.de>
192 * gdk-pixbuf.c (gdk_pixbuf_get_rowstride):
193 * gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Clarify misleading
194 explanation of rowstride. (#119000)
196 2003-07-24 Matthias Clasen <maclas@gmx.de>
198 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file_at_size): Preserve the
199 aspect ratio. (#118145, Owen Taylor)
201 2003-07-23 Matthias Clasen <maclas@gmx.de>
203 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file_at_size): Close loader
204 before unref'ing it. (#118146, Owen Taylor)
206 2003-03-01 Hans Breuer <hans@breuer.org>
208 * makefile.msc : updated
210 * gdk_pixbuf.def : export a bunch of new functions
212 2003-07-18 Matthias Clasen <maclas@gmx.de>
214 * pixops/pixops.c (correct_total): Split correction into multiple
215 pieces if no single weight is large enough to apply the unsplit
216 correction. (#117431, problem reported by Tomas Ă–gren)
218 2003-07-13 Matthias Clasen <maclas@gmx.de>
221 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file_at_size): New function
222 to load an image from a file at a specified size. (#105326, Dom
225 2003-07-11 Matthias Clasen <maclas@gmx.de>
227 * queryloaders.c (query_module): Handle absolute filenames
228 properly. (#117170, Jens Elkner)
230 * gdk-pixbuf-io.c: Mention that NULL-terminated arrays returned by
231 gdk_pixbuf_format_get_mime_types() and
232 gdk_pixbuf_format_get_extensions() must be freed with g_strfreev().
234 2003-07-04 Matthias Clasen <maclas@gmx.de>
236 * gdk-pixbuf-io.c: Document ICO save parameters.
238 * io-ico.c: Support saving of ICOs and CURs. Currently, only
239 single-image ICOs are produced, but the code for multi-image ICOs
240 is already in place. The saver understands the options "depth"
241 (can be "32", "24" or "16") and "x_hot"/"y_hot" for hotspot
244 2003-06-28 Matthias Clasen <maclas@gmx.de>
246 * io-ico.c (DecodeHeader): Stop discriminating against 32bpp ICOs
247 a): Use the byte size of the image as a heuristic when selecting
248 the bitmap to load - this lets us select 32bpp bitmaps which come
250 (OneLineTransp): Stop discriminating against 32bpp ICOs b): Don't
251 overwrite the alpha channel of 32bpp ICOs.
252 (gdk_pixbuf__ico_image_load_increment): Stop decoding the header
255 Fri Jun 27 03:56:59 2003 Soeren Sandmann <sandmann@daimi.au.dk>
257 * io-gif-animation.c (gdk_pixbuf_gif_anim_frame_composite): Make
258 it compile with C89 compilers.
260 2003-06-23 Matthias Clasen <maclas@gmx.de>
262 * io-gif.c (gif_get_frame_info): Remove the pointless refusal to
263 load images with dubious disposal mode on the first frame. Just
264 ignore it, as everybody else does.
266 2003-06-22 Matthias Clasen <maclas@gmx.de>
268 * gdk-pixbuf-loader.[hc] (gdk_pixbuf_loader_new_with_mime_type):
269 New function to obtain a loader for a specific mime type.
270 (#105324, Dom Lachowicz)
272 * io-gif.c (gif_get_extension): Reset block_count to 0 for all
273 application extensions, otherwise the data blocks of unknown
274 extensions are not propertly skipped.
276 Second half of the fix for #106962, handle frames extending beyond
279 * io-gif.c (clip_frame): New helper function to clip a rectangle
280 to the logical screen size of the gif.
281 (maybe_update): New helper function to call update_func only if
282 the rectangle is not completely off-bounds.
283 (gif_get_lzw): Read frames extending outside the logical screen
284 size, but be careful clip to the logical screen size
285 when operating on the composite pixbuf and when calling update_func.
286 (gif_init): Set the animation size to the logical screen size.
287 (gif_get_frame_info): Don't refuse to load images with frames
288 extending beyond the logical screen size.
290 * io-gif-animation.c (gdk_pixbuf_gif_anim_frame_composite): Be
291 careful to clip all rectangles to the logical screen size, also
292 handle the fact that frames may be completely off-bounds.
294 2003-06-21 Matthias Clasen <maclas@gmx.de>
296 * io-gif.c: Merge from 2.2: Fix update_func() arguments and accept
297 empty frames. (#106962)
299 2003-06-17 Matthias Clasen <maclas@gmx.de>
301 * Makefile.am (man_MANS): Removed, man pages are now installed
302 from docs/reference/gdk-pixbuf.
304 2003-06-03 Matthias Clasen <maclas@gmx.de>
306 * gdk-pixdata.c (gdk_pixbuf_new_from_inline): Document
307 data_length == -1, add an example. (#97290)
309 2003-06-01 Matthias Clasen <maclas@gmx.de>
311 * gdk-pixdata.h (struct _GdkPixdata): Fix misleading documentation
312 of rowstride. (#113924, Noah Levitt)
314 2003-05-27 Matthias Clasen <maclas@gmx.de>
316 * io-wbmp.c: Remove dubious bitfields of
317 unspecified signedness. (#112919, Morten Welinder)gdk-p
319 * gdk-pixdata.c (gdk_pixdata_to_csource): Replace all occurances
320 of g_string_new ("") by g_string_new (NULL). (#106975, Morten
323 2003-05-21 Matthias Clasen <maclas@gmx.de>
325 * pixbufloader_pcx.def:
326 * io-pcx.c: A loader for PCX files. (#113035, Josh Beam)
329 * Makefile.am: Add PCX loader.
331 2003-05-19 Matthias Clasen <maclas@gmx.de>
333 Improve progressive loading from slow sources: (#107368)
335 * io-gif-animation.c (gdk_pixbuf_gif_anim_get_iter): Initialize
337 (gdk_pixbuf_gif_anim_iter_advance): Don't wrap during loading if
338 the datasource falls behind the speed of the display.
340 * io-gif-animation.h: Add a loading flag to GdkPixbufGifAnim and
341 first_loop_slowness to GdkPixbufGifAnimIter.
343 Wed May 14 18:24:50 2003 Owen Taylor <otaylor@redhat.com>
345 * gdk-pixdata.c (gdk_pixdata_deserialize): Add a
346 (gint32 *) => (guint32 *) cast. (#108615, Rick Jones)
348 2003-04-24 Matthias Clasen <maclas@gmx.de>
350 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_write):
351 (gdk_pixbuf_loader_new_with_type):
352 (gdk_pixbuf_loader_close):
353 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file):
356 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file):
357 Add sanity checks for GError handling. (#108345)
359 Tue Apr 1 15:33:51 2003 Owen Taylor <otaylor@redhat.com>
361 * pixops/pixops.c (make_weights): Exploit the fact that all
362 our filters are separable to simplify the calculation of
363 the weight tables. (Based on a patch from Brian Cameron.)
365 * pixops/Makefile.am pixbuf-transform-math.ltx:
366 Add a short article describing how the math in pixops.c
369 2003-03-21 Matthias Clasen <maclas@gmx.de>
371 * gdk-pixbuf-animation.c (gdk_pixbuf_non_anim_get_type): Add
372 missing static. (#108614)
374 * io-jpeg.c (gdk_pixbuf__jpeg_image_begin_load):
375 * io-ico.c (gdk_pixbuf__ico_image_stop_load): Add missing static
376 qualifiers apparently causing problems on some platforms. (#108617)
378 2003-03-11 Matthias Clasen <maclas@gmx.de>
380 * io-ico.c (DecodeHeader): Calculate LineWidth for 16bpp from
381 width, like for the other depths. (noticed by Marijn Ros)
383 2003-03-08 Matthias Clasen <maclas@gmx.de>
385 Bug #107664 continued:
387 * io-xpm.c (find_color): Fix 0/FALSE confusion
388 * gdk-pixbuf.c (gdk_pixbuf_get_has_alpha): Fix -1/gboolean
391 2003-03-06 Matthias Clasen <maclas@gmx.de>
393 * io-gif.c (gif_read): Fix 0/FALSE confusion (#107664, Morten
396 2003-02-20 Matthias Clasen <maclas@gmx.de>
398 * io-gif-animation.c (gdk_pixbuf_gif_anim_frame_composite):
399 Always clear the initial frame and "disposed" areas with
400 transparent pixels, no matter whether the frame has transparency
403 2003-02-18 Matthias Clasen <maclas@gmx.de>
405 * io-tga.c (pixbuf_flip_row):
406 (pixbuf_flip_vertically): Auxiliary functions used to implement
407 support for arbitrary origins.
408 (parse_data_for_row_pseudocolor):
409 (parse_data_for_row_truecolor):
410 (parse_data_for_row_grayscale):
411 (parse_data_for_row):
412 (fill_in_context): Remove the check for upper-left origin.
413 (parse_rle_data): Support arbitrary origins. (#105912)
415 * io-tga.c (fread_check):
417 (get_header_from_file):
418 (get_colormap_from_file):
419 (get_image_pseudocolor):
420 (swap_channels_pixbuf):
421 (get_image_truecolor):
422 (get_image_grayscale):
423 (gdk_pixbuf__tga_load): Remove the non-incremental load
424 implementation, since we have generic_image_load () now.
426 (gdk_pixbuf__tga_stop_load): Fix a potential crash discovered by
429 2003-02-14 Matthias Clasen <maclas@gmx.de>
431 * io-tga.c (try_preload):
432 (gdk_pixbuf__tga_load): Actually reject images with origin
433 not in the upper-left corner. (#105912)
435 2003-02-06 Matthias Clasen <maclas@gmx.de>
437 * queryloaders.c (query_module): Better error message if
438 module_open() fails. (#105349, Tim Mooney)
440 Mon Jan 27 17:10:30 2003 Owen Taylor <otaylor@redhat.com>
442 * Makefile.am (gdk-pixbuf.loaders): Rewrite to run
443 on the .la files rather than looking for .so files.
444 (#102142, Martin Gansser)
446 * Makefile.am: Don't build gdk-pixbuf.loaders when
449 2003-01-05 Tor Lillqvist <tml@iki.fi>
451 * Makefile.am (gdk-pixbuf.loaders): Use @SOEXT@ in the find command.
453 * gdk_pixbuf.def: Add gdk_pixbuf_loader_set_size.
455 2003-01-03 Matthias Clasen <maclas@gmx.de>
457 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): Don't crash if
458 gdk-pixbuf.loaders file is missing. (#102222)
460 2002-12-08 Matthias Clasen <maclas@gmx.de>
462 * gdk-pixbuf-animation.h:
463 * gdk-pixbuf-io.h: Add /*< public|private >*/ markers.
465 Sat Dec 7 10:14:05 2002 Owen Taylor <otaylor@redhat.com>
467 * Makefile.am (gdk-pixbuf.loaders): Make gdk-pixbuf.loaders
468 also depend gdk-pixbuf-query-loaders. (#97096, Daniel Elstner)
470 2002-12-05 Matthias Clasen <maclas@gmx.de>
472 * io-ico.c: Remove leftover debug output. (#100357, Owen Taylor)
474 2002-12-04 Bastien Nocera <hadess@hadess.net>
476 * io-tiff.c: (tiff_image_parse): use G_BIG_ENDIAN instead of
477 WORDS_BIGENDIAN which isn't set by configure.in
479 2002-11-29 Matthias Clasen <maclas@gmx.de>
481 * gdk-pixbuf-animation.c:
482 * gdk-pixbuf.c: Add deprecation docs.
484 2002-11-28 Matthias Clasen <maclas@gmx.de>
486 * gdk-pixbuf/gdk-pixbuf-io.c:
487 * gdk-pixbuf/gdk-pixbuf-loader.c:
488 * gdk-pixbuf/gdk-pixbuf.c: Document 2.2 API additions. I'm not
489 going to list all individual functions here; if you want to see
490 the list, grep for "Since: 2.2".
492 Fri Nov 8 19:06:07 2002 Owen Taylor <otaylor@redhat.com>
494 * Makefile.am (gdk-pixbuf.loaders): Make gdk-pixbuf.loaders
495 file depend on the loaders (#97096, Jeff Waugh)
497 Wed Nov 6 15:19:53 2002 Owen Taylor <otaylor@redhat.com>
499 * io-gif.c (CHECK_LZW_SP): Fix trailing semicolon on macro,
502 2002-11-05 Matthias Clasen <maclas@gmx.de>
504 * gdk-pixbuf-loader.c: Reindent to follow the gdk-pixbuf indentation.
506 Tue Nov 5 14:16:17 2002 Owen Taylor <otaylor@redhat.com>
508 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Fix
509 leaked pixbuf reference (#96823, Morten Welinder)
511 2002-10-23 Matthias Clasen <maclas@gmx.de>
513 * io-gif.c (lzw_read_byte): Check for stack overflow throughout.
516 2002-10-21 Matthias Clasen <maclas@gmx.de>
518 Support the Netscape application extension for gif animations
521 * io-gif-animation.h:
522 * io-gif-animation.c (gdk_pixbuf_gif_anim_iter_advance):
523 Add loop count to GdkPixbufGifAnim and use it in the advance
524 method of GdkPixbufGifAnimIter.
526 * io-gif.c (gif_get_extension): Parse Netscape application
527 extension block and set the animation loop count.
529 2002-10-11 Matthias Clasen <maclas@gmx.de>
531 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_format): Remove
534 * gdk-pixbuf-io.h: Remove unused typedef
535 GdkPixbufModuleGetSignatureFunc.
537 2002-10-04 jacob berkman <jacob@ximian.com>
539 * queryloaders.c (query_module): make legal C
541 2002-10-04 Matthias Clasen <maclas@gmx.de>
543 * Makefile.am gdk-pixbuf-animation.c gdk-pixbuf-data.c
544 gdk-pixbuf-io.c gdk-pixbuf-io.h gdk-pixbuf-loader.c
545 gdk-pixbuf-loader.h gdk-pixbuf-private.h gdk-pixbuf.h
546 gdk-pixdata.c io-ani-animation.h io-ani.c io-bmp.c
547 io-gif-animation.c io-gif-animation.h io-gif.c io-ico.c
548 io-jpeg.c io-png.c io-pnm.c io-ras.c io-tga.c io-tiff.c
549 io-wbmp.c io-xbm.c io-xpm.c pixbufloader_ani.def
550 pixbufloader_bmp.def pixbufloader_gif.def pixbufloader_ico.def
551 pixbufloader_jpeg.def pixbufloader_png.def
552 pixbufloader_pnm.def pixbufloader_ras.def pixbufloader_tga.def
553 pixbufloader_tiff.def pixbufloader_wbmp.def
554 pixbufloader_xbm.def pixbufloader_xpm.def test-gdk-pixbuf.c
555 gdk-pixbuf-animation.h queryloaders.c: Support for separately
556 installed loaders. (#77486)
558 Thu Oct 3 18:25:57 2002 Owen Taylor <otaylor@redhat.com>
560 * io-jpeg.c (gdk_pixbuf__jpeg_image_save):
561 Fix memory leak. (#94399)
563 Tue Oct 1 17:35:43 2002 Owen Taylor <otaylor@redhat.com>
565 * gdkpixdata.c: Patch from Andy Wingo to always
566 escape ? to avoid accidentally generating trigraphs
567 in the output (#94631)
569 2002-09-28 Tor Lillqvist <tml@iki.fi>
571 * pixops/*.S: Don't use .type on Cygwin, either (#91597, Masahiro
574 2002-09-27 Federico Mena Quintero <federico@ximian.com>
576 * io-ico.c (gdk_pixbuf__ico_image_begin_load): Free the context if
577 we cannot allocate the HeaderBuf.
579 2002-09-27 Federico Mena Quintero <federico@ximian.com>
581 * io-bmp.c (OneLine): Fix the update region notification to handle
582 top-to-bottom and bottom-to-top BMPs correctly.
584 2002-09-19 Matthias Clasen <maclas@gmx.de>
586 * Revert the previous change; the symbols need to be exported
587 to be usable from dlopened modules.
589 2002-09-18 Matthias Clasen <maclas@gmx.de>
591 * io-xpm.c, io-xbm.c, io-ico.c, io-ani.c, io-png.c,
592 gdk-pixbuf.c, gdk-pixbuf-animation.c, gdk-pixbuf-loader.c,
593 gdk-pixbuf-private.h: _-prefix gdk_pixbuf_non_anim_new and
594 gdk_pixbuf_set_option. Adjust all callers.
596 2002-09-14 Hans Breuer <hans@breuer.org>
598 * pixops/Makefile.am : added makefile.msc to EXTRA_DIST
600 2002-09-12 Matthias Clasen <maclas@gmx.de>
602 * io-gif-animation.h:
603 * gdk-pixbuf.h: Move GdkPixbufFrame from the public header to
604 the gif-animation-specific private header. (#91929)
606 2002-09-12 Federico Mena Quintero <federico@ximian.com>
608 * io-jpeg.c (gdk_pixbuf__jpeg_image_load): Unref the pixbuf if we
609 hit an unsupported colorspace.
611 2002-09-06 Matthias Clasen <maclas@gmx.de>
613 * io-ani.c, io-ani-animation.h, io-ani-animation.c,
614 pixbufloader_ani.def, Makefile.am, gdk-pixbuf-io.c: New loader,
617 * io-xpm.c (pixbuf_create_from_xpm):
618 * io-xbm.c (gdk_pixbuf__xbm_image_load_real):
619 * io-ico.c (DecodeHeader): Attach hotspot coordinates to the
620 pixbuf as options "x_hot" and "y_hot".
622 2002-09-04 Matthias Clasen <maclas@gmx.de>
624 * io-tga.c (io_buffer_append):
625 * io-ico.c (DecodeHeader):
626 * io-bmp.c (grow_buffer): Don't leak memory if g_try_realloc fails.
628 * gdk-pixbuf-io.c (pixbuf_check_ico): Fix loading of .CUR files.
631 2002-08-25 Tor Lillqvist <tml@iki.fi>
633 * Makefile.am (libgdk_pixbuf_2_0_la_DEPENDENCIES): Add
634 gdk_pixbuf_win32res_lo. (#87101, J. Ali Harlow)
636 2002-08-22 Matthias Clasen <maclas@gmx.de>
639 gdk-pixbuf-io.c (_gdk_pixbuf_generic_image_load): No longer
640 static, thus _gdk_pixbuf-prefixed.
642 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file):
643 Keep this logic in sync with gdk_pixbuf_new_from_file(). (Based
644 on a patch by Anders Carlsson)
646 * io-png.c (gdk_pixbuf__png_image_save): Plug a memory
647 leak. (#91422, Sven Neumann)
649 2002-07-31 Sven Neumann <sven@gimp.org>
651 * gdk-pixdata.c (gdk_pixdata_to_csource): free the result of
652 gdk_pixdata_serialize() (bug #89411).
654 Mon Jul 29 23:06:10 2002 Owen Taylor <otaylor@redhat.com>
656 * gdk-pixbuf-scale.c: Fix some warnings by adding
657 casts to PixopsInterpType. (#85839, David L. Cooper, II.)
659 2002-07-16 Matthias Clasen <maclas@gmx.de>
661 * io-ras.c (DoCompressed): Avoid unnecessary casting.
663 2002-07-07 Matthias Clasen <maclas@gmx.de>
665 * gdk-pixbuf-io.c (generic_image_load): New function for loading
666 an image from a file either via module->load or incrementally.
667 (prepared_notify): ModulePreparedNotifyFunc for generic_image_load.
668 (gdk_pixbuf_new_from_file): Use generic_image_load.
669 * io-bmp.c, io-ico.c, io-ras.c, io-wbmp.c: Remove trivial
670 implementations of module->load. (#71266)
672 * io-ico.c (DecodeHeader): Correct computation of image height.
673 (OneLine): Correct update notification.
675 Load-at-size functionality (#53726):
677 * gdk-pixbuf-io.h (ModuleSizeFunc): New.
678 (_GdkPixbufModule): Prepend a ModuleSizeFunc to the
679 begin_load arguments. Adjust all modules.
680 * gdk-pixbuf-loader.c (struct GdkPixbufLoaderPrivate): Add
681 fields width, height, size_fixed, need_scale.
682 (gdk_pixbuf_loader_class_init): Add size_prepared signal.
683 (gdk_pixbuf_loader_set_size): New function.
684 (gdk_pixbuf_loader_size_func): ModuleSizeFunc which gets
685 passed to the module, emits size_prepared.
686 (gdk_pixbuf_loader_prepare): Call gdk_pixbuf_loader_size_func
687 if necessary, only emit area_prepared if no separate scaling
689 (gdk_pixbuf_loader_update): Only emit area_updated if no
690 separate scaling is required.
691 (gdk_pixbuf_loader_load_module): Add size_func as first argument.
692 (gdk_pixbuf_loader_close): If necessary scale the image
693 to the desired size and emit area_prepared and area_updated.
694 * gdk-pixbuf-loader.h (struct _GdkPixbufLoaderClass): Add
695 size_prepared signal.
696 (gdk_pixbuf_loader_set_size) New API.
697 * gdk-pixbuf-marshal.list: Add VOID:INT,INT.
698 * io-jpeg.c: User cinfo->output_width/height instead of
699 cinfo->image_width/height throughout when adressing the pixbuf.
700 (gdk_pixbuf__jpeg_image_load_increment): Call size_func, and
701 find the nearest possible output size which libjpeg can produce
702 that is still larger than the desired size.
704 2002-07-06 Matthias Clasen <maclas@gmx.de>
706 * io-tiff.c (tiff_set_error): Handle global_error == NULL
708 (tiff_image_parse): Don't trust TIFFRGBAImageBegin to set
709 the "put" routine. (Fixes #87384)
710 (gdk_pixbuf__tiff_image_stop_load): Don't call TIFFClose too
713 2002-07-02 Matthias Clasen <maclas@gmx.de>
715 Miscellaneous bmp loader fixes (#85448, #86286, #86287):
717 * io-bmp.c (grow_buffer): New function to avoid crashes
718 on unchecked reallocs.
719 (DecodeHeader, DecodeColormap, decode_bitmasks,
720 DoCompressed): Use grow_buffer instead of g_realloc
721 throughout. Change signatures where necessary to pass the
723 (OneLine16): Fix loading of 16bpp BI_RGB bmps.
724 (DoCompressed): Rewritten to properly support BI_RLE4 and
727 Support for compressed ras images (#84994):
729 * io-ras.c (RAS2State): Error on unsupported ras variations.
730 (OneLine8): Fix colormap indexing.
731 (OneLine): Call updated_func with proper region.
732 (DoCompressed): New function, handles compressed ras data.
733 (gdk_pixbuf__ras_image_load_increment): Handle compressed ras
736 Better colorspace support for the jpeg loader (#61211):
738 * io-jpeg.c (convert_cmyk_to_rgb): New function.
739 (gdk_pixbuf__jpeg_image_load,
740 gdk_pixbuf__jpeg_image_load_increment): Allocate a pixbuf with
741 alpha for 4-channel jpegs and call convert_cmyk_to_rgb for these.
743 All of this needs to be merged to GNOME 1.4 gdk-pixbuf.
745 2002-06-28 Sven Neumann <sven@gimp.org>
747 * gdk-pixbuf-csource.c (print_blurb): converted a Tab to spaces.
749 Thu Jun 13 18:11:11 2002 Owen Taylor <otaylor@redhat.com>
751 * pixops/pixops.c: Fix problem where when no alpha was
752 involved, we scaled rather than composited, but then
753 went ahead and composited anyways. (#76958, Patch
754 from Matthias Clasen). Needs to be merged to GNOME
757 2002-06-13 Matthias Clasen <maclas@gmx.de>
759 * io-jpeg.c: Use libjpeg in buffered-image mode in order to
760 incrementally display incrementally loaded progressive jpegs.
762 2002-06-07 Federico Mena Quintero <federico@ximian.com>
765 (lsb_16): New functions to fetch 32 or 16-bit little-endian values
766 starting at a specific memory location. We do this instead of
767 GINT32_FROM_LE() as the latter is simply dereferences a cast,
768 which doesn't work on platforms with alignment requirements.
771 2002-06-01 Matthias Clasen <maclas@gmx.de>
773 * gdk-pixbuf-io.c (pixbuf_check_xbm): Accept xbms starting
774 with a C comment - those seem to be not uncommon, e.g. the Gimp
775 produces them. (#82706)
777 * io-xbm.c (read_bitmap_file_data): Don't leak memory on certain
779 (gdk_pixbuf__xbm_image_load_real): Don't leak memory on valid inputs.
781 2002-05-22 Tor Lillqvist <tml@iki.fi>
783 * gdk-pixbuf-io.c (get_libdir): Use GTK_BINARY_VERSION (and not
784 GTK_VERSION) in the path to the loaders on Win32, too.
786 * Makefile.am: Pass GTK_BINARY_VERSION.
788 2002-05-22 Federico Mena Quintero <federico@ximian.com>
790 * io-xpm.c (pixbuf_create_from_xpm): Ahem, take the rowstride into
791 account!!! Fixes #82515.
793 [This bug is not present in the GNOME 1.4 branch as its XPM loader
794 does not use gdk_pixbuf_new(); rather it malloc()s a buffer with
795 no row padding and then uses gdk_pixbuf_new_from_data() on it.]
797 [IMPORTANT: The comment above is to make my life easier when
798 merging stuff across branches. If you make changes to gdk-pixbuf
799 in either branch, please include a comment in the ChangeLog that
800 indicates whether this should be merged into the other branch.
803 2002-05-18 Matthias Clasen <maclas@gmx.de>
805 * io-tiff.c (tiff_image_parse): fix packing order on bigendian
808 Thu May 16 15:17:30 2002 Owen Taylor <otaylor@redhat.com>
810 * pixops/pixops.c: Patch from Matthias Clasen to fix some typos
813 Thu May 16 15:02:46 2002 Owen Taylor <otaylor@redhat.com>
815 * gdk-pixdata.c (gdk_pixdata_to_csource): Fix 64-bit warning.
818 2002-05-07 Michael Natterer <mitch@gimp.org>
820 * gdk-pixbuf/Makefile.am: build the static pixbuf loaders
821 conditionally like the dynamic ones so --without-lib<foo> is
822 honored when building with --disable-modules. (#66867)
824 Sun May 5 02:27:01 2002 Soeren Sandmann <sandmann@daimi.au.dk>
826 * Makefile.am (noinst_PROGRAMS): remove test-loaders (moved to
828 * test-loaders.c, test-images.h: remove
830 2002-04-24 Matthias Clasen <maclas@gmx.de>
832 * gdk-pixbuf-io.c (gdk_pixbuf_save): Remove the ISO8859-1
833 restriction from the description of png tEXt parameters.
835 * io-png.c (png_text_to_pixbuf_option):
836 (gdk_pixbuf__png_image_save): If libpng supports it,
837 store and retrieve non-ISO8859-1 text as UTF-8. (#76172)
839 2002-04-11 Matthias Clasen <maclas@gmx.de>
841 More fixes for #77807:
843 * io-tga.c (get_contiguous_pixbuf): Helper function to create
844 a pixbuf with a contiguous pixel array while being careful about
847 * io-tga.c (fill_in_context, get_image_pseudocolor,
848 get_image_truecolor, get_image_grayscale): Use
849 get_contiguous_pixbuf instead of manually allocating image
852 * io-xpm.c (pixbuf_create_from_xpm):
853 * io-pnm.c (gdk_pixbuf__pnm_image_load):
854 * io-jpeg.c (gdk_pixbuf__jpeg_image_load): Use gdk_pixbuf_new
855 instead of manually allocating image storage.
857 2002-04-09 Matthias Clasen <maclas@gmx.de>
859 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_load_module): Use
860 priv->image_module->module_name instead of image_type which may
863 2002-04-06 Matthias Clasen <maclas@gmx.de>
865 * io-png.c (gdk_pixbuf__png_image_load): Restructured to use
866 gdk_pixbuf_new instead of manually allocating image storage. This
867 gives us a good rowstride and overflow checks. (#77807)
869 2002-04-05 Matthias Clasen <maclas@gmx.de>
871 * io-tiff.c (tiff_image_parse): Avoid allocating an extra copy of
872 the image by using a TIFFRGBAImage{Begin,Get,End} with suitable
873 put functions instead of TIFFRGBAImage. And check image dimensions
876 2002-04-03 Matthias Clasen <maclas@gmx.de>
878 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_type): Fix a doc typo.
880 2002-03-29 Matthias Clasen <maclas@gmx.de>
882 * io-png.c (png_simple_error_callback): libpng error handlers must
883 not return to their callers, thus longjmp out. This prevents
884 annoying stderr output from the default error handler.
886 2002-03-27 Matthias Clasen <maclas@gmx.de>
888 * io-png.c (gdk_pixbuf__png_image_stop_load): Don't leak info_ptr.
890 * io-png.c (gdk_pixbuf__png_image_load): Get rid of unused
891 end_info. Also call png_read_end to check proper ending of the png
892 file and catch text chunks after the image data.
894 2002-03-27 Matthias Clasen <maclas@gmx.de>
896 * io-png.c (gdk_pixbuf__png_image_load,
897 gdk_pixbuf__png_image_begin_load): Make libpng use g_malloc
898 instead of system malloc.
900 2002-03-26 Matthias Clasen <maclas@gmx.de>
902 * io-tiff.c (tiff_image_parse): Don't leak pixbuf on error.
904 * io-gif.c (gdk_pixbuf__gif_image_load_increment): Don't leak
905 context->buf on error.
907 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Make sure to call
908 stop_load even for short images to prevent memleaks.
910 2002-03-25 Matthias Clasen <maclas@gmx.de>
912 * io-png.c (setup_png_transformations): Changed signature to
913 return success and set a GError parameter, adjusted all callers.
914 Also work around a possible FPE in libpng and always check that
915 the new info is sane.
917 2002-03-23 Matthias Clasen <maclas@gmx.de>
919 * io-wbmp.c (gdk_pixbuf__wbmp_image_load_increment):
920 context->updated_func is NULL during a nonincremental load.
921 (gdk_pixbuf__wbmp_image_load): Stop reading after the first error.
923 2002-03-18 Matthias Clasen <maclas@gmx.de>
925 * io-tga.c: Fix assumptions on rowstride by manually allocating a
926 contiguous pixel buffer. Catch buffer overruns in RLE-modi.
927 Support grayscale + alpha (which can be written, but not read (!)
930 2002-03-15 Matthias Clasen <maclas@gmx.de>
932 * io-gif.c (gif_get_frame_info): Catch invalid frame dimensions.
934 2002-03-13 Matthias Clasen <maclas@gmx.de>
936 * test-images.h: Add valid_ras_test and invalid_bmp_1.
938 * test-loaders.c (main): Add random tests for ras and pnm and an
939 invalid bmp which was a crasher until my 2002-03-12 commit.
941 * io-pnm.c (gdk_pixbuf__pnm_image_load_increment): Don't unref the
944 * io-ras.c: Handle some errors.
946 2002-03-12 Sven Neumann <sven@gimp.org>
948 * gdk-pixbuf.c (gdk_pixbuf_fill): use sequential writes instead of
949 calling memcpy(). Simpler and potentially faster. (#70332)
951 2002-03-12 Matthias Clasen <maclas@gmx.de>
953 * io-bmp.c (DecodeHeader): Replace a g_assert_not_reached ()
954 which could actually be reached by a proper error status return.
956 2002-03-05 Matthias Clasen <maclas@gmx.de>
958 * test-loaders.c, test-images.h: More random tests.
960 * io-bmp.c (DecodeHeader): Fail gracefully on OOM here.
962 Tue Mar 5 10:39:03 2002 Owen Taylor <otaylor@redhat.com>
964 * Makefile.am (loaderdir): Put the modules into the
965 GTK_BINARY_VERSION directory for consistency with
966 immodules and theme engines.
968 Sat Mar 2 22:11:10 2002 Owen Taylor <otaylor@redhat.com>
970 * gdk-pixbuf-io.c (_gdk_pixbuf_load_module): If we
971 can't load the module using the g_module_build_path()
972 filename, try loading it as a .la file.
974 * test-loaders.c: Look for modules in current directory
975 rather than .libs, so we find the right .la files.
977 * test-loaders.c: Back out some accidental commits.
979 Sat Mar 2 21:28:03 2002 Owen Taylor <otaylor@redhat.com>
981 * gdk-pixbuf.c (gdk_pixbuf_new): Bullet-proof against integer
984 2002-03-03 Tor Lillqvist <tml@iki.fi>
986 * gtk-pixbuf.rc.in: Remove.
988 * gdk_pixbuf.rc.in: Name like this instead (wrong name used by
991 * makefile.msc: Corresponding changes.
993 * Makefile.am: Use gdk_pixbuf.rc on Win32. Distribute it.
995 2002-02-28 Matthias Clasen <maclas@gmx.de>
997 * pixops/pixops.c (tile_make_weights): Move the call to
998 correct_total() to the right spot. (#72732)
1000 Wed Feb 27 18:33:04 2002 Owen Taylor <otaylor@redhat.com>
1002 * gdk-pixdata.c (gdk_pixdata_to_csource): Use {} not
1003 () to group around string assigned to char[]. (#72767,
1006 2002-02-21 Havoc Pennington <hp@pobox.com>
1008 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_load_module): remove
1009 C++-commented debug spew, reported by David L. Cooper
1011 2002-02-15 Matthias Clasen <maclas@gmx.de>
1013 * pixops/pixops.c (correct_total): New function to make sure
1014 that the weights sum up to the correct total without introducing
1016 (tile_make_weights, bilinear_make_fast_weights,
1017 bilinear_make_weights): Use correct_total.
1019 2002-02-10 Matthias Clasen <maclas@gmx.de>
1021 * test-images.h (tiff1_test_3), test-loaders.c (main): Add a
1022 (#ifdef 0'ed) test provoking a segfault in TIFFReadDirectory().
1024 * io-ico.c (DecodeHeader): Check that pixbuf could be allocated.
1026 * test-images.h (ico_test_2), test-loaders.c (main): Test the
1029 * io-wbmp.c (gdk_pixbuf__wbmp_image_load_increment): Don't write
1030 beyond the end of buffer if width % 8 != 0.
1032 * io-tga.c (try_preload): Enforce that ctx->hdr->type is one of
1033 the supported types, otherwise parse_data_for_row () will not make
1034 any progress, leading to an infinite loop.
1036 Mon Feb 11 14:31:53 2002 Owen Taylor <otaylor@redhat.com>
1038 * pixops/pixops.c (bilinear_make_weights): Fix handing of
1041 2002-02-10 Matthias Clasen <maclas@gmx.de>
1043 * test-loaders.c (main): Enable some tests which should work
1046 * io-wbmp.c (gdk_pixbuf__wbmp_image_load_increment): Detect
1047 invalid image dimensions and insufficient memory.
1049 * io-tga.c (try_preload): Detect invalid image dimensions.
1050 (gdk_pixbuf__tga_stop_load): Don't try to unref NULL pointers.
1052 * io-ico.c (DecodeHeader): Detect some invalid headers and
1055 Fri Feb 8 23:11:15 2002 Owen Taylor <otaylor@redhat.com>
1057 * pixops/pixops.c: Force all weight arrays to sum exactly
1058 to 65535. (Fixes #70971, reported by Federico Mena Quintero)
1060 * Makefile.am (libgdk_pixbuf_1_3_la_DEPENDENCIES): Add
1063 2002-02-08 Federico Mena Quintero <federico@ximian.com>
1065 * pixops/pixops.h: Fix comment; PixopsInterpType -> GdkInterpType.
1067 2002-02-08 Darin Adler <darin@bentspoon.com>
1069 * io-xbm.c: (next_int): Wean this from <ctype.h>.
1071 2002-02-01 Matthias Clasen <matthiasc@poet.de>
1073 * Makefile.am: Build the tga loader as a static library. (#70157)
1075 * io-ico.c: Merge 16- and 32-bit ico support from the stable
1078 * io-gif.c: Recomposite all images if the animation size changes
1079 while loading. (#70055)
1081 * gdk-pixbuf.c (gdk-pixbuf-fill): Make it work for subpixbufs.
1084 Sat Jan 19 20:49:20 2002 Manish Singh <yosh@gimp.org>
1086 * io-jpeg.c, io-png.c: Made sure all the error cases involving
1087 jpeg or png load/saves clean themselves up properly. Marked some
1088 variables needed for cleanup volatile so they aren't clobbered by
1091 Fri Jan 11 18:05:07 2002 Owen Taylor <otaylor@redhat.com>
1093 * pixops/pixops.c: Fix integer overflow for the values
1094 passed to the pixel functions. (#55148, fix from Michael Hore)
1096 Fri Jan 11 17:53:58 2002 Owen Taylor <otaylor@redhat.com>
1098 * pixops/pixops.c (pixops_scale_nearest): Remove meaningless
1101 * pixops/pixops.c (pixops_process): Comment the computation
1102 of run_end_index and fix some edge cases.
1104 * pixops/{scale_line_22_33_mmx.S, composite_line_22_4a4_mmx.S:
1105 composite_line_color_22_4a4_mmx.S}: Handle the case where
1106 dest <= dest_end properly. (#52001, fix from Michael Hore)
1108 Thu Jan 10 16:48:30 2002 Owen Taylor <otaylor@redhat.com>
1110 * pixops/pixops.c: Replace some hardcoded values with the
1111 SUBSAMPLE constant used elsewhere. (#51033)
1113 Wed Jan 9 11:29:44 2002 Owen Taylor <otaylor@redhat.com>
1115 * Makefile.am (s-enum-types-h): Include glib-object.h,
1116 Add G_BEGIN_DECLS/END_DECLS to gdk-pixbuf-enum-types.h. (#68325,
1119 * *.h: G_BEGIN_DECLS cleanups.
1121 Tue Jan 8 10:58:04 2002 Owen Taylor <otaylor@redhat.com>
1123 * gdk-pixbuf-util.c (gdk_pixbuf_saturate_and_pixelate):
1124 - Massive cleanup, make actually legible.
1125 - Fix some clamp-to-range bugs found by Jim Cape (#68231).
1126 - Add a g_return_if_fail() if src and dest alpha don't match.
1127 - Allow for src_rowstride != dest_rowstride.
1129 2002-01-04 Hans Breuer <hans@breuer.org>
1131 * gdk_pixbuf.def : don't export functions prefixed
1134 * makefile.msc : use -FImsvc_recommende_pragmas.h
1136 Thu Jan 3 19:31:58 2002 Owen Taylor <otaylor@redhat.com>
1138 * pixops/pixops.c (scale_line_22_33): Fix and uncomment
1141 * pixops/pixops.c (pixops_composite_nearest): Remove a
1144 * pixops/pixops.c (pixops_composite): Add some docs
1145 about the parameters.
1147 * pixops/README: Add notes about the correct algorithms
1148 for alpha compositing and how to implement them quickly.
1150 2001-12-29 Tor Lillqvist <tml@iki.fi>
1152 * Makefile.am (EXTRA_DIST): Add makefile.msc.
1154 Sat Dec 22 15:31:20 2001 Owen Taylor <otaylor@redhat.com>
1156 * gdk-pixdata.h: Fix trailing "," in enumeration.
1158 2001-12-17 Matthias Clasen <matthiasc@poet.de>
1160 * gdk-pixbuf.c, gdk-pixbuf-io.c, gdk-pixbuf-animation.c,
1161 gdk-pixbuf-data.c, gdk-pixbuf-loader.c, gdk-pixbuf-scale.c,
1162 gdk-pixbuf-util.c, gdk-pixdata.c: Markup fixes.
1164 2001-12-16 Havoc Pennington <hp@pobox.com>
1166 * gdk-pixbuf-scale.c: docs enhancements
1168 2001-12-14 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1170 * io-xpm.c: Use g_ascii_strcasecmp() instead of g_strcasecmp().
1172 2001-12-13 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1174 * gdk-pixbuf-animation.c, gdk-pixbuf-loader.c, gdk-pixpuf.c,
1175 io-gif-animation.c, io-gif.c, io-tiff.c, test-loaders.c: Remove
1176 assorted G_OBJECT casts where unnecessary.
1178 * gdk-pixbuf-loader.c: Call g_object_ref and g_object_unref
1179 instead of gdk_pixbuf_animation_ref and gdk_pixbuf_animation_unref
1182 * gdk-pixbuf-csource.c, io-bmp.c, io-gif-animation.c, io-ico.c,
1183 io-jpeg.c, io-png.c, io-pnm.c, io-ras.c, io-tga.c, io-wbmp.c,
1184 io-xbm.c, io-xpm.c, test-gdk-pixbuf.c: Dito for gdk_pixbuf_ref and
1187 * Makefile.am, pixops/Makefile.am: Compile everything with
1188 -DG_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED
1190 * gdk-pixdata.c: Use g_ascii_strup() instead of g_strup().
1192 * io-xpm.c: Use g_ascii_strcasecmp() instead of g_strcasecmp().
1194 2001-12-12 Matthias Clasen <matthiasc@poet.de>
1196 * gdk-pixbuf-io.c: Markup fixes.
1198 2001-12-12 Matthias Clasen <matthiasc@poet.de>
1200 * Makefile.am (INCLUDES): Define G_LOG_DOMAIN. (#66412)
1202 * gdk-pixbuf-loader.c, gdk-pixbuf-util.c: Markup fixes.
1204 2001-12-11 Michael Natterer <mitch@gimp.org>
1206 * io-png.c: gdk_pixbuf__png_image_save: removed wrong endian
1207 conversion stuff; don't copy RGB pixbufs' lines around before
1210 2001-12-05 Matthias Clasen <matthiasc@poet.de>
1212 * gdk-pixbuf.h (gdk_pixbuf_ref, gdk_pixbuf_unref,
1213 gdk_pixbuf_animation_ref, gdk_pixbuf_animation_unref):
1216 Tue Dec 4 11:45:45 2001 Owen Taylor <otaylor@redhat.com>
1218 * io-xpm.c (pixbuf_create_from_xpm): Fill in color
1219 fields to black for transparent colors since we'll
1220 later initialize pixels from them. (Fixes purify
1221 errors, #66093, HideToshi Tajima)
1223 2001-11-30 Tor Lillqvist <tml@iki.fi>
1225 * gdk_pixbuf.def: Add gdk_pixbuf_get_option.
1227 Fri Nov 30 15:55:34 2001 Owen Taylor <otaylor@redhat.com>
1229 * gdk-pixdata.c (gdk_pixdata_deserialize): Fix
1230 alignment problem in deserialization, (#65785,
1231 reported by Hidetoshi Tajima)
1233 2001-11-28 Manish Singh <yosh@gimp.org>
1235 * gdk-pixbuf/io-bmp.c (gdk_pixbuf__bmp_image_load_increment): Fill
1236 in missing error parameters to DecodeHeader and DecodeColormap.
1238 2001-11-21 Federico Mena Quintero <federico@ximian.com>
1240 Fix Ximian bug #12125; merged from gdk-pixbuf stable.
1242 * gdk-pixbuf/io-bmp.c (gdk_pixbuf__bmp_image_load_increment): Use
1243 a simple state machine instead of a scary if/else chain.
1244 (DecodeHeader): Set the reading state.
1245 (DecodeColormap): Set the reading state.
1246 (decode_bitmasks): New function, decodes the bitmasks for
1247 BI_BITFIELDS coding.
1248 (OneLine32): Handle BI_BITFIELDS coding.
1249 (OneLine16): Likewise.
1251 2001-11-18 Hans Breuer <hans@breuer.org>
1253 * io-xpm.c : use g_strcasecmp(), some poor platforms
1254 don't have strcasecmp()
1256 * makefile.msc : do INCLUDE_png etc. definition here to avoid
1257 my temporary 'gdk-pixbuf-io-include.h' hack
1259 Sun Nov 18 07:54:22 2001 Owen Taylor <otaylor@redhat.com>
1261 * gdk-pixbuf-loader.c: Remove include of gobject/signal.h.
1263 2001-11-03 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1265 * gdk-pixbuf-loader.c, gdk-pixbuf-scale.c: Documentation fixes.
1267 2001-10-29 Tor Lillqvist <tml@iki.fi>
1269 * Makefile.am: Use -no-undefined on Win32. Make
1270 libgdk_pixbuf_1_3_la_OBJECTS depend on
1271 gdk-pixbuf-marshal.c. Install import libraries.
1273 * gdk_pixbuf.def: Update.
1275 * gdk-pixbuf-io.c: (Win32) Use G_WIN32_DLLMAIN_FOR_DLL_NAME, saves
1276 the actual DLL name of libgdk_pixbuf.
1277 (get_libdir): Use it instead of guessing.
1279 * io-xbm.c (gdk_pixbuf__xbm_image_begin_load): Use
1280 g_file_open_tmp() insread of mkstemp().
1282 2001-10-18 Matthias Clasen <matthiasc@poet.de>
1284 * io-xbm.c (gdk_pixbuf__xbm_image_load_real): Don't dereference
1285 context when it may be NULL. (#62344)
1287 2001-10-16 Matthias Clasen <matthiasc@poet.de>
1289 * gdk-pixdata.c, gdk-pixdata.h: Documentation.
1291 * gdk-pixbuf-csource.1: Spelling fixes.
1293 Wed Oct 10 11:52:17 2001 Owen Taylor <otaylor@redhat.com>
1295 * gdk-pixdata.c gdk-pixbuf.h: Get rid of
1296 GDK_PIXBUF_ERROR_HEADER/PIXEL_CORRUPT and use CORRUPT_IMAGE.
1297 Get rid fo GD_PIXBUF_ERROR_UNKNOWN_FORMAT and use the
1298 existing UKNOWN_TYPE error. (#58308)
1300 * gdk-pixbuf.h, gdk-pixdata.c: Rename gdk_pixbuf_new_from_stream()
1301 back to gdk_pixbuf_new_from_inline(). Rework docs to try
1302 and be helpful for the common case. (#58308)
1304 2001-10-05 Sven Neumann <sven@gimp.org>
1306 * gdk-pixbuf/gdk-pixbuf-io.c
1307 * gdk-pixbuf/gdk-pixbuf-private.h
1308 * gdk-pixbuf/gdk-pixbuf.c
1309 * gdk-pixbuf/gdk-pixbuf.h
1310 * gdk-pixbuf/io-jpeg.c
1311 * gdk-pixbuf/io-png.c: changed GDK_PIXBUF_ERROR_BAD_OPTION_VALUE to
1312 GDK_PIXBUF_ERROR_BAD_OPTION to we can use it for bad keys too. Added
1313 new public API gdk_pixbuf_get_option() to retrieve key/value pairs
1314 set by an image loader. Added support for saving and reading PNG tEXt
1315 chunks in PNG images.
1317 Tue Oct 2 11:29:50 2001 Owen Taylor <otaylor@redhat.com>
1319 * gdk-pixdata.c (gdk_pixdata_to_csource): Fix indentation
1320 use a macro to make code a bit more readable.
1322 2001-10-02 Sven Neumann <sven@gimp.org>
1324 * gdk-pixdata.c: g_string_printfa => g_string_append_printf.
1326 Wed Sep 26 18:08:19 2001 Owen Taylor <otaylor@redhat.com>
1328 * Makefile.am (s-enum-types-h): Fix a typo in the include
1329 guards. (#61254, Skip Montaro)
1331 2001-09-21 Matthias Clasen <matthiasc@poet.de>
1333 * io-xpm.c (xpm_extract_color): Rewritten to handle
1334 xpm colormap entries more thoroughly. (#59939)
1336 2001-09-21 Hans Breuer <hans@breuer.org>
1338 * gdk-pixbuf.def : updated externals
1340 * makefile.msc : generate gdk-pixbuf-enum-types.[hc]
1342 Thu Sep 20 17:22:48 2001 Owen Taylor <otaylor@redhat.com>
1344 * io-tiff.c (gdk_pixbuf__tiff_image_load): On OSF, apparently fseek()
1345 works in some on-demand way, so the fseek
1346 gdk_pixbuf_new_from_file() doesn't work here since we are using
1347 the raw file descriptor. So, we call lseek() on the fileno(f)
1348 before using it. (#60840).
1350 2001-09-20 James Henstridge <james@daa.com.au>
1352 * Makefile.am (gdk-pixbuf-enum-types.c): same change as in pango,
1353 so that flags types are registered as flags rather than enums (not
1354 that there are any flags here at the moment).
1356 Wed Sep 19 00:28:24 2001 Owen Taylor <otaylor@redhat.com>
1358 * Makefile.am (gdk_pixbuf_headers): Don't include
1359 gkd-pixbuf-features.h here since is in builddir
1360 and confuses autogen rules.
1362 * Makefile.am: Don't += variables before they have values,
1363 automake-1.5 doesn't like it.
1365 * Makefile.am: Fix srcdir != builddir for gdk-pixbuf-enum-types.c.
1367 * Makefile.am: The whitespace strikes back.
1369 2001-09-17 Matt Wilson <msw@redhat.com>
1371 * Makefile.am (libpixbufloader_xbm_la_LDFLAGS): removed duplicate
1372 LDFLAGS definition, use the -avoid-version one.
1373 (libpixbufloader_tga_la_LDFLAGS): likewise
1375 Mon Sep 17 11:49:02 2001 Owen Taylor <otaylor@redhat.com>
1377 * pixops/*: Mirror GdkInterpType to PixopsInterpType
1378 to avoid including gdk-pixbuf headers.
1380 2001-09-16 James Henstridge <james@daa.com.au>
1382 * .cvsignore: add generated files to ignore list.
1384 * gdk-pixbuf.h: include gdk-pixbuf-enum-types.h
1386 * Makefile.am: add rules to build gdk-pixbuf-enum-types.[ch]
1388 Fri Sep 14 23:22:12 2001 Matthias Clasen <matthiasc@poet.de>
1390 * io-pnm.c (pnm_read_header): Use GDK_PIXBUF_ERROR_CORRUPT_IMAGE,
1391 not GDK_PIXBUF_ERROR_HEADER_CORRUPT. (#58308)
1393 Fri Sep 14 22:53:45 2001 Matthias Clasen <matthiasc@poet.de>
1395 * io-jpeg.c (gdk_pixbuf__jpeg_image_begin_load): Handle
1396 out-of-memory situation better.
1398 * io-pnm.c: Robustness fixes for pnm loader
1400 * io-gif.c: Make gif loader survive TEST_RANDOMLY_MODIFY
1402 * io-xpm.c (parse_color): detect very long color strings
1404 All of the above from Matthias Clasen <matthiasc@poet.de>,
1405 the remaining from Soeren Sandmann <sandmann@daimi.au.dk>.
1407 * test-images.h: add tests:
1408 - four valid ppm's, eight invalid (matthiasc@poet.de)
1409 - one invalid xpm (matthiasc@poet.de)
1410 - one valid tga, one invalid (sandmann@daimi.au.dk)
1411 - one invalid tiff (sandmann@daimi.au.dk
1413 * test-loaders.c: enable tests for ppm, png, gif, tga, tiff, xpm
1415 * io-tiff.c (gdk_pixbuf__tiff_image_stop_load): TIFFClientOpen can
1416 fail - detect it when it happens
1418 * io-tga.c (gdk_pixbuf__tga_load_increment): Fail if there is too
1421 * gdk-pixbuf-io.c: moved wbmb check after ico check to avoid false
1424 Fri Sep 14 00:30:48 2001 Tim Janik <timj@gtk.org>
1426 * Makefile.am: don't used BUILT_SOURCES to build marshal
1427 files, as in conjunction with stamp files, this can
1428 lead to endless rebuilding loops.
1430 Tue Sep 4 00:22:07 2001 Owen Taylor <otaylor@redhat.com>
1432 * Makefile.am: Fix EXTRA_DIST for gdk-pixbuf-csource.1
1434 Tue Sep 4 03:09:52 2001 Tim Janik <timj@gtk.org>
1436 * gdk-pixbuf-csource.1: new file, manual page for
1437 the publically installed gdk-pixbuf-csource utility.
1439 Thu Aug 30 08:30:03 2001 Matthias Clasen <matthiasc@poet.de>
1441 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Propagate
1442 errors from gdk_pixbuf_loader_load_module.
1444 Thu Aug 30 08:27:37 2001 Matthias Clasen <matthiasc@poet.de>
1446 * io-png.c (png_row_callback): Check that row_num is valid.
1448 Tue Aug 28 21:05:26 2001 Matthias Clasen <matthiasc@poet.de>
1450 * io-bmp.c (OneLine): Emit area_updated signal with proper
1451 area information. (#52002)
1453 Tue Aug 28 20:03:43 2001 Matthias Clasen <matthiasc@poet.de>
1455 * test-loaders.c (test_loader): Catch errors at close time.
1456 * test-loaders.c (main): Remove C++ comments.
1458 2001-08-21 Matthias Clasen <matthiasc@poet.de>
1460 * Makefile.am, gdk-pixbuf-io.c, pixbufloader_tga.def,
1461 io-tga.c: Add tga loader, patch by Nicola Girardi. (#56067)
1463 2001-08-20 Matthias Clasen <matthiasc@poet.de>
1465 * test-images.h, test-loaders.c: Add ico and wbmp tests.
1466 * io-jpeg.c (gdk_pixbuf__jpeg_image_save): Fail with a suitable
1467 error if buffer allocation fails.
1468 * io-ico.c: Make .ICO loader more robust.
1469 All of these are due to sandmann@daimi.au.dk (#50187)
1471 2001-08-19 Sven Neumann <sven@gimp.org>
1473 * pixops/pixops.c: applied some simple but effective optimizations
1474 to pixops_composite_nearest() and pixops_composite_color_nearest().
1476 2001-08-07 Sven Neumann <sven@gimp.org>
1478 * gdk-pixbuf.c (gdk_pixbuf_fill): a comment asked to optimize this
1479 function, so that's what I did.
1481 2001-08-06 Kjartan Maraas <kmaraas@gnome.org>
1483 * gdk-pixdata.c: Fix a typo.
1485 2001-07-30 Hans Breuer <hans@breuer.org>
1487 * pixops/makefile.msc : new file
1488 * makefile.msc : use it to complete the build
1490 2001-07-20 Hans Breuer <hans@breuer.org>
1492 * gdk-pixdata.c : don't 'g_tohl (*istream++)', but move
1493 pointer increment out of the macro, because at least one
1494 compiler (msvc 5.0) gets confused otherwise (applies the
1497 * gdk_pixbuf.def : updated exports
1499 * makefile.msc : reflect gdk-pixbuf-csource changes
1501 2001-07-17 Darin Adler <darin@bentspoon.com>
1503 * gdk-pixbuf-csource.c: Add missing <stdlib.h> include.
1504 * io-png.c: (setup_png_transformations): Add ifdef so we compile
1505 without warnings with G_DISABLE_CHECKS on.
1506 * io-pnm.c: (gdk_pixbuf__pnm_image_load_increment): Add a missing
1508 * io-wbmp.c: (getin), (get_mbi): Add a missing const.
1509 * io-xbm.c: (gdk_pixbuf__xbm_image_load_real): Get rid of some
1510 unused locals and add an initial value to quiet the compiler's
1511 unintialized variable warning.
1512 * pixops/pixops.c: Put an ifdef around some dead code.
1514 Thu Jul 5 10:17:15 2001 Owen Taylor <otaylor@redhat.com>
1516 * pixops/Makefile.am (noinst_LTLIBRARIES): Switch
1517 over to the new include flags AC_SUBST(). (Problem
1518 pointed out by Mikael Hermansson.)
1520 2001-06-29 Havoc Pennington <hp@redhat.com>
1522 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): fix for
1525 Thu Jun 28 21:54:19 2001 Owen Taylor <otaylor@redhat.com>
1527 * make-inline-pixbuf.c test-gdk-pixbuf.c test-loaders.c
1528 gdk-pixbuf-csource.c: Fix args to g_type_init ().
1530 2001-06-28 Havoc Pennington <hp@pobox.com>
1532 * gdk-pixdata.c: <string.h>
1534 * gdk-pixbuf-io.c (get_libdir): fix typo in dll name (aren't we
1535 also leaking memory here from g_strdup_printf?)
1537 Tue Jun 26 09:48:02 2001 Tim Janik <timj@gtk.org>
1539 * Makefile.am (noinst_PROGRAMS): get rid of make-inline-pixbuf
1541 * gdk-pixbuf-data.[hc]: provide gdk_pixbuf_new_from_stream()
1542 instead from gdk_pixbuf_new_from_inline().
1544 * gdk-pixdata.[hc]: auxillary GdkPixdata structure, public
1545 installed API for applications that need to serialize/deserialize
1546 on their own (gimp, BEAST).
1548 * gdk-pixbuf/gdk-pixbuf-csource.c: provide publically installed
1549 program that can dump images in CSource format and Pixbuf
1550 stream format. supports RLE encoding, MACRO formatting etc...
1553 Mon Jun 25 00:28:11 2001 Owen Taylor <otaylor@redhat.com>
1555 * Makefile.am: Actually update timestamps, so rules don't
1558 2001-06-11 Havoc Pennington <hp@redhat.com>
1560 * Makefile.am (stamp-gdk-pixbuf-marshal.c): glib_genmarshal
1561 already includes top_builddir
1563 2001-06-08 Havoc Pennington <hp@redhat.com>
1565 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_load_module): remove
1566 bogus g_return_if_fail
1568 * io-gif.c (gif_get_lzw): if delay time is 0 or smaller than
1569 likely timeout resolution, set it to an arbitrarily-chosen short
1571 Fixes bug #55953 from warmenhoven@yahoo.com
1573 2001-06-07 Havoc Pennington <hp@redhat.com>
1575 * Makefile.am: use Owen's new way of doing stampfiles/generated
1578 2001-06-07 Havoc Pennington <hp@redhat.com>
1580 * Makefile.am (gdk-pixbuf-marshal.c): fix up the glib-genmarshal path
1582 2001-06-05 Havoc Pennington <hp@redhat.com>
1584 * test-loaders.c (main): use putenv not setenv, reported by
1587 2001-05-08 Havoc Pennington <hp@redhat.com>
1589 * gdk-pixbuf-util.c (gdk_pixbuf_add_alpha): docs fixup,
1590 and fix behavior to still subst color if the original image
1593 2001-06-04 Havoc Pennington <hp@redhat.com>
1595 * io-pnm.c (pnm_skip_whitespace): patch from Szekeres Istvan,
1598 2001-06-01 Havoc Pennington <hp@redhat.com>
1600 Apply patch from sandmann@daimi.au.dk, with some tweaks.
1601 Makes things a bit more robust, and adds test-loaders.c
1602 which is good for finding further robustness bugs to fix.
1604 * io-tiff.c: Try to work around libtiff suckiness a bit;
1605 put a giant thread lock on the whole loader,
1606 paranoically check both whether error handlers were called and
1607 also whether functions return false. Handle case where width or
1608 height is 0. Various cleanups.
1610 * io-png.c (gdk_pixbuf__png_image_stop_load): only unref pixbuf
1612 (png_error_callback): apparently libpng expects you to longjmp out
1615 * io-gif.c (struct _GifContext): remove unused "pixbuf" field
1616 (lzw_read_byte): change "Mail jrb if this fails" g_warning
1618 (gif_get_lzw): check for out-of-memory
1619 (gif_prepare_lzw): catch/report an error
1620 (new_context): use try_malloc, since GifContext is nearly 70K
1621 (gdk_pixbuf__gif_image_load_increment): set context->buf to NULL
1622 so we don't crash later.
1624 * Makefile.am: Add test-loaders
1626 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): handle context ==
1629 2001-05-29 Darin Adler <darin@eazel.com>
1631 * gdk-pixbuf.h: Fix prototype to use "(void)" instead of "()".
1633 Mon May 28 14:21:35 2001 Jonathan Blandford <jrb@redhat.com>
1635 * io-bmp.c: Patch from Helmethead <hoshem@mel.comcen.com.au> to
1636 fix up bmp decoder to:
1637 - adds 16 bpp bmp support (bug #53884)
1638 - adds OS/2 1.x format bmp support (bug #54964)
1639 - adds 4 bpp RLE compressed bmp support
1640 - adds 1 bpp colormap support
1641 - fixes negative height (top down) bmp support
1643 2001-05-25 Hans Breuer <hans@breuer.org>
1645 * gdk_pixbuf.def : reflect Havoc's recent api change
1647 Sun May 20 12:53:49 2001 Owen Taylor <otaylor@redhat.com>
1649 * Makefile.am (libgdk_pixbuf_1_3_la_LDFLAGS): Remove an
1650 excess $(GLIB_LIBS).
1652 Sun May 13 11:59:11 2001 Owen Taylor <otaylor@redhat.com>
1654 * Makefile.am: Make modules depend on libgdk_pixbuf.la.
1656 2001-05-04 Havoc Pennington <hp@redhat.com>
1658 * pixops/pixops.c (pixops_process): merge fix from stable: Patch
1659 from hoshem@mel.comcen.com.au to fix nonzero X offsets. Fixes
1662 * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest): merge
1663 from stable: Patch from OKADA Mitsuru <m-okada@fjb.co.jp> to fix
1664 confusion of using "src" instead of "p".
1665 (pixops_composite_color_nearest): Use a more accurate (and
1666 correct, to begin with) compositing method. This cures checks
1667 showing through on images with no alpha.
1669 * gdk-pixbuf.c (gdk_pixbuf_fill): fix bug that left some trailing
1672 * gdk-pixbuf-io.h: fix UpdatedNotifyFunc to use signed ints
1674 * gdk-pixbuf-loader.h (struct _GdkPixbufLoaderClass): Change
1675 area_updated signal to use signed ints. Removed animation-related
1678 * io-gif.c, io-gif-animation.h, io-gif-animation.c: Massive
1681 * gdk-pixbuf-animation.c: Add GdkPixbufAnimationIter to abstract
1682 all the pesky details. Remove old frame-based API. Make
1683 GdkPixbufAnimation an abstract base class, derived by the loaders.
1685 Sun Apr 22 15:51:32 2001 Owen Taylor <otaylor@redhat.com>
1687 * Makefile.am (LDADDS): Add $(MATH_LIB).
1689 2001-04-18 Havoc Pennington <hp@redhat.com>
1691 * gdk-pixbuf.c (gdk_pixbuf_fill): Function to fill pixbuf with a
1694 Wed Apr 4 01:41:02 2001 Tim Janik <timj@gtk.org>
1696 * pixops/Makefile.am (noinst_LTLIBRARIES): include $top_srcdir
1697 so we don't try to get <gtk/gtkobject.h> from standard search
1700 * Makefile.am (gdk-pixbuf-marshal.c): use deps from srcdir.
1701 add gdk-pixbuf-marshal.list to EXTRA_DIST.
1702 take gdk-pixbuf-marshal.h out of _la sources.
1704 2001-03-19 Tor Lillqvist <tml@iki.fi>
1706 * makefile.mingw.in: Handle gdk-pixbuf-marshal.c.
1708 * gdk_pixbuf.def: Update.
1710 * pixbufloader_*.def: Just export the fill_vtable functions now.
1712 2001-03-18 Mike Kestner <mkestner@ameritech.net>
1714 * make-inline-pixbuf.c (main): Added logic to remove output when
1717 2001-03-14 Havoc Pennington <hp@redhat.com>
1719 * Makefile.am (gdk-pixbuf-marshal.c): Use different temporary file
1720 from gdk-pixbuf-marshal.h, fixes parallel makes.
1722 Thu Mar 1 04:01:57 2001 Tim Janik <timj@gtk.org>
1724 * test-gdk-pixbuf.c: fixed includes.
1726 2001-02-18 Havoc Pennington <hp@pobox.com>
1728 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): prepend underscore
1729 (gdk_pixbuf_get_named_module): prepend underscore
1730 (gdk_pixbuf_get_module): prepend underscore
1732 2001-02-19 Havoc Pennington <hp@redhat.com>
1734 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): const fix
1736 2001-02-17 Havoc Pennington <hp@pobox.com>
1738 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_new_with_type): docs
1740 2001-02-07 Alexander Larsson <alexl@redhat.com>
1742 * io-xpm.c (free_buffer):
1743 Use g_free, since the buffer is allocated with g_try_alloc().
1745 2001-02-06 Christophe Merlet <redfox@eikonex.org>
1747 * gdk-pixbuf-data.c: Fixes a minor typo.
1749 Sun Feb 4 07:59:57 2001 Tim Janik <timj@gtk.org>
1751 * gdk-pixbuf.h: DOH! don't include glib/gobject.h but glib-object.h,
1752 we finally need the gobject->gruntime rename.
1754 * *.c: scratched calls to g_type_init(), there's simply no point in
1755 doing that, use gtk_init().
1757 2001-02-01 Havoc Pennington <hp@pobox.com>
1759 * gdk-pixbuf-loader.c, gdk-pixbuf-loader.h: rename "private" field
1760 in struct to "priv" for C++
1762 2001-01-31 Havoc Pennington <hp@pobox.com>
1764 * gdk-pixbuf.c: include glib-object.h instead of gvaluetypes.h
1766 2001-01-26 Havoc Pennington <hp@redhat.com>
1768 * gdk-pixbuf-io.c (mname): fix included modules case.
1770 2001-01-22 Havoc Pennington <hp@redhat.com>
1772 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): check errors
1773 from gdk_pixbuf_load_module
1775 2001-01-22 Havoc Pennington <hp@redhat.com>
1777 * Makefile.am: Add built marshaller files to support
1778 GdkPixbufLoader signals
1780 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): have
1781 GDK_PIXBUF_MODULEDIR unconditionally replace the compiled-in
1782 module location, rather than acting as a fallback, because we are
1783 using GDK_PIXBUF_MODULEDIR to use gdk-pixbuf before installing it.
1785 * gdk-pixbuf.h: include gdk-pixbuf-loader.h
1787 * gdk-pixbuf-loader.h, gdk-pixbuf-loader.c: Move back over here
1788 from gtk, and add error to close(), because stop_load may do
1789 parsing of the image.
1791 * pixops/have_mmx.S (_pixops_have_mmx): add newline at end of file
1793 * io-*.c: make individual operations static, and add fill_vtable
1794 functions which are exported. Fix the collection of type warnings
1795 that surfaced, including a number of functions that didn't
1796 properly take a GError and some that weren't
1797 const-correct. Involved adding error handling for a few loaders.
1799 * gdk-pixbuf-io.h: Add error reporting to stop_load function
1801 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): change to just look up
1802 a function that fills in the GdkPixbufModule vtable, instead of
1803 looking up all the image functions individually; this means we
1804 can get type safety within modules for the loader functions.
1805 Also it means you don't have to keep the statically compiled and
1806 GModule versions in sync.
1808 * test-gdk-pixbuf.c (main): remove gdk_pixbuf_init()
1810 * make-inline-pixbuf.c (main): remove call to gdk_pixbuf_init()
1812 * gdk-pixbuf.h: nuke gdk_pixbuf_init()
1814 * gdk-pixbuf-animation.c (gdk_pixbuf_frame_get_type): g_type_init
1817 * gdk-pixbuf.c (gdk_pixbuf_get_type): g_type_init () here
1819 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_get_type):
1822 2001-01-20 John Harper <jsh@eazel.com>
1824 * io-xbm.c: new pixbuf loader, for X bitmap files. Basically a
1825 collision between Xlib's RdBitF.c and io-tiff.c
1827 * gdk-pixbuf-io.c, Makefile.am, pixbufloader_xbm.def: added
1830 [ merged from stable gdk-pixbuf module. Untested, but it
1831 compiles, and works fine in the stable module ]
1833 2001-01-18 Tor Lillqvist <tml@iki.fi>
1835 * gdk-pixbuf-io.c (get_libdir): (Win32) Use the new
1836 g_win32_get_package_installation_subdirectory() function. No need
1837 to include windows.h.
1838 (gtk_win32_get_installation_directory): Remove this then.
1840 2001-01-01 Havoc Pennington <hp@redhat.com>
1842 * Makefile.am (libgdk_pixbuf_1_3_la_LDFLAGS): add
1843 @LIBTOOL_EXPORT_OPTIONS@
1845 2000-12-30 Tor Lillqvist <tml@iki.fi>
1847 * gdk_pixbuf.def: Update.
1849 2000-12-16 Havoc Pennington <hp@pobox.com>
1851 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file): ref
1852 the pixbuf in the frame, so we can use gdk_pixbuf_frame_free
1853 (gdk_pixbuf_frame_copy): new function
1854 (gdk_pixbuf_frame_free): new function
1855 (gdk_pixbuf_frame_get_type): new function
1856 (GDK_TYPE_PIXBUF_FRAME): macro to get type for GdkPixbufFrame
1858 Tue Nov 14 11:51:26 2000 Owen Taylor <otaylor@redhat.com>
1860 * Makefile.am: Add -avoid-version for all modules.
1862 2000-11-13 Havoc Pennington <hp@redhat.com>
1864 * io-png.c (png_simple_error_callback): fix error message to not
1865 say "save" since it's used for loading
1867 2000-11-11 Hans Breuer <Hans@Breuer.Org>
1869 * gdk-pixbuf-io.c : Fix all function prototype macros for self
1870 contained image handlers (!USE_G_MODULE). Files to save should
1871 be opened in binary mode, fopen(s, "wb").
1873 * io-xpm.c : added HAVE_UNISTD_H condition
1875 2000-11-11 Tor Lillqvist <tml@iki.fi>
1877 * gdk_pixbuf.def: Add gdk_pixbuf_new_subpixbuf.
1879 * io-tiff.c (gdk_pixbuf__tiff_image_begin_load): Use
1880 g_file_open_tmp() (just added to GLib) instead of mkstemp() (or
1881 mktemp() and open()).
1883 * io-xpm.c (gdk_pixbuf__xpm_image_begin_load): Ditto.
1885 2000-11-01 Havoc Pennington <hp@pobox.com>
1887 * gdk-pixbuf.c (gdk_pixbuf_new_subpixbuf): New function to create
1888 a pixbuf pointing to a subregion of another pixbuf.
1890 2000-10-16 Tor Lillqvist <tml@iki.fi>
1892 * gdk-pixbuf-io.c: Define also m_save (for the non-gmodule case).
1894 2000-10-16 Havoc Pennington <hp@redhat.com>
1896 * gdk-pixbuf-io.c (gdk_pixbuf_get_module)
1897 (gdk_pixbuf_get_named_module) (gdk_pixbuf_load_module):
1898 add error reporting here also
1900 * make-inline-pixbuf.c (main): use GError
1902 * io-xpm.c: include unistd.h
1904 * gdk-pixbuf-util.c: include string.h
1906 * io-*.c: add error reporting
1908 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file): add
1911 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file): Add error reporting
1913 * gdk-pixbuf-io.h: Add GError** to load_increment and load
1916 * gdk-pixbuf-io.c (gdk_pixbuf_save) (gdk_pixbuf_savev): return
1917 a G_FILE_ERROR if we fail to write or close the file.
1919 * gdk-pixbuf.h: remove GDK_PIXBUF_ERROR_IO, instead we'll use
1920 G_FILE_ERROR_*. Rename enum to GdkPixbufError, properly following
1921 the GError naming rules. Add GError** to load functions.
1923 2000-10-06 Havoc Pennington <hp@redhat.com>
1925 * gdk-pixbuf.h: add GdkPixbufAlphaMode
1927 2000-10-06 Havoc Pennington <hp@redhat.com>
1929 This entry is a summary of the merged-in changes from 1.0.
1930 Relevant original ChangeLog entries are spliced in after
1931 this entry; the files they refer to are from the 1.0
1934 * pixops/pixops.c (pixops_composite_nearest): sync a small fix
1937 * io-xpm.c (xpm_seek_string): add fscanf error check from 1.0
1938 Add progressive loader from 1.0
1940 * io-tiff.c (gdk_pixbuf__tiff_image_begin_load): mem leak fixes
1943 * io-pnm.c: new version from 1.0 tree
1945 * io-jpeg.c (gdk_pixbuf__jpeg_image_load): sync from 1.0, use
1948 * io-gif.c (lzw_read_byte): sync from 1.0, change a g_error to
1950 (gif_get_next_step): return 0 here, sync from 1.0
1952 * gdk-pixbuf-util.c: sync email address change for Cody
1955 2000-09-11 Jeffrey Stedfast <fejj@helixcode.com>
1957 * gdk-pixbuf/io-pnm.c: Pretty much totally rewrote again because
1958 last nights code was still "broken". Should now properly handle
1959 all error conditions gracefully.
1961 2000-09-10 Jeffrey Stedfast <fejj@helixcode.com>
1963 * gdk-pixbuf/io-pnm.c: Rewrote.
1965 2000-09-09 Federico Mena Quintero <federico@helixcode.com>
1967 * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest): Compute
1968 the correct dest offset.
1970 2000-08-25 Federico Mena Quintero <federico@helixcode.com>
1972 * gdk-pixbuf/io-xpm.c: #include <unistd.h>
1974 2000-08-05 Larry Ewing <lewing@helixcode.com>
1976 * gdk-pixbuf/io-tiff.c: stop leaking context->tempname.
1978 * gdk-pixbuf/io-xpm.c: same as above.
1980 2000-07-26 Michael Meeks <michael@helixcode.com>
1982 * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_load): make
1985 2000-07-21 Larry Ewing <lewing@helixcode.com>
1987 * gdk-pixbuf/io-xpm.c: add a fake progressive loader so that
1988 xpm at least supports the progressive interface like the one in
1989 io-tiff.c. This should be reimplemented as an actual progressive
1992 2000-07-19 Jonathan Blandford <jrb@redhat.com>
1994 * demo/pixbuf-demo.c (update_timeout): changed scaling level to
1995 make it look better.
1996 * gdk-pixbuf/testpixbuf.c (update_timeout): Patch from michael
1997 meeks to handle errors better.
1999 2000-10-07 Tor Lillqvist <tml@iki.fi>
2002 * pixbufloader_jpeg.def
2003 * pixbufloader_png.def: Add new entry points.
2005 * makefile.mingw.in: Use libintl.
2007 2000-10-06 Havoc Pennington <hp@redhat.com>
2009 * gdk-pixbuf-io.c (gdk_pixbuf_save): s/format/type/g to be
2010 consistent with gdk_pixbuf_loader_new_with_type().
2011 Return runtime error if a module is missing.
2013 * gdk-pixbuf.h: add GDK_PIXBUF_ERROR_UNKNOWN_TYPE
2015 2000-10-05 Havoc Pennington <hp@redhat.com>
2017 Pixbuf saving, patch from David Welton.
2019 * Makefile.am (GDK_PIXBUF_LIBS): add INTLLIBS
2020 (libgdk_pixbuf_1_3_la_SOURCES): add gdk-pixbuf-i18n.h
2022 * gdk-pixbuf-i18n.h: Add _() to gdk-pixbuf
2024 * io-png.c (gdk_pixbuf__png_image_save): PNG save routine.
2026 * io-jpeg.c (gdk_pixbuf__jpeg_image_save): JPEG save routine.
2028 * gdk-pixbuf-io.c (gdk_pixbuf_save):
2029 (gdk_pixbuf_savev): Implement pixbuf saving routines
2031 * gdk-pixbuf.c (gdk_pixbuf_error_quark): pixbuf error quark
2034 * gdk-pixbuf.h: Add public save routines; add pixbuf error
2037 * gdk-pixbuf-io.h: Add save function to GdkPixbufModule
2039 2000-10-05 Dan Winship <danw@helixcode.com>
2041 * io-png.c, io-tiff.c, io-xpm.c: Fix comments to not claim that
2042 all three of these files are the JPEG image loader. (From
2045 2000-10-03 Tor Lillqvist <tml@iki.fi>
2047 * makefile.mingw.in: Add rule for make-inline-pixbuf. Use
2048 gdk-pixbuf's version number in the rule for makefile.mingw itself.
2050 * gdk_pixbuf.def: Add new entry points.
2052 2000-09-26 Havoc Pennington <hp@redhat.com>
2054 * gdk-pixbuf-util.c (gdk_pixbuf_saturate_and_pixelate): Add this
2055 function here, instead of putting it in a private GTK+ file.
2057 * gdk-pixbuf-private.h (GdkPixbufInlineFormat): include an
2058 enum here for the known formats of inlined pixbufs.
2059 Also, #define our file magic here.
2061 2000-06-23 Havoc Pennington <hp@redhat.com>
2063 * make-inline-pixbuf.c: Small program that creates C variable
2064 declarations of inline pixbuf data. This can be read
2065 by gdk_pixbuf_new_from_inline.
2067 * gdk-pixbuf.h (gdk_pixbuf_new_from_inline): New function to read
2068 inline pixbuf data and create a pixbuf from it.
2070 * gdk-pixbuf-data.c (gdk_pixbuf_new_from_inline): implement here
2072 2000-09-07 Tor Lillqvist <tml@iki.fi>
2074 * makefile.mingw.in: Use own version number for gdk-pixbuf DLLs,
2077 2000-08-12 Tor Lillqvist <tml@iki.fi>
2079 * gdk_pixbuf.def: Add missing entry point.
2081 2000-08-10 Havoc Pennington <hp@redhat.com>
2083 * Makefile.am (EXTRA_DIST): The *.def files had the wrong names
2084 (s/pixbuf_/pixbufloader_)
2086 2000-08-02 Tor Lillqvist <tml@iki.fi>
2092 * io-wbmp.c: Conditionalise inclusion of <unistd.h>.
2094 * makefile.mingw.in: List loaders alphabetically. Add the wbmp
2095 one. Fix names of DLLs to have '-' instead of '_'.
2097 2000-07-31 Elliot Lee <sopwith@redhat.com>
2098 * io-wbmp.c: Some bug fixes - now tested to work.
2100 2000-07-27 Elliot Lee <sopwith@redhat.com>
2102 * gdk-pixbuf-io.h, gdk-pixbuf-io.c: Add
2103 gdk_pixbuf_get_named_module() function to facilitate above change
2104 * io-wbmp.c, pixbufloader_wbmp.defs, gdk-pixbuf-io.c, Makefile:
2105 Implement loader for WBMP format.
2106 * io-bmp.c: Don't malloc a temporary buffer - use stack instead.
2108 2000-07-23 Tor Lillqvist <tml@iki.fi>
2113 * pixops/makefile.mingw.in
2114 * pixbuf_*.def: New files.
2117 * pixops/Makefile.am: Add them. Add rule to generate makefile.mingw.
2119 * gdk-pixbuf-io.c (gtk_win32_get_installation_directory):
2120 New function, to get the GTK+ installation directory from
2121 the Windows Registry, where the installation program
2122 for whatever software includes GTK+ has stored it.
2124 Used to avoid having hardcoding the directory where to look for
2125 loaders. This function is needed by gtk, too, so it should
2126 really be just in one place. Maybe a small static library
2127 one level up from here?
2129 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file)
2130 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file):
2131 Open file in binary mode. This *is* standard C. (No-op on Unix,
2134 * io-jpeg.c: If we don't HAVE_SIGSETJMP, use normal setjmp().
2136 * io-tiff.c: Use g_get_tmp_dir(). If we don't HAVE_MKSTEMP, use
2137 mktemp() and open().
2138 (gdk_pixbuf__tiff_image_stop_load): g_free() also the tempname.
2140 * pixops/*.S: The Gas from mingw32 doesn't like the .type
2141 pseudo-op. Conditionalise on __MINGW32__, but probably
2142 should conditionalise on Gas version instead? Or could we
2143 do without .type on all systems?
2145 * pixops/timescale.c: Use g_get_current_time()
2146 instead of gettimeofday().
2148 Sat Jul 22 10:57:22 2000 Owen Taylor <otaylor@redhat.com>
2150 * Makefile.am (test_gdk_pixbuf_LDADD): Remove -lgmodule
2152 Tue Jul 11 11:26:42 2000 Owen Taylor <otaylor@redhat.com>
2154 * gdk-pixbuf.c: Add <string.h> include.
2156 Tue Jul 11 06:20:14 2000 Tim Janik <timj@gtk.org>
2158 * io-gif.c (gdk_pixbuf__gif_image_load_animation):
2159 * gdk-pixbuf-data.c (gdk_pixbuf_new_from_data):
2160 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file):
2161 use g_object_new() instead of g_type_create_instance() which
2162 is a private function for fundamental type implementations.
2164 Thu Jul 6 11:49:47 2000 Owen Taylor <otaylor@redhat.com>
2166 * Makefile.am (libgdk_pixbuf_la_LDFLAGS): Use GTK+ version
2167 soname scheme for gdk-pixbuf.
2169 2000-06-21 Havoc Pennington <hp@pobox.com>
2171 * gdk-pixbuf.c: Convert GdkPixbuf to GObject, leaving it opaque
2172 (i.e. derivation is not allowed, and there are no virtual methods
2174 (gdk_pixbuf_preinit): Call g_type_init() here.
2175 (gdk_pixbuf_init): Add a user-friendly init function, for users
2176 of standalone gdk-pixbuf
2178 * gdk-pixbuf-animation.c: Convert to GObject, in the same
2179 way GdkPixbufAnimation was done.
2181 * gdk-pixbuf.h: Remove gdk_pixbuf_set_unref_handler() and
2182 gdk_pixbuf_finalize() from API, since these are broken and don't
2183 make sense with new GObject stuff.
2185 Wed Jun 21 16:02:48 2000 Owen Taylor <otaylor@redhat.com>
2187 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): Add feature to
2188 support a GDK_PIXBUF_MODULEDIR env variable as a secondary
2191 2000-06-10 Federico Mena Quintero <federico@helixcode.com>
2193 * demo/pixbuf-demo.c: It was cold and rainy this Saturday morning,
2194 so I needed something to warm my thighs. Running plain infinite
2195 loops on your laptop to make it hot is not very much fun. A demo
2196 of the gdk-pixbuf scaling functions is way better, and looks
2199 * configure.in (AC_OUTPUT): Added the demo Makefile.
2201 * Makefile.am (SUBDIRS): Added the demo directory.
2203 2000-06-09 Larry Ewing <lewing@helixcode.com>
2205 * gdk-pixbuf/io-png.c (gdk_pixbuf__png_image_load_increment):
2206 setjmp for the png error handler. It seems setting the error
2207 handling functions does not avoid the jump, and so not calling
2208 setjmp was causing the incremental loader to jump into lala land.
2209 (gdk_pixbuf__png_image_begin_load): setjmp for error handling, I'm
2210 not sure this one is actually required but the docs say it must be
2211 set for every call to a png_* function.
2212 Also changed the comment to reflect the fact that setting the
2213 error handlers does _not_ avoid the longjmp.
2215 2000-06-06 Larry Ewing <lewing@helixcode.com>
2217 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
2218 take frame offest into account when trying to calculate the
2219 animation bbox. Also set the width to the width not the height.
2220 (gdk_pixbuf_loader_animation_done): cycle over the frames to
2221 calculate bbox because now we finally have all the offset
2222 information for each frame.
2224 2000-06-05 Mathieu Lacage <mathieu@gnome.org>
2226 * configure.in: add some gtk parameters to the
2227 GDK_PIXBUF_LIBĂƒĂ¯Â¿Â½Â²S and GDK_PIXBUG_INCLUDEDIR vars. One more
2228 fight in my crusade for strange prefix compile...
2230 2000-05-30 Not Zed <NotZed@HelixCode.com>
2232 * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_begin_load):
2233 Initialise the error handler exit routine to our own. Note this
2234 means that every function that accesses the jpeg lib on this
2235 object MUST do a setjmp.
2236 (gdk_pixbuf__jpeg_image_stop_load): setjmp before accessing jpeg
2237 lib for handling fatal error.
2238 (gdk_pixbuf__jpeg_image_load_increment): And here too. So now
2239 your applications dont quit if there's a jpeg error!
2241 2000-05-30 Federico Mena Quintero <federico@helixcode.com>
2243 * gdk-pixbuf.spec.in: Include all the loader libraries. Patch
2244 from Frank de Lange <frank@unternet.org>.
2246 2000-05-09 Darin Adler <darin@eazel.com>
2248 * gdk-pixbuf/test-gdk-pixbuf.c:
2249 Fixed includes to get rid of accidental GNOME dependency.
2251 2000-05-26 Cody Russell <car0969@gamma2.uta.edu>
2252 * Makefile.am: Added gdk-pixbuf.spec to EXTRA_DIST
2254 2000-05-22 Federico Mena Quintero <federico@helixcode.com>
2256 * configure.in: Bumped version number to 0.8.0.
2258 * doc/Makefile.am (content_files): The toplevel gdk-pixbuf.sgml
2259 file was not being distributed.
2261 * gdk-pixbuf/pixops/Makefile.am (EXTRA_DIST): Added DETAILS.
2263 2000-05-09 Darin Adler <darin@eazel.com>
2265 * gdk-pixbuf/gdk-pixbuf-drawable.c: (rgb565lsb), (rgb565msb),
2266 (rgb565alsb), (rgb565amsb), (rgb555lsb), (rgb555msb), (rgb555alsb),
2267 (rgb555amsb), (convert_real_slow): Change all conversion from 16-bit
2268 formats to 32-bit formats to re-use the high bits of the color values
2269 so that white maps to full white.
2271 Fri May 5 12:16:32 2000 Owen Taylor <otaylor@redhat.com>
2273 * gdk-pixbuf/pixops/DETAILS: Add beginnings of file with
2274 detailed information about the structure and algorithms
2275 of pixops so people can fix it instead of breaking it.
2277 2000-05-04 Darin Adler <darin@eazel.com>
2279 * gdk-pixbuf/pixops/pixops.c: (pixops_composite_nearest),
2280 (composite_pixel), (composite_line):
2281 * gdk-pixbuf/test-gdk-pixbuf.c: (simple_composite_test_one_type):
2282 Now that Owen explained the algorithm, I think I implemented it
2283 right for the cases where the destination pixbuf is not opaque.
2284 The test does seem to confirm it.
2286 2000-05-04 Darin Adler <darin@eazel.com>
2288 * gdk-pixbuf/.cvsignore:
2289 * gdk-pixbuf/Makefile.am:
2290 * gdk-pixbuf/test-gdk-pixbuf.c (store_pixel), (fill_with_pixel),
2291 (load_pixel), (simple_composite_test_one),
2292 (simple_composite_test_one_type), (simple_composite_test), (main):
2293 Added some tests of composite to highlight problems in the old
2294 implementation. These tests run without any user interaction.
2295 Just do "make check".
2297 * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest),
2298 (composite_pixel), (composite_line): Fix composite to do a textbook
2299 "A over B" composite. This was clearly the intent, and it was easy
2300 to fix the code to do it. (Note to those that read my earlier tries
2301 at a patch; this version fixes typos that were present in all
2302 my patch attempts. I checked the final version by adding more tests.)
2304 2000-04-22 05:27:43 2000 Owen Taylor <otaylor@redhat.com>
2306 * gdk-pixbuf/pixops/pixops.c (pixops_scale_nearest): Properly
2307 offset y coordinate accordining to render_y0.
2309 * gdk-pixbuf/gdk-pixbuf-scale.c: Properly handle nonzero
2312 2000-04-22 James Henstridge <james@daa.com.au>
2314 * gdk-pixbuf.spec.in (%files): moved %{prefix}/bin/* from the main
2315 package to the devel package. The only file installed in bin is
2316 gdk-pixbuf-config, which belongs in -devel. This should allow having
2317 multiple versions of the main gdk-pixbuf package installed.
2319 2000-04-17 Karl Eichwalder <ke@suse.de>
2321 * gdk-pixbuf/Makefile.am (INCLUDES): Add $(GNOME_CFLAGS).
2322 Reported by Jens Finke.
2324 2000-04-14 Tomasz KĂƒĂ¯Â¿Â½Â³opczko <kloczek@pld.org.pl>
2326 * gdk-pixbuf/pixops/makefile.am: $(LIBART_CFLAGS) replaced by
2327 $(GTK_CFLAGS) - now gdk-pixbuf compiles correctly.
2329 2000-04-13 James Henstridge <james@daa.com.au>
2331 * configure.in: when performing the configure check to see if
2332 gmodule works, set CFLAGS to GLIB_CFLAGS and LIBS to GLIB_LIBS,
2333 rather than the other way round. Also, call AC_MSG_RESULT in the
2334 even that dynamic modules were not supported.
2336 2000-04-12 Federico Mena Quintero <federico@helixcode.com>
2338 This comes from an excellent idea by Tim Janik (timj@gtk.org) to
2339 hook to the last unref operation.
2341 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_set_last_unref_handler): New
2342 function to set the last unref handler for a pixbuf.
2343 (gdk_pixbuf_finalize): New function to actually finalize a pixbuf.
2344 It calls the pixbuf's destroy notification function and frees the
2345 GdkPixbuf structure itself.
2346 (gdk_pixbuf_unref): Use the last unref function of the pixbuf if
2349 * gdk-pixbuf/gdk-pixbuf-private.h (struct _GdkPixbuf): New fields
2350 for the last unref handler and its user data.
2352 * gdk-pixbuf/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Use
2353 g_new0() to allocate the pixbuf.
2355 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
2356 Fixed the call to gtk_signal_new() for the "frame_done" signal; it
2357 was not specifying the `frame' argument.
2359 * gdk-pixbuf/gdk-pixbuf-animation.c
2360 (gdk_pixbuf_animation_get_width): Fixed docstring.
2361 (gdk_pixbuf_animation_get_height): Likewise.
2362 (gdk_pixbuf_animation_get_num_frames): Likewise.
2363 (gdk_pixbuf_animation_get_frames): Likewise.
2365 * doc/gdk-pixbuf-sections.txt: Updated with the new functions and
2368 * doc/tmpl/gdk-pixbuf.sgml: Added the description for GdkColorspace.
2370 * doc/tmpl/scaling.sgml: Added the description for GdkInterpType.
2372 * doc/tmpl/refcounting.sgml: Updated with the information about
2373 the last unref handler.
2375 * doc/tmpl/*.sgml: Markup tweaks.
2377 * gdk-pixbuf/Makefile.am (libgnomecanvaspixbuf_la_LDFLAGS): Sigh,
2378 update the libtool version number for libgnomecanvaspixbuf as
2380 (libpixbufloader_*_la_LDFLAGS): The loaders need to be versioned
2381 as well, or the old ones won't work with the new stuff. Also,
2382 renamed the modules as follows.
2384 * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_load_module): Now the
2385 modules are called "libpixbufloader-<format>.so" instead of
2386 "libpixbuf-<format>.so". They needed renaming so that the new
2387 loaders won't overwrite the old ones; even with the versioning
2388 stuff, the new .so symlink to the .so.1.0.0 would overwrite the
2391 2000-04-12 Paolo Molaro <lupus@debian.org>
2393 * .cvsignore, src/.cvsignore: shut up cvs.
2395 2000-04-11 Federico Mena Quintero <federico@helixcode.com>
2397 Most of this patch is based on a patch by Havoc Pennington
2398 (hp@redhat.com) to make GdkPixbuf's structures opaque and to
2399 remove the libart dependency.
2401 * gdk-pixbuf/gdk-pixbuf.h: Removed the public structures.
2402 (GdkColorspace): New enum that for now only contains
2404 (GdkPixbufDestroyNotify): New type for the pixbuf's pixels destroy
2405 notification function.
2406 (GdkInterpType): New num with interpolation types.
2408 * *.[ch]: Replace the libart stuff with our own stuff.
2410 * pixops/*.[ch]: Likewise.
2412 * gdk-pixbuf/gdk-pixbuf-private.h: New file with the private
2413 declarations of the GdkPixbuf structures.
2415 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_new_from_art_pixbuf):
2417 (gdk_pixbuf_get_format): Constify.
2418 (gdk_pixbuf_get_n_channels): Constify.
2419 (gdk_pixbuf_get_has_alpha): Constify.
2420 (gdk_pixbuf_get_bits_per_sample): Constify.
2421 (gdk_pixbuf_get_pixels): Constify.
2422 (gdk_pixbuf_get_width): Constify.
2423 (gdk_pixbuf_get_height): Constify.
2424 (gdk_pixbuf_get_rowstride): Constify.
2426 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_copy): New function to copy
2429 * gdk-pixbuf/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Added a
2430 bits_per_sample argument; currently only 8 bits per sample are
2433 * gdk-pixbuf/gdk-pixbuf-animation.c (gdk_pixbuf_frame_get_pixbuf):
2435 (gdk_pixbuf_frame_get_x_offset): New accessor.
2436 (gdk_pixbuf_frame_get_y_offset): New accessor.
2437 (gdk_pixbuf_frame_get_delay_time): New accessor.
2438 (gdk_pixbuf_frame_get_action): New accessor.
2440 * gdk-pixbuf/gdk-pixbuf-render.c
2441 (gdk_pixbuf_render_pixmap_and_mask): Instead of returning a solid
2442 mask rectangle for pixbufs without an alpha channel, set the
2443 *mask_return to NULL.
2445 * gdk-pixbuf/gdk-pixbuf-util.c (gdk_pixbuf_add_alpha): Constify.
2447 * gdk-pixbuf/gdk-pixbuf-scale.c: Fix includes.
2449 * gdk-pixbuf/gdk-pixbuf-scale.c (gdk_pixbuf_scale): Added some
2450 preconditions. Maybe we should also check for the colorspace,
2451 bits per pixel, and such.
2452 (gdk_pixbuf_composite): Likewise.
2453 (gdk_pixbuf_composite_color): Likewise.
2454 (gdk_pixbuf_scale_simple): Likewise, and fail gracefully if we
2455 cannot allocate the new pixbuf.
2456 (gdk_pixbuf_composite_color_simple): Likewise.
2458 * gdk-pixbuf/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_render):
2459 Use art_rgb_rgba_affine() or art_rgb_affine() since we no longer
2462 * gdk-pixbuf/io-bmp.c: Fix includes.
2464 * gdk-pixbuf/pixops/pixops.c (pixops_scale_nearest): Fixed cast in
2469 * configure.in: Removed checks for libart.
2471 * gdk-pixbuf/Makefile.am: Removed references to libart.
2472 (noinst_HEADERS): Added gdk-pixbuf-private.h.
2474 * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_LDFLAGS): Incremented
2475 the version number of the libtool library to indicate that this
2476 definitely is not compatible with the old usage. I know you love
2479 * configure.in: Bumped version number to 0.7.0.
2483 * gdk-pixbuf-config.in (--libs): We no longer require libart.
2485 * DEPENDS.libgdk_pixbuf: We no longer depend on libart.
2487 * gdk-pixbuf.spec.in: Updated, but I don't guarantee anything.
2489 2000-04-06 Jonathan Blandford <jrb@redhat.com>
2491 * gdk-pixbuf/testanimation.c (main): add more info to the
2492 testanimation frames.
2494 2000-04-04 Ettore Perazzoli <ettore@helixcode.com>
2496 * gdk-pixbuf/gdk-pixbuf-animation.c
2497 (gdk_pixbuf_animation_get_width): New accessor function.
2498 (gdk_pixbuf_animation_get_height): New accessor function.
2499 (gdk_pixbuf_animation_get_num_frames): New accessor function.
2500 (gdk_pixbuf_animation_get_frames): New accessor function.
2502 2000-04-01 Federico Mena Quintero <federico@helixcode.com>
2504 * gdk-pixbuf/gdk-pixbuf.c: Reverted Mark's change. The refcount
2505 is private information, and the art_pixbuf will go away soon.
2507 2000-03-31 Mark Crichton <crichton@gimp.org>
2509 * gdk-pixbuf/gdk-pixbuf.c: Added gdk_pixbuf_get_refcount
2510 and gdk_pixbuf_get_artpixbuf accessor functions.
2512 2000-03-29 Federico Mena Quintero <federico@helixcode.com>
2514 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_get_has_alpha): Return
2515 gboolean instead of int.
2517 2000-03-29 Radek Doulik <rodo@helixcode.com>
2519 * gdk-pixbuf/gdk-pixbuf-animation.c
2520 (gdk_pixbuf_animation_new_from_file): same as below
2522 * gdk-pixbuf/io-gif.c (gif_get_lzw): added update of width and
2523 height in GdkPixbufAnimation
2525 2000-03-28 Radek Doulik <rodo@helixcode.com>
2527 * gdk-pixbuf/io-gif.c (gif_get_lzw): test also for
2528 context->frame_done_func and context->anim_done_func to make
2529 progressive animation loading work
2531 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
2532 added priv->pixbuf = NULL as pixbuf is now in frame (and to make
2533 gdk_pixbuf_loader_prepare happy)
2534 (gdk_pixbuf_loader_frame_done): update animation bbox
2536 * gdk-pixbuf/gdk-pixbuf.h: added bbox size (width, height) to
2539 2000-03-27 Radek Doulik <rodo@helixcode.com>
2541 * gdk-pixbuf/io-gif.c (gif_get_lzw): use frame_len and frame_width
2542 instead of width and height
2544 2000-03-27 Owen Taylor <otaylor@redhat.com>
2546 * gdk-pixbuf/pixops/pixops.c: Fix problem with
2547 precendence of >> and & which was keeping composite_color
2548 from working with non-gray images.
2550 2000-03-08 Jonathan Blandford <jrb@redhat.com>
2552 * gdk-pixbuf/io-gif.c (gdk_pixbuf__gif_image_load): free the context.
2553 (gdk_pixbuf__gif_image_load_animation): free the context.
2555 2000-03-06 Arjan van de Ven <arjan@fenrus.demon.nl>
2557 * gdk-pixbuf/io-bmp.c: Fixed to pointer-bugs and a
2558 mis-interpretation of the Microsoft documentation. Now
2559 it can load .BMP files that are not generated by The Gimp
2562 2000-03-01 Mark Crichton <crichton@gimp.org>
2564 * configure.in: Added BUILD_CANVAS_ITEM stuff to (finally)
2565 fix the last auto* build bug (where we have libart, but no
2568 * gdk-pixbuf/Makefile.am: Same.
2570 2000-02-28 Matt Wilson <msw@redhat.com>
2572 * gdk-pixbuf/gdk-pixbuf-drawable.c: s/unsigned long/guint32/g,
2573 s/unsigned short/guint16/g, s/unsigned char/guint8/g
2575 2000-02-26 Federico Mena Quintero <federico@helixcode.com>
2577 * README: We don't require libgif/ungif nor libXpm.
2579 * NEWS: This was outdated, so updated it.
2581 2000-02-25 Federico Mena Quintero <federico@helixcode.com>
2583 * gdk-pixbuf.m4: Use the correct name for
2584 gdk-pixbuf/gdk-pixbuf.h. Thanks to Jacob Berkman for pointing
2587 2000-02-21 Federico Mena Quintero <federico@helixcode.com>
2589 * configure.in (GDK_PIXBUF_MINOR): Bumped version number to 0.6.0.
2591 * doc/compiling.sgml: New appendix documenting the gdk-pixbuf
2592 library's particular options to configure.in.
2594 * doc/gdk-pixbuf.sgml: Include compiling.sgml appendix via an
2597 * doc/Makefile.am (gdk-pixbuf.html): Added compiling.sgml.
2599 * gdk-pixbuf/io-ico.c (gdk_pixbuf__ico_image_load_increment):
2600 Fixed typo in prototype name.
2602 * configure.in: Changed duplicated AC_MSG_CHECKING message to
2603 something more meaningful; now it is "checking whether dynamic
2606 * gdk-pixbuf/pixops/Makefile.am (noinst_PROGRAMS): Do not install
2607 the timescale program.
2609 Integrated Miguel de Icaza's <miguel@gnu.org> patch for optionally
2610 creating a single static library with all the image format modules
2613 2000-02-20 Miguel de Icaza <miguel@gnu.org>
2615 * gdk-pixbuf/io-xpm.c (gdk_pixbuf__xpm_image_load): Add prefix.
2616 (gdk_pixbuf__xpm_image_load_xpm_data): Add prefix.
2618 * gdk-pixbuf/io-tiff.c (gdk_pixbuf__tiff_image_load_real): Add prefix.
2619 (gdk_pixbuf__tiff_image_stop_load): Add prefix.
2620 (gdk_pixbuf__tiff_image_load_increment): Add prefix.
2621 (gdk_pixbuf__tiff_image_load): Add prefix.
2622 (gdk_pixbuf__tiff_image_stop_load): Update invocation.
2623 (gdk_pixbuf__tiff_image_begin_load): Add prefix.
2625 * gdk-pixbuf/io-ras.c (gdk_pixbuf__ras_image_load): Add prefix.
2626 (gdk_pixbuf__ras_image_load): Updated invocation.
2627 (gdk_pixbuf__ras_image_begin_load): Add prefix.
2628 (gdk_pixbuf__ras_image_stop_load): Add prefix.
2629 (gdk_pixbuf__ras_image_load_increment): Add prefix.
2631 * gdk-pixbuf/io-pnm.c (gdk_pixbuf__pnm_image_begin_load): Add prefix.
2632 (gdk_pixbuf__pnm_image_stop_load): Add prefix.
2633 (gdk_pixbuf__pnm_image_load_increment): Add prefix
2634 (gdk_pixbuf__pnm_image_load): Add prefix.
2636 * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_load): Add prefix.
2637 (gdk_pixbuf__jpeg_image_load_increment): Add prefix.
2638 (gdk_pixbuf__jpeg_image_begin_load): Add prefix.
2639 (gdk_pixbuf__jpeg_image_stop_load): Add prefix.
2641 * gdk-pixbuf/io-ico.c (gdk_pixbuf__ico_image_load): Add prefix.
2642 (gdk_pixbuf__ico_image_load): update invocation.
2643 (gdk_pixbuf__ico_image_load_increment): Add prefix.
2644 (gdk_pixbuf__ico_image_load): update invocation.
2645 (gdk_pixbuf__ico_image_begin_load): Add prefix.
2646 (gdk_pixbuf__ico_image_load): update invocation.
2647 (gdk_pixbuf__ico_image_stop_load): Add prefix.
2649 * gdk-pixbuf/io-gif.c (gdk_pixbuf__gif_image_load_animation): Add prefix.
2650 (gdk_pixbuf__gif_image_load): Add prefix.
2651 (gdk_pixbuf__gif_image_begin_load): Add prefix.
2652 (gdk_pixbuf__gif_image_load_increment): Add prefix.
2653 (gdk_pixbuf__gif_image_load_animation): Add prefix.
2654 (gdk_pixbuf__gif_image_stop_load): Add prefix.
2656 * gdk-pixbuf/io-bmp.c (gdk_pixbuf__bmp_image_load): Add prefix.
2657 (gdk_pixbuf__bmp_image_load): Rename function called.
2658 (gdk_pixbuf__bmp_image_load_increment): Add prefix
2660 * gdk-pixbuf/io-png.c (gdk_pixbuf__png_image_load): Add prefix.
2661 (gdk_pixbuf__png_image_begin_load): Add prefix.
2662 (gdk_pixbuf__png_image_stop_load): Add prefix.
2663 (gdk_pixbuf__png_image_load_increment): Add prefix.
2665 * gdk-pixbuf/gdk-pixbuf-io.c (file_formats): Make this static.
2666 (gdk_pixbuf_load_module): Load the shared library entry points
2667 using a "gdk_pixbuf__$module_name" prefix.
2668 (pixbuf_module_symbol): Wrapper routine that uses the module
2669 prefix for the modules to load the information.
2671 * configure.in (GDK_PIXBUF_VERSION): New option --disable-modules
2672 lets the user specify that gdk-pixbuf should link all image loader
2673 code into the library instaed of creating shared library modules.
2675 (dynworks): Renamed the automake conditional DYNAMIC_MODULES_WORK
2676 to BUILD_DYNAMIC_MODULES.
2678 2000-02-19 Jonathan Blandford <jrb@redhat.com>
2680 * gdk-pixbuf/io-gif.c (new_context): fix case where initial
2681 colormap entry is Transparent.
2683 2000-02-19 Owen Taylor <otaylor@redhat.com>
2685 * gdk-pixbuf/pixops/pixops.c (scale_pixel): Fix error in
2686 scale factors for non-alpha case.
2688 2000-02-14 Mark Crichton <crichton@gimp.org>
2690 * gdk-pixbuf/io-xpm.c (xpm_extract_color): Added check for "g"
2691 color type. Imlib/libXpm handle this, but we didn't.
2693 2000-02-14 Darin Adler <darin@eazel.com>
2695 * gdk-pixbuf/testpixbuf.c: Remove now-unnecessary cast.
2696 * .cvsignore: gdk-pixbuf/.cvsignore: More to ignore.
2698 2000-02-14 Elliot Lee <sopwith@redhat.com>
2699 * gdk-pixbuf/gdk-pixbuf.h, gdk-pixbuf/gdk-pixbuf-data.c: Make
2700 passed-in argument 'const'.
2702 2000-02-04 Michael Meeks <mmeeks@gnu.org>
2704 * gdk-pixbuf/io-gif.c (struct _GifContext): add x,y_offset.
2705 (gif_get_frame_info): put the offsets on the context.
2706 (gif_get_lzw): copy them off into the frame.
2707 (new_context): no change required; will 0 offsets by default.
2709 2000-01-28 Michael Meeks <michael@mejm2.dow.cam.ac.uk>
2711 * gdk-pixbuf/pixops/pixops.c (pixops_process): const + nasty
2714 * gdk-pixbuf/pixops/pixops.h: const.
2716 * gdk-pixbuf/gdk-pixbuf-util.c: const.
2718 * gdk-pixbuf/gdk-pixbuf-scale.c: const.
2720 * gdk-pixbuf/gdk-pixbuf.h: constify lots of things.
2722 2000-02-03 Federico Mena Quintero <federico@helixcode.com>
2724 * gdk-pixbuf/gdk-pixbuf-render.c
2725 (gdk_pixbuf_render_threshold_alpha): Added sanity check for width
2726 and height being >= 0. Also, do nothing if either of them is
2727 zero. Thanks to Ettore for pointing this out.
2728 (gdk_pixbuf_render_to_drawable): Likewise.
2729 (gdk_pixbuf_render_to_drawable_alpha): Likewise.
2731 2000-02-02 Federico Mena Quintero <federico@helixcode.com>
2733 * gdk-pixbuf/io-gif.c (gif_get_lzw): Removed debugging g_print.
2734 Thanks to John Sullivan <sullivan@eazel.com> for the patch.
2736 * gdk-pixbuf/testpixbuf-drawable.c (configure_cb): Get a new area
2737 of the screen when the window is resized. Thanks to David
2738 N. Welton <davidw@linuxcare.com> for pointing this out.
2739 Misc. cleanups to the rest of the file.
2741 2000-02-01 Federico Mena Quintero <federico@helixcode.com>
2743 * doc/tmpl/rendering.sgml: gnome_init() does not call
2744 gdk_rgb_init(), so don't mention that it does in the
2745 documentation. Thanks to Alexander Kruuse <kruuse@home.se> for
2748 2000-01-31 Havoc Pennington <hp@redhat.com>
2750 * gdk-pixbuf/Makefile.am (noinst_PROGRAMS): no testpixbuf-foo target
2752 Mon Jan 31 12:38:50 2000 Owen Taylor <otaylor@redhat.com>
2754 * gdk-pixbuf/pixops/pixops.c (scale_line): Fix from Peter
2755 Wainwright to fix 4a => 4a scaling.
2757 2000-01-29 Mark Crichton <crichton@gimp.org>
2759 * gdk-pixbuf-config: Oh dear, we weren't Telsa/Alan proof...
2760 put `libart-config --libs` in instead of -lart_lgpl.
2762 2000-01-22 Federico Mena Quintero <federico@helixcode.com>
2764 * gdk-pixbuf/io-pnm.c (pnm_read_raw_scanline): Return an error on
2766 (pnm_read_ascii_scanline): Initialize data and mask.
2768 * gdk-pixbuf/io-xpm.c (pixbuf_create_from_xpm): Initialize
2769 fallbackcolor to keep gcc happy.
2771 * configure.in: Bumped version number to 0.5.0.
2773 * gdk-pixbuf/pixops/timescale.c (dump_array): Removed unused variable.
2776 * gdk-pixbuf/pixops/pixops.c (pixops_composite_color_nearest): Put
2777 parentheses around + in a shift to remove a compiler warning.
2778 (pixops_process): Likewise.
2780 Patch from Ross Golder <rossigee@bigfoot.com> to create an RPM
2783 * configure.in: Added gdk-pixbuf.spec to AC_OUTPUT.
2785 * Makefile.am (EXTRA_DIST): Added gdk-pixbuf.spec.in
2787 2000-01-22 Federico Mena Quintero <federico@helixcode.com>
2789 * gdk-pixbuf/gnome-canvas-pixbuf.c (PixbufPrivate): Removed the
2790 x_set and y_set arguments. Now they are always on and start with
2791 defaults of 0.0 in units.
2792 (gnome_canvas_pixbuf_class_init): Likewise.
2793 (gnome_canvas_pixbuf_set_arg): Likewise.
2794 (gnome_canvas_pixbuf_get_arg): Likewise.
2795 (compute_viewport_affine): Likewise; always use the priv->x and
2798 * doc/tmpl/gnome-canvas-pixbuf.sgml: Modified to reflect the
2799 removal of the x_set/y_set arguments.
2801 2000-01-21 Federico Mena Quintero <federico@helixcode.com>
2803 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_ref): Return the same pixbuf
2804 as the input parameter.
2806 * gdk-pixbuf/gdk-pixbuf-animation.c (gdk_pixbuf_animation_ref):
2807 Return the same animation as the input parameter.
2809 2000-01-16 Elliot Lee <sopwith@redhat.com>
2811 * gdk-pixbuf/Makefile.am: Don't link against libgnomecanvaspixbuf.la
2813 2000-01-16 Federico Mena Quintero <federico@helixcode.com>
2815 * configure.in: Removed the broken --enable-canvas-pixbuf option.
2816 Added the stuff necessary to substitute the variables in
2817 gnomecanvaspixbufConf.sh.in.
2819 * gnomecanvaspixbufConf.sh.in: New gnome-config handler for the
2820 tiny gnomecanvaspixbuf library.
2822 * Makefile.am: Build gnomecanvaspixbufConf.sh.
2824 * gdk-pixbuf/Makefile.am: Create a libgnomecanvaspixbuf and only
2825 build it if gdk-pixbuf is being built outside of gnome-libs.
2827 * doc/gdk-pixbuf-sections.txt: Added gdk_pixbuf_render_pixmap_and_mask().
2829 * gdk-pixbuf/gdk-pixbuf-render.c
2830 (gdk_pixbuf_render_pixmap_and_mask): Renamed from
2831 gdk_pixbuf_render_pixmap(). Do not create the mask if it is not
2832 needed, and do not use a clipping mask when rendering the pixmap.
2833 Tweaked documentation a little.
2835 * HACKING: New file with hacking policies for the gdk-pixbuf
2838 * doc/Makefile.am (tmpl_sources): Added missing backslash.
2840 * doc/Makefile.am: Use gnomecanvaspixbuf in gnome-config when
2841 scanning for docstrings.
2843 * gdk-pixbuf/gdk-pixbuf-util.c (gdk_pixbuf_copy_area): Made sanity
2844 checks more stringent. Removed "gint" abominations. Made
2845 documentation consistent with the rest of the functions.
2847 * doc/gdk-pixbuf-sections.txt: Added gdk_pixbuf_copy_area() to the
2850 2000-01-14 Jonathan Blandford <jrb@redhat.com>
2852 * gdk-pixbuf/gdk-pixbuf-render.c (gdk_pixbuf_render_pixmap): new
2853 function to let you create a gdk_pixmap from a gdk_pixbuf.
2855 2000-01-11 Jacob Berkman <jacob@helixcode.com>
2857 * gdk-pixbuf/pixops/Makefile.am (INCLUDES): added
2858 $LIBART_CFLAGS to $INCLUDES
2860 2000-01-10 Elliot Lee <sopwith@redhat.com>
2862 * configure.in, gdk-pixbuf/Makefile.am: Build a libcanvas_pixbuf.
2864 * configure.in: Define version macros. Generate
2865 gdk-pixbuf/gdk-pixbuf-features.h. Always INSIDE_GNOME.
2867 * gdk-pixbuf/Makefile.am: Add gdk-pixbuf-features.h
2869 * gdk-pixbuf/gdk-pixbuf.c: Add definitions of
2870 gdk-pixbuf-features.h declarations, plus some initialization
2873 2000-01-05 Owen Taylor <otaylor@redhat.com>
2875 * gdk-pixbuf/pixops/pixops.c: Fixed src_channels/dest_channels
2876 confusion. (Again caught by Tomas Ogren's Purify)
2878 2000-01-07 Jonathan Blandford <jrb@redhat.com>
2880 * gdk-pixbuf/gdk-pixbuf-xform.c (gdk_pixbuf_rotate): comment out
2883 * gdk-pixbuf/gdk-pixbuf-io.c: Added progressive animation loading.
2884 * gdk-pixbuf/gdk-pixbuf-io.h: Added progressive animation loading.
2885 * gdk-pixbuf/gdk-pixbuf-loader.c: Added progressive animation
2887 * gdk-pixbuf/gdk-pixbuf-loader.h: Added progressive animation
2889 * gdk-pixbuf/io-gif.c (image_load_increment): I think the
2890 ref-counting mess is finally fixed. Added progressive animation
2892 (gif_get_lzw): remove memory_leak
2894 * doc/tmpl/gdk-pixbuf-loader.sgml: much longer long description
2897 2000-01-05 Owen Taylor <otaylor@redhat.com>
2899 * gdk-pixbuf/pixops/pixops.c (pixops_process): Fix computation of
2902 * gdk-pixbuf/pixops/pixops.c: Fix double increments when
2903 dest_channels == 4. (Pointed out by Tomas Ogren)
2905 2000-01-05 Mark Crichton <crichton@gimp.org>
2907 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_eat_header_write):
2908 Return 0 if gdk_pixbuf_load_loader_module returns FALSE.
2910 2000-01-05 Elliot Lee <sopwith@redhat.com>
2912 * gdk-pixbuf/pixops/Makefile.am: Link with -lm (to get 'ceil' function)
2914 2000-01-05 Owen Taylor <otaylor@redhat.com>
2916 * doc/Makefile.am doc/gdk-pixbuf-sections.txt
2917 doc/gdk-pixbuf.sgml doc/tmpl/scaling.sgml:
2918 Added scaling functions into gtk-doc framework.
2920 * gdk-pixbuf/gdk-pixbuf-scale.c: Documentation fixes.
2922 * gdk-pixbuf/testpixbuf-scale.c (expose_cb): Simplify a bit.
2924 * gdk-pixbuf/pixops/pixops.c (pixops_composite_color): Return
2925 immediately if scale_x or scale_y is 0.
2927 2000-01-05 Owen Taylor <otaylor@redhat.com>
2929 * gdk-pixbuf/pixops/timescale.c: quick fix for initializing
2930 arrays in benchmark.
2932 2000-01-05 Jonathan Blandford <jrb@redhat.com>
2934 * gdk-pixbuf/gdk-pixbuf-io.h: Change the order of the update func
2935 to make it more compatible with the rest of GTK. Added animation
2936 framework for progressive loading.
2938 * gdk-pixbuf/io-bmp.c (image_begin_load): Modified to handle new
2940 * gdk-pixbuf/io-ico.c (image_begin_load): ditto
2941 * gdk-pixbuf/io-png.c (image_begin_load): ditto
2942 * gdk-pixbuf/io-ras.c (image_begin_load): ditto
2943 * gdk-pixbuf/io-jpeg.c (image_begin_load): ditto
2944 * gdk-pixbuf/io-pnm.c (image_begin_load): ditto
2945 * gdk-pixbuf/io-tiff.c (image_begin_load): ditto
2946 * gdk-pixbuf/io-gif.c (image_begin_load): ditto
2948 2000-01-05 Owen Taylor <otaylor@redhat.com>
2950 * gdk-pixbuf/pixops/README: Added a README with a TODO
2951 and some explainations of the algorithms.
2953 * gdk-pixbuf/testpixbuf-scale.c: Set a background pixmap of None
2954 to reduce flashing when resizing.
2956 2000-01-05 Owen Taylor <otaylor@redhat.com>
2958 * gdk-pixbuf/pixops/: Directory full of pixel data scaling
2959 code that will eventually migrate into libart.
2961 * configure.in acconfig.h: Add checks for MMX compiler support
2963 * gdk-pixbuf/gdk-pixbuf.h gdk-pixbuf/gdk-pixbuf-scale.c:
2964 Nice wrapper routines for the code in pixops that operate
2965 on pixbufs instead of raw data.
2967 * gdk-pixbuf/testpixbuf-scale: Test program for scaling
2970 2000-01-05 Jonathan Blandford <jrb@redhat.com>
2972 * doc/tmpl/animation.sgml: Documentation changes.
2974 2000-01-01 Federico Mena Quintero <federico@helixcode.com>
2976 * gdk-pixbuf/gdk-pixbuf.h (GdkPixbufAnimation): Added reference
2977 counting to animations. A web browser may want to share a single
2978 copy of an animated GIF if it appears multiple times in a web
2981 * gdk-pixbuf/gdk-pixbuf-animation.c: New file. Moved the
2982 animation functions here.
2983 (gdk_pixbuf_animation_new_from_file): Prettified. Return a NULL
2984 animation if the loader does not support multiframe loading and
2985 the single-frame load returned NULL. Check that the filename is
2986 not NULL. Updated inline documentation.
2987 (gdk_pixbuf_animation_ref): New function.
2988 (gdk_pixbuf_animation_unref): New function.
2989 Removed gdk_pixbuf_animation_destroy() in favor of reference
2992 * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_new_from_file):
2993 Prettified. Made ref_count assertion more paranoid. Check that
2994 the filename is not NULL.
2995 (gdk_pixbuf_get_module): Use guchar * and guint for buffer and
2997 (gdk_pixbuf_new_from_xpm_data): Changed the "data" argument to
3000 * gdk-pixbuf/io-gif.c (image_load_animation): Create the animation
3001 with a reference count of 1.
3003 * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_SOURCES): Added
3004 gdk-pixbuf-animation.c.
3006 * doc/tmpl/animation.sgml: Populated. It is still missing a
3007 description of the overlay modes.
3009 * doc/gdk-pixbuf-sections.txt: Added the animation section. Moved
3010 the canvas item section to the end, as it will be moved later to
3013 * doc/gdk-pixbuf.sgml: Added the animation section.
3015 * doc/Makefile.am (tmpl_sources): Added tmpl/animation.sgml.
3017 1999-12-26 Peter Teichman <pat@gnu.org>
3019 * gdk-pixbuf/Makefile.am (libpixbuf_tiff_la_LIBADD): add
3020 $(LIBTIFF) to libpixbuf_tiff_la_LIBADD, proxying for mmarker.
3021 This closes bug #4676.
3023 1999-12-23 Havoc Pennington <hp@pobox.com>
3025 * gdk-pixbuf/io-gif.c (image_load): Stuff that should have been
3026 set to NULL here (specifically context->animation) was not being
3027 set to NULL. use g_new0() to alloc the struct.
3029 1999-12-20 Jonathan Blandford <jrb@redhat.com>
3031 * gdk-pixbuf/io-gif.c: finished work to make animated gifs load
3032 correctly. Progressive loading needs some work, but that all
3033 needs doing from the gdk-pixbuf-loader end, not here.
3035 1999-12-17 Jonathan Blandford <jrb@redhat.com>
3037 * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_animation_new_from_file):
3038 moved the file here. It seems natural to put this function here,
3039 as that's where the gdk_pixbuf_new_from_file function is, but it's
3040 still a little convoluted. The source files might be played with
3043 1999-12-14 Jonathan Blandford <jrb@redhat.com>
3045 * gdk-pixbuf/gdk-pixbuf-loader.c
3046 (gdk_pixbuf_loader_get_animation): Gets the animation from the
3049 1999-12-16 Federico Mena Quintero <federico@redhat.com>
3051 * doc/tmpl/rendering.sgml: Added notice about initializing GdkRGB
3052 before using the GdkPixbuf rendering functions. Thanks to Joe
3053 Shaw <joe@off.net> for pointing this out.
3055 1999-12-13 Federico Mena Quintero <federico@redhat.com>
3057 * gdk-pixbuf/gnome-canvas-pixbuf.c
3058 (gnome_canvas_pixbuf_class_init): Renamed arguments to
3059 width_in_pixels, height_in_pixels, x_in_pixels, y_in_pixels, for
3060 consistency with the new canvas.
3061 (PixbufPrivate): Do the same renaming in the structure fields, for
3064 * doc/tmpl/gnome-canvas-pixbuf.sgml: Updated for new argument names.
3066 1999-12-12 Federico Mena Quintero <federico@redhat.com>
3068 * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_LDFLAGS): Use a
3069 conditional to see whether to link $(GNOME_LIBS) or not.
3071 1999-12-10 Jonathan Blandford <jrb@redhat.com>
3073 * gdk-pixbuf/gdk-pixbuf-io.h: thinking about the new loading API.
3075 * gdk-pixbuf/gdk-pixbuf-drawable.c (gdk_pixbuf_get_from_drawable):
3076 make a warning go away.
3078 * gdk-pixbuf/gdk-pixbuf.h: added new prototypes for animations.
3080 * gdk-pixbuf/gdk-pixbuf-loader.h: added new prototypes for
3083 1999-12-09 Michael Zucchi <zucchi@zedzone.mmc.com.au>
3085 * gdk-pixbuf/gdk-pixbuf.h: Enable gdk_pixbuf_get_from_drawable()
3088 * gdk-pixbuf/gdk-pixbuf-drawable.c (gdk_pixbuf_get_from_drawable):
3089 Filled in body of function.
3090 (rgbconvert): Added GdkColormap parameter, and to all conversion
3092 (convert_real_slow): New function - should convert ANY visual/data
3093 format properly, but it aint fast. Used as a fallback when an
3094 optimised routine wont match.
3095 (rgbconvert): Do very specific tests on the data format to verify
3096 properly if the optimised version will do, otherwise use the
3097 fallback function for all other data formats.
3099 * gdk-pixbuf/Makefile.am: Re-enabled building of
3100 textpixbuf-drawable.
3102 * gdk-pixbuf/testpixbuf-drawable.c (main): Changed to use
3103 gdk_pixbuf_get_from_drawable().
3105 1999-12-08 Arjan van de Ven <arjan@fenrus.demon.nl>
3107 * gdk-pixbuf/gdk-pixbuf-drawable.c : Fixed the red/green/red
3108 bug on two occasions.
3109 * gdk-pixbuf/io-ras.c: Changed from the custom be32_to_cpu
3110 function to the generic glib one.
3112 1999-12-08 Federico Mena Quintero <federico@redhat.com>
3114 * gdk-pixbuf/gdk-pixbuf-drawable.c: Fix includes.
3115 (gdk_pixbuf_get_from_drawable): Implemented the zillion sanity
3116 checks and API definition. The body needs filling in and it needs
3117 to do the Right Thing(tm) for pixmaps plus the given colormap and
3118 windows and their own colormaps.
3120 * gdk-pixbuf/gdk-pixbuf.h: Added prototype for
3121 gdk_pixbuf_get_from_drawable(). Killed gdk-pixbuf-drawable.h.
3123 * gdk-pixbuf/Makefile.am: Re-added the gdk-pixbuf-drawable sources.
3125 * doc/tmpl/from-drawables.sgml: Populated.
3127 * doc/gdk-pixbuf.sgml: Added the from-drawables section.
3129 * doc/Makefile.am (tmpl_sources): Added tmpl/from-drawables.sgml.
3131 * doc/gdk-pixbuf-sections.txt: Added a section for getting pixbufs
3134 1999-12-07 Federico Mena Quintero <federico@redhat.com>
3136 * doc/tmpl/gnome-canvas-pixbuf.sgml: Added clarification about
3137 reference counting for GdkPixbuf structures.
3139 1999-12-07 Martin Baulig <martin@home-of-linux.org>
3141 * gdk-pixbuf/Makefile.am (testpixbuf_LDADD): Conditionally
3142 include $(GNOME_LIBS) here.
3144 1999-12-05 Arjan van de Ven <arjan@fenrus.demon.nl>
3146 Added missing "include <string.h>" to:
3147 * gdk-pixbuf/io-ras.c
3148 * gdk-pixbuf/io-bmp.c
3149 * gdk-pixbuf/io-ico.c
3151 1999-12-06 Federico Mena Quintero <federico@redhat.com>
3153 * gdk-pixbuf/gdk-pixbuf-io.c (file_formats): Patch from Arjan to
3156 1999-12-05 Federico Mena Quintero <federico@redhat.com>
3158 * gdk-pixbuf/Makefile.am (testpixbuf_LDADD): Add back
3159 $(GNOME_LIBS). This must compile outside of gnome-libs. If you
3160 want, send me a patch to do the conditional stuff properly.
3161 Otherwise, please read the GNOME Programming Guidelines,
3162 especially the "CVS policies" section.
3164 1999-12-05 Jaka Mocnik <jaka.mocnik@kiss.uni-lj.si>
3166 * gdk-pixbuf/Makefile.am: removed GNOME_LIBS from testpixbuf_LDADD.
3168 1999-12-05 Arjan van de Ven <arjan@fenrus.demon.nl>
3170 * gdk-pixbuf/io-ico.c: Bug in palet-size
3173 1999-12-04 Arjan van de Ven <arjan@fenrus.demon.nl>
3175 * gdk-pixbuf/io-bmp.c: Major cleanup, added support for
3176 32 bpp and 4 bpp (uncompressed) images, fixed 1bpp.
3178 * gdk-pixbuf/io-ras.c: Minor cleanup, ran through lclint
3180 * gdk-pixbuf/io-ico.c: Minor cleanup, fixed 1bpp icons,
3183 * gdk-pixbuf/gdk-pixbuf-io.c: Added detection of .CUR files
3184 (Windows Cursor files). These are identical to .ICO files,
3185 except for the signature and 2 extra fields for the hotspot.
3187 1999-12-03 Federico Mena Quintero <federico@redhat.com>
3189 * gdk-pixbuf/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_get_arg):
3190 Removed unused variable `item'.
3192 1999-12-03 Jonathan Blandford <jrb@redhat.com>
3194 * gdk-pixbuf/io-gif.c (gif_fill_in_lines): added a comment to
3195 explain this function better.
3197 1999-12-02 Federico Mena Quintero <federico@redhat.com>
3199 Source files moved from src/ to gdk-pixbuf/, to be consistent with
3202 * doc/Makefile.am: Modified for the new source directory.
3204 * configure.in: Likewise.
3206 * Makefile.am: Likewise.
3208 * autogen.sh: Likewise.
3210 * gdk-pixbuf/Makefile.am: Likewise.
3212 1999-12-02 Federico Mena Quintero <federico@redhat.com>
3214 * src/testpixbuf.c: #include <config.h>, and fix includes.
3216 * src/testpixbuf-drawable.c: #include <config.h>, and fix includes.
3218 * src/io-xpm.c: Fix includes.
3220 * src/io-tiff.c: Fix includes.
3222 * src/io-ras.c: Fix includes, and do not include more stuff than needed.
3224 * src/io-pnm.c: Fix inlcudes, and do not include more stuff than needed.
3226 * src/io-png.c: Fix includes.
3228 * src/io-ico.c: Fix includes, and do not include more stuff than needed.
3230 * src/io-gif.c: Fix includes, and do not include more stuff than needed.
3232 * src/io-bmp.c: Fix includes, and do not include more stuff than needed.
3234 * src/gnome-canvas-pixbuf.c: Fix includes.
3236 * src/gdk-pixbuf.c: Fix includes.
3238 * src/gdk-pixbuf-util.c: Fix includes.
3240 * src/gdk-pixbuf-render.c: Fix includes.
3242 * src/gdk-pixbuf-io.h: Fix includes.
3244 * src/gdk-pixbuf-drawable.c: Fix includes.
3246 * src/gdk-pixbuf-drawable.h: Use angle brackets for the gdk-pixbuf
3249 * src/gdk-pixbuf-data.c: Fix includes.
3251 * src/gdk-pixbuf-loader.c: #include <config.h>
3253 * src/gdk-pixbuf-loader.h: Use angle brackets for the gdk-pixbuf
3256 * src/Makefile.am: Commented out the gdk-pixbuf-drawable stuff,
3257 since it is not finished.
3259 * src/gdk-pixbuf.h: Removed unused transformation prototypes.
3261 * src/gdk-pixbuf-util.c: New file with utility and convenience
3262 functions for pixbufs.
3264 * src/Makefile.am (libgdk_pixbuf_la_SOURCES): Added gdk-pixbuf-util.c.
3266 * doc/gdk-pixbuf-sections.txt: Added section for utility functions.
3268 * doc/Makefile.am (tmpl_sources): Added tmpl/util.sgml.
3270 * doc/gdk-pixbuf.sgml: Added the utilities section.
3272 * doc/tmpl/util.sgml: Documentation for the utility functions.
3274 1999-11-29 Owen Taylor <otaylor@redhat.com>
3276 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
3277 Keep the mask around until after we draw ... since
3278 the GC changes aren't flushed to the X server until we
3279 draw, destroying it before that may result in BadPixmap
3282 1999-11-30 Havoc Pennington <hp@pobox.com>
3284 * configure.in: Add AM_CONDITIONAL for inside gnome-libs
3286 * src/Makefile.am: conditionalize GnomeCanvasPixbuf
3288 1999-11-29 Federico Mena Quintero <federico@redhat.com>
3290 * src/Makefile.am: Uncomment the GnomeCanvasPixbuf sources. This
3291 should be made conditional, not blindly commented out.
3293 1999-11-29 Jonathan Blandford <jrb@redhat.com>
3295 * src/Makefile.am (ICO_LIB): Added another loader from Arjan to
3296 handle .ico files. Cool.
3298 1999-11-24 Jonathan Blandford <jrb@redhat.com>
3300 * src/io-bmp.c (OneLine24): new patch from Arjan to handle
3303 1999-11-24 James Henstridge <james@daa.com.au>
3305 * configure.in (AC_OUTPUT): altered hack to place the symlink in the
3306 top builddir rather than src. This still builds fine, and does not
3307 get gtk-doc into an infinite loop when trying to find all the source
3310 1999-11-23 Jonathan Blandford <jrb@redhat.com>
3312 * Removed #PRAGMA } from headers. Also, make compile if you don't
3313 have it installed, already.
3315 1999-11-22 Federico Mena Quintero <federico@redhat.com>
3317 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_draw): Create the
3318 temporary buffer to the size of the interesction of the bounding
3319 box and the expose area, not the whole expose area. This speeds
3322 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_threshold_alpha): Do
3323 not paint black on the mask, since we already cleared it in a
3324 single gdk_draw_rectangle() operation.
3326 1999-11-22 Raja R Harinath <harinath@cs.umn.edu>
3328 * configure.in (GDK_PIXBUF_DIR): Fix for srcdir != builddir.
3330 1999-11-22 Havoc Pennington <hp@pobox.com>
3332 * src/Makefile.am (GDK_PIXBUF_LIBS): Patch from Paul Fisher
3333 <pnfisher@redhat.com> adds all -lgdk-pixbuf and all other
3334 dependencies to LIBADD variables for loadable modules. Necessary
3335 for a Java dynamic loading thing to be able to figure it out.
3337 1999-11-22 Havoc Pennington <hp@pobox.com>
3339 * src/io-png.c (image_load_increment): Call the update_area
3340 callback depending on the number of rows loaded in this increment.
3342 * src/testpixbuf.c (main): slow down the progressive load demo
3344 1999-11-16 Havoc Pennington <hp@pobox.com>
3346 * src/gdk-pixbuf-drawable.h: Get the quotes right on the #include
3348 1999-11-22 Jonathan Blandford <jrb@redhat.com>
3350 * configure.in (GDK_PIXBUF_DIR): make the symlink. Does not work
3351 for srcdir != buildir != . Beats me why; I can't figure it out.
3352 AC_OUTPUT_COMMANDS doesn't seem to let me substitute it correctly.
3354 1999-11-21 Jonathan Blandford <jrb@redhat.com>
3356 * src/gdk-pixbuf-io.c: added io-bmp from Arjan
3357 <arjan@fenrus.demon.nl>
3359 1999-11-20 Michael Zucchi <zucchi@zedzone.mmc.com.au>
3361 * src/gdk-pixbuf-drawable.c (gdk_pixbuf_from_drawable_core):
3362 Rework/reorder of the code. Each case has been separated into
3363 another function; its big but it should be quick.
3364 gdk_pixbuf_rgba_from_drawable() will now return a pixbuf with
3365 opaque alpha information. Not all depths/formats have been
3366 tested, but 8, 15/16 and 24 (alinged 32) should work ok.
3368 1999-11-17 Larry Ewing <lewing@gimp.org>
3370 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_bounds):
3371 implement the bounds method correctly.
3372 (compute_viewport_affine): compute the affine need to fit the
3373 image within the viewport given by the args.
3374 (compute_render_affine): call compute_viewport_affine.
3376 1999-11-16 Havoc Pennington <hp@pobox.com>
3378 * src/gdk-pixbuf-drawable.h: Use includes from the current
3379 directory, not the system directory.
3381 Mon Nov 15 17:18:28 1999 George Lebl <jirka@5z.com>
3383 * src/testpixbuf-drawable.c: use includes from the current directory
3384 rather then from the system include directory as gdk-pixbuf
3385 includes are not yet installed when this is compiled.
3387 1999-11-13 Cody Russell <bratsche@dfw.net>
3388 * src/testpixbuf-drawable.c: Added a test program for drawable
3391 * src/Makefile.am: Build testpixbuf-drawable.
3393 1999-11-12 Cody Russell <bratsche@dfw.net>
3395 * src/gdk-pixbuf-drawable.c: Merged in Michael Zucchi's changes.
3397 1999-11-10 Federico Mena Quintero <federico@redhat.com>
3399 * doc/tmpl/gdk-pixbuf-loader.sgml: Populated.
3401 * doc/gdk-pixbuf.signals: Put in the real names of signal
3404 * src/gdk-pixbuf-loader.c: Improved documentation comments.
3406 1999-11-10 Jonathan Blandford <jrb@redhat.com>
3408 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): emit the
3411 * src/io-ras.c (OneLineMapped_file): Now can handle indexing
3412 correctly. Patch from Arjan to do so.
3414 1999-11-10 Michael Fulbright <drmike@redhat.com>
3416 * src/io-pnm.c (pnm_ascii_read_scanline): Fixed loading of ASCII PNM
3419 * src/testpixbuf.c: Added final queued draw when done loading image.
3421 1999-11-10 Jonathan Blandford <jrb@redhat.com>
3423 * src/gdk-pixbuf-io.c (gdk_pixbuf_load_module): removed spurious
3426 1999-11-10 Federico Mena Quintero <federico@redhat.com>
3428 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): Added
3431 1999-11-09 Federico Mena Quintero <federico@redhat.com>
3433 * src/io-png.c: Fixed some incompatible pointer initializations.
3435 * src/io-jpeg.c (image_load_increment): Remove unused variable.
3437 1999-11-09 Michael Fulbright <drmike@redhat.com>
3439 * src/testpixbuf.c: Fixed it to use timeout to read from file
3440 for progressive loading. Set TBF_KBPS=n, where n is the number of
3441 kilobytes/second to simulate in downloading. n has to be an integer.
3443 * src/io-jpeg.c: Slight cosmetic cleanup.
3445 * src/io-pnm.c: Fixed raw PNM loading bug. Also discovered that ASCII
3446 PBM loading has a similar problem and will address tomorrow.
3448 1999-11-09 Havoc Pennington <hp@pobox.com>
3450 * src/Makefile.am (libgdk_pixbuf_la_SOURCES): build the
3451 gdk-pixbuf-drawable stuff.
3453 1999-11-09 Federico Mena Quintero <federico@redhat.com>
3455 * configure.in: Bumped version number to 0.4.
3457 1999-11-09 Michael Fulbright <drmike@redhat.com>
3459 * src/io-pnm.c : Finished progressive PNM loading code. Should handle
3460 all types of PNM files now.
3462 * src/io-jpeg.c (image_load_increment): Figured out problem with
3463 loading Progressive JPEG's progressively (say that 10 times fast).
3464 Currently for Progressive JPEG's the entire image is loaded before
3465 it is displayed. libjpeg supports a fancier mechanism which I may
3468 With these changes all JPEG formats appear to load properly for me.
3470 1999-11-08 Jonathan Blandford <jrb@redhat.com>
3472 * src/io-ras.c (image_load_increment): Final patch from Arjan.
3473 Seems to do progressive loading.
3475 1999-11-08 Michael Fulbright <drmike@redhat.com>
3477 * src/io-pnm.c image_load (): Fixed so we do not create a separate
3478 pixel buffer when reading in image - we reuse the pixel data in
3479 the GdkPixbuf structure instead.
3481 1999-11-08 Michael Fulbright <drmike@redhat.com>
3483 * src/io-pnm.c pnm_read_ascii_scanline (): Added support for
3484 ASCII PNM files. Note I haven't tested loaded ASCII PBM files because
3485 I can't seem to find a utility to convert into this format.
3486 Next is to add progressive loading support for the PNM format.
3488 1999-11-07 Federico Mena Quintero <federico@redhat.com>
3490 * doc/tmpl/gnome-canvas-pixbuf.sgml: Finished detailed explanation
3491 of the width, height, x, and y setting and pixels arguments.
3493 1999-11-05 Jonathan Blandford <jrb@redhat.com>
3495 * src/io-ras.c (image_load): third patch. Now it seems to load.
3497 * src/gdk-pixbuf-io.c: second patch Arjan van de Ven
3498 <arjan@fenrus.demon.nl> to autodetect/load the sunras files.
3500 * src/io-ras.c (image_load): new file from Arjan van de Ven
3501 <arjan@fenrus.demon.nl> to begin the ras loader.
3503 1999-11-05 Federico Mena Quintero <federico@redhat.com>
3505 * doc/gdk-pixbuf-sections.txt: Removed gdk-pixbuf-io, since it is
3506 for internal use only.
3508 * doc/gdk-pixbuf.sgml: Likewise.
3510 * doc/tmpl/gnome-canvas-pixbuf.sgml: Finished docs.
3512 1999-11-05 Michael Fulbright <drmike@redhat.com>
3514 * src/io-pnm.c: Implemented support for reading raw PBM/PGM/PPM
3515 files from a file. Next step is support for ASCII files, and
3516 then incremental loading.
3518 1999-11-04 Federico Mena Quintero <federico@redhat.com>
3520 * Makefile.am: Added doc to SUBDIRS.
3522 1999-11-04 Michael Fulbright <drmike@redhat.com>
3524 * src/io-jpeg.c: Prettied up code slightly.
3525 * src/io-pnm.c: Start of pnm loader (from file and progressively).
3526 Doesn't do much yet (will finish tomorrow).
3527 * src/gdk-pixbuf-io.c: Added pnm to structure of known types.
3529 1999-11-04 Federico Mena Quintero <federico@redhat.com>
3531 * doc/tmpl/rendering.sgml: Populated.
3533 * doc/Makefile.am: Added the template files.
3535 1999-11-04 Havoc Pennington <hp@pobox.com>
3537 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable): In
3538 docs, explain what a dither offset is for.
3539 (gdk_pixbuf_render_to_drawable_alpha): Explain why you would use
3540 this function vs. gdk_pixbuf_render_to_drawable().
3542 1999-11-04 Havoc Pennington <hp@pobox.com>
3544 * configure.in: Use libart-config correctly; find gnome-config
3545 separately. Fix GNOME_LIBS to be correct in "no gnome installed
3548 * src/Makefile.am: Link to GNOME_LIBS instead of a hardcoded
3551 Patch untested in the inside-gnome-libs case, I need to commit
3552 then check out to the gnome-libs I'm using.
3554 1999-11-04 Michael Fulbright <drmike@redhat.com>
3556 * src/io-jpeg.c (image_begin_load): Add update_func callback.
3557 * src/io-jpeg.c (image_load_increment): Call updated callback when
3558 new graphic data decoded.
3560 1999-11-04 Jonathan Blandford <jrb@redhat.com>
3562 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_update): handle the
3564 * src/io-png.c (image_begin_load): add a update_func callback.
3565 * src/io-gif.c (image_begin_load): add a update_func callback.
3566 (gif_get_lzw): added the update_func ability
3568 * src/io-tiff.c (image_begin_load): add a update_func callback.
3570 1999-11-04 Federico Mena Quintero <federico@redhat.com>
3572 * doc/tmpl/gdk-pixbuf.sgml: Populated.
3574 * doc/tmpl/refcounting.sgml: Populated.
3576 * doc/tmpl/file-loading.sgml: Populated.
3578 * src/gdk-pixbuf.c: Added documentation comments.
3580 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_file): Added
3581 documentation comments.
3583 * doc/: Finished integrating the documentation framework.
3585 1999-11-03 Federico Mena Quintero <federico@redhat.com>
3587 * configure.in: Removed libgif stuff now that we do not depend on it.
3588 Added the necessary cruft for gtk-doc.
3590 * src/Makefile.am: Unconditionally build the GIF loader.
3592 1999-11-03 Jonathan Blandford <jrb@redhat.com>
3594 * src/io-gif.c (gif_read): renamed ReadOK to gif_read.
3595 Added a lot of comments to the file.
3597 * src/Makefile.am (libpixbuf_gif_la_LIBADD): Remove dependency on
3600 1999-11-03 Michael Fulbright <drmike@redhat.com>
3602 * src/io-jpeg.c (image_load_increment): Further removal of
3603 bugginess in local buffering code. Handles grayscale jpegs
3606 * src/io-jpeg.c (image_load_stop): Was freeing local context
3607 for jpeg library before calling jpeg_decompres_finish ().
3609 1999-11-03 Jonathan Blandford <jrb@redhat.com>
3611 * src/io-gif.c (image_load_increment): now handle arbitrary buffer
3613 (gif_get_lzw): set the transparency to the right val.
3615 1999-11-03 Federico Mena Quintero <federico@redhat.com>
3617 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_init):
3618 Initiailize the x and y fields.
3619 (gnome_canvas_pixbuf_destroy): Queue a redraw upon destruction.
3620 (PixbufPrivate): Renamed need_size_update to need_xform_update.
3621 (recompute_bounding_box): Do not use temporary values.
3623 1999-11-03 Jonathan Blandford <jrb@redhat.com>
3625 * src/io-gif.c (set_gif_lzw_clear_code): new state. Fixes
3628 * src/gnome-canvas-pixbuf.c (recompute_bounding_box): remove
3629 unneeded x,y,h,w vars.
3631 1999-11-03 Larry Ewing <lewing@gimp.org>
3633 * src/gnome-canvas-pixbuf.c (compute_render_affine): adjust
3634 render_affine calculation for x,y offsets.
3635 (gnome_canvas_pixbuf_set_arg): add x,y args.
3636 (gnome_canvas_pixbuf_get_arg): add x,y args.
3637 (recompute_bounding_box): simply code using ArtDrect and the
3638 render_affine. Removed compute_xform_vectors as it was no longer
3641 1999-11-03 Federico Mena Quintero <federico@redhat.com>
3643 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_point): I'm a
3644 doofus. Return a distance, not a boolean, for opaque images.
3646 * src/gnome-canvas-pixbuf.c (recompute_bounding_box): Do proper
3647 rounding of bounding box coordinates.
3648 (gnome_canvas_pixbuf_bounds): Implemented the ::bounds() method.
3649 (gnome_canvas_pixbuf_draw): Use the correct alpha threshold value.
3651 1999-11-03 Jonathan Blandford <jrb@redhat.com>
3653 * src/io-gif.c (gif_prepare_lzw): s/lwz/lzw/g
3655 1999-11-03 Michael Fulbright <drmike@redhat.com>
3657 * src/io-jpg.c (image_load_increment): Fixed code which moved
3658 buffer around as new data comes in to work properly. JPEG progressive
3659 loading should be working now except for grayscale JPEG's, which I
3660 will look into next.
3662 1999-11-03 <sopwith@redhat.com>
3663 * src/testpixbuf.c: A GtkFunction needs to return a value for
3664 deterministic behaviour. Also put dot printing back in.
3666 1999-11-03 <jrb@redhat.com>
3668 * src/io-gif.c (gif_get_extension): Read 'til the next empty block
3671 1999-11-02 Cody Russell <bratsche@dfw.net>
3672 * src/gdk-pixbuf-drawable.c: Changed the behavior to return NULL
3673 if part of the requested image is offscreen, rather than clipping
3676 1999-11-02 Jonathan Blandford <jrb@redhat.com>
3678 * src/io-gif.c (gif_fill_in_lines): Fill in the gif's blank areas
3679 for interlacing and progressive loading.
3681 1999-11-02 Cody Russell <bratsche@dfw.net>
3682 * src/gdk-pixbuf-drawable.c (gdk_pixbuf_from_drawable_core): Now
3683 calls gdk_pixbuf_new_from_art_pixbuf() instead of gdk_pixbuf_new().
3685 1999-11-02 Jonathan Blandford <jrb@redhat.com>
3687 * src/io-gif.c (gif_main_loop): Now progressive gif loading works!
3688 It's a little slow though. )-:
3690 1999-11-02 Elliot Lee <sopwith@redhat.com>
3691 * src/gdk-pixbuf-loader.[ch], src/gdk-pixbuf-io.h: Make the
3692 arguments to the write/load_increment operations const-correct.
3694 1999-11-02 Federico Mena Quintero <federico@redhat.com>
3696 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_point):
3697 Implemented the ::point() method. We do a simple containment test
3698 instead of a full distance calculation since the canvas is going
3699 to change to that scheme, anyways.
3701 1999-11-02 Elliot Lee <sopwith@redhat.com>
3703 * src/testpixbuf.c: Allow using $TBF_READLEN to specify the size
3704 of the chunks that are read from the input file.
3706 1999-11-02 Larry Ewing <lewing@gimp.org>
3708 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_render): add aa
3710 (gnome_canvas_pixbuf_class_init): add gnome_canvas_pixbuf_render
3713 1999-11-02 Federico Mena Quintero <federico@redhat.com>
3715 * src/gnome-canvas-pixbuf.c (compute_render_affine): Moved the
3716 affine computation code from ::draw() to here, since it is needed
3717 by ::point() as well.
3719 1999-11-02 Elliot Lee <sopwith@redhat.com>
3721 * src/gdk-pixbuf-loader.c: Reorganize gdk_pixbuf_loader_write into
3722 three functions, and eliminate duplication of code from write()
3723 and close(). Also fix bug where the 128-byte header was being
3726 1999-11-01 Federico Mena Quintero <federico@redhat.com>
3727 * src/gnome-canvas-pixbuf.c (recompute_bounding_box): Fixed
3728 bounding box computation.
3730 1999-11-01 Federico Mena Quintero <federico@redhat.com>
3732 * src/gnome-canvas-pixbuf.c: Start of the pixbuf canvas item.
3733 Drawing affines seem to work. Bounding box is fubared. ::point()
3734 is not implemented. This is a work in progress.
3736 * src/Makefile.am: Added gnome-canvas-pixbuf.[ch] to the list of
3739 * configure.in: Sigh. We need to link in libgnomeui for the
3740 canvas stuff. This mess will disappear when gdk-pixbuf gets
3741 folded into gnome-libs.
3743 1999-10-30 Jonathan Blandford <jrb@redhat.com>
3745 * src/io-gif.c: Some more work. Now it generates a gdk_pixbuf of
3746 the right size, at a minimum, even if the image is squished and
3748 (ReadImage): lets get the offset right. This will let transparent
3751 1999-10-29 Michael Fulbright <drmike@redhat.com>
3753 * src/io-jpeg.c: image_load_increment(): Fixed bug when
3754 image width was not a multiple of 4 - always use the
3755 gdk_pixbuf rowstride to increment pointers!
3757 1999-10-29 Michael Fulbright <drmike@redhat.com>
3759 * src/io-jpeg.c: Added first cut at progressive jpeg loading.
3760 Currently does not handle either progressive jpeg files (jpeg
3761 files with multiple scans at different quality settings), but
3762 I plan on adding this support soon. These are fairly rare in
3763 my experience, so it shouldn't slow people down too much.
3764 Grayscale jpegs also don't work but that should be easy to fix.
3766 1999-10-29 Michael Fulbright <drmike@redhat.com>
3768 * src/testpixbuf.c: Added title to windows so you can identify
3769 progressive and file windows.
3771 1999-10-29 Michael Fulbright <drmike@redhat.com>
3773 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): Actually
3774 load the image handler when we determine the image type.
3776 * src/gdk-pixbuf-io.[ch] (gdk_pixbuf_load_module): Changed the
3777 previously static function load_image_handler () to
3778 a public function gdk_pixbuf_load_module (). It is needed in
3779 gdk-pixbuf-loader.c to load image handler modules. This function
3780 is different from gdk_pixbuf_get_module (), which only returns
3781 a reference to the required handler, because it actually loads
3782 the handler into memory. Both actions should possibly be combined
3783 in a convenience function since one w/o the other doesn't seem to
3786 1999-10-28 Jonathan Blandford <jrb@redhat.com>
3788 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): don't send a
3791 1999-10-28 Federico Mena Quintero <federico@redhat.com>
3793 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable): New
3794 function to render a portion of a pixbuf to a drawable. Ignores
3795 alpha information and takes in a GC.
3796 (gdk_pixbuf_render_to_drawable_alpha): New function to render a
3797 portion of a pixbuf to a drawable. It automatically creates a GC
3798 and a clipping mask for alpha pixbufs.
3800 1999-10-28 Jonathan Blandford <jrb@redhat.com>
3802 * src/gdk-pixbuf.h: turned convenience macros into convenience
3803 functions so some error checking could be added.
3805 * src/io-tiff.c (image_load_increment): started work on the tiff
3806 non-incremental loader.
3807 (image_begin_load): Finished the incremental loader.
3809 * src/io-gif.c (image_load_increment): started work on the gif
3812 * src/gdk-pixbuf-io.h: Changed ModuleType to GdkPixbufModule.
3814 1999-10-27 Federico Mena Quintero <federico@redhat.com>
3816 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_threshold_alpha): New
3817 function to threshold a pixbuf's alpha channel into a bitmap.
3819 * src/gdk-pixbuf.c (gdk_pixbuf_new): Fixed so that it will
3820 contemplate future extensions to ArtPixBuf's formats.
3822 * src/io-png.c (png_info_callback): Use the new API of gdk_pixbuf_new().
3824 * src/gdk-pixbuf.h (gdk_pixbuf_get_height): Added some convenience
3825 macros to fetch the ArtPixBuf's fields.
3827 1999-10-27 Havoc Pennington <hp@pobox.com>
3829 * src/testpixbuf.c (main): Display the progressive load
3831 * src/io-png.c (setup_png_transformations): Break transformation
3832 code into separate function
3833 (png_info_callback): Use setup_png_transformations
3835 1999-10-27 Havoc Pennington <hp@pobox.com>
3837 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): Check
3838 properly whether the XPM module has already been loaded
3839 (gdk_pixbuf_new_from_file): Check properly if loader module
3840 was already loaded (was checking if load symbol was present
3841 in order to decide whether to re-load; should check module !=
3842 NULL, then load != NULL)
3843 (image_handler_load): Check in present working directory,
3844 makes it easier to debug for now
3845 (file_formats): This array initializer was seriously on crack,
3846 was assigning a function pointer to a GModule*
3848 * src/testpixbuf.c (main): Change type of pixbuf_loader to
3851 1999-10-27 Havoc Pennington <hp@pobox.com>
3853 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_finalize):
3854 Fix typo that prevented compilation
3855 (gdk_pixbuf_loader_destroy): ditto
3857 1999-10-27 Federico Mena Quintero <federico@redhat.com>
3859 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_new): Return a
3860 GdkPixbufLoader, not a GtkObject.
3861 (gtk_marshal_NONE__INT_INT_INT_INT): Made static.
3862 (gdk_pixbuf_loader_get_type): Documented.
3863 (gdk_pixbuf_loader_class_init): Initialize the parent class
3865 (gdk_pixbuf_loader_destroy): Added sanity checks. Call the parent
3866 class destroy function.
3867 (gdk_pixbuf_loader_new): Documented.
3868 (gdk_pixbuf_loader_finalize): Call the parent class finalize
3870 (gdk_pixbuf_loader_write): Use size_t for count.
3872 1999-10-27 Michael Fulbright <drmike@redhat.com>
3874 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_destroy): Fixed
3875 logic so we only try to close loader if it wasn't previously closed.
3877 1999-10-27 Michael Fulbright <drmike@redhat.com>
3879 * src/gdk-pixbuf-loader.c: Made sure image_loader struct member of
3880 pixbuf_loader properly initialized.
3882 * src/testpixbuf.c: Made sure we cleanup pixbuf_loader properly
3885 1999-10-26 Jonathan Blandford <jrb@redhat.com>
3887 * src/gdk-pixbuf-io.c (image_handler_load): load the vtable fully.
3889 * src/gdk-pixbuf-loader.c: Finished initial cut at the object.
3891 1999-10-26 Havoc Pennington <hp@pobox.com>
3893 * src/gdk-pixbuf-loader.h: fix signals
3895 * src/gdk-pixbuf-io.h: add new vtable fields
3898 1999-10-26 Jonathan Blandford <jrb@redhat.com>
3900 * src/gdk-pixbuf-loader.h: New Class. Beginning of progrssive
3903 1999-10-25 Federico Mena Quintero <federico@redhat.com>
3905 * configure.in (CFLAGS): Patch from Uwe Koloska
3906 <koloska@Rcs1.urz.tu-dresden.de> to fix a stupid typo of mine.
3908 1999-10-22 Havoc Pennington <hp@pobox.com>
3910 * src/io-xpm.c (mem_buffer): Clean up stupid
3911 increment-inside-array-dereference thing
3913 * src/testpixbuf.c: Add XPM data tests.
3915 * src/io-xpm.c: Make the XPM data buffer const, fix const
3916 correctness throughout the code.
3918 1999-10-22 Havoc Pennington <hp@pobox.com>
3920 * src/gdk-pixbuf.h: Export gdk_pixbuf_new_from_xpm_data()
3922 1999-10-22 Havoc Pennington <hp@pobox.com>
3924 * src/io-xpm.c (image_load_xpm_data): Export this symbol for
3925 loading an XPM from memory.
3927 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): New
3928 function, loads pixbuf from xpm data
3929 (image_handler_load): Add g_return_if_fail() to ensure the same
3930 module isn't loaded twice. Add g_module_symbol() to scan for XPM
3933 1999-10-22 Federico Mena Quintero <federico@redhat.com>
3935 * src/io-png.c (image_load): Patch from Kristian Hogsberg
3936 Kristensen <hogsberg@daimi.au.dk> to avoid allocating extra row
3937 buffers; the rows can be read in directly into the main pixel
3940 1999-10-20 Federico Mena Quintero <federico@redhat.com>
3942 * src/gdk-pixbuf-io.c (image_handler_load): Free path.
3944 1999-10-20 Federico Mena Quintero <federico@redhat.com>
3946 * configure.in: Bumped version number to 0.3.
3948 * src/Makefile.am (lbgdk_pixbuf_la_LDFLAGS): Added a libtool
3949 version number for the library.
3951 1999-10-20 Federico Mena Quintero <federico@redhat.com>
3953 * src/gdk-pixbuf.h (GdkPixbuf): Removed the unref_fn field. Now
3954 all memory management of the buffer is done by libart.
3956 * src/gdk-pixbuf.c (gdk_pixbuf_unref): Do destruction here.
3957 Removed gdk_pixbuf_destroy, gdk_pixbuf_duplicate.
3959 * src/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Implemented in
3960 terms of the libart functions. Removed the old code.
3962 * src/gdk-pixbuf-io.c (image_handler_load): Removed the save
3963 symbols. Saving will not be implemented in GdkPixbuf.
3965 * src/io-gif.c: Removed the saving stub.
3966 (image_load): Fixed memory management to fail gracefully if we run
3967 out of memory while loading the image. Close the gif file when we
3968 are done. This still needs more error handling for the DGif
3971 * src/io-jpeg.c (image_load): Some robustness fixes.
3973 * src/io-png.c: Removed the saving stuff.
3974 (image_load): Some memory management fixes.
3976 * src/io-tiff.c (image_load): Ditto.
3978 * src/io-xpm.c (pixbuf_create_from_xpm): Ditto.
3980 1999-10-18 Havoc Pennington <hp@pobox.com>
3982 * subautogen.sh: New name for macros/autogen.sh
3984 * autogen.sh: use subautogen.sh
3986 1999-10-18 Federico Mena Quintero <federico@redhat.com>
3988 * src/*: Reindented to use the GNOME Indentation. Renamed
3989 GdkPixBuf to GdkPixbuf, for consistency with the function names
3990 (and it is also easier to type) :-)
3992 1999-10-18 Havoc Pennington <hp@pobox.com>
3994 * configure.in: Use AM_PATH_GLIB instead of glib-config directly
3996 * src/Makefile.am: Re-enable testpixbuf with GTK_CFLAGS/GTK_LIBS
3998 1999-10-18 Havoc Pennington <hp@pobox.com>
4000 * Makefile.am (SUBDIRS): Remove "macros"
4002 * configure.in: Don't use GNOME_INIT, handle case where we are
4003 inside gnome-libs. AM_PATH_GTK for the GIF test
4005 * src/Makefile.am: Change flags to work without libgnomeui,
4006 comment out testpixbuf for now
4008 1999-10-18 Federico Mena Quintero <federico@redhat.com>
4010 * configure.in: Use $GTK_LIBS as the extra libs when checking for
4011 libgif/libungif, as they need the X libraries. Fixes bug #2472.
4013 1999-10-10 Cody Russell <bratsche@dfw.net>
4014 * src/gdk-pixbuf-drawable.c: core function now determines whether
4015 the requested geometry is on screen or not, and if some is not
4016 then the request is clamped to geometry that is on the screen.
4018 Changed 'pixbuf' to 'art_pixbuf' in core function.
4020 1999-10-08 Michael Fulbright <drmike@redhat.com>
4022 * src/gdk-pixbuf-data.c: Added to load rgb data from const data.
4024 * src/testpifbuf: Changed test program to display cdrom from rgb data
4025 if no filename given to test program.
4027 1999-10-07 Cody Russell <bratsche@dfw.net>
4028 * src/gdk-pixbuf-drawable.[ch]: Added. (Actually, Miguel committed
4029 them, but I wrote them).
4031 * src/gdk-pixbuf-drawable.h: Added a missing ; so things will now
4034 * src/Makefile.am: Added gdk-pixbuf-drawable.[ch] to
4035 libgdk_pixbuf_la_SOURCES and libgdk_pixbufinclude_HEADERS.
4037 * src/gdk-pixbuf-drawable.c: Added #include "gdk-pixbuf-drawable.h"
4040 * src/gdk-pixbuf-drawable.[ch]: Changed functions to return
4041 GdkPixBuf* instead of ArtPixBuf*.
4043 1999-09-22 Michael Meeks <michael@nuclecu.unam.mx>
4045 * src/gdk-pixbuf.c (gdk_pixbuf_new): created.
4046 (gdk_pixbuf_scale): use gdk_pixbuf_new + return a new scaled image.
4048 * src/gdk-pixbuf.h (struct _GdkPixBuf): Re-organise struct, + add
4049 GdkPixBufUnrefFunc + gdk_pixbuf_new.
4051 * src/io-jpeg.c (image_load): clean to use gdk_pixbuf_new.
4053 * src/io-xpm.c (_pixbuf_create_from_xpm): ditto.
4055 * src/io-tiff.c (image_load): ditto + fix leak
4057 * src/io-png.c (image_load): ditto + add more exit points; monitor.png
4058 crashes this module ( add warning :-)
4060 * src/io-bmp.c (image_load): ditto.
4062 * src/io-gif.c (image_load): ditto.
4064 1999-09-18 Michael Meeks <michael@nuclecu.unam.mx>
4066 * src/gdk-pixbuf.c (gdk_pixbuf_scale): Hack rgba support in so
4067 it doesn't crash scaling with alpha.
4069 1999-09-17 Federico Mena Quintero <federico@redhat.com>
4071 * src/io-bmp.c (image_load): Set the initial ref_count to 1.
4073 * src/io-gif.c (image_load): Likewise.
4075 * src/io-jpeg.c (image_load): Likewise.
4077 * src/io-png.c (image_load): Likewise.
4079 * src/io-tiff.c (image_load): Likewise.
4081 * src/io-xpm.c (_pixbuf_create_from_xpm): Likewise.
4083 * src/gdk-pixbuf-io.c (gdk_pixbuf_load_image): Added an assertion
4084 for the ref_count to be != 0.
4086 * src/gdk-pixbuf.c (gdk_pixbuf_ref): Be more paranoid with sanity
4088 (gdk_pixbuf_unref): Fix incorrect sanity check and comparison.
4090 1999-08-09 Federico Mena Quintero <federico@nuclecu.unam.mx>
4092 * src/io-png.c (image_save): Fixed compiler warnings. Fixed write
4093 to unallocated memory (row_ptr), and fixed its type as well. Take
4094 into account the ArtPixbuf's rowstride when assigning the row
4097 * src/gdk-pixbuf.c: Fixup includes.
4099 * src/gdk-pixbuf-io.c: Likewise.
4101 Sat Jul 31 19:19:47 CEST 1999
4103 * src/gdk-pixbuf-io.c:
4104 * src/io-png.c: Fixed two obvious C syntax bugs
4106 1999-07-29 Mark Crichton <crichton@gimp.org>
4108 * src/io-png.c (image_save): Added PNG saving function
4110 * src/gdk-pixbuf-io.c: Changed image_save function format. Now it's
4111 image_save(GdkPixBuf *p, FILE *f, ...)
4114 1999-07-26 Michael Zucchi <mzucchi@denr.sa.gov.au>
4116 * src/Makefile.am (*_LIB): Only build the relevant loaders which
4117 require extra libraries if we actually have those libraries.
4119 1999-07-23 Richard Hestilow <hestgray@ionet.net>
4121 * src/gdk-pixbuf.h: Include glib.h as it uses g* datatypes
4122 * gdk_pixbufConf.sh.in: Added for gnome-config
4124 * configure.in: Modified to generate gdk_pixbufConf.sh
4126 1999-07-20 Mark Crichton <crichton@gimp.org>
4128 * src/gdk-pixbuf.c (gdk_pixbuf_rotate): Fixed rotation. Now a bbox
4129 calculation needs to be done.
4131 1999-07-18 Larry Ewing <lewing@gimp.org>
4136 * src/io-jpeg.c: Fix a few memory leaks in the, most of them in
4137 error cases but one or two in the common case. There are probably
4138 a few small ones left.
4140 1999-07-18 Mark Crichton <crichton@gimp.org>
4142 * configure.in: removed version.h.
4144 * src/gdk-pixbuf-io.c (pixbuf_check_tiff): Minor readability
4147 1999-07-17 Mark Crichton <crichton@gimp.org>
4149 * src/gdk-pixbuf.c: Removed gdk_pixbuf_free, redundant code.
4150 (gdk_pixbuf_rotate): Added pixbuf rotation code.
4151 (gdk_pixbuf_scale): Changed // comments to /* */
4153 * src/gdk-pixbuf.h (gdk_pixbuf_destroy): Added gdk_pixbuf_destroy
4156 1999-07-16 Larry Ewing <lewing@gimp.org>
4158 * src/testpixbuf.c (expose_func): reverted the expose everything
4159 changes, I'm not sure why these went in.
4160 (config_func): bring this up to date with the new pixbuf_scale
4163 * src/gdk-pixbuf-io.c: added a couple of warnings to the module
4164 loading code so that poeple can diagnose problems better.
4166 * src/gdk-pixbuf.c (gdk_pixbux_scale): fix the borkedness, also it
4167 no longer allocates a new pixbuf, which make things nicer for the
4168 rest of the code. Unfortunately there is still a problem with
4169 scaling rgba images.
4171 1999-07-16 Mark Crichton <crichton@gimp.org>
4173 * src/testpixbuf.c (config_func): ConfigureEvent handler. This
4174 calls gdk_pixbuf_scale. However, something is not working.
4175 N.B.: current pixmap is now stored in user_data with a key of
4178 * src/gdk-pixbuf.c (gdk_pixbuf_scale): Implemented scaling function.
4179 Something is still borked, however.
4181 1999-07-15 Larry Ewing <lewing@gimp.org>
4183 * src/io-jpeg.c (image_load): add raph@gimp.org's fix to the jpeg
4186 * src/testpixbuf.c (main): fix up the file routines a little so
4187 that you can load multiple files given the file names
4189 1999-07-14 Larry Ewing <lewing@gimp.org>
4191 * src/testpixbuf.c (expose_func): added an almost proper expose
4192 handler for testpixbuf
4194 1999-07-13 Mark Crichton <crichton@gimp.org>
4196 * configure.in: Fixed GIF check. Replaced " with '
4197 * src/gdk-pixbuf.c: More (minor) work on gdk_pixbuf_scale
4199 1999-07-13 Mark Crichton <crichton@gimp.org>
4201 * configure.in: I am a bonehead. Added gif-lib check.