1 2004-03-15 Tor Lillqvist <tml@iki.fi>
3 Merges from stable branch that had been left out. (#136282, J. Ali
6 Changes for run-time lookup of installation location on Win32:
8 * Makefile.am (INCLUDES): Define GTK_PREFIX as $(prefix).
10 * gdk-pixbuf-io.c (get_sysconfdir): New function, look up
11 installation location at runtime and deduce GTK_SYSCONFDIR
13 (get_toplevel): Similar, for the top-level installation directory.
14 (correct_prefix): Replace compile-time prefix with run-time
16 (get_libdir): Remove, not used any longer.
17 (gdk_pixbuf_io_init): Call correct_prefix() on Win32.
19 * queryloaders.c (query_module): [Win32] Change backslahses into
22 Tue Mar 9 09:33:28 2004 Owen Taylor <otaylor@redhat.com>
24 * === Released 2.3.6 ===
26 2004-03-05 Tor Lillqvist <tml@iki.fi>
28 * gdk_pixbuf.def: Add missing entries. Thanks to J. Ali Harlow.
30 Fri Mar 5 22:22:25 2004 Matthias Clasen <maclas@gmx.de>
32 * io-bmp.c (OneLine32): Don't try to load an alpha channel
33 from the BMP, since there is no evidence that even 32bit
34 BMPs have an alpha channel. (#135502)
36 Mon Mar 1 19:47:48 2004 Owen Taylor <otaylor@redhat.com>
38 * === Released 2.3.5 ====
40 2004-02-28 Hans Breuer <hans@breuer.org>
42 * io-tiff.c : include <io.h> for lseek()
43 * io-xbm.c : use HAVE_UNISTD_H
45 Tue Feb 24 14:45:03 2004 Owen Taylor <otaylor@redhat.com>
47 * === Released 2.3.3 ===
49 Sun Feb 22 01:09:55 2004 Matthias Clasen <maclas@gmx.de>
51 * io-bmp.c (gdk_pixbuf__bmp_image_begin_load): Remove debugging
54 Fri Feb 20 22:25:32 2004 Matthias Clasen <maclas@gmx.de>
56 * io-bmp.c (DecodeHeader): Store and sanity-check the clrUsed field
57 from the header for use in DecodeColormap.
58 * io-bmp.c (DecodeColormap): Don't read more colormap entries than
59 the header says are there. (#134235, Kazuho Okui)
61 Sun Feb 8 01:07:20 2004 Manish Singh <yosh@gimp.org>
63 * gdk-pixbuf-io.c: removed unnecessary G_OBJECT() cast checks.
65 * io-jpeg.c: make the return type for to_callback_empty_output_buffer
66 "boolean", which should be defined by the jpeg headers. The right
67 return type for this function depends on how the jpeg library
68 was built (one wonders what happens if different compilers are used).
70 2004-01-28 Hans Breuer <hans@breuer.org>
72 * gdk_pixbuf.def : updated externals
74 Sat Jan 17 23:02:55 2004 Matthias Clasen <maclas@gmx.de>
76 The second part of the fix for #114351 (see also
79 * gdk-pixbuf-i18n.h (P_): Use translation domain gtk20-properties.
81 Sat Jan 17 00:01:51 2004 Matthias Clasen <maclas@gmx.de>
83 The first part of the fix for #114351 (see also
86 * gdk-pixbuf-i18n.h: Define P_() for property blurbs and nicks.
88 * gdk-pixbuf.c: Mark property blurbs and nicks with P_().
90 Thu Jan 8 22:01:14 2004 Matthias Clasen <maclas@gmx.de>
92 * queryloaders.c (loader_sanity_check): Don't use bitwise operators
93 on booleans. (#130923, reported by Telsa Gwynne, fix by Dave Jones)
95 2004-01-06 Federico Mena Quintero <federico@ximian.com>
97 * gdk-pixbuf-io.c (gdk_pixbuf_save): Escape an ampersand in the
98 documentation comment, and hack around an empty line in the code
99 example so that gtk-doc won't put a <para> due to it.
101 * gdk-pixbuf.c (gdk_pixbuf_get_pixels): Link to the documentation
102 section on image data.
104 2004-01-06 Federico Mena Quintero <federico@ximian.com>
106 * gdk-pixdata.c (gdk_pixbuf_new_from_inline): Fix example in
107 documentation comment. Fixes #130701.
109 Wed Jan 7 02:41:14 2004 Matthias Clasen <maclas@gmx.de>
111 * gdk-pixbuf-io.c (gdk_pixbuf_save_to_bufferv):
112 * gdk-pixbuf-io.c (gdk_pixbuf_save_to_buffer):
113 * gdk-pixbuf-io.c (gdk_pixbuf_save_to_callbackv):
114 * gdk-pixbuf-io.c (gdk_pixbuf_save_to_callback): New public API
115 to save pixbufs to non-file locations. (#82203, Tim Evans)
118 * gdk-pixbuf.def: Declare the new public API.
120 * gdk-pixbuf-io.h: Add save_to_callback to the module interface.
123 * io-png.c: Implement save_to_callback.
125 * gdk-pixbuf-io.c (gdk_pixbuf_savev):
126 * gdk-pixbuf-io.c (gdk_pixbuf_save): Update documentation.
128 * gdk-pixbuf-io.c (gdk_pixbuf_real_save): Support saving via
129 image_module->save_to_callback.
131 * gdk-pixbuf-io.c (gdk_pixbuf_real_save_to_callback): New generic
132 save_to_callback function which falls back to image_module->save
135 Wed Jan 7 01:17:36 2004 Matthias Clasen <maclas@gmx.de>
137 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_size_func):
138 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_set_size):
139 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_init): Make it possible
140 to call gdk_pixbuf_loader_set_size (loader, 0, 0) by changing
141 the initial values of priv->width/height to -1.
143 * io-tiff.c (tiff_image_parse):
144 * io-ras.c (RAS2State):
145 * io-pnm.c (gdk_pixbuf__pnm_image_load_increment):
146 * io-pcx.c (gdk_pixbuf__pcx_load_increment):
147 * io-jpeg.c (gdk_pixbuf__jpeg_image_load_increment):
148 * io-png.c (png_info_callback):
149 * io-ico.c (DecodeHeader):
150 * io-bmp.c (DecodeHeader): Call size_func once the size is known,
151 even if the module can't make use of the scaling information. If
152 size_func returns 0, don't allocate a pixbuf and return, if
153 necessary with an error.
156 * gdk-pixbuf-io.c (gdk_pixbuf_get_file_info): A new function
157 to determine the type and size of an image file without loading
158 it completely. (#53725)
160 Sun Jan 4 00:44:57 2004 Matthias Clasen <maclas@gmx.de>
162 * gdk-pixbuf.c (gdk_pixbuf_class_init): Turn the pixbuf
163 attributes into (construct-only, but always readable)
164 properties. (#130196)
166 * gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Set properties
169 Mon Dec 22 01:35:36 2003 Matthias Clasen <maclas@gmx.de>
171 * Makefile.am (gdk-pixbuf.loaders): Fix building with
172 --disable-modules --with-included-loaders, create an
173 empty gdk-pixbuf.loaders file. (#124496, Arno Charlet, fix
174 proposed by Owen Taylor)
176 Thu Dec 11 01:57:05 2003 Matthias Clasen <maclas@gmx.de>
178 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): Move
179 the documentation for signals inline, to get proper parameter
180 documentation. (#128977)
182 Sat Nov 15 00:26:19 2003 Matthias Clasen <maclas@gmx.de>
184 * queryloaders.c (loader_sanity_check): Check that the mask
185 is NULL or a string of the same length consisting entirely of
186 ' ', '!', 'x', 'z', 'n'.
188 Mon Nov 10 00:17:52 2003 Matthias Clasen <maclas@gmx.de>
190 * Makefile.am (install-data-local): Typo fix in warning.
192 Sun Nov 9 23:07:05 2003 Matthias Clasen <maclas@gmx.de>
194 * gdk-pixbuf-io.c (_gdk_pixbuf_generic_image_load): If neither
195 load nor begin_load are available fall back to load_animation
196 and use gdk_pixbuf_animation_get_static_image() to obtain a
197 pixbuf. Inefficient, but at least doesn't crash.
199 Sun Nov 9 21:56:20 2003 Matthias Clasen <maclas@gmx.de>
201 * queryloaders.c (write_loader_info): New function to write
202 out the information for a single loader, factored out of
204 (loader_sanity_check): New function to perform
205 sanity checks on a loader.
206 (query_module): Use the new functions.
208 Thu Nov 6 00:27:27 2003 Matthias Clasen <maclas@gmx.de>
210 * io-pcx.c (gdk_pixbuf__pcx_load_increment): Fold two similar
211 strings into on. (#126204, Danilo Segan)
213 2003-09-19 Matthias Clasen <maclas@gmx.de>
215 * io-tga.c (try_preload): Remove a pointless check.
216 (#122710, Kjartan Maraas)
218 Mon Aug 18 10:25:29 2003 Owen Taylor <otaylor@redhat.com>
220 * gdk-pixdata.c (gdk_pixdata_to_csource): Add the correct
221 alignment magic for Sun compiler and for GCC to get
222 the strings aligned. (Patch from Brian Cameron, #117217)
224 2003-08-14 Matthias Clasen <maclas@gmx.de>
226 * gdk-pixdata.c (gdk_pixdata_to_csource): Improve doc comment
227 wording. (#119754, Doug Quale)
229 2003-08-03 Matthias Clasen <maclas@gmx.de>
231 * gdk-pixbuf.c (gdk_pixbuf_get_rowstride):
232 * gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Clarify misleading
233 explanation of rowstride. (#119000)
235 2003-07-24 Matthias Clasen <maclas@gmx.de>
237 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file_at_size): Preserve the
238 aspect ratio. (#118145, Owen Taylor)
240 2003-07-23 Matthias Clasen <maclas@gmx.de>
242 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file_at_size): Close loader
243 before unref'ing it. (#118146, Owen Taylor)
245 2003-03-01 Hans Breuer <hans@breuer.org>
247 * makefile.msc : updated
249 * gdk_pixbuf.def : export a bunch of new functions
251 2003-07-18 Matthias Clasen <maclas@gmx.de>
253 * pixops/pixops.c (correct_total): Split correction into multiple
254 pieces if no single weight is large enough to apply the unsplit
255 correction. (#117431, problem reported by Tomas Ögren)
257 2003-07-13 Matthias Clasen <maclas@gmx.de>
260 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file_at_size): New function
261 to load an image from a file at a specified size. (#105326, Dom
264 2003-07-11 Matthias Clasen <maclas@gmx.de>
266 * queryloaders.c (query_module): Handle absolute filenames
267 properly. (#117170, Jens Elkner)
269 * gdk-pixbuf-io.c: Mention that NULL-terminated arrays returned by
270 gdk_pixbuf_format_get_mime_types() and
271 gdk_pixbuf_format_get_extensions() must be freed with g_strfreev().
273 2003-07-04 Matthias Clasen <maclas@gmx.de>
275 * gdk-pixbuf-io.c: Document ICO save parameters.
277 * io-ico.c: Support saving of ICOs and CURs. Currently, only
278 single-image ICOs are produced, but the code for multi-image ICOs
279 is already in place. The saver understands the options "depth"
280 (can be "32", "24" or "16") and "x_hot"/"y_hot" for hotspot
283 2003-06-28 Matthias Clasen <maclas@gmx.de>
285 * io-ico.c (DecodeHeader): Stop discriminating against 32bpp ICOs
286 a): Use the byte size of the image as a heuristic when selecting
287 the bitmap to load - this lets us select 32bpp bitmaps which come
289 (OneLineTransp): Stop discriminating against 32bpp ICOs b): Don't
290 overwrite the alpha channel of 32bpp ICOs.
291 (gdk_pixbuf__ico_image_load_increment): Stop decoding the header
294 Fri Jun 27 03:56:59 2003 Soeren Sandmann <sandmann@daimi.au.dk>
296 * io-gif-animation.c (gdk_pixbuf_gif_anim_frame_composite): Make
297 it compile with C89 compilers.
299 2003-06-23 Matthias Clasen <maclas@gmx.de>
301 * io-gif.c (gif_get_frame_info): Remove the pointless refusal to
302 load images with dubious disposal mode on the first frame. Just
303 ignore it, as everybody else does.
305 2003-06-22 Matthias Clasen <maclas@gmx.de>
307 * gdk-pixbuf-loader.[hc] (gdk_pixbuf_loader_new_with_mime_type):
308 New function to obtain a loader for a specific mime type.
309 (#105324, Dom Lachowicz)
311 * io-gif.c (gif_get_extension): Reset block_count to 0 for all
312 application extensions, otherwise the data blocks of unknown
313 extensions are not propertly skipped.
315 Second half of the fix for #106962, handle frames extending beyond
318 * io-gif.c (clip_frame): New helper function to clip a rectangle
319 to the logical screen size of the gif.
320 (maybe_update): New helper function to call update_func only if
321 the rectangle is not completely off-bounds.
322 (gif_get_lzw): Read frames extending outside the logical screen
323 size, but be careful clip to the logical screen size
324 when operating on the composite pixbuf and when calling update_func.
325 (gif_init): Set the animation size to the logical screen size.
326 (gif_get_frame_info): Don't refuse to load images with frames
327 extending beyond the logical screen size.
329 * io-gif-animation.c (gdk_pixbuf_gif_anim_frame_composite): Be
330 careful to clip all rectangles to the logical screen size, also
331 handle the fact that frames may be completely off-bounds.
333 2003-06-21 Matthias Clasen <maclas@gmx.de>
335 * io-gif.c: Merge from 2.2: Fix update_func() arguments and accept
336 empty frames. (#106962)
338 2003-06-17 Matthias Clasen <maclas@gmx.de>
340 * Makefile.am (man_MANS): Removed, man pages are now installed
341 from docs/reference/gdk-pixbuf.
343 2003-06-03 Matthias Clasen <maclas@gmx.de>
345 * gdk-pixdata.c (gdk_pixbuf_new_from_inline): Document
346 data_length == -1, add an example. (#97290)
348 2003-06-01 Matthias Clasen <maclas@gmx.de>
350 * gdk-pixdata.h (struct _GdkPixdata): Fix misleading documentation
351 of rowstride. (#113924, Noah Levitt)
353 2003-05-27 Matthias Clasen <maclas@gmx.de>
355 * io-wbmp.c: Remove dubious bitfields of
356 unspecified signedness. (#112919, Morten Welinder)gdk-p
358 * gdk-pixdata.c (gdk_pixdata_to_csource): Replace all occurances
359 of g_string_new ("") by g_string_new (NULL). (#106975, Morten
362 2003-05-21 Matthias Clasen <maclas@gmx.de>
364 * pixbufloader_pcx.def:
365 * io-pcx.c: A loader for PCX files. (#113035, Josh Beam)
368 * Makefile.am: Add PCX loader.
370 2003-05-19 Matthias Clasen <maclas@gmx.de>
372 Improve progressive loading from slow sources: (#107368)
374 * io-gif-animation.c (gdk_pixbuf_gif_anim_get_iter): Initialize
376 (gdk_pixbuf_gif_anim_iter_advance): Don't wrap during loading if
377 the datasource falls behind the speed of the display.
379 * io-gif-animation.h: Add a loading flag to GdkPixbufGifAnim and
380 first_loop_slowness to GdkPixbufGifAnimIter.
382 Wed May 14 18:24:50 2003 Owen Taylor <otaylor@redhat.com>
384 * gdk-pixdata.c (gdk_pixdata_deserialize): Add a
385 (gint32 *) => (guint32 *) cast. (#108615, Rick Jones)
387 2003-04-24 Matthias Clasen <maclas@gmx.de>
389 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_write):
390 (gdk_pixbuf_loader_new_with_type):
391 (gdk_pixbuf_loader_close):
392 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file):
395 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file):
396 Add sanity checks for GError handling. (#108345)
398 Tue Apr 1 15:33:51 2003 Owen Taylor <otaylor@redhat.com>
400 * pixops/pixops.c (make_weights): Exploit the fact that all
401 our filters are separable to simplify the calculation of
402 the weight tables. (Based on a patch from Brian Cameron.)
404 * pixops/Makefile.am pixbuf-transform-math.ltx:
405 Add a short article describing how the math in pixops.c
408 2003-03-21 Matthias Clasen <maclas@gmx.de>
410 * gdk-pixbuf-animation.c (gdk_pixbuf_non_anim_get_type): Add
411 missing static. (#108614)
413 * io-jpeg.c (gdk_pixbuf__jpeg_image_begin_load):
414 * io-ico.c (gdk_pixbuf__ico_image_stop_load): Add missing static
415 qualifiers apparently causing problems on some platforms. (#108617)
417 2003-03-11 Matthias Clasen <maclas@gmx.de>
419 * io-ico.c (DecodeHeader): Calculate LineWidth for 16bpp from
420 width, like for the other depths. (noticed by Marijn Ros)
422 2003-03-08 Matthias Clasen <maclas@gmx.de>
424 Bug #107664 continued:
426 * io-xpm.c (find_color): Fix 0/FALSE confusion
427 * gdk-pixbuf.c (gdk_pixbuf_get_has_alpha): Fix -1/gboolean
430 2003-03-06 Matthias Clasen <maclas@gmx.de>
432 * io-gif.c (gif_read): Fix 0/FALSE confusion (#107664, Morten
435 2003-02-20 Matthias Clasen <maclas@gmx.de>
437 * io-gif-animation.c (gdk_pixbuf_gif_anim_frame_composite):
438 Always clear the initial frame and "disposed" areas with
439 transparent pixels, no matter whether the frame has transparency
442 2003-02-18 Matthias Clasen <maclas@gmx.de>
444 * io-tga.c (pixbuf_flip_row):
445 (pixbuf_flip_vertically): Auxiliary functions used to implement
446 support for arbitrary origins.
447 (parse_data_for_row_pseudocolor):
448 (parse_data_for_row_truecolor):
449 (parse_data_for_row_grayscale):
450 (parse_data_for_row):
451 (fill_in_context): Remove the check for upper-left origin.
452 (parse_rle_data): Support arbitrary origins. (#105912)
454 * io-tga.c (fread_check):
456 (get_header_from_file):
457 (get_colormap_from_file):
458 (get_image_pseudocolor):
459 (swap_channels_pixbuf):
460 (get_image_truecolor):
461 (get_image_grayscale):
462 (gdk_pixbuf__tga_load): Remove the non-incremental load
463 implementation, since we have generic_image_load () now.
465 (gdk_pixbuf__tga_stop_load): Fix a potential crash discovered by
468 2003-02-14 Matthias Clasen <maclas@gmx.de>
470 * io-tga.c (try_preload):
471 (gdk_pixbuf__tga_load): Actually reject images with origin
472 not in the upper-left corner. (#105912)
474 2003-02-06 Matthias Clasen <maclas@gmx.de>
476 * queryloaders.c (query_module): Better error message if
477 module_open() fails. (#105349, Tim Mooney)
479 Mon Jan 27 17:10:30 2003 Owen Taylor <otaylor@redhat.com>
481 * Makefile.am (gdk-pixbuf.loaders): Rewrite to run
482 on the .la files rather than looking for .so files.
483 (#102142, Martin Gansser)
485 * Makefile.am: Don't build gdk-pixbuf.loaders when
488 2003-01-05 Tor Lillqvist <tml@iki.fi>
490 * Makefile.am (gdk-pixbuf.loaders): Use @SOEXT@ in the find command.
492 * gdk_pixbuf.def: Add gdk_pixbuf_loader_set_size.
494 2003-01-03 Matthias Clasen <maclas@gmx.de>
496 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): Don't crash if
497 gdk-pixbuf.loaders file is missing. (#102222)
499 2002-12-08 Matthias Clasen <maclas@gmx.de>
501 * gdk-pixbuf-animation.h:
502 * gdk-pixbuf-io.h: Add /*< public|private >*/ markers.
504 Sat Dec 7 10:14:05 2002 Owen Taylor <otaylor@redhat.com>
506 * Makefile.am (gdk-pixbuf.loaders): Make gdk-pixbuf.loaders
507 also depend gdk-pixbuf-query-loaders. (#97096, Daniel Elstner)
509 2002-12-05 Matthias Clasen <maclas@gmx.de>
511 * io-ico.c: Remove leftover debug output. (#100357, Owen Taylor)
513 2002-12-04 Bastien Nocera <hadess@hadess.net>
515 * io-tiff.c: (tiff_image_parse): use G_BIG_ENDIAN instead of
516 WORDS_BIGENDIAN which isn't set by configure.in
518 2002-11-29 Matthias Clasen <maclas@gmx.de>
520 * gdk-pixbuf-animation.c:
521 * gdk-pixbuf.c: Add deprecation docs.
523 2002-11-28 Matthias Clasen <maclas@gmx.de>
525 * gdk-pixbuf/gdk-pixbuf-io.c:
526 * gdk-pixbuf/gdk-pixbuf-loader.c:
527 * gdk-pixbuf/gdk-pixbuf.c: Document 2.2 API additions. I'm not
528 going to list all individual functions here; if you want to see
529 the list, grep for "Since: 2.2".
531 Fri Nov 8 19:06:07 2002 Owen Taylor <otaylor@redhat.com>
533 * Makefile.am (gdk-pixbuf.loaders): Make gdk-pixbuf.loaders
534 file depend on the loaders (#97096, Jeff Waugh)
536 Wed Nov 6 15:19:53 2002 Owen Taylor <otaylor@redhat.com>
538 * io-gif.c (CHECK_LZW_SP): Fix trailing semicolon on macro,
541 2002-11-05 Matthias Clasen <maclas@gmx.de>
543 * gdk-pixbuf-loader.c: Reindent to follow the gdk-pixbuf indentation.
545 Tue Nov 5 14:16:17 2002 Owen Taylor <otaylor@redhat.com>
547 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Fix
548 leaked pixbuf reference (#96823, Morten Welinder)
550 2002-10-23 Matthias Clasen <maclas@gmx.de>
552 * io-gif.c (lzw_read_byte): Check for stack overflow throughout.
555 2002-10-21 Matthias Clasen <maclas@gmx.de>
557 Support the Netscape application extension for gif animations
560 * io-gif-animation.h:
561 * io-gif-animation.c (gdk_pixbuf_gif_anim_iter_advance):
562 Add loop count to GdkPixbufGifAnim and use it in the advance
563 method of GdkPixbufGifAnimIter.
565 * io-gif.c (gif_get_extension): Parse Netscape application
566 extension block and set the animation loop count.
568 2002-10-11 Matthias Clasen <maclas@gmx.de>
570 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_format): Remove
573 * gdk-pixbuf-io.h: Remove unused typedef
574 GdkPixbufModuleGetSignatureFunc.
576 2002-10-04 jacob berkman <jacob@ximian.com>
578 * queryloaders.c (query_module): make legal C
580 2002-10-04 Matthias Clasen <maclas@gmx.de>
582 * Makefile.am gdk-pixbuf-animation.c gdk-pixbuf-data.c
583 gdk-pixbuf-io.c gdk-pixbuf-io.h gdk-pixbuf-loader.c
584 gdk-pixbuf-loader.h gdk-pixbuf-private.h gdk-pixbuf.h
585 gdk-pixdata.c io-ani-animation.h io-ani.c io-bmp.c
586 io-gif-animation.c io-gif-animation.h io-gif.c io-ico.c
587 io-jpeg.c io-png.c io-pnm.c io-ras.c io-tga.c io-tiff.c
588 io-wbmp.c io-xbm.c io-xpm.c pixbufloader_ani.def
589 pixbufloader_bmp.def pixbufloader_gif.def pixbufloader_ico.def
590 pixbufloader_jpeg.def pixbufloader_png.def
591 pixbufloader_pnm.def pixbufloader_ras.def pixbufloader_tga.def
592 pixbufloader_tiff.def pixbufloader_wbmp.def
593 pixbufloader_xbm.def pixbufloader_xpm.def test-gdk-pixbuf.c
594 gdk-pixbuf-animation.h queryloaders.c: Support for separately
595 installed loaders. (#77486)
597 Thu Oct 3 18:25:57 2002 Owen Taylor <otaylor@redhat.com>
599 * io-jpeg.c (gdk_pixbuf__jpeg_image_save):
600 Fix memory leak. (#94399)
602 Tue Oct 1 17:35:43 2002 Owen Taylor <otaylor@redhat.com>
604 * gdkpixdata.c: Patch from Andy Wingo to always
605 escape ? to avoid accidentally generating trigraphs
606 in the output (#94631)
608 2002-09-28 Tor Lillqvist <tml@iki.fi>
610 * pixops/*.S: Don't use .type on Cygwin, either (#91597, Masahiro
613 2002-09-27 Federico Mena Quintero <federico@ximian.com>
615 * io-ico.c (gdk_pixbuf__ico_image_begin_load): Free the context if
616 we cannot allocate the HeaderBuf.
618 2002-09-27 Federico Mena Quintero <federico@ximian.com>
620 * io-bmp.c (OneLine): Fix the update region notification to handle
621 top-to-bottom and bottom-to-top BMPs correctly.
623 2002-09-19 Matthias Clasen <maclas@gmx.de>
625 * Revert the previous change; the symbols need to be exported
626 to be usable from dlopened modules.
628 2002-09-18 Matthias Clasen <maclas@gmx.de>
630 * io-xpm.c, io-xbm.c, io-ico.c, io-ani.c, io-png.c,
631 gdk-pixbuf.c, gdk-pixbuf-animation.c, gdk-pixbuf-loader.c,
632 gdk-pixbuf-private.h: _-prefix gdk_pixbuf_non_anim_new and
633 gdk_pixbuf_set_option. Adjust all callers.
635 2002-09-14 Hans Breuer <hans@breuer.org>
637 * pixops/Makefile.am : added makefile.msc to EXTRA_DIST
639 2002-09-12 Matthias Clasen <maclas@gmx.de>
641 * io-gif-animation.h:
642 * gdk-pixbuf.h: Move GdkPixbufFrame from the public header to
643 the gif-animation-specific private header. (#91929)
645 2002-09-12 Federico Mena Quintero <federico@ximian.com>
647 * io-jpeg.c (gdk_pixbuf__jpeg_image_load): Unref the pixbuf if we
648 hit an unsupported colorspace.
650 2002-09-06 Matthias Clasen <maclas@gmx.de>
652 * io-ani.c, io-ani-animation.h, io-ani-animation.c,
653 pixbufloader_ani.def, Makefile.am, gdk-pixbuf-io.c: New loader,
656 * io-xpm.c (pixbuf_create_from_xpm):
657 * io-xbm.c (gdk_pixbuf__xbm_image_load_real):
658 * io-ico.c (DecodeHeader): Attach hotspot coordinates to the
659 pixbuf as options "x_hot" and "y_hot".
661 2002-09-04 Matthias Clasen <maclas@gmx.de>
663 * io-tga.c (io_buffer_append):
664 * io-ico.c (DecodeHeader):
665 * io-bmp.c (grow_buffer): Don't leak memory if g_try_realloc fails.
667 * gdk-pixbuf-io.c (pixbuf_check_ico): Fix loading of .CUR files.
670 2002-08-25 Tor Lillqvist <tml@iki.fi>
672 * Makefile.am (libgdk_pixbuf_2_0_la_DEPENDENCIES): Add
673 gdk_pixbuf_win32res_lo. (#87101, J. Ali Harlow)
675 2002-08-22 Matthias Clasen <maclas@gmx.de>
678 gdk-pixbuf-io.c (_gdk_pixbuf_generic_image_load): No longer
679 static, thus _gdk_pixbuf-prefixed.
681 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file):
682 Keep this logic in sync with gdk_pixbuf_new_from_file(). (Based
683 on a patch by Anders Carlsson)
685 * io-png.c (gdk_pixbuf__png_image_save): Plug a memory
686 leak. (#91422, Sven Neumann)
688 2002-07-31 Sven Neumann <sven@gimp.org>
690 * gdk-pixdata.c (gdk_pixdata_to_csource): free the result of
691 gdk_pixdata_serialize() (bug #89411).
693 Mon Jul 29 23:06:10 2002 Owen Taylor <otaylor@redhat.com>
695 * gdk-pixbuf-scale.c: Fix some warnings by adding
696 casts to PixopsInterpType. (#85839, David L. Cooper, II.)
698 2002-07-16 Matthias Clasen <maclas@gmx.de>
700 * io-ras.c (DoCompressed): Avoid unnecessary casting.
702 2002-07-07 Matthias Clasen <maclas@gmx.de>
704 * gdk-pixbuf-io.c (generic_image_load): New function for loading
705 an image from a file either via module->load or incrementally.
706 (prepared_notify): ModulePreparedNotifyFunc for generic_image_load.
707 (gdk_pixbuf_new_from_file): Use generic_image_load.
708 * io-bmp.c, io-ico.c, io-ras.c, io-wbmp.c: Remove trivial
709 implementations of module->load. (#71266)
711 * io-ico.c (DecodeHeader): Correct computation of image height.
712 (OneLine): Correct update notification.
714 Load-at-size functionality (#53726):
716 * gdk-pixbuf-io.h (ModuleSizeFunc): New.
717 (_GdkPixbufModule): Prepend a ModuleSizeFunc to the
718 begin_load arguments. Adjust all modules.
719 * gdk-pixbuf-loader.c (struct GdkPixbufLoaderPrivate): Add
720 fields width, height, size_fixed, need_scale.
721 (gdk_pixbuf_loader_class_init): Add size_prepared signal.
722 (gdk_pixbuf_loader_set_size): New function.
723 (gdk_pixbuf_loader_size_func): ModuleSizeFunc which gets
724 passed to the module, emits size_prepared.
725 (gdk_pixbuf_loader_prepare): Call gdk_pixbuf_loader_size_func
726 if necessary, only emit area_prepared if no separate scaling
728 (gdk_pixbuf_loader_update): Only emit area_updated if no
729 separate scaling is required.
730 (gdk_pixbuf_loader_load_module): Add size_func as first argument.
731 (gdk_pixbuf_loader_close): If necessary scale the image
732 to the desired size and emit area_prepared and area_updated.
733 * gdk-pixbuf-loader.h (struct _GdkPixbufLoaderClass): Add
734 size_prepared signal.
735 (gdk_pixbuf_loader_set_size) New API.
736 * gdk-pixbuf-marshal.list: Add VOID:INT,INT.
737 * io-jpeg.c: User cinfo->output_width/height instead of
738 cinfo->image_width/height throughout when adressing the pixbuf.
739 (gdk_pixbuf__jpeg_image_load_increment): Call size_func, and
740 find the nearest possible output size which libjpeg can produce
741 that is still larger than the desired size.
743 2002-07-06 Matthias Clasen <maclas@gmx.de>
745 * io-tiff.c (tiff_set_error): Handle global_error == NULL
747 (tiff_image_parse): Don't trust TIFFRGBAImageBegin to set
748 the "put" routine. (Fixes #87384)
749 (gdk_pixbuf__tiff_image_stop_load): Don't call TIFFClose too
752 2002-07-02 Matthias Clasen <maclas@gmx.de>
754 Miscellaneous bmp loader fixes (#85448, #86286, #86287):
756 * io-bmp.c (grow_buffer): New function to avoid crashes
757 on unchecked reallocs.
758 (DecodeHeader, DecodeColormap, decode_bitmasks,
759 DoCompressed): Use grow_buffer instead of g_realloc
760 throughout. Change signatures where necessary to pass the
762 (OneLine16): Fix loading of 16bpp BI_RGB bmps.
763 (DoCompressed): Rewritten to properly support BI_RLE4 and
766 Support for compressed ras images (#84994):
768 * io-ras.c (RAS2State): Error on unsupported ras variations.
769 (OneLine8): Fix colormap indexing.
770 (OneLine): Call updated_func with proper region.
771 (DoCompressed): New function, handles compressed ras data.
772 (gdk_pixbuf__ras_image_load_increment): Handle compressed ras
775 Better colorspace support for the jpeg loader (#61211):
777 * io-jpeg.c (convert_cmyk_to_rgb): New function.
778 (gdk_pixbuf__jpeg_image_load,
779 gdk_pixbuf__jpeg_image_load_increment): Allocate a pixbuf with
780 alpha for 4-channel jpegs and call convert_cmyk_to_rgb for these.
782 All of this needs to be merged to GNOME 1.4 gdk-pixbuf.
784 2002-06-28 Sven Neumann <sven@gimp.org>
786 * gdk-pixbuf-csource.c (print_blurb): converted a Tab to spaces.
788 Thu Jun 13 18:11:11 2002 Owen Taylor <otaylor@redhat.com>
790 * pixops/pixops.c: Fix problem where when no alpha was
791 involved, we scaled rather than composited, but then
792 went ahead and composited anyways. (#76958, Patch
793 from Matthias Clasen). Needs to be merged to GNOME
796 2002-06-13 Matthias Clasen <maclas@gmx.de>
798 * io-jpeg.c: Use libjpeg in buffered-image mode in order to
799 incrementally display incrementally loaded progressive jpegs.
801 2002-06-07 Federico Mena Quintero <federico@ximian.com>
804 (lsb_16): New functions to fetch 32 or 16-bit little-endian values
805 starting at a specific memory location. We do this instead of
806 GINT32_FROM_LE() as the latter is simply dereferences a cast,
807 which doesn't work on platforms with alignment requirements.
810 2002-06-01 Matthias Clasen <maclas@gmx.de>
812 * gdk-pixbuf-io.c (pixbuf_check_xbm): Accept xbms starting
813 with a C comment - those seem to be not uncommon, e.g. the Gimp
814 produces them. (#82706)
816 * io-xbm.c (read_bitmap_file_data): Don't leak memory on certain
818 (gdk_pixbuf__xbm_image_load_real): Don't leak memory on valid inputs.
820 2002-05-22 Tor Lillqvist <tml@iki.fi>
822 * gdk-pixbuf-io.c (get_libdir): Use GTK_BINARY_VERSION (and not
823 GTK_VERSION) in the path to the loaders on Win32, too.
825 * Makefile.am: Pass GTK_BINARY_VERSION.
827 2002-05-22 Federico Mena Quintero <federico@ximian.com>
829 * io-xpm.c (pixbuf_create_from_xpm): Ahem, take the rowstride into
830 account!!! Fixes #82515.
832 [This bug is not present in the GNOME 1.4 branch as its XPM loader
833 does not use gdk_pixbuf_new(); rather it malloc()s a buffer with
834 no row padding and then uses gdk_pixbuf_new_from_data() on it.]
836 [IMPORTANT: The comment above is to make my life easier when
837 merging stuff across branches. If you make changes to gdk-pixbuf
838 in either branch, please include a comment in the ChangeLog that
839 indicates whether this should be merged into the other branch.
842 2002-05-18 Matthias Clasen <maclas@gmx.de>
844 * io-tiff.c (tiff_image_parse): fix packing order on bigendian
847 Thu May 16 15:17:30 2002 Owen Taylor <otaylor@redhat.com>
849 * pixops/pixops.c: Patch from Matthias Clasen to fix some typos
852 Thu May 16 15:02:46 2002 Owen Taylor <otaylor@redhat.com>
854 * gdk-pixdata.c (gdk_pixdata_to_csource): Fix 64-bit warning.
857 2002-05-07 Michael Natterer <mitch@gimp.org>
859 * gdk-pixbuf/Makefile.am: build the static pixbuf loaders
860 conditionally like the dynamic ones so --without-lib<foo> is
861 honored when building with --disable-modules. (#66867)
863 Sun May 5 02:27:01 2002 Soeren Sandmann <sandmann@daimi.au.dk>
865 * Makefile.am (noinst_PROGRAMS): remove test-loaders (moved to
867 * test-loaders.c, test-images.h: remove
869 2002-04-24 Matthias Clasen <maclas@gmx.de>
871 * gdk-pixbuf-io.c (gdk_pixbuf_save): Remove the ISO8859-1
872 restriction from the description of png tEXt parameters.
874 * io-png.c (png_text_to_pixbuf_option):
875 (gdk_pixbuf__png_image_save): If libpng supports it,
876 store and retrieve non-ISO8859-1 text as UTF-8. (#76172)
878 2002-04-11 Matthias Clasen <maclas@gmx.de>
880 More fixes for #77807:
882 * io-tga.c (get_contiguous_pixbuf): Helper function to create
883 a pixbuf with a contiguous pixel array while being careful about
886 * io-tga.c (fill_in_context, get_image_pseudocolor,
887 get_image_truecolor, get_image_grayscale): Use
888 get_contiguous_pixbuf instead of manually allocating image
891 * io-xpm.c (pixbuf_create_from_xpm):
892 * io-pnm.c (gdk_pixbuf__pnm_image_load):
893 * io-jpeg.c (gdk_pixbuf__jpeg_image_load): Use gdk_pixbuf_new
894 instead of manually allocating image storage.
896 2002-04-09 Matthias Clasen <maclas@gmx.de>
898 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_load_module): Use
899 priv->image_module->module_name instead of image_type which may
902 2002-04-06 Matthias Clasen <maclas@gmx.de>
904 * io-png.c (gdk_pixbuf__png_image_load): Restructured to use
905 gdk_pixbuf_new instead of manually allocating image storage. This
906 gives us a good rowstride and overflow checks. (#77807)
908 2002-04-05 Matthias Clasen <maclas@gmx.de>
910 * io-tiff.c (tiff_image_parse): Avoid allocating an extra copy of
911 the image by using a TIFFRGBAImage{Begin,Get,End} with suitable
912 put functions instead of TIFFRGBAImage. And check image dimensions
915 2002-04-03 Matthias Clasen <maclas@gmx.de>
917 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_type): Fix a doc typo.
919 2002-03-29 Matthias Clasen <maclas@gmx.de>
921 * io-png.c (png_simple_error_callback): libpng error handlers must
922 not return to their callers, thus longjmp out. This prevents
923 annoying stderr output from the default error handler.
925 2002-03-27 Matthias Clasen <maclas@gmx.de>
927 * io-png.c (gdk_pixbuf__png_image_stop_load): Don't leak info_ptr.
929 * io-png.c (gdk_pixbuf__png_image_load): Get rid of unused
930 end_info. Also call png_read_end to check proper ending of the png
931 file and catch text chunks after the image data.
933 2002-03-27 Matthias Clasen <maclas@gmx.de>
935 * io-png.c (gdk_pixbuf__png_image_load,
936 gdk_pixbuf__png_image_begin_load): Make libpng use g_malloc
937 instead of system malloc.
939 2002-03-26 Matthias Clasen <maclas@gmx.de>
941 * io-tiff.c (tiff_image_parse): Don't leak pixbuf on error.
943 * io-gif.c (gdk_pixbuf__gif_image_load_increment): Don't leak
944 context->buf on error.
946 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Make sure to call
947 stop_load even for short images to prevent memleaks.
949 2002-03-25 Matthias Clasen <maclas@gmx.de>
951 * io-png.c (setup_png_transformations): Changed signature to
952 return success and set a GError parameter, adjusted all callers.
953 Also work around a possible FPE in libpng and always check that
954 the new info is sane.
956 2002-03-23 Matthias Clasen <maclas@gmx.de>
958 * io-wbmp.c (gdk_pixbuf__wbmp_image_load_increment):
959 context->updated_func is NULL during a nonincremental load.
960 (gdk_pixbuf__wbmp_image_load): Stop reading after the first error.
962 2002-03-18 Matthias Clasen <maclas@gmx.de>
964 * io-tga.c: Fix assumptions on rowstride by manually allocating a
965 contiguous pixel buffer. Catch buffer overruns in RLE-modi.
966 Support grayscale + alpha (which can be written, but not read (!)
969 2002-03-15 Matthias Clasen <maclas@gmx.de>
971 * io-gif.c (gif_get_frame_info): Catch invalid frame dimensions.
973 2002-03-13 Matthias Clasen <maclas@gmx.de>
975 * test-images.h: Add valid_ras_test and invalid_bmp_1.
977 * test-loaders.c (main): Add random tests for ras and pnm and an
978 invalid bmp which was a crasher until my 2002-03-12 commit.
980 * io-pnm.c (gdk_pixbuf__pnm_image_load_increment): Don't unref the
983 * io-ras.c: Handle some errors.
985 2002-03-12 Sven Neumann <sven@gimp.org>
987 * gdk-pixbuf.c (gdk_pixbuf_fill): use sequential writes instead of
988 calling memcpy(). Simpler and potentially faster. (#70332)
990 2002-03-12 Matthias Clasen <maclas@gmx.de>
992 * io-bmp.c (DecodeHeader): Replace a g_assert_not_reached ()
993 which could actually be reached by a proper error status return.
995 2002-03-05 Matthias Clasen <maclas@gmx.de>
997 * test-loaders.c, test-images.h: More random tests.
999 * io-bmp.c (DecodeHeader): Fail gracefully on OOM here.
1001 Tue Mar 5 10:39:03 2002 Owen Taylor <otaylor@redhat.com>
1003 * Makefile.am (loaderdir): Put the modules into the
1004 GTK_BINARY_VERSION directory for consistency with
1005 immodules and theme engines.
1007 Sat Mar 2 22:11:10 2002 Owen Taylor <otaylor@redhat.com>
1009 * gdk-pixbuf-io.c (_gdk_pixbuf_load_module): If we
1010 can't load the module using the g_module_build_path()
1011 filename, try loading it as a .la file.
1013 * test-loaders.c: Look for modules in current directory
1014 rather than .libs, so we find the right .la files.
1016 * test-loaders.c: Back out some accidental commits.
1018 Sat Mar 2 21:28:03 2002 Owen Taylor <otaylor@redhat.com>
1020 * gdk-pixbuf.c (gdk_pixbuf_new): Bullet-proof against integer
1023 2002-03-03 Tor Lillqvist <tml@iki.fi>
1025 * gtk-pixbuf.rc.in: Remove.
1027 * gdk_pixbuf.rc.in: Name like this instead (wrong name used by
1030 * makefile.msc: Corresponding changes.
1032 * Makefile.am: Use gdk_pixbuf.rc on Win32. Distribute it.
1034 2002-02-28 Matthias Clasen <maclas@gmx.de>
1036 * pixops/pixops.c (tile_make_weights): Move the call to
1037 correct_total() to the right spot. (#72732)
1039 Wed Feb 27 18:33:04 2002 Owen Taylor <otaylor@redhat.com>
1041 * gdk-pixdata.c (gdk_pixdata_to_csource): Use {} not
1042 () to group around string assigned to char[]. (#72767,
1045 2002-02-21 Havoc Pennington <hp@pobox.com>
1047 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_load_module): remove
1048 C++-commented debug spew, reported by David L. Cooper
1050 2002-02-15 Matthias Clasen <maclas@gmx.de>
1052 * pixops/pixops.c (correct_total): New function to make sure
1053 that the weights sum up to the correct total without introducing
1055 (tile_make_weights, bilinear_make_fast_weights,
1056 bilinear_make_weights): Use correct_total.
1058 2002-02-10 Matthias Clasen <maclas@gmx.de>
1060 * test-images.h (tiff1_test_3), test-loaders.c (main): Add a
1061 (#ifdef 0'ed) test provoking a segfault in TIFFReadDirectory().
1063 * io-ico.c (DecodeHeader): Check that pixbuf could be allocated.
1065 * test-images.h (ico_test_2), test-loaders.c (main): Test the
1068 * io-wbmp.c (gdk_pixbuf__wbmp_image_load_increment): Don't write
1069 beyond the end of buffer if width % 8 != 0.
1071 * io-tga.c (try_preload): Enforce that ctx->hdr->type is one of
1072 the supported types, otherwise parse_data_for_row () will not make
1073 any progress, leading to an infinite loop.
1075 Mon Feb 11 14:31:53 2002 Owen Taylor <otaylor@redhat.com>
1077 * pixops/pixops.c (bilinear_make_weights): Fix handing of
1080 2002-02-10 Matthias Clasen <maclas@gmx.de>
1082 * test-loaders.c (main): Enable some tests which should work
1085 * io-wbmp.c (gdk_pixbuf__wbmp_image_load_increment): Detect
1086 invalid image dimensions and insufficient memory.
1088 * io-tga.c (try_preload): Detect invalid image dimensions.
1089 (gdk_pixbuf__tga_stop_load): Don't try to unref NULL pointers.
1091 * io-ico.c (DecodeHeader): Detect some invalid headers and
1094 Fri Feb 8 23:11:15 2002 Owen Taylor <otaylor@redhat.com>
1096 * pixops/pixops.c: Force all weight arrays to sum exactly
1097 to 65535. (Fixes #70971, reported by Federico Mena Quintero)
1099 * Makefile.am (libgdk_pixbuf_1_3_la_DEPENDENCIES): Add
1102 2002-02-08 Federico Mena Quintero <federico@ximian.com>
1104 * pixops/pixops.h: Fix comment; PixopsInterpType -> GdkInterpType.
1106 2002-02-08 Darin Adler <darin@bentspoon.com>
1108 * io-xbm.c: (next_int): Wean this from <ctype.h>.
1110 2002-02-01 Matthias Clasen <matthiasc@poet.de>
1112 * Makefile.am: Build the tga loader as a static library. (#70157)
1114 * io-ico.c: Merge 16- and 32-bit ico support from the stable
1117 * io-gif.c: Recomposite all images if the animation size changes
1118 while loading. (#70055)
1120 * gdk-pixbuf.c (gdk-pixbuf-fill): Make it work for subpixbufs.
1123 Sat Jan 19 20:49:20 2002 Manish Singh <yosh@gimp.org>
1125 * io-jpeg.c, io-png.c: Made sure all the error cases involving
1126 jpeg or png load/saves clean themselves up properly. Marked some
1127 variables needed for cleanup volatile so they aren't clobbered by
1130 Fri Jan 11 18:05:07 2002 Owen Taylor <otaylor@redhat.com>
1132 * pixops/pixops.c: Fix integer overflow for the values
1133 passed to the pixel functions. (#55148, fix from Michael Hore)
1135 Fri Jan 11 17:53:58 2002 Owen Taylor <otaylor@redhat.com>
1137 * pixops/pixops.c (pixops_scale_nearest): Remove meaningless
1140 * pixops/pixops.c (pixops_process): Comment the computation
1141 of run_end_index and fix some edge cases.
1143 * pixops/{scale_line_22_33_mmx.S, composite_line_22_4a4_mmx.S:
1144 composite_line_color_22_4a4_mmx.S}: Handle the case where
1145 dest <= dest_end properly. (#52001, fix from Michael Hore)
1147 Thu Jan 10 16:48:30 2002 Owen Taylor <otaylor@redhat.com>
1149 * pixops/pixops.c: Replace some hardcoded values with the
1150 SUBSAMPLE constant used elsewhere. (#51033)
1152 Wed Jan 9 11:29:44 2002 Owen Taylor <otaylor@redhat.com>
1154 * Makefile.am (s-enum-types-h): Include glib-object.h,
1155 Add G_BEGIN_DECLS/END_DECLS to gdk-pixbuf-enum-types.h. (#68325,
1158 * *.h: G_BEGIN_DECLS cleanups.
1160 Tue Jan 8 10:58:04 2002 Owen Taylor <otaylor@redhat.com>
1162 * gdk-pixbuf-util.c (gdk_pixbuf_saturate_and_pixelate):
1163 - Massive cleanup, make actually legible.
1164 - Fix some clamp-to-range bugs found by Jim Cape (#68231).
1165 - Add a g_return_if_fail() if src and dest alpha don't match.
1166 - Allow for src_rowstride != dest_rowstride.
1168 2002-01-04 Hans Breuer <hans@breuer.org>
1170 * gdk_pixbuf.def : don't export functions prefixed
1173 * makefile.msc : use -FImsvc_recommende_pragmas.h
1175 Thu Jan 3 19:31:58 2002 Owen Taylor <otaylor@redhat.com>
1177 * pixops/pixops.c (scale_line_22_33): Fix and uncomment
1180 * pixops/pixops.c (pixops_composite_nearest): Remove a
1183 * pixops/pixops.c (pixops_composite): Add some docs
1184 about the parameters.
1186 * pixops/README: Add notes about the correct algorithms
1187 for alpha compositing and how to implement them quickly.
1189 2001-12-29 Tor Lillqvist <tml@iki.fi>
1191 * Makefile.am (EXTRA_DIST): Add makefile.msc.
1193 Sat Dec 22 15:31:20 2001 Owen Taylor <otaylor@redhat.com>
1195 * gdk-pixdata.h: Fix trailing "," in enumeration.
1197 2001-12-17 Matthias Clasen <matthiasc@poet.de>
1199 * gdk-pixbuf.c, gdk-pixbuf-io.c, gdk-pixbuf-animation.c,
1200 gdk-pixbuf-data.c, gdk-pixbuf-loader.c, gdk-pixbuf-scale.c,
1201 gdk-pixbuf-util.c, gdk-pixdata.c: Markup fixes.
1203 2001-12-16 Havoc Pennington <hp@pobox.com>
1205 * gdk-pixbuf-scale.c: docs enhancements
1207 2001-12-14 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1209 * io-xpm.c: Use g_ascii_strcasecmp() instead of g_strcasecmp().
1211 2001-12-13 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1213 * gdk-pixbuf-animation.c, gdk-pixbuf-loader.c, gdk-pixpuf.c,
1214 io-gif-animation.c, io-gif.c, io-tiff.c, test-loaders.c: Remove
1215 assorted G_OBJECT casts where unnecessary.
1217 * gdk-pixbuf-loader.c: Call g_object_ref and g_object_unref
1218 instead of gdk_pixbuf_animation_ref and gdk_pixbuf_animation_unref
1221 * gdk-pixbuf-csource.c, io-bmp.c, io-gif-animation.c, io-ico.c,
1222 io-jpeg.c, io-png.c, io-pnm.c, io-ras.c, io-tga.c, io-wbmp.c,
1223 io-xbm.c, io-xpm.c, test-gdk-pixbuf.c: Dito for gdk_pixbuf_ref and
1226 * Makefile.am, pixops/Makefile.am: Compile everything with
1227 -DG_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED
1229 * gdk-pixdata.c: Use g_ascii_strup() instead of g_strup().
1231 * io-xpm.c: Use g_ascii_strcasecmp() instead of g_strcasecmp().
1233 2001-12-12 Matthias Clasen <matthiasc@poet.de>
1235 * gdk-pixbuf-io.c: Markup fixes.
1237 2001-12-12 Matthias Clasen <matthiasc@poet.de>
1239 * Makefile.am (INCLUDES): Define G_LOG_DOMAIN. (#66412)
1241 * gdk-pixbuf-loader.c, gdk-pixbuf-util.c: Markup fixes.
1243 2001-12-11 Michael Natterer <mitch@gimp.org>
1245 * io-png.c: gdk_pixbuf__png_image_save: removed wrong endian
1246 conversion stuff; don't copy RGB pixbufs' lines around before
1249 2001-12-05 Matthias Clasen <matthiasc@poet.de>
1251 * gdk-pixbuf.h (gdk_pixbuf_ref, gdk_pixbuf_unref,
1252 gdk_pixbuf_animation_ref, gdk_pixbuf_animation_unref):
1255 Tue Dec 4 11:45:45 2001 Owen Taylor <otaylor@redhat.com>
1257 * io-xpm.c (pixbuf_create_from_xpm): Fill in color
1258 fields to black for transparent colors since we'll
1259 later initialize pixels from them. (Fixes purify
1260 errors, #66093, HideToshi Tajima)
1262 2001-11-30 Tor Lillqvist <tml@iki.fi>
1264 * gdk_pixbuf.def: Add gdk_pixbuf_get_option.
1266 Fri Nov 30 15:55:34 2001 Owen Taylor <otaylor@redhat.com>
1268 * gdk-pixdata.c (gdk_pixdata_deserialize): Fix
1269 alignment problem in deserialization, (#65785,
1270 reported by Hidetoshi Tajima)
1272 2001-11-28 Manish Singh <yosh@gimp.org>
1274 * gdk-pixbuf/io-bmp.c (gdk_pixbuf__bmp_image_load_increment): Fill
1275 in missing error parameters to DecodeHeader and DecodeColormap.
1277 2001-11-21 Federico Mena Quintero <federico@ximian.com>
1279 Fix Ximian bug #12125; merged from gdk-pixbuf stable.
1281 * gdk-pixbuf/io-bmp.c (gdk_pixbuf__bmp_image_load_increment): Use
1282 a simple state machine instead of a scary if/else chain.
1283 (DecodeHeader): Set the reading state.
1284 (DecodeColormap): Set the reading state.
1285 (decode_bitmasks): New function, decodes the bitmasks for
1286 BI_BITFIELDS coding.
1287 (OneLine32): Handle BI_BITFIELDS coding.
1288 (OneLine16): Likewise.
1290 2001-11-18 Hans Breuer <hans@breuer.org>
1292 * io-xpm.c : use g_strcasecmp(), some poor platforms
1293 don't have strcasecmp()
1295 * makefile.msc : do INCLUDE_png etc. definition here to avoid
1296 my temporary 'gdk-pixbuf-io-include.h' hack
1298 Sun Nov 18 07:54:22 2001 Owen Taylor <otaylor@redhat.com>
1300 * gdk-pixbuf-loader.c: Remove include of gobject/signal.h.
1302 2001-11-03 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1304 * gdk-pixbuf-loader.c, gdk-pixbuf-scale.c: Documentation fixes.
1306 2001-10-29 Tor Lillqvist <tml@iki.fi>
1308 * Makefile.am: Use -no-undefined on Win32. Make
1309 libgdk_pixbuf_1_3_la_OBJECTS depend on
1310 gdk-pixbuf-marshal.c. Install import libraries.
1312 * gdk_pixbuf.def: Update.
1314 * gdk-pixbuf-io.c: (Win32) Use G_WIN32_DLLMAIN_FOR_DLL_NAME, saves
1315 the actual DLL name of libgdk_pixbuf.
1316 (get_libdir): Use it instead of guessing.
1318 * io-xbm.c (gdk_pixbuf__xbm_image_begin_load): Use
1319 g_file_open_tmp() insread of mkstemp().
1321 2001-10-18 Matthias Clasen <matthiasc@poet.de>
1323 * io-xbm.c (gdk_pixbuf__xbm_image_load_real): Don't dereference
1324 context when it may be NULL. (#62344)
1326 2001-10-16 Matthias Clasen <matthiasc@poet.de>
1328 * gdk-pixdata.c, gdk-pixdata.h: Documentation.
1330 * gdk-pixbuf-csource.1: Spelling fixes.
1332 Wed Oct 10 11:52:17 2001 Owen Taylor <otaylor@redhat.com>
1334 * gdk-pixdata.c gdk-pixbuf.h: Get rid of
1335 GDK_PIXBUF_ERROR_HEADER/PIXEL_CORRUPT and use CORRUPT_IMAGE.
1336 Get rid fo GD_PIXBUF_ERROR_UNKNOWN_FORMAT and use the
1337 existing UKNOWN_TYPE error. (#58308)
1339 * gdk-pixbuf.h, gdk-pixdata.c: Rename gdk_pixbuf_new_from_stream()
1340 back to gdk_pixbuf_new_from_inline(). Rework docs to try
1341 and be helpful for the common case. (#58308)
1343 2001-10-05 Sven Neumann <sven@gimp.org>
1345 * gdk-pixbuf/gdk-pixbuf-io.c
1346 * gdk-pixbuf/gdk-pixbuf-private.h
1347 * gdk-pixbuf/gdk-pixbuf.c
1348 * gdk-pixbuf/gdk-pixbuf.h
1349 * gdk-pixbuf/io-jpeg.c
1350 * gdk-pixbuf/io-png.c: changed GDK_PIXBUF_ERROR_BAD_OPTION_VALUE to
1351 GDK_PIXBUF_ERROR_BAD_OPTION to we can use it for bad keys too. Added
1352 new public API gdk_pixbuf_get_option() to retrieve key/value pairs
1353 set by an image loader. Added support for saving and reading PNG tEXt
1354 chunks in PNG images.
1356 Tue Oct 2 11:29:50 2001 Owen Taylor <otaylor@redhat.com>
1358 * gdk-pixdata.c (gdk_pixdata_to_csource): Fix indentation
1359 use a macro to make code a bit more readable.
1361 2001-10-02 Sven Neumann <sven@gimp.org>
1363 * gdk-pixdata.c: g_string_printfa => g_string_append_printf.
1365 Wed Sep 26 18:08:19 2001 Owen Taylor <otaylor@redhat.com>
1367 * Makefile.am (s-enum-types-h): Fix a typo in the include
1368 guards. (#61254, Skip Montaro)
1370 2001-09-21 Matthias Clasen <matthiasc@poet.de>
1372 * io-xpm.c (xpm_extract_color): Rewritten to handle
1373 xpm colormap entries more thoroughly. (#59939)
1375 2001-09-21 Hans Breuer <hans@breuer.org>
1377 * gdk-pixbuf.def : updated externals
1379 * makefile.msc : generate gdk-pixbuf-enum-types.[hc]
1381 Thu Sep 20 17:22:48 2001 Owen Taylor <otaylor@redhat.com>
1383 * io-tiff.c (gdk_pixbuf__tiff_image_load): On OSF, apparently fseek()
1384 works in some on-demand way, so the fseek
1385 gdk_pixbuf_new_from_file() doesn't work here since we are using
1386 the raw file descriptor. So, we call lseek() on the fileno(f)
1387 before using it. (#60840).
1389 2001-09-20 James Henstridge <james@daa.com.au>
1391 * Makefile.am (gdk-pixbuf-enum-types.c): same change as in pango,
1392 so that flags types are registered as flags rather than enums (not
1393 that there are any flags here at the moment).
1395 Wed Sep 19 00:28:24 2001 Owen Taylor <otaylor@redhat.com>
1397 * Makefile.am (gdk_pixbuf_headers): Don't include
1398 gkd-pixbuf-features.h here since is in builddir
1399 and confuses autogen rules.
1401 * Makefile.am: Don't += variables before they have values,
1402 automake-1.5 doesn't like it.
1404 * Makefile.am: Fix srcdir != builddir for gdk-pixbuf-enum-types.c.
1406 * Makefile.am: The whitespace strikes back.
1408 2001-09-17 Matt Wilson <msw@redhat.com>
1410 * Makefile.am (libpixbufloader_xbm_la_LDFLAGS): removed duplicate
1411 LDFLAGS definition, use the -avoid-version one.
1412 (libpixbufloader_tga_la_LDFLAGS): likewise
1414 Mon Sep 17 11:49:02 2001 Owen Taylor <otaylor@redhat.com>
1416 * pixops/*: Mirror GdkInterpType to PixopsInterpType
1417 to avoid including gdk-pixbuf headers.
1419 2001-09-16 James Henstridge <james@daa.com.au>
1421 * .cvsignore: add generated files to ignore list.
1423 * gdk-pixbuf.h: include gdk-pixbuf-enum-types.h
1425 * Makefile.am: add rules to build gdk-pixbuf-enum-types.[ch]
1427 Fri Sep 14 23:22:12 2001 Matthias Clasen <matthiasc@poet.de>
1429 * io-pnm.c (pnm_read_header): Use GDK_PIXBUF_ERROR_CORRUPT_IMAGE,
1430 not GDK_PIXBUF_ERROR_HEADER_CORRUPT. (#58308)
1432 Fri Sep 14 22:53:45 2001 Matthias Clasen <matthiasc@poet.de>
1434 * io-jpeg.c (gdk_pixbuf__jpeg_image_begin_load): Handle
1435 out-of-memory situation better.
1437 * io-pnm.c: Robustness fixes for pnm loader
1439 * io-gif.c: Make gif loader survive TEST_RANDOMLY_MODIFY
1441 * io-xpm.c (parse_color): detect very long color strings
1443 All of the above from Matthias Clasen <matthiasc@poet.de>,
1444 the remaining from Soeren Sandmann <sandmann@daimi.au.dk>.
1446 * test-images.h: add tests:
1447 - four valid ppm's, eight invalid (matthiasc@poet.de)
1448 - one invalid xpm (matthiasc@poet.de)
1449 - one valid tga, one invalid (sandmann@daimi.au.dk)
1450 - one invalid tiff (sandmann@daimi.au.dk
1452 * test-loaders.c: enable tests for ppm, png, gif, tga, tiff, xpm
1454 * io-tiff.c (gdk_pixbuf__tiff_image_stop_load): TIFFClientOpen can
1455 fail - detect it when it happens
1457 * io-tga.c (gdk_pixbuf__tga_load_increment): Fail if there is too
1460 * gdk-pixbuf-io.c: moved wbmb check after ico check to avoid false
1463 Fri Sep 14 00:30:48 2001 Tim Janik <timj@gtk.org>
1465 * Makefile.am: don't used BUILT_SOURCES to build marshal
1466 files, as in conjunction with stamp files, this can
1467 lead to endless rebuilding loops.
1469 Tue Sep 4 00:22:07 2001 Owen Taylor <otaylor@redhat.com>
1471 * Makefile.am: Fix EXTRA_DIST for gdk-pixbuf-csource.1
1473 Tue Sep 4 03:09:52 2001 Tim Janik <timj@gtk.org>
1475 * gdk-pixbuf-csource.1: new file, manual page for
1476 the publically installed gdk-pixbuf-csource utility.
1478 Thu Aug 30 08:30:03 2001 Matthias Clasen <matthiasc@poet.de>
1480 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Propagate
1481 errors from gdk_pixbuf_loader_load_module.
1483 Thu Aug 30 08:27:37 2001 Matthias Clasen <matthiasc@poet.de>
1485 * io-png.c (png_row_callback): Check that row_num is valid.
1487 Tue Aug 28 21:05:26 2001 Matthias Clasen <matthiasc@poet.de>
1489 * io-bmp.c (OneLine): Emit area_updated signal with proper
1490 area information. (#52002)
1492 Tue Aug 28 20:03:43 2001 Matthias Clasen <matthiasc@poet.de>
1494 * test-loaders.c (test_loader): Catch errors at close time.
1495 * test-loaders.c (main): Remove C++ comments.
1497 2001-08-21 Matthias Clasen <matthiasc@poet.de>
1499 * Makefile.am, gdk-pixbuf-io.c, pixbufloader_tga.def,
1500 io-tga.c: Add tga loader, patch by Nicola Girardi. (#56067)
1502 2001-08-20 Matthias Clasen <matthiasc@poet.de>
1504 * test-images.h, test-loaders.c: Add ico and wbmp tests.
1505 * io-jpeg.c (gdk_pixbuf__jpeg_image_save): Fail with a suitable
1506 error if buffer allocation fails.
1507 * io-ico.c: Make .ICO loader more robust.
1508 All of these are due to sandmann@daimi.au.dk (#50187)
1510 2001-08-19 Sven Neumann <sven@gimp.org>
1512 * pixops/pixops.c: applied some simple but effective optimizations
1513 to pixops_composite_nearest() and pixops_composite_color_nearest().
1515 2001-08-07 Sven Neumann <sven@gimp.org>
1517 * gdk-pixbuf.c (gdk_pixbuf_fill): a comment asked to optimize this
1518 function, so that's what I did.
1520 2001-08-06 Kjartan Maraas <kmaraas@gnome.org>
1522 * gdk-pixdata.c: Fix a typo.
1524 2001-07-30 Hans Breuer <hans@breuer.org>
1526 * pixops/makefile.msc : new file
1527 * makefile.msc : use it to complete the build
1529 2001-07-20 Hans Breuer <hans@breuer.org>
1531 * gdk-pixdata.c : don't 'g_tohl (*istream++)', but move
1532 pointer increment out of the macro, because at least one
1533 compiler (msvc 5.0) gets confused otherwise (applies the
1536 * gdk_pixbuf.def : updated exports
1538 * makefile.msc : reflect gdk-pixbuf-csource changes
1540 2001-07-17 Darin Adler <darin@bentspoon.com>
1542 * gdk-pixbuf-csource.c: Add missing <stdlib.h> include.
1543 * io-png.c: (setup_png_transformations): Add ifdef so we compile
1544 without warnings with G_DISABLE_CHECKS on.
1545 * io-pnm.c: (gdk_pixbuf__pnm_image_load_increment): Add a missing
1547 * io-wbmp.c: (getin), (get_mbi): Add a missing const.
1548 * io-xbm.c: (gdk_pixbuf__xbm_image_load_real): Get rid of some
1549 unused locals and add an initial value to quiet the compiler's
1550 unintialized variable warning.
1551 * pixops/pixops.c: Put an ifdef around some dead code.
1553 Thu Jul 5 10:17:15 2001 Owen Taylor <otaylor@redhat.com>
1555 * pixops/Makefile.am (noinst_LTLIBRARIES): Switch
1556 over to the new include flags AC_SUBST(). (Problem
1557 pointed out by Mikael Hermansson.)
1559 2001-06-29 Havoc Pennington <hp@redhat.com>
1561 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): fix for
1564 Thu Jun 28 21:54:19 2001 Owen Taylor <otaylor@redhat.com>
1566 * make-inline-pixbuf.c test-gdk-pixbuf.c test-loaders.c
1567 gdk-pixbuf-csource.c: Fix args to g_type_init ().
1569 2001-06-28 Havoc Pennington <hp@pobox.com>
1571 * gdk-pixdata.c: <string.h>
1573 * gdk-pixbuf-io.c (get_libdir): fix typo in dll name (aren't we
1574 also leaking memory here from g_strdup_printf?)
1576 Tue Jun 26 09:48:02 2001 Tim Janik <timj@gtk.org>
1578 * Makefile.am (noinst_PROGRAMS): get rid of make-inline-pixbuf
1580 * gdk-pixbuf-data.[hc]: provide gdk_pixbuf_new_from_stream()
1581 instead from gdk_pixbuf_new_from_inline().
1583 * gdk-pixdata.[hc]: auxillary GdkPixdata structure, public
1584 installed API for applications that need to serialize/deserialize
1585 on their own (gimp, BEAST).
1587 * gdk-pixbuf/gdk-pixbuf-csource.c: provide publically installed
1588 program that can dump images in CSource format and Pixbuf
1589 stream format. supports RLE encoding, MACRO formatting etc...
1592 Mon Jun 25 00:28:11 2001 Owen Taylor <otaylor@redhat.com>
1594 * Makefile.am: Actually update timestamps, so rules don't
1597 2001-06-11 Havoc Pennington <hp@redhat.com>
1599 * Makefile.am (stamp-gdk-pixbuf-marshal.c): glib_genmarshal
1600 already includes top_builddir
1602 2001-06-08 Havoc Pennington <hp@redhat.com>
1604 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_load_module): remove
1605 bogus g_return_if_fail
1607 * io-gif.c (gif_get_lzw): if delay time is 0 or smaller than
1608 likely timeout resolution, set it to an arbitrarily-chosen short
1610 Fixes bug #55953 from warmenhoven@yahoo.com
1612 2001-06-07 Havoc Pennington <hp@redhat.com>
1614 * Makefile.am: use Owen's new way of doing stampfiles/generated
1617 2001-06-07 Havoc Pennington <hp@redhat.com>
1619 * Makefile.am (gdk-pixbuf-marshal.c): fix up the glib-genmarshal path
1621 2001-06-05 Havoc Pennington <hp@redhat.com>
1623 * test-loaders.c (main): use putenv not setenv, reported by
1626 2001-05-08 Havoc Pennington <hp@redhat.com>
1628 * gdk-pixbuf-util.c (gdk_pixbuf_add_alpha): docs fixup,
1629 and fix behavior to still subst color if the original image
1632 2001-06-04 Havoc Pennington <hp@redhat.com>
1634 * io-pnm.c (pnm_skip_whitespace): patch from Szekeres Istvan,
1637 2001-06-01 Havoc Pennington <hp@redhat.com>
1639 Apply patch from sandmann@daimi.au.dk, with some tweaks.
1640 Makes things a bit more robust, and adds test-loaders.c
1641 which is good for finding further robustness bugs to fix.
1643 * io-tiff.c: Try to work around libtiff suckiness a bit;
1644 put a giant thread lock on the whole loader,
1645 paranoically check both whether error handlers were called and
1646 also whether functions return false. Handle case where width or
1647 height is 0. Various cleanups.
1649 * io-png.c (gdk_pixbuf__png_image_stop_load): only unref pixbuf
1651 (png_error_callback): apparently libpng expects you to longjmp out
1654 * io-gif.c (struct _GifContext): remove unused "pixbuf" field
1655 (lzw_read_byte): change "Mail jrb if this fails" g_warning
1657 (gif_get_lzw): check for out-of-memory
1658 (gif_prepare_lzw): catch/report an error
1659 (new_context): use try_malloc, since GifContext is nearly 70K
1660 (gdk_pixbuf__gif_image_load_increment): set context->buf to NULL
1661 so we don't crash later.
1663 * Makefile.am: Add test-loaders
1665 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): handle context ==
1668 2001-05-29 Darin Adler <darin@eazel.com>
1670 * gdk-pixbuf.h: Fix prototype to use "(void)" instead of "()".
1672 Mon May 28 14:21:35 2001 Jonathan Blandford <jrb@redhat.com>
1674 * io-bmp.c: Patch from Helmethead <hoshem@mel.comcen.com.au> to
1675 fix up bmp decoder to:
1676 - adds 16 bpp bmp support (bug #53884)
1677 - adds OS/2 1.x format bmp support (bug #54964)
1678 - adds 4 bpp RLE compressed bmp support
1679 - adds 1 bpp colormap support
1680 - fixes negative height (top down) bmp support
1682 2001-05-25 Hans Breuer <hans@breuer.org>
1684 * gdk_pixbuf.def : reflect Havoc's recent api change
1686 Sun May 20 12:53:49 2001 Owen Taylor <otaylor@redhat.com>
1688 * Makefile.am (libgdk_pixbuf_1_3_la_LDFLAGS): Remove an
1689 excess $(GLIB_LIBS).
1691 Sun May 13 11:59:11 2001 Owen Taylor <otaylor@redhat.com>
1693 * Makefile.am: Make modules depend on libgdk_pixbuf.la.
1695 2001-05-04 Havoc Pennington <hp@redhat.com>
1697 * pixops/pixops.c (pixops_process): merge fix from stable: Patch
1698 from hoshem@mel.comcen.com.au to fix nonzero X offsets. Fixes
1701 * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest): merge
1702 from stable: Patch from OKADA Mitsuru <m-okada@fjb.co.jp> to fix
1703 confusion of using "src" instead of "p".
1704 (pixops_composite_color_nearest): Use a more accurate (and
1705 correct, to begin with) compositing method. This cures checks
1706 showing through on images with no alpha.
1708 * gdk-pixbuf.c (gdk_pixbuf_fill): fix bug that left some trailing
1711 * gdk-pixbuf-io.h: fix UpdatedNotifyFunc to use signed ints
1713 * gdk-pixbuf-loader.h (struct _GdkPixbufLoaderClass): Change
1714 area_updated signal to use signed ints. Removed animation-related
1717 * io-gif.c, io-gif-animation.h, io-gif-animation.c: Massive
1720 * gdk-pixbuf-animation.c: Add GdkPixbufAnimationIter to abstract
1721 all the pesky details. Remove old frame-based API. Make
1722 GdkPixbufAnimation an abstract base class, derived by the loaders.
1724 Sun Apr 22 15:51:32 2001 Owen Taylor <otaylor@redhat.com>
1726 * Makefile.am (LDADDS): Add $(MATH_LIB).
1728 2001-04-18 Havoc Pennington <hp@redhat.com>
1730 * gdk-pixbuf.c (gdk_pixbuf_fill): Function to fill pixbuf with a
1733 Wed Apr 4 01:41:02 2001 Tim Janik <timj@gtk.org>
1735 * pixops/Makefile.am (noinst_LTLIBRARIES): include $top_srcdir
1736 so we don't try to get <gtk/gtkobject.h> from standard search
1739 * Makefile.am (gdk-pixbuf-marshal.c): use deps from srcdir.
1740 add gdk-pixbuf-marshal.list to EXTRA_DIST.
1741 take gdk-pixbuf-marshal.h out of _la sources.
1743 2001-03-19 Tor Lillqvist <tml@iki.fi>
1745 * makefile.mingw.in: Handle gdk-pixbuf-marshal.c.
1747 * gdk_pixbuf.def: Update.
1749 * pixbufloader_*.def: Just export the fill_vtable functions now.
1751 2001-03-18 Mike Kestner <mkestner@ameritech.net>
1753 * make-inline-pixbuf.c (main): Added logic to remove output when
1756 2001-03-14 Havoc Pennington <hp@redhat.com>
1758 * Makefile.am (gdk-pixbuf-marshal.c): Use different temporary file
1759 from gdk-pixbuf-marshal.h, fixes parallel makes.
1761 Thu Mar 1 04:01:57 2001 Tim Janik <timj@gtk.org>
1763 * test-gdk-pixbuf.c: fixed includes.
1765 2001-02-18 Havoc Pennington <hp@pobox.com>
1767 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): prepend underscore
1768 (gdk_pixbuf_get_named_module): prepend underscore
1769 (gdk_pixbuf_get_module): prepend underscore
1771 2001-02-19 Havoc Pennington <hp@redhat.com>
1773 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): const fix
1775 2001-02-17 Havoc Pennington <hp@pobox.com>
1777 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_new_with_type): docs
1779 2001-02-07 Alexander Larsson <alexl@redhat.com>
1781 * io-xpm.c (free_buffer):
1782 Use g_free, since the buffer is allocated with g_try_alloc().
1784 2001-02-06 Christophe Merlet <redfox@eikonex.org>
1786 * gdk-pixbuf-data.c: Fixes a minor typo.
1788 Sun Feb 4 07:59:57 2001 Tim Janik <timj@gtk.org>
1790 * gdk-pixbuf.h: DOH! don't include glib/gobject.h but glib-object.h,
1791 we finally need the gobject->gruntime rename.
1793 * *.c: scratched calls to g_type_init(), there's simply no point in
1794 doing that, use gtk_init().
1796 2001-02-01 Havoc Pennington <hp@pobox.com>
1798 * gdk-pixbuf-loader.c, gdk-pixbuf-loader.h: rename "private" field
1799 in struct to "priv" for C++
1801 2001-01-31 Havoc Pennington <hp@pobox.com>
1803 * gdk-pixbuf.c: include glib-object.h instead of gvaluetypes.h
1805 2001-01-26 Havoc Pennington <hp@redhat.com>
1807 * gdk-pixbuf-io.c (mname): fix included modules case.
1809 2001-01-22 Havoc Pennington <hp@redhat.com>
1811 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): check errors
1812 from gdk_pixbuf_load_module
1814 2001-01-22 Havoc Pennington <hp@redhat.com>
1816 * Makefile.am: Add built marshaller files to support
1817 GdkPixbufLoader signals
1819 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): have
1820 GDK_PIXBUF_MODULEDIR unconditionally replace the compiled-in
1821 module location, rather than acting as a fallback, because we are
1822 using GDK_PIXBUF_MODULEDIR to use gdk-pixbuf before installing it.
1824 * gdk-pixbuf.h: include gdk-pixbuf-loader.h
1826 * gdk-pixbuf-loader.h, gdk-pixbuf-loader.c: Move back over here
1827 from gtk, and add error to close(), because stop_load may do
1828 parsing of the image.
1830 * pixops/have_mmx.S (_pixops_have_mmx): add newline at end of file
1832 * io-*.c: make individual operations static, and add fill_vtable
1833 functions which are exported. Fix the collection of type warnings
1834 that surfaced, including a number of functions that didn't
1835 properly take a GError and some that weren't
1836 const-correct. Involved adding error handling for a few loaders.
1838 * gdk-pixbuf-io.h: Add error reporting to stop_load function
1840 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): change to just look up
1841 a function that fills in the GdkPixbufModule vtable, instead of
1842 looking up all the image functions individually; this means we
1843 can get type safety within modules for the loader functions.
1844 Also it means you don't have to keep the statically compiled and
1845 GModule versions in sync.
1847 * test-gdk-pixbuf.c (main): remove gdk_pixbuf_init()
1849 * make-inline-pixbuf.c (main): remove call to gdk_pixbuf_init()
1851 * gdk-pixbuf.h: nuke gdk_pixbuf_init()
1853 * gdk-pixbuf-animation.c (gdk_pixbuf_frame_get_type): g_type_init
1856 * gdk-pixbuf.c (gdk_pixbuf_get_type): g_type_init () here
1858 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_get_type):
1861 2001-01-20 John Harper <jsh@eazel.com>
1863 * io-xbm.c: new pixbuf loader, for X bitmap files. Basically a
1864 collision between Xlib's RdBitF.c and io-tiff.c
1866 * gdk-pixbuf-io.c, Makefile.am, pixbufloader_xbm.def: added
1869 [ merged from stable gdk-pixbuf module. Untested, but it
1870 compiles, and works fine in the stable module ]
1872 2001-01-18 Tor Lillqvist <tml@iki.fi>
1874 * gdk-pixbuf-io.c (get_libdir): (Win32) Use the new
1875 g_win32_get_package_installation_subdirectory() function. No need
1876 to include windows.h.
1877 (gtk_win32_get_installation_directory): Remove this then.
1879 2001-01-01 Havoc Pennington <hp@redhat.com>
1881 * Makefile.am (libgdk_pixbuf_1_3_la_LDFLAGS): add
1882 @LIBTOOL_EXPORT_OPTIONS@
1884 2000-12-30 Tor Lillqvist <tml@iki.fi>
1886 * gdk_pixbuf.def: Update.
1888 2000-12-16 Havoc Pennington <hp@pobox.com>
1890 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file): ref
1891 the pixbuf in the frame, so we can use gdk_pixbuf_frame_free
1892 (gdk_pixbuf_frame_copy): new function
1893 (gdk_pixbuf_frame_free): new function
1894 (gdk_pixbuf_frame_get_type): new function
1895 (GDK_TYPE_PIXBUF_FRAME): macro to get type for GdkPixbufFrame
1897 Tue Nov 14 11:51:26 2000 Owen Taylor <otaylor@redhat.com>
1899 * Makefile.am: Add -avoid-version for all modules.
1901 2000-11-13 Havoc Pennington <hp@redhat.com>
1903 * io-png.c (png_simple_error_callback): fix error message to not
1904 say "save" since it's used for loading
1906 2000-11-11 Hans Breuer <Hans@Breuer.Org>
1908 * gdk-pixbuf-io.c : Fix all function prototype macros for self
1909 contained image handlers (!USE_G_MODULE). Files to save should
1910 be opened in binary mode, fopen(s, "wb").
1912 * io-xpm.c : added HAVE_UNISTD_H condition
1914 2000-11-11 Tor Lillqvist <tml@iki.fi>
1916 * gdk_pixbuf.def: Add gdk_pixbuf_new_subpixbuf.
1918 * io-tiff.c (gdk_pixbuf__tiff_image_begin_load): Use
1919 g_file_open_tmp() (just added to GLib) instead of mkstemp() (or
1920 mktemp() and open()).
1922 * io-xpm.c (gdk_pixbuf__xpm_image_begin_load): Ditto.
1924 2000-11-01 Havoc Pennington <hp@pobox.com>
1926 * gdk-pixbuf.c (gdk_pixbuf_new_subpixbuf): New function to create
1927 a pixbuf pointing to a subregion of another pixbuf.
1929 2000-10-16 Tor Lillqvist <tml@iki.fi>
1931 * gdk-pixbuf-io.c: Define also m_save (for the non-gmodule case).
1933 2000-10-16 Havoc Pennington <hp@redhat.com>
1935 * gdk-pixbuf-io.c (gdk_pixbuf_get_module)
1936 (gdk_pixbuf_get_named_module) (gdk_pixbuf_load_module):
1937 add error reporting here also
1939 * make-inline-pixbuf.c (main): use GError
1941 * io-xpm.c: include unistd.h
1943 * gdk-pixbuf-util.c: include string.h
1945 * io-*.c: add error reporting
1947 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file): add
1950 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file): Add error reporting
1952 * gdk-pixbuf-io.h: Add GError** to load_increment and load
1955 * gdk-pixbuf-io.c (gdk_pixbuf_save) (gdk_pixbuf_savev): return
1956 a G_FILE_ERROR if we fail to write or close the file.
1958 * gdk-pixbuf.h: remove GDK_PIXBUF_ERROR_IO, instead we'll use
1959 G_FILE_ERROR_*. Rename enum to GdkPixbufError, properly following
1960 the GError naming rules. Add GError** to load functions.
1962 2000-10-06 Havoc Pennington <hp@redhat.com>
1964 * gdk-pixbuf.h: add GdkPixbufAlphaMode
1966 2000-10-06 Havoc Pennington <hp@redhat.com>
1968 This entry is a summary of the merged-in changes from 1.0.
1969 Relevant original ChangeLog entries are spliced in after
1970 this entry; the files they refer to are from the 1.0
1973 * pixops/pixops.c (pixops_composite_nearest): sync a small fix
1976 * io-xpm.c (xpm_seek_string): add fscanf error check from 1.0
1977 Add progressive loader from 1.0
1979 * io-tiff.c (gdk_pixbuf__tiff_image_begin_load): mem leak fixes
1982 * io-pnm.c: new version from 1.0 tree
1984 * io-jpeg.c (gdk_pixbuf__jpeg_image_load): sync from 1.0, use
1987 * io-gif.c (lzw_read_byte): sync from 1.0, change a g_error to
1989 (gif_get_next_step): return 0 here, sync from 1.0
1991 * gdk-pixbuf-util.c: sync email address change for Cody
1994 2000-09-11 Jeffrey Stedfast <fejj@helixcode.com>
1996 * gdk-pixbuf/io-pnm.c: Pretty much totally rewrote again because
1997 last nights code was still "broken". Should now properly handle
1998 all error conditions gracefully.
2000 2000-09-10 Jeffrey Stedfast <fejj@helixcode.com>
2002 * gdk-pixbuf/io-pnm.c: Rewrote.
2004 2000-09-09 Federico Mena Quintero <federico@helixcode.com>
2006 * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest): Compute
2007 the correct dest offset.
2009 2000-08-25 Federico Mena Quintero <federico@helixcode.com>
2011 * gdk-pixbuf/io-xpm.c: #include <unistd.h>
2013 2000-08-05 Larry Ewing <lewing@helixcode.com>
2015 * gdk-pixbuf/io-tiff.c: stop leaking context->tempname.
2017 * gdk-pixbuf/io-xpm.c: same as above.
2019 2000-07-26 Michael Meeks <michael@helixcode.com>
2021 * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_load): make
2024 2000-07-21 Larry Ewing <lewing@helixcode.com>
2026 * gdk-pixbuf/io-xpm.c: add a fake progressive loader so that
2027 xpm at least supports the progressive interface like the one in
2028 io-tiff.c. This should be reimplemented as an actual progressive
2031 2000-07-19 Jonathan Blandford <jrb@redhat.com>
2033 * demo/pixbuf-demo.c (update_timeout): changed scaling level to
2034 make it look better.
2035 * gdk-pixbuf/testpixbuf.c (update_timeout): Patch from michael
2036 meeks to handle errors better.
2038 2000-10-07 Tor Lillqvist <tml@iki.fi>
2041 * pixbufloader_jpeg.def
2042 * pixbufloader_png.def: Add new entry points.
2044 * makefile.mingw.in: Use libintl.
2046 2000-10-06 Havoc Pennington <hp@redhat.com>
2048 * gdk-pixbuf-io.c (gdk_pixbuf_save): s/format/type/g to be
2049 consistent with gdk_pixbuf_loader_new_with_type().
2050 Return runtime error if a module is missing.
2052 * gdk-pixbuf.h: add GDK_PIXBUF_ERROR_UNKNOWN_TYPE
2054 2000-10-05 Havoc Pennington <hp@redhat.com>
2056 Pixbuf saving, patch from David Welton.
2058 * Makefile.am (GDK_PIXBUF_LIBS): add INTLLIBS
2059 (libgdk_pixbuf_1_3_la_SOURCES): add gdk-pixbuf-i18n.h
2061 * gdk-pixbuf-i18n.h: Add _() to gdk-pixbuf
2063 * io-png.c (gdk_pixbuf__png_image_save): PNG save routine.
2065 * io-jpeg.c (gdk_pixbuf__jpeg_image_save): JPEG save routine.
2067 * gdk-pixbuf-io.c (gdk_pixbuf_save):
2068 (gdk_pixbuf_savev): Implement pixbuf saving routines
2070 * gdk-pixbuf.c (gdk_pixbuf_error_quark): pixbuf error quark
2073 * gdk-pixbuf.h: Add public save routines; add pixbuf error
2076 * gdk-pixbuf-io.h: Add save function to GdkPixbufModule
2078 2000-10-05 Dan Winship <danw@helixcode.com>
2080 * io-png.c, io-tiff.c, io-xpm.c: Fix comments to not claim that
2081 all three of these files are the JPEG image loader. (From
2084 2000-10-03 Tor Lillqvist <tml@iki.fi>
2086 * makefile.mingw.in: Add rule for make-inline-pixbuf. Use
2087 gdk-pixbuf's version number in the rule for makefile.mingw itself.
2089 * gdk_pixbuf.def: Add new entry points.
2091 2000-09-26 Havoc Pennington <hp@redhat.com>
2093 * gdk-pixbuf-util.c (gdk_pixbuf_saturate_and_pixelate): Add this
2094 function here, instead of putting it in a private GTK+ file.
2096 * gdk-pixbuf-private.h (GdkPixbufInlineFormat): include an
2097 enum here for the known formats of inlined pixbufs.
2098 Also, #define our file magic here.
2100 2000-06-23 Havoc Pennington <hp@redhat.com>
2102 * make-inline-pixbuf.c: Small program that creates C variable
2103 declarations of inline pixbuf data. This can be read
2104 by gdk_pixbuf_new_from_inline.
2106 * gdk-pixbuf.h (gdk_pixbuf_new_from_inline): New function to read
2107 inline pixbuf data and create a pixbuf from it.
2109 * gdk-pixbuf-data.c (gdk_pixbuf_new_from_inline): implement here
2111 2000-09-07 Tor Lillqvist <tml@iki.fi>
2113 * makefile.mingw.in: Use own version number for gdk-pixbuf DLLs,
2116 2000-08-12 Tor Lillqvist <tml@iki.fi>
2118 * gdk_pixbuf.def: Add missing entry point.
2120 2000-08-10 Havoc Pennington <hp@redhat.com>
2122 * Makefile.am (EXTRA_DIST): The *.def files had the wrong names
2123 (s/pixbuf_/pixbufloader_)
2125 2000-08-02 Tor Lillqvist <tml@iki.fi>
2131 * io-wbmp.c: Conditionalise inclusion of <unistd.h>.
2133 * makefile.mingw.in: List loaders alphabetically. Add the wbmp
2134 one. Fix names of DLLs to have '-' instead of '_'.
2136 2000-07-31 Elliot Lee <sopwith@redhat.com>
2137 * io-wbmp.c: Some bug fixes - now tested to work.
2139 2000-07-27 Elliot Lee <sopwith@redhat.com>
2141 * gdk-pixbuf-io.h, gdk-pixbuf-io.c: Add
2142 gdk_pixbuf_get_named_module() function to facilitate above change
2143 * io-wbmp.c, pixbufloader_wbmp.defs, gdk-pixbuf-io.c, Makefile:
2144 Implement loader for WBMP format.
2145 * io-bmp.c: Don't malloc a temporary buffer - use stack instead.
2147 2000-07-23 Tor Lillqvist <tml@iki.fi>
2152 * pixops/makefile.mingw.in
2153 * pixbuf_*.def: New files.
2156 * pixops/Makefile.am: Add them. Add rule to generate makefile.mingw.
2158 * gdk-pixbuf-io.c (gtk_win32_get_installation_directory):
2159 New function, to get the GTK+ installation directory from
2160 the Windows Registry, where the installation program
2161 for whatever software includes GTK+ has stored it.
2163 Used to avoid having hardcoding the directory where to look for
2164 loaders. This function is needed by gtk, too, so it should
2165 really be just in one place. Maybe a small static library
2166 one level up from here?
2168 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file)
2169 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file):
2170 Open file in binary mode. This *is* standard C. (No-op on Unix,
2173 * io-jpeg.c: If we don't HAVE_SIGSETJMP, use normal setjmp().
2175 * io-tiff.c: Use g_get_tmp_dir(). If we don't HAVE_MKSTEMP, use
2176 mktemp() and open().
2177 (gdk_pixbuf__tiff_image_stop_load): g_free() also the tempname.
2179 * pixops/*.S: The Gas from mingw32 doesn't like the .type
2180 pseudo-op. Conditionalise on __MINGW32__, but probably
2181 should conditionalise on Gas version instead? Or could we
2182 do without .type on all systems?
2184 * pixops/timescale.c: Use g_get_current_time()
2185 instead of gettimeofday().
2187 Sat Jul 22 10:57:22 2000 Owen Taylor <otaylor@redhat.com>
2189 * Makefile.am (test_gdk_pixbuf_LDADD): Remove -lgmodule
2191 Tue Jul 11 11:26:42 2000 Owen Taylor <otaylor@redhat.com>
2193 * gdk-pixbuf.c: Add <string.h> include.
2195 Tue Jul 11 06:20:14 2000 Tim Janik <timj@gtk.org>
2197 * io-gif.c (gdk_pixbuf__gif_image_load_animation):
2198 * gdk-pixbuf-data.c (gdk_pixbuf_new_from_data):
2199 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file):
2200 use g_object_new() instead of g_type_create_instance() which
2201 is a private function for fundamental type implementations.
2203 Thu Jul 6 11:49:47 2000 Owen Taylor <otaylor@redhat.com>
2205 * Makefile.am (libgdk_pixbuf_la_LDFLAGS): Use GTK+ version
2206 soname scheme for gdk-pixbuf.
2208 2000-06-21 Havoc Pennington <hp@pobox.com>
2210 * gdk-pixbuf.c: Convert GdkPixbuf to GObject, leaving it opaque
2211 (i.e. derivation is not allowed, and there are no virtual methods
2213 (gdk_pixbuf_preinit): Call g_type_init() here.
2214 (gdk_pixbuf_init): Add a user-friendly init function, for users
2215 of standalone gdk-pixbuf
2217 * gdk-pixbuf-animation.c: Convert to GObject, in the same
2218 way GdkPixbufAnimation was done.
2220 * gdk-pixbuf.h: Remove gdk_pixbuf_set_unref_handler() and
2221 gdk_pixbuf_finalize() from API, since these are broken and don't
2222 make sense with new GObject stuff.
2224 Wed Jun 21 16:02:48 2000 Owen Taylor <otaylor@redhat.com>
2226 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): Add feature to
2227 support a GDK_PIXBUF_MODULEDIR env variable as a secondary
2230 2000-06-10 Federico Mena Quintero <federico@helixcode.com>
2232 * demo/pixbuf-demo.c: It was cold and rainy this Saturday morning,
2233 so I needed something to warm my thighs. Running plain infinite
2234 loops on your laptop to make it hot is not very much fun. A demo
2235 of the gdk-pixbuf scaling functions is way better, and looks
2238 * configure.in (AC_OUTPUT): Added the demo Makefile.
2240 * Makefile.am (SUBDIRS): Added the demo directory.
2242 2000-06-09 Larry Ewing <lewing@helixcode.com>
2244 * gdk-pixbuf/io-png.c (gdk_pixbuf__png_image_load_increment):
2245 setjmp for the png error handler. It seems setting the error
2246 handling functions does not avoid the jump, and so not calling
2247 setjmp was causing the incremental loader to jump into lala land.
2248 (gdk_pixbuf__png_image_begin_load): setjmp for error handling, I'm
2249 not sure this one is actually required but the docs say it must be
2250 set for every call to a png_* function.
2251 Also changed the comment to reflect the fact that setting the
2252 error handlers does _not_ avoid the longjmp.
2254 2000-06-06 Larry Ewing <lewing@helixcode.com>
2256 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
2257 take frame offest into account when trying to calculate the
2258 animation bbox. Also set the width to the width not the height.
2259 (gdk_pixbuf_loader_animation_done): cycle over the frames to
2260 calculate bbox because now we finally have all the offset
2261 information for each frame.
2263 2000-06-05 Mathieu Lacage <mathieu@gnome.org>
2265 * configure.in: add some gtk parameters to the
2266 GDK_PIXBUF_LIBÃ�²S and GDK_PIXBUG_INCLUDEDIR vars. One more
2267 fight in my crusade for strange prefix compile...
2269 2000-05-30 Not Zed <NotZed@HelixCode.com>
2271 * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_begin_load):
2272 Initialise the error handler exit routine to our own. Note this
2273 means that every function that accesses the jpeg lib on this
2274 object MUST do a setjmp.
2275 (gdk_pixbuf__jpeg_image_stop_load): setjmp before accessing jpeg
2276 lib for handling fatal error.
2277 (gdk_pixbuf__jpeg_image_load_increment): And here too. So now
2278 your applications dont quit if there's a jpeg error!
2280 2000-05-30 Federico Mena Quintero <federico@helixcode.com>
2282 * gdk-pixbuf.spec.in: Include all the loader libraries. Patch
2283 from Frank de Lange <frank@unternet.org>.
2285 2000-05-09 Darin Adler <darin@eazel.com>
2287 * gdk-pixbuf/test-gdk-pixbuf.c:
2288 Fixed includes to get rid of accidental GNOME dependency.
2290 2000-05-26 Cody Russell <car0969@gamma2.uta.edu>
2291 * Makefile.am: Added gdk-pixbuf.spec to EXTRA_DIST
2293 2000-05-22 Federico Mena Quintero <federico@helixcode.com>
2295 * configure.in: Bumped version number to 0.8.0.
2297 * doc/Makefile.am (content_files): The toplevel gdk-pixbuf.sgml
2298 file was not being distributed.
2300 * gdk-pixbuf/pixops/Makefile.am (EXTRA_DIST): Added DETAILS.
2302 2000-05-09 Darin Adler <darin@eazel.com>
2304 * gdk-pixbuf/gdk-pixbuf-drawable.c: (rgb565lsb), (rgb565msb),
2305 (rgb565alsb), (rgb565amsb), (rgb555lsb), (rgb555msb), (rgb555alsb),
2306 (rgb555amsb), (convert_real_slow): Change all conversion from 16-bit
2307 formats to 32-bit formats to re-use the high bits of the color values
2308 so that white maps to full white.
2310 Fri May 5 12:16:32 2000 Owen Taylor <otaylor@redhat.com>
2312 * gdk-pixbuf/pixops/DETAILS: Add beginnings of file with
2313 detailed information about the structure and algorithms
2314 of pixops so people can fix it instead of breaking it.
2316 2000-05-04 Darin Adler <darin@eazel.com>
2318 * gdk-pixbuf/pixops/pixops.c: (pixops_composite_nearest),
2319 (composite_pixel), (composite_line):
2320 * gdk-pixbuf/test-gdk-pixbuf.c: (simple_composite_test_one_type):
2321 Now that Owen explained the algorithm, I think I implemented it
2322 right for the cases where the destination pixbuf is not opaque.
2323 The test does seem to confirm it.
2325 2000-05-04 Darin Adler <darin@eazel.com>
2327 * gdk-pixbuf/.cvsignore:
2328 * gdk-pixbuf/Makefile.am:
2329 * gdk-pixbuf/test-gdk-pixbuf.c (store_pixel), (fill_with_pixel),
2330 (load_pixel), (simple_composite_test_one),
2331 (simple_composite_test_one_type), (simple_composite_test), (main):
2332 Added some tests of composite to highlight problems in the old
2333 implementation. These tests run without any user interaction.
2334 Just do "make check".
2336 * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest),
2337 (composite_pixel), (composite_line): Fix composite to do a textbook
2338 "A over B" composite. This was clearly the intent, and it was easy
2339 to fix the code to do it. (Note to those that read my earlier tries
2340 at a patch; this version fixes typos that were present in all
2341 my patch attempts. I checked the final version by adding more tests.)
2343 2000-04-22 05:27:43 2000 Owen Taylor <otaylor@redhat.com>
2345 * gdk-pixbuf/pixops/pixops.c (pixops_scale_nearest): Properly
2346 offset y coordinate accordining to render_y0.
2348 * gdk-pixbuf/gdk-pixbuf-scale.c: Properly handle nonzero
2351 2000-04-22 James Henstridge <james@daa.com.au>
2353 * gdk-pixbuf.spec.in (%files): moved %{prefix}/bin/* from the main
2354 package to the devel package. The only file installed in bin is
2355 gdk-pixbuf-config, which belongs in -devel. This should allow having
2356 multiple versions of the main gdk-pixbuf package installed.
2358 2000-04-17 Karl Eichwalder <ke@suse.de>
2360 * gdk-pixbuf/Makefile.am (INCLUDES): Add $(GNOME_CFLAGS).
2361 Reported by Jens Finke.
2363 2000-04-14 Tomasz KÃ�³opczko <kloczek@pld.org.pl>
2365 * gdk-pixbuf/pixops/makefile.am: $(LIBART_CFLAGS) replaced by
2366 $(GTK_CFLAGS) - now gdk-pixbuf compiles correctly.
2368 2000-04-13 James Henstridge <james@daa.com.au>
2370 * configure.in: when performing the configure check to see if
2371 gmodule works, set CFLAGS to GLIB_CFLAGS and LIBS to GLIB_LIBS,
2372 rather than the other way round. Also, call AC_MSG_RESULT in the
2373 even that dynamic modules were not supported.
2375 2000-04-12 Federico Mena Quintero <federico@helixcode.com>
2377 This comes from an excellent idea by Tim Janik (timj@gtk.org) to
2378 hook to the last unref operation.
2380 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_set_last_unref_handler): New
2381 function to set the last unref handler for a pixbuf.
2382 (gdk_pixbuf_finalize): New function to actually finalize a pixbuf.
2383 It calls the pixbuf's destroy notification function and frees the
2384 GdkPixbuf structure itself.
2385 (gdk_pixbuf_unref): Use the last unref function of the pixbuf if
2388 * gdk-pixbuf/gdk-pixbuf-private.h (struct _GdkPixbuf): New fields
2389 for the last unref handler and its user data.
2391 * gdk-pixbuf/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Use
2392 g_new0() to allocate the pixbuf.
2394 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
2395 Fixed the call to gtk_signal_new() for the "frame_done" signal; it
2396 was not specifying the `frame' argument.
2398 * gdk-pixbuf/gdk-pixbuf-animation.c
2399 (gdk_pixbuf_animation_get_width): Fixed docstring.
2400 (gdk_pixbuf_animation_get_height): Likewise.
2401 (gdk_pixbuf_animation_get_num_frames): Likewise.
2402 (gdk_pixbuf_animation_get_frames): Likewise.
2404 * doc/gdk-pixbuf-sections.txt: Updated with the new functions and
2407 * doc/tmpl/gdk-pixbuf.sgml: Added the description for GdkColorspace.
2409 * doc/tmpl/scaling.sgml: Added the description for GdkInterpType.
2411 * doc/tmpl/refcounting.sgml: Updated with the information about
2412 the last unref handler.
2414 * doc/tmpl/*.sgml: Markup tweaks.
2416 * gdk-pixbuf/Makefile.am (libgnomecanvaspixbuf_la_LDFLAGS): Sigh,
2417 update the libtool version number for libgnomecanvaspixbuf as
2419 (libpixbufloader_*_la_LDFLAGS): The loaders need to be versioned
2420 as well, or the old ones won't work with the new stuff. Also,
2421 renamed the modules as follows.
2423 * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_load_module): Now the
2424 modules are called "libpixbufloader-<format>.so" instead of
2425 "libpixbuf-<format>.so". They needed renaming so that the new
2426 loaders won't overwrite the old ones; even with the versioning
2427 stuff, the new .so symlink to the .so.1.0.0 would overwrite the
2430 2000-04-12 Paolo Molaro <lupus@debian.org>
2432 * .cvsignore, src/.cvsignore: shut up cvs.
2434 2000-04-11 Federico Mena Quintero <federico@helixcode.com>
2436 Most of this patch is based on a patch by Havoc Pennington
2437 (hp@redhat.com) to make GdkPixbuf's structures opaque and to
2438 remove the libart dependency.
2440 * gdk-pixbuf/gdk-pixbuf.h: Removed the public structures.
2441 (GdkColorspace): New enum that for now only contains
2443 (GdkPixbufDestroyNotify): New type for the pixbuf's pixels destroy
2444 notification function.
2445 (GdkInterpType): New num with interpolation types.
2447 * *.[ch]: Replace the libart stuff with our own stuff.
2449 * pixops/*.[ch]: Likewise.
2451 * gdk-pixbuf/gdk-pixbuf-private.h: New file with the private
2452 declarations of the GdkPixbuf structures.
2454 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_new_from_art_pixbuf):
2456 (gdk_pixbuf_get_format): Constify.
2457 (gdk_pixbuf_get_n_channels): Constify.
2458 (gdk_pixbuf_get_has_alpha): Constify.
2459 (gdk_pixbuf_get_bits_per_sample): Constify.
2460 (gdk_pixbuf_get_pixels): Constify.
2461 (gdk_pixbuf_get_width): Constify.
2462 (gdk_pixbuf_get_height): Constify.
2463 (gdk_pixbuf_get_rowstride): Constify.
2465 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_copy): New function to copy
2468 * gdk-pixbuf/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Added a
2469 bits_per_sample argument; currently only 8 bits per sample are
2472 * gdk-pixbuf/gdk-pixbuf-animation.c (gdk_pixbuf_frame_get_pixbuf):
2474 (gdk_pixbuf_frame_get_x_offset): New accessor.
2475 (gdk_pixbuf_frame_get_y_offset): New accessor.
2476 (gdk_pixbuf_frame_get_delay_time): New accessor.
2477 (gdk_pixbuf_frame_get_action): New accessor.
2479 * gdk-pixbuf/gdk-pixbuf-render.c
2480 (gdk_pixbuf_render_pixmap_and_mask): Instead of returning a solid
2481 mask rectangle for pixbufs without an alpha channel, set the
2482 *mask_return to NULL.
2484 * gdk-pixbuf/gdk-pixbuf-util.c (gdk_pixbuf_add_alpha): Constify.
2486 * gdk-pixbuf/gdk-pixbuf-scale.c: Fix includes.
2488 * gdk-pixbuf/gdk-pixbuf-scale.c (gdk_pixbuf_scale): Added some
2489 preconditions. Maybe we should also check for the colorspace,
2490 bits per pixel, and such.
2491 (gdk_pixbuf_composite): Likewise.
2492 (gdk_pixbuf_composite_color): Likewise.
2493 (gdk_pixbuf_scale_simple): Likewise, and fail gracefully if we
2494 cannot allocate the new pixbuf.
2495 (gdk_pixbuf_composite_color_simple): Likewise.
2497 * gdk-pixbuf/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_render):
2498 Use art_rgb_rgba_affine() or art_rgb_affine() since we no longer
2501 * gdk-pixbuf/io-bmp.c: Fix includes.
2503 * gdk-pixbuf/pixops/pixops.c (pixops_scale_nearest): Fixed cast in
2508 * configure.in: Removed checks for libart.
2510 * gdk-pixbuf/Makefile.am: Removed references to libart.
2511 (noinst_HEADERS): Added gdk-pixbuf-private.h.
2513 * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_LDFLAGS): Incremented
2514 the version number of the libtool library to indicate that this
2515 definitely is not compatible with the old usage. I know you love
2518 * configure.in: Bumped version number to 0.7.0.
2522 * gdk-pixbuf-config.in (--libs): We no longer require libart.
2524 * DEPENDS.libgdk_pixbuf: We no longer depend on libart.
2526 * gdk-pixbuf.spec.in: Updated, but I don't guarantee anything.
2528 2000-04-06 Jonathan Blandford <jrb@redhat.com>
2530 * gdk-pixbuf/testanimation.c (main): add more info to the
2531 testanimation frames.
2533 2000-04-04 Ettore Perazzoli <ettore@helixcode.com>
2535 * gdk-pixbuf/gdk-pixbuf-animation.c
2536 (gdk_pixbuf_animation_get_width): New accessor function.
2537 (gdk_pixbuf_animation_get_height): New accessor function.
2538 (gdk_pixbuf_animation_get_num_frames): New accessor function.
2539 (gdk_pixbuf_animation_get_frames): New accessor function.
2541 2000-04-01 Federico Mena Quintero <federico@helixcode.com>
2543 * gdk-pixbuf/gdk-pixbuf.c: Reverted Mark's change. The refcount
2544 is private information, and the art_pixbuf will go away soon.
2546 2000-03-31 Mark Crichton <crichton@gimp.org>
2548 * gdk-pixbuf/gdk-pixbuf.c: Added gdk_pixbuf_get_refcount
2549 and gdk_pixbuf_get_artpixbuf accessor functions.
2551 2000-03-29 Federico Mena Quintero <federico@helixcode.com>
2553 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_get_has_alpha): Return
2554 gboolean instead of int.
2556 2000-03-29 Radek Doulik <rodo@helixcode.com>
2558 * gdk-pixbuf/gdk-pixbuf-animation.c
2559 (gdk_pixbuf_animation_new_from_file): same as below
2561 * gdk-pixbuf/io-gif.c (gif_get_lzw): added update of width and
2562 height in GdkPixbufAnimation
2564 2000-03-28 Radek Doulik <rodo@helixcode.com>
2566 * gdk-pixbuf/io-gif.c (gif_get_lzw): test also for
2567 context->frame_done_func and context->anim_done_func to make
2568 progressive animation loading work
2570 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
2571 added priv->pixbuf = NULL as pixbuf is now in frame (and to make
2572 gdk_pixbuf_loader_prepare happy)
2573 (gdk_pixbuf_loader_frame_done): update animation bbox
2575 * gdk-pixbuf/gdk-pixbuf.h: added bbox size (width, height) to
2578 2000-03-27 Radek Doulik <rodo@helixcode.com>
2580 * gdk-pixbuf/io-gif.c (gif_get_lzw): use frame_len and frame_width
2581 instead of width and height
2583 2000-03-27 Owen Taylor <otaylor@redhat.com>
2585 * gdk-pixbuf/pixops/pixops.c: Fix problem with
2586 precendence of >> and & which was keeping composite_color
2587 from working with non-gray images.
2589 2000-03-08 Jonathan Blandford <jrb@redhat.com>
2591 * gdk-pixbuf/io-gif.c (gdk_pixbuf__gif_image_load): free the context.
2592 (gdk_pixbuf__gif_image_load_animation): free the context.
2594 2000-03-06 Arjan van de Ven <arjan@fenrus.demon.nl>
2596 * gdk-pixbuf/io-bmp.c: Fixed to pointer-bugs and a
2597 mis-interpretation of the Microsoft documentation. Now
2598 it can load .BMP files that are not generated by The Gimp
2601 2000-03-01 Mark Crichton <crichton@gimp.org>
2603 * configure.in: Added BUILD_CANVAS_ITEM stuff to (finally)
2604 fix the last auto* build bug (where we have libart, but no
2607 * gdk-pixbuf/Makefile.am: Same.
2609 2000-02-28 Matt Wilson <msw@redhat.com>
2611 * gdk-pixbuf/gdk-pixbuf-drawable.c: s/unsigned long/guint32/g,
2612 s/unsigned short/guint16/g, s/unsigned char/guint8/g
2614 2000-02-26 Federico Mena Quintero <federico@helixcode.com>
2616 * README: We don't require libgif/ungif nor libXpm.
2618 * NEWS: This was outdated, so updated it.
2620 2000-02-25 Federico Mena Quintero <federico@helixcode.com>
2622 * gdk-pixbuf.m4: Use the correct name for
2623 gdk-pixbuf/gdk-pixbuf.h. Thanks to Jacob Berkman for pointing
2626 2000-02-21 Federico Mena Quintero <federico@helixcode.com>
2628 * configure.in (GDK_PIXBUF_MINOR): Bumped version number to 0.6.0.
2630 * doc/compiling.sgml: New appendix documenting the gdk-pixbuf
2631 library's particular options to configure.in.
2633 * doc/gdk-pixbuf.sgml: Include compiling.sgml appendix via an
2636 * doc/Makefile.am (gdk-pixbuf.html): Added compiling.sgml.
2638 * gdk-pixbuf/io-ico.c (gdk_pixbuf__ico_image_load_increment):
2639 Fixed typo in prototype name.
2641 * configure.in: Changed duplicated AC_MSG_CHECKING message to
2642 something more meaningful; now it is "checking whether dynamic
2645 * gdk-pixbuf/pixops/Makefile.am (noinst_PROGRAMS): Do not install
2646 the timescale program.
2648 Integrated Miguel de Icaza's <miguel@gnu.org> patch for optionally
2649 creating a single static library with all the image format modules
2652 2000-02-20 Miguel de Icaza <miguel@gnu.org>
2654 * gdk-pixbuf/io-xpm.c (gdk_pixbuf__xpm_image_load): Add prefix.
2655 (gdk_pixbuf__xpm_image_load_xpm_data): Add prefix.
2657 * gdk-pixbuf/io-tiff.c (gdk_pixbuf__tiff_image_load_real): Add prefix.
2658 (gdk_pixbuf__tiff_image_stop_load): Add prefix.
2659 (gdk_pixbuf__tiff_image_load_increment): Add prefix.
2660 (gdk_pixbuf__tiff_image_load): Add prefix.
2661 (gdk_pixbuf__tiff_image_stop_load): Update invocation.
2662 (gdk_pixbuf__tiff_image_begin_load): Add prefix.
2664 * gdk-pixbuf/io-ras.c (gdk_pixbuf__ras_image_load): Add prefix.
2665 (gdk_pixbuf__ras_image_load): Updated invocation.
2666 (gdk_pixbuf__ras_image_begin_load): Add prefix.
2667 (gdk_pixbuf__ras_image_stop_load): Add prefix.
2668 (gdk_pixbuf__ras_image_load_increment): Add prefix.
2670 * gdk-pixbuf/io-pnm.c (gdk_pixbuf__pnm_image_begin_load): Add prefix.
2671 (gdk_pixbuf__pnm_image_stop_load): Add prefix.
2672 (gdk_pixbuf__pnm_image_load_increment): Add prefix
2673 (gdk_pixbuf__pnm_image_load): Add prefix.
2675 * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_load): Add prefix.
2676 (gdk_pixbuf__jpeg_image_load_increment): Add prefix.
2677 (gdk_pixbuf__jpeg_image_begin_load): Add prefix.
2678 (gdk_pixbuf__jpeg_image_stop_load): Add prefix.
2680 * gdk-pixbuf/io-ico.c (gdk_pixbuf__ico_image_load): Add prefix.
2681 (gdk_pixbuf__ico_image_load): update invocation.
2682 (gdk_pixbuf__ico_image_load_increment): Add prefix.
2683 (gdk_pixbuf__ico_image_load): update invocation.
2684 (gdk_pixbuf__ico_image_begin_load): Add prefix.
2685 (gdk_pixbuf__ico_image_load): update invocation.
2686 (gdk_pixbuf__ico_image_stop_load): Add prefix.
2688 * gdk-pixbuf/io-gif.c (gdk_pixbuf__gif_image_load_animation): Add prefix.
2689 (gdk_pixbuf__gif_image_load): Add prefix.
2690 (gdk_pixbuf__gif_image_begin_load): Add prefix.
2691 (gdk_pixbuf__gif_image_load_increment): Add prefix.
2692 (gdk_pixbuf__gif_image_load_animation): Add prefix.
2693 (gdk_pixbuf__gif_image_stop_load): Add prefix.
2695 * gdk-pixbuf/io-bmp.c (gdk_pixbuf__bmp_image_load): Add prefix.
2696 (gdk_pixbuf__bmp_image_load): Rename function called.
2697 (gdk_pixbuf__bmp_image_load_increment): Add prefix
2699 * gdk-pixbuf/io-png.c (gdk_pixbuf__png_image_load): Add prefix.
2700 (gdk_pixbuf__png_image_begin_load): Add prefix.
2701 (gdk_pixbuf__png_image_stop_load): Add prefix.
2702 (gdk_pixbuf__png_image_load_increment): Add prefix.
2704 * gdk-pixbuf/gdk-pixbuf-io.c (file_formats): Make this static.
2705 (gdk_pixbuf_load_module): Load the shared library entry points
2706 using a "gdk_pixbuf__$module_name" prefix.
2707 (pixbuf_module_symbol): Wrapper routine that uses the module
2708 prefix for the modules to load the information.
2710 * configure.in (GDK_PIXBUF_VERSION): New option --disable-modules
2711 lets the user specify that gdk-pixbuf should link all image loader
2712 code into the library instaed of creating shared library modules.
2714 (dynworks): Renamed the automake conditional DYNAMIC_MODULES_WORK
2715 to BUILD_DYNAMIC_MODULES.
2717 2000-02-19 Jonathan Blandford <jrb@redhat.com>
2719 * gdk-pixbuf/io-gif.c (new_context): fix case where initial
2720 colormap entry is Transparent.
2722 2000-02-19 Owen Taylor <otaylor@redhat.com>
2724 * gdk-pixbuf/pixops/pixops.c (scale_pixel): Fix error in
2725 scale factors for non-alpha case.
2727 2000-02-14 Mark Crichton <crichton@gimp.org>
2729 * gdk-pixbuf/io-xpm.c (xpm_extract_color): Added check for "g"
2730 color type. Imlib/libXpm handle this, but we didn't.
2732 2000-02-14 Darin Adler <darin@eazel.com>
2734 * gdk-pixbuf/testpixbuf.c: Remove now-unnecessary cast.
2735 * .cvsignore: gdk-pixbuf/.cvsignore: More to ignore.
2737 2000-02-14 Elliot Lee <sopwith@redhat.com>
2738 * gdk-pixbuf/gdk-pixbuf.h, gdk-pixbuf/gdk-pixbuf-data.c: Make
2739 passed-in argument 'const'.
2741 2000-02-04 Michael Meeks <mmeeks@gnu.org>
2743 * gdk-pixbuf/io-gif.c (struct _GifContext): add x,y_offset.
2744 (gif_get_frame_info): put the offsets on the context.
2745 (gif_get_lzw): copy them off into the frame.
2746 (new_context): no change required; will 0 offsets by default.
2748 2000-01-28 Michael Meeks <michael@mejm2.dow.cam.ac.uk>
2750 * gdk-pixbuf/pixops/pixops.c (pixops_process): const + nasty
2753 * gdk-pixbuf/pixops/pixops.h: const.
2755 * gdk-pixbuf/gdk-pixbuf-util.c: const.
2757 * gdk-pixbuf/gdk-pixbuf-scale.c: const.
2759 * gdk-pixbuf/gdk-pixbuf.h: constify lots of things.
2761 2000-02-03 Federico Mena Quintero <federico@helixcode.com>
2763 * gdk-pixbuf/gdk-pixbuf-render.c
2764 (gdk_pixbuf_render_threshold_alpha): Added sanity check for width
2765 and height being >= 0. Also, do nothing if either of them is
2766 zero. Thanks to Ettore for pointing this out.
2767 (gdk_pixbuf_render_to_drawable): Likewise.
2768 (gdk_pixbuf_render_to_drawable_alpha): Likewise.
2770 2000-02-02 Federico Mena Quintero <federico@helixcode.com>
2772 * gdk-pixbuf/io-gif.c (gif_get_lzw): Removed debugging g_print.
2773 Thanks to John Sullivan <sullivan@eazel.com> for the patch.
2775 * gdk-pixbuf/testpixbuf-drawable.c (configure_cb): Get a new area
2776 of the screen when the window is resized. Thanks to David
2777 N. Welton <davidw@linuxcare.com> for pointing this out.
2778 Misc. cleanups to the rest of the file.
2780 2000-02-01 Federico Mena Quintero <federico@helixcode.com>
2782 * doc/tmpl/rendering.sgml: gnome_init() does not call
2783 gdk_rgb_init(), so don't mention that it does in the
2784 documentation. Thanks to Alexander Kruuse <kruuse@home.se> for
2787 2000-01-31 Havoc Pennington <hp@redhat.com>
2789 * gdk-pixbuf/Makefile.am (noinst_PROGRAMS): no testpixbuf-foo target
2791 Mon Jan 31 12:38:50 2000 Owen Taylor <otaylor@redhat.com>
2793 * gdk-pixbuf/pixops/pixops.c (scale_line): Fix from Peter
2794 Wainwright to fix 4a => 4a scaling.
2796 2000-01-29 Mark Crichton <crichton@gimp.org>
2798 * gdk-pixbuf-config: Oh dear, we weren't Telsa/Alan proof...
2799 put `libart-config --libs` in instead of -lart_lgpl.
2801 2000-01-22 Federico Mena Quintero <federico@helixcode.com>
2803 * gdk-pixbuf/io-pnm.c (pnm_read_raw_scanline): Return an error on
2805 (pnm_read_ascii_scanline): Initialize data and mask.
2807 * gdk-pixbuf/io-xpm.c (pixbuf_create_from_xpm): Initialize
2808 fallbackcolor to keep gcc happy.
2810 * configure.in: Bumped version number to 0.5.0.
2812 * gdk-pixbuf/pixops/timescale.c (dump_array): Removed unused variable.
2815 * gdk-pixbuf/pixops/pixops.c (pixops_composite_color_nearest): Put
2816 parentheses around + in a shift to remove a compiler warning.
2817 (pixops_process): Likewise.
2819 Patch from Ross Golder <rossigee@bigfoot.com> to create an RPM
2822 * configure.in: Added gdk-pixbuf.spec to AC_OUTPUT.
2824 * Makefile.am (EXTRA_DIST): Added gdk-pixbuf.spec.in
2826 2000-01-22 Federico Mena Quintero <federico@helixcode.com>
2828 * gdk-pixbuf/gnome-canvas-pixbuf.c (PixbufPrivate): Removed the
2829 x_set and y_set arguments. Now they are always on and start with
2830 defaults of 0.0 in units.
2831 (gnome_canvas_pixbuf_class_init): Likewise.
2832 (gnome_canvas_pixbuf_set_arg): Likewise.
2833 (gnome_canvas_pixbuf_get_arg): Likewise.
2834 (compute_viewport_affine): Likewise; always use the priv->x and
2837 * doc/tmpl/gnome-canvas-pixbuf.sgml: Modified to reflect the
2838 removal of the x_set/y_set arguments.
2840 2000-01-21 Federico Mena Quintero <federico@helixcode.com>
2842 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_ref): Return the same pixbuf
2843 as the input parameter.
2845 * gdk-pixbuf/gdk-pixbuf-animation.c (gdk_pixbuf_animation_ref):
2846 Return the same animation as the input parameter.
2848 2000-01-16 Elliot Lee <sopwith@redhat.com>
2850 * gdk-pixbuf/Makefile.am: Don't link against libgnomecanvaspixbuf.la
2852 2000-01-16 Federico Mena Quintero <federico@helixcode.com>
2854 * configure.in: Removed the broken --enable-canvas-pixbuf option.
2855 Added the stuff necessary to substitute the variables in
2856 gnomecanvaspixbufConf.sh.in.
2858 * gnomecanvaspixbufConf.sh.in: New gnome-config handler for the
2859 tiny gnomecanvaspixbuf library.
2861 * Makefile.am: Build gnomecanvaspixbufConf.sh.
2863 * gdk-pixbuf/Makefile.am: Create a libgnomecanvaspixbuf and only
2864 build it if gdk-pixbuf is being built outside of gnome-libs.
2866 * doc/gdk-pixbuf-sections.txt: Added gdk_pixbuf_render_pixmap_and_mask().
2868 * gdk-pixbuf/gdk-pixbuf-render.c
2869 (gdk_pixbuf_render_pixmap_and_mask): Renamed from
2870 gdk_pixbuf_render_pixmap(). Do not create the mask if it is not
2871 needed, and do not use a clipping mask when rendering the pixmap.
2872 Tweaked documentation a little.
2874 * HACKING: New file with hacking policies for the gdk-pixbuf
2877 * doc/Makefile.am (tmpl_sources): Added missing backslash.
2879 * doc/Makefile.am: Use gnomecanvaspixbuf in gnome-config when
2880 scanning for docstrings.
2882 * gdk-pixbuf/gdk-pixbuf-util.c (gdk_pixbuf_copy_area): Made sanity
2883 checks more stringent. Removed "gint" abominations. Made
2884 documentation consistent with the rest of the functions.
2886 * doc/gdk-pixbuf-sections.txt: Added gdk_pixbuf_copy_area() to the
2889 2000-01-14 Jonathan Blandford <jrb@redhat.com>
2891 * gdk-pixbuf/gdk-pixbuf-render.c (gdk_pixbuf_render_pixmap): new
2892 function to let you create a gdk_pixmap from a gdk_pixbuf.
2894 2000-01-11 Jacob Berkman <jacob@helixcode.com>
2896 * gdk-pixbuf/pixops/Makefile.am (INCLUDES): added
2897 $LIBART_CFLAGS to $INCLUDES
2899 2000-01-10 Elliot Lee <sopwith@redhat.com>
2901 * configure.in, gdk-pixbuf/Makefile.am: Build a libcanvas_pixbuf.
2903 * configure.in: Define version macros. Generate
2904 gdk-pixbuf/gdk-pixbuf-features.h. Always INSIDE_GNOME.
2906 * gdk-pixbuf/Makefile.am: Add gdk-pixbuf-features.h
2908 * gdk-pixbuf/gdk-pixbuf.c: Add definitions of
2909 gdk-pixbuf-features.h declarations, plus some initialization
2912 2000-01-05 Owen Taylor <otaylor@redhat.com>
2914 * gdk-pixbuf/pixops/pixops.c: Fixed src_channels/dest_channels
2915 confusion. (Again caught by Tomas Ogren's Purify)
2917 2000-01-07 Jonathan Blandford <jrb@redhat.com>
2919 * gdk-pixbuf/gdk-pixbuf-xform.c (gdk_pixbuf_rotate): comment out
2922 * gdk-pixbuf/gdk-pixbuf-io.c: Added progressive animation loading.
2923 * gdk-pixbuf/gdk-pixbuf-io.h: Added progressive animation loading.
2924 * gdk-pixbuf/gdk-pixbuf-loader.c: Added progressive animation
2926 * gdk-pixbuf/gdk-pixbuf-loader.h: Added progressive animation
2928 * gdk-pixbuf/io-gif.c (image_load_increment): I think the
2929 ref-counting mess is finally fixed. Added progressive animation
2931 (gif_get_lzw): remove memory_leak
2933 * doc/tmpl/gdk-pixbuf-loader.sgml: much longer long description
2936 2000-01-05 Owen Taylor <otaylor@redhat.com>
2938 * gdk-pixbuf/pixops/pixops.c (pixops_process): Fix computation of
2941 * gdk-pixbuf/pixops/pixops.c: Fix double increments when
2942 dest_channels == 4. (Pointed out by Tomas Ogren)
2944 2000-01-05 Mark Crichton <crichton@gimp.org>
2946 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_eat_header_write):
2947 Return 0 if gdk_pixbuf_load_loader_module returns FALSE.
2949 2000-01-05 Elliot Lee <sopwith@redhat.com>
2951 * gdk-pixbuf/pixops/Makefile.am: Link with -lm (to get 'ceil' function)
2953 2000-01-05 Owen Taylor <otaylor@redhat.com>
2955 * doc/Makefile.am doc/gdk-pixbuf-sections.txt
2956 doc/gdk-pixbuf.sgml doc/tmpl/scaling.sgml:
2957 Added scaling functions into gtk-doc framework.
2959 * gdk-pixbuf/gdk-pixbuf-scale.c: Documentation fixes.
2961 * gdk-pixbuf/testpixbuf-scale.c (expose_cb): Simplify a bit.
2963 * gdk-pixbuf/pixops/pixops.c (pixops_composite_color): Return
2964 immediately if scale_x or scale_y is 0.
2966 2000-01-05 Owen Taylor <otaylor@redhat.com>
2968 * gdk-pixbuf/pixops/timescale.c: quick fix for initializing
2969 arrays in benchmark.
2971 2000-01-05 Jonathan Blandford <jrb@redhat.com>
2973 * gdk-pixbuf/gdk-pixbuf-io.h: Change the order of the update func
2974 to make it more compatible with the rest of GTK. Added animation
2975 framework for progressive loading.
2977 * gdk-pixbuf/io-bmp.c (image_begin_load): Modified to handle new
2979 * gdk-pixbuf/io-ico.c (image_begin_load): ditto
2980 * gdk-pixbuf/io-png.c (image_begin_load): ditto
2981 * gdk-pixbuf/io-ras.c (image_begin_load): ditto
2982 * gdk-pixbuf/io-jpeg.c (image_begin_load): ditto
2983 * gdk-pixbuf/io-pnm.c (image_begin_load): ditto
2984 * gdk-pixbuf/io-tiff.c (image_begin_load): ditto
2985 * gdk-pixbuf/io-gif.c (image_begin_load): ditto
2987 2000-01-05 Owen Taylor <otaylor@redhat.com>
2989 * gdk-pixbuf/pixops/README: Added a README with a TODO
2990 and some explainations of the algorithms.
2992 * gdk-pixbuf/testpixbuf-scale.c: Set a background pixmap of None
2993 to reduce flashing when resizing.
2995 2000-01-05 Owen Taylor <otaylor@redhat.com>
2997 * gdk-pixbuf/pixops/: Directory full of pixel data scaling
2998 code that will eventually migrate into libart.
3000 * configure.in acconfig.h: Add checks for MMX compiler support
3002 * gdk-pixbuf/gdk-pixbuf.h gdk-pixbuf/gdk-pixbuf-scale.c:
3003 Nice wrapper routines for the code in pixops that operate
3004 on pixbufs instead of raw data.
3006 * gdk-pixbuf/testpixbuf-scale: Test program for scaling
3009 2000-01-05 Jonathan Blandford <jrb@redhat.com>
3011 * doc/tmpl/animation.sgml: Documentation changes.
3013 2000-01-01 Federico Mena Quintero <federico@helixcode.com>
3015 * gdk-pixbuf/gdk-pixbuf.h (GdkPixbufAnimation): Added reference
3016 counting to animations. A web browser may want to share a single
3017 copy of an animated GIF if it appears multiple times in a web
3020 * gdk-pixbuf/gdk-pixbuf-animation.c: New file. Moved the
3021 animation functions here.
3022 (gdk_pixbuf_animation_new_from_file): Prettified. Return a NULL
3023 animation if the loader does not support multiframe loading and
3024 the single-frame load returned NULL. Check that the filename is
3025 not NULL. Updated inline documentation.
3026 (gdk_pixbuf_animation_ref): New function.
3027 (gdk_pixbuf_animation_unref): New function.
3028 Removed gdk_pixbuf_animation_destroy() in favor of reference
3031 * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_new_from_file):
3032 Prettified. Made ref_count assertion more paranoid. Check that
3033 the filename is not NULL.
3034 (gdk_pixbuf_get_module): Use guchar * and guint for buffer and
3036 (gdk_pixbuf_new_from_xpm_data): Changed the "data" argument to
3039 * gdk-pixbuf/io-gif.c (image_load_animation): Create the animation
3040 with a reference count of 1.
3042 * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_SOURCES): Added
3043 gdk-pixbuf-animation.c.
3045 * doc/tmpl/animation.sgml: Populated. It is still missing a
3046 description of the overlay modes.
3048 * doc/gdk-pixbuf-sections.txt: Added the animation section. Moved
3049 the canvas item section to the end, as it will be moved later to
3052 * doc/gdk-pixbuf.sgml: Added the animation section.
3054 * doc/Makefile.am (tmpl_sources): Added tmpl/animation.sgml.
3056 1999-12-26 Peter Teichman <pat@gnu.org>
3058 * gdk-pixbuf/Makefile.am (libpixbuf_tiff_la_LIBADD): add
3059 $(LIBTIFF) to libpixbuf_tiff_la_LIBADD, proxying for mmarker.
3060 This closes bug #4676.
3062 1999-12-23 Havoc Pennington <hp@pobox.com>
3064 * gdk-pixbuf/io-gif.c (image_load): Stuff that should have been
3065 set to NULL here (specifically context->animation) was not being
3066 set to NULL. use g_new0() to alloc the struct.
3068 1999-12-20 Jonathan Blandford <jrb@redhat.com>
3070 * gdk-pixbuf/io-gif.c: finished work to make animated gifs load
3071 correctly. Progressive loading needs some work, but that all
3072 needs doing from the gdk-pixbuf-loader end, not here.
3074 1999-12-17 Jonathan Blandford <jrb@redhat.com>
3076 * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_animation_new_from_file):
3077 moved the file here. It seems natural to put this function here,
3078 as that's where the gdk_pixbuf_new_from_file function is, but it's
3079 still a little convoluted. The source files might be played with
3082 1999-12-14 Jonathan Blandford <jrb@redhat.com>
3084 * gdk-pixbuf/gdk-pixbuf-loader.c
3085 (gdk_pixbuf_loader_get_animation): Gets the animation from the
3088 1999-12-16 Federico Mena Quintero <federico@redhat.com>
3090 * doc/tmpl/rendering.sgml: Added notice about initializing GdkRGB
3091 before using the GdkPixbuf rendering functions. Thanks to Joe
3092 Shaw <joe@off.net> for pointing this out.
3094 1999-12-13 Federico Mena Quintero <federico@redhat.com>
3096 * gdk-pixbuf/gnome-canvas-pixbuf.c
3097 (gnome_canvas_pixbuf_class_init): Renamed arguments to
3098 width_in_pixels, height_in_pixels, x_in_pixels, y_in_pixels, for
3099 consistency with the new canvas.
3100 (PixbufPrivate): Do the same renaming in the structure fields, for
3103 * doc/tmpl/gnome-canvas-pixbuf.sgml: Updated for new argument names.
3105 1999-12-12 Federico Mena Quintero <federico@redhat.com>
3107 * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_LDFLAGS): Use a
3108 conditional to see whether to link $(GNOME_LIBS) or not.
3110 1999-12-10 Jonathan Blandford <jrb@redhat.com>
3112 * gdk-pixbuf/gdk-pixbuf-io.h: thinking about the new loading API.
3114 * gdk-pixbuf/gdk-pixbuf-drawable.c (gdk_pixbuf_get_from_drawable):
3115 make a warning go away.
3117 * gdk-pixbuf/gdk-pixbuf.h: added new prototypes for animations.
3119 * gdk-pixbuf/gdk-pixbuf-loader.h: added new prototypes for
3122 1999-12-09 Michael Zucchi <zucchi@zedzone.mmc.com.au>
3124 * gdk-pixbuf/gdk-pixbuf.h: Enable gdk_pixbuf_get_from_drawable()
3127 * gdk-pixbuf/gdk-pixbuf-drawable.c (gdk_pixbuf_get_from_drawable):
3128 Filled in body of function.
3129 (rgbconvert): Added GdkColormap parameter, and to all conversion
3131 (convert_real_slow): New function - should convert ANY visual/data
3132 format properly, but it aint fast. Used as a fallback when an
3133 optimised routine wont match.
3134 (rgbconvert): Do very specific tests on the data format to verify
3135 properly if the optimised version will do, otherwise use the
3136 fallback function for all other data formats.
3138 * gdk-pixbuf/Makefile.am: Re-enabled building of
3139 textpixbuf-drawable.
3141 * gdk-pixbuf/testpixbuf-drawable.c (main): Changed to use
3142 gdk_pixbuf_get_from_drawable().
3144 1999-12-08 Arjan van de Ven <arjan@fenrus.demon.nl>
3146 * gdk-pixbuf/gdk-pixbuf-drawable.c : Fixed the red/green/red
3147 bug on two occasions.
3148 * gdk-pixbuf/io-ras.c: Changed from the custom be32_to_cpu
3149 function to the generic glib one.
3151 1999-12-08 Federico Mena Quintero <federico@redhat.com>
3153 * gdk-pixbuf/gdk-pixbuf-drawable.c: Fix includes.
3154 (gdk_pixbuf_get_from_drawable): Implemented the zillion sanity
3155 checks and API definition. The body needs filling in and it needs
3156 to do the Right Thing(tm) for pixmaps plus the given colormap and
3157 windows and their own colormaps.
3159 * gdk-pixbuf/gdk-pixbuf.h: Added prototype for
3160 gdk_pixbuf_get_from_drawable(). Killed gdk-pixbuf-drawable.h.
3162 * gdk-pixbuf/Makefile.am: Re-added the gdk-pixbuf-drawable sources.
3164 * doc/tmpl/from-drawables.sgml: Populated.
3166 * doc/gdk-pixbuf.sgml: Added the from-drawables section.
3168 * doc/Makefile.am (tmpl_sources): Added tmpl/from-drawables.sgml.
3170 * doc/gdk-pixbuf-sections.txt: Added a section for getting pixbufs
3173 1999-12-07 Federico Mena Quintero <federico@redhat.com>
3175 * doc/tmpl/gnome-canvas-pixbuf.sgml: Added clarification about
3176 reference counting for GdkPixbuf structures.
3178 1999-12-07 Martin Baulig <martin@home-of-linux.org>
3180 * gdk-pixbuf/Makefile.am (testpixbuf_LDADD): Conditionally
3181 include $(GNOME_LIBS) here.
3183 1999-12-05 Arjan van de Ven <arjan@fenrus.demon.nl>
3185 Added missing "include <string.h>" to:
3186 * gdk-pixbuf/io-ras.c
3187 * gdk-pixbuf/io-bmp.c
3188 * gdk-pixbuf/io-ico.c
3190 1999-12-06 Federico Mena Quintero <federico@redhat.com>
3192 * gdk-pixbuf/gdk-pixbuf-io.c (file_formats): Patch from Arjan to
3195 1999-12-05 Federico Mena Quintero <federico@redhat.com>
3197 * gdk-pixbuf/Makefile.am (testpixbuf_LDADD): Add back
3198 $(GNOME_LIBS). This must compile outside of gnome-libs. If you
3199 want, send me a patch to do the conditional stuff properly.
3200 Otherwise, please read the GNOME Programming Guidelines,
3201 especially the "CVS policies" section.
3203 1999-12-05 Jaka Mocnik <jaka.mocnik@kiss.uni-lj.si>
3205 * gdk-pixbuf/Makefile.am: removed GNOME_LIBS from testpixbuf_LDADD.
3207 1999-12-05 Arjan van de Ven <arjan@fenrus.demon.nl>
3209 * gdk-pixbuf/io-ico.c: Bug in palet-size
3212 1999-12-04 Arjan van de Ven <arjan@fenrus.demon.nl>
3214 * gdk-pixbuf/io-bmp.c: Major cleanup, added support for
3215 32 bpp and 4 bpp (uncompressed) images, fixed 1bpp.
3217 * gdk-pixbuf/io-ras.c: Minor cleanup, ran through lclint
3219 * gdk-pixbuf/io-ico.c: Minor cleanup, fixed 1bpp icons,
3222 * gdk-pixbuf/gdk-pixbuf-io.c: Added detection of .CUR files
3223 (Windows Cursor files). These are identical to .ICO files,
3224 except for the signature and 2 extra fields for the hotspot.
3226 1999-12-03 Federico Mena Quintero <federico@redhat.com>
3228 * gdk-pixbuf/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_get_arg):
3229 Removed unused variable `item'.
3231 1999-12-03 Jonathan Blandford <jrb@redhat.com>
3233 * gdk-pixbuf/io-gif.c (gif_fill_in_lines): added a comment to
3234 explain this function better.
3236 1999-12-02 Federico Mena Quintero <federico@redhat.com>
3238 Source files moved from src/ to gdk-pixbuf/, to be consistent with
3241 * doc/Makefile.am: Modified for the new source directory.
3243 * configure.in: Likewise.
3245 * Makefile.am: Likewise.
3247 * autogen.sh: Likewise.
3249 * gdk-pixbuf/Makefile.am: Likewise.
3251 1999-12-02 Federico Mena Quintero <federico@redhat.com>
3253 * src/testpixbuf.c: #include <config.h>, and fix includes.
3255 * src/testpixbuf-drawable.c: #include <config.h>, and fix includes.
3257 * src/io-xpm.c: Fix includes.
3259 * src/io-tiff.c: Fix includes.
3261 * src/io-ras.c: Fix includes, and do not include more stuff than needed.
3263 * src/io-pnm.c: Fix inlcudes, and do not include more stuff than needed.
3265 * src/io-png.c: Fix includes.
3267 * src/io-ico.c: Fix includes, and do not include more stuff than needed.
3269 * src/io-gif.c: Fix includes, and do not include more stuff than needed.
3271 * src/io-bmp.c: Fix includes, and do not include more stuff than needed.
3273 * src/gnome-canvas-pixbuf.c: Fix includes.
3275 * src/gdk-pixbuf.c: Fix includes.
3277 * src/gdk-pixbuf-util.c: Fix includes.
3279 * src/gdk-pixbuf-render.c: Fix includes.
3281 * src/gdk-pixbuf-io.h: Fix includes.
3283 * src/gdk-pixbuf-drawable.c: Fix includes.
3285 * src/gdk-pixbuf-drawable.h: Use angle brackets for the gdk-pixbuf
3288 * src/gdk-pixbuf-data.c: Fix includes.
3290 * src/gdk-pixbuf-loader.c: #include <config.h>
3292 * src/gdk-pixbuf-loader.h: Use angle brackets for the gdk-pixbuf
3295 * src/Makefile.am: Commented out the gdk-pixbuf-drawable stuff,
3296 since it is not finished.
3298 * src/gdk-pixbuf.h: Removed unused transformation prototypes.
3300 * src/gdk-pixbuf-util.c: New file with utility and convenience
3301 functions for pixbufs.
3303 * src/Makefile.am (libgdk_pixbuf_la_SOURCES): Added gdk-pixbuf-util.c.
3305 * doc/gdk-pixbuf-sections.txt: Added section for utility functions.
3307 * doc/Makefile.am (tmpl_sources): Added tmpl/util.sgml.
3309 * doc/gdk-pixbuf.sgml: Added the utilities section.
3311 * doc/tmpl/util.sgml: Documentation for the utility functions.
3313 1999-11-29 Owen Taylor <otaylor@redhat.com>
3315 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
3316 Keep the mask around until after we draw ... since
3317 the GC changes aren't flushed to the X server until we
3318 draw, destroying it before that may result in BadPixmap
3321 1999-11-30 Havoc Pennington <hp@pobox.com>
3323 * configure.in: Add AM_CONDITIONAL for inside gnome-libs
3325 * src/Makefile.am: conditionalize GnomeCanvasPixbuf
3327 1999-11-29 Federico Mena Quintero <federico@redhat.com>
3329 * src/Makefile.am: Uncomment the GnomeCanvasPixbuf sources. This
3330 should be made conditional, not blindly commented out.
3332 1999-11-29 Jonathan Blandford <jrb@redhat.com>
3334 * src/Makefile.am (ICO_LIB): Added another loader from Arjan to
3335 handle .ico files. Cool.
3337 1999-11-24 Jonathan Blandford <jrb@redhat.com>
3339 * src/io-bmp.c (OneLine24): new patch from Arjan to handle
3342 1999-11-24 James Henstridge <james@daa.com.au>
3344 * configure.in (AC_OUTPUT): altered hack to place the symlink in the
3345 top builddir rather than src. This still builds fine, and does not
3346 get gtk-doc into an infinite loop when trying to find all the source
3349 1999-11-23 Jonathan Blandford <jrb@redhat.com>
3351 * Removed #PRAGMA } from headers. Also, make compile if you don't
3352 have it installed, already.
3354 1999-11-22 Federico Mena Quintero <federico@redhat.com>
3356 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_draw): Create the
3357 temporary buffer to the size of the interesction of the bounding
3358 box and the expose area, not the whole expose area. This speeds
3361 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_threshold_alpha): Do
3362 not paint black on the mask, since we already cleared it in a
3363 single gdk_draw_rectangle() operation.
3365 1999-11-22 Raja R Harinath <harinath@cs.umn.edu>
3367 * configure.in (GDK_PIXBUF_DIR): Fix for srcdir != builddir.
3369 1999-11-22 Havoc Pennington <hp@pobox.com>
3371 * src/Makefile.am (GDK_PIXBUF_LIBS): Patch from Paul Fisher
3372 <pnfisher@redhat.com> adds all -lgdk-pixbuf and all other
3373 dependencies to LIBADD variables for loadable modules. Necessary
3374 for a Java dynamic loading thing to be able to figure it out.
3376 1999-11-22 Havoc Pennington <hp@pobox.com>
3378 * src/io-png.c (image_load_increment): Call the update_area
3379 callback depending on the number of rows loaded in this increment.
3381 * src/testpixbuf.c (main): slow down the progressive load demo
3383 1999-11-16 Havoc Pennington <hp@pobox.com>
3385 * src/gdk-pixbuf-drawable.h: Get the quotes right on the #include
3387 1999-11-22 Jonathan Blandford <jrb@redhat.com>
3389 * configure.in (GDK_PIXBUF_DIR): make the symlink. Does not work
3390 for srcdir != buildir != . Beats me why; I can't figure it out.
3391 AC_OUTPUT_COMMANDS doesn't seem to let me substitute it correctly.
3393 1999-11-21 Jonathan Blandford <jrb@redhat.com>
3395 * src/gdk-pixbuf-io.c: added io-bmp from Arjan
3396 <arjan@fenrus.demon.nl>
3398 1999-11-20 Michael Zucchi <zucchi@zedzone.mmc.com.au>
3400 * src/gdk-pixbuf-drawable.c (gdk_pixbuf_from_drawable_core):
3401 Rework/reorder of the code. Each case has been separated into
3402 another function; its big but it should be quick.
3403 gdk_pixbuf_rgba_from_drawable() will now return a pixbuf with
3404 opaque alpha information. Not all depths/formats have been
3405 tested, but 8, 15/16 and 24 (alinged 32) should work ok.
3407 1999-11-17 Larry Ewing <lewing@gimp.org>
3409 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_bounds):
3410 implement the bounds method correctly.
3411 (compute_viewport_affine): compute the affine need to fit the
3412 image within the viewport given by the args.
3413 (compute_render_affine): call compute_viewport_affine.
3415 1999-11-16 Havoc Pennington <hp@pobox.com>
3417 * src/gdk-pixbuf-drawable.h: Use includes from the current
3418 directory, not the system directory.
3420 Mon Nov 15 17:18:28 1999 George Lebl <jirka@5z.com>
3422 * src/testpixbuf-drawable.c: use includes from the current directory
3423 rather then from the system include directory as gdk-pixbuf
3424 includes are not yet installed when this is compiled.
3426 1999-11-13 Cody Russell <bratsche@dfw.net>
3427 * src/testpixbuf-drawable.c: Added a test program for drawable
3430 * src/Makefile.am: Build testpixbuf-drawable.
3432 1999-11-12 Cody Russell <bratsche@dfw.net>
3434 * src/gdk-pixbuf-drawable.c: Merged in Michael Zucchi's changes.
3436 1999-11-10 Federico Mena Quintero <federico@redhat.com>
3438 * doc/tmpl/gdk-pixbuf-loader.sgml: Populated.
3440 * doc/gdk-pixbuf.signals: Put in the real names of signal
3443 * src/gdk-pixbuf-loader.c: Improved documentation comments.
3445 1999-11-10 Jonathan Blandford <jrb@redhat.com>
3447 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): emit the
3450 * src/io-ras.c (OneLineMapped_file): Now can handle indexing
3451 correctly. Patch from Arjan to do so.
3453 1999-11-10 Michael Fulbright <drmike@redhat.com>
3455 * src/io-pnm.c (pnm_ascii_read_scanline): Fixed loading of ASCII PNM
3458 * src/testpixbuf.c: Added final queued draw when done loading image.
3460 1999-11-10 Jonathan Blandford <jrb@redhat.com>
3462 * src/gdk-pixbuf-io.c (gdk_pixbuf_load_module): removed spurious
3465 1999-11-10 Federico Mena Quintero <federico@redhat.com>
3467 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): Added
3470 1999-11-09 Federico Mena Quintero <federico@redhat.com>
3472 * src/io-png.c: Fixed some incompatible pointer initializations.
3474 * src/io-jpeg.c (image_load_increment): Remove unused variable.
3476 1999-11-09 Michael Fulbright <drmike@redhat.com>
3478 * src/testpixbuf.c: Fixed it to use timeout to read from file
3479 for progressive loading. Set TBF_KBPS=n, where n is the number of
3480 kilobytes/second to simulate in downloading. n has to be an integer.
3482 * src/io-jpeg.c: Slight cosmetic cleanup.
3484 * src/io-pnm.c: Fixed raw PNM loading bug. Also discovered that ASCII
3485 PBM loading has a similar problem and will address tomorrow.
3487 1999-11-09 Havoc Pennington <hp@pobox.com>
3489 * src/Makefile.am (libgdk_pixbuf_la_SOURCES): build the
3490 gdk-pixbuf-drawable stuff.
3492 1999-11-09 Federico Mena Quintero <federico@redhat.com>
3494 * configure.in: Bumped version number to 0.4.
3496 1999-11-09 Michael Fulbright <drmike@redhat.com>
3498 * src/io-pnm.c : Finished progressive PNM loading code. Should handle
3499 all types of PNM files now.
3501 * src/io-jpeg.c (image_load_increment): Figured out problem with
3502 loading Progressive JPEG's progressively (say that 10 times fast).
3503 Currently for Progressive JPEG's the entire image is loaded before
3504 it is displayed. libjpeg supports a fancier mechanism which I may
3507 With these changes all JPEG formats appear to load properly for me.
3509 1999-11-08 Jonathan Blandford <jrb@redhat.com>
3511 * src/io-ras.c (image_load_increment): Final patch from Arjan.
3512 Seems to do progressive loading.
3514 1999-11-08 Michael Fulbright <drmike@redhat.com>
3516 * src/io-pnm.c image_load (): Fixed so we do not create a separate
3517 pixel buffer when reading in image - we reuse the pixel data in
3518 the GdkPixbuf structure instead.
3520 1999-11-08 Michael Fulbright <drmike@redhat.com>
3522 * src/io-pnm.c pnm_read_ascii_scanline (): Added support for
3523 ASCII PNM files. Note I haven't tested loaded ASCII PBM files because
3524 I can't seem to find a utility to convert into this format.
3525 Next is to add progressive loading support for the PNM format.
3527 1999-11-07 Federico Mena Quintero <federico@redhat.com>
3529 * doc/tmpl/gnome-canvas-pixbuf.sgml: Finished detailed explanation
3530 of the width, height, x, and y setting and pixels arguments.
3532 1999-11-05 Jonathan Blandford <jrb@redhat.com>
3534 * src/io-ras.c (image_load): third patch. Now it seems to load.
3536 * src/gdk-pixbuf-io.c: second patch Arjan van de Ven
3537 <arjan@fenrus.demon.nl> to autodetect/load the sunras files.
3539 * src/io-ras.c (image_load): new file from Arjan van de Ven
3540 <arjan@fenrus.demon.nl> to begin the ras loader.
3542 1999-11-05 Federico Mena Quintero <federico@redhat.com>
3544 * doc/gdk-pixbuf-sections.txt: Removed gdk-pixbuf-io, since it is
3545 for internal use only.
3547 * doc/gdk-pixbuf.sgml: Likewise.
3549 * doc/tmpl/gnome-canvas-pixbuf.sgml: Finished docs.
3551 1999-11-05 Michael Fulbright <drmike@redhat.com>
3553 * src/io-pnm.c: Implemented support for reading raw PBM/PGM/PPM
3554 files from a file. Next step is support for ASCII files, and
3555 then incremental loading.
3557 1999-11-04 Federico Mena Quintero <federico@redhat.com>
3559 * Makefile.am: Added doc to SUBDIRS.
3561 1999-11-04 Michael Fulbright <drmike@redhat.com>
3563 * src/io-jpeg.c: Prettied up code slightly.
3564 * src/io-pnm.c: Start of pnm loader (from file and progressively).
3565 Doesn't do much yet (will finish tomorrow).
3566 * src/gdk-pixbuf-io.c: Added pnm to structure of known types.
3568 1999-11-04 Federico Mena Quintero <federico@redhat.com>
3570 * doc/tmpl/rendering.sgml: Populated.
3572 * doc/Makefile.am: Added the template files.
3574 1999-11-04 Havoc Pennington <hp@pobox.com>
3576 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable): In
3577 docs, explain what a dither offset is for.
3578 (gdk_pixbuf_render_to_drawable_alpha): Explain why you would use
3579 this function vs. gdk_pixbuf_render_to_drawable().
3581 1999-11-04 Havoc Pennington <hp@pobox.com>
3583 * configure.in: Use libart-config correctly; find gnome-config
3584 separately. Fix GNOME_LIBS to be correct in "no gnome installed
3587 * src/Makefile.am: Link to GNOME_LIBS instead of a hardcoded
3590 Patch untested in the inside-gnome-libs case, I need to commit
3591 then check out to the gnome-libs I'm using.
3593 1999-11-04 Michael Fulbright <drmike@redhat.com>
3595 * src/io-jpeg.c (image_begin_load): Add update_func callback.
3596 * src/io-jpeg.c (image_load_increment): Call updated callback when
3597 new graphic data decoded.
3599 1999-11-04 Jonathan Blandford <jrb@redhat.com>
3601 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_update): handle the
3603 * src/io-png.c (image_begin_load): add a update_func callback.
3604 * src/io-gif.c (image_begin_load): add a update_func callback.
3605 (gif_get_lzw): added the update_func ability
3607 * src/io-tiff.c (image_begin_load): add a update_func callback.
3609 1999-11-04 Federico Mena Quintero <federico@redhat.com>
3611 * doc/tmpl/gdk-pixbuf.sgml: Populated.
3613 * doc/tmpl/refcounting.sgml: Populated.
3615 * doc/tmpl/file-loading.sgml: Populated.
3617 * src/gdk-pixbuf.c: Added documentation comments.
3619 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_file): Added
3620 documentation comments.
3622 * doc/: Finished integrating the documentation framework.
3624 1999-11-03 Federico Mena Quintero <federico@redhat.com>
3626 * configure.in: Removed libgif stuff now that we do not depend on it.
3627 Added the necessary cruft for gtk-doc.
3629 * src/Makefile.am: Unconditionally build the GIF loader.
3631 1999-11-03 Jonathan Blandford <jrb@redhat.com>
3633 * src/io-gif.c (gif_read): renamed ReadOK to gif_read.
3634 Added a lot of comments to the file.
3636 * src/Makefile.am (libpixbuf_gif_la_LIBADD): Remove dependency on
3639 1999-11-03 Michael Fulbright <drmike@redhat.com>
3641 * src/io-jpeg.c (image_load_increment): Further removal of
3642 bugginess in local buffering code. Handles grayscale jpegs
3645 * src/io-jpeg.c (image_load_stop): Was freeing local context
3646 for jpeg library before calling jpeg_decompres_finish ().
3648 1999-11-03 Jonathan Blandford <jrb@redhat.com>
3650 * src/io-gif.c (image_load_increment): now handle arbitrary buffer
3652 (gif_get_lzw): set the transparency to the right val.
3654 1999-11-03 Federico Mena Quintero <federico@redhat.com>
3656 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_init):
3657 Initiailize the x and y fields.
3658 (gnome_canvas_pixbuf_destroy): Queue a redraw upon destruction.
3659 (PixbufPrivate): Renamed need_size_update to need_xform_update.
3660 (recompute_bounding_box): Do not use temporary values.
3662 1999-11-03 Jonathan Blandford <jrb@redhat.com>
3664 * src/io-gif.c (set_gif_lzw_clear_code): new state. Fixes
3667 * src/gnome-canvas-pixbuf.c (recompute_bounding_box): remove
3668 unneeded x,y,h,w vars.
3670 1999-11-03 Larry Ewing <lewing@gimp.org>
3672 * src/gnome-canvas-pixbuf.c (compute_render_affine): adjust
3673 render_affine calculation for x,y offsets.
3674 (gnome_canvas_pixbuf_set_arg): add x,y args.
3675 (gnome_canvas_pixbuf_get_arg): add x,y args.
3676 (recompute_bounding_box): simply code using ArtDrect and the
3677 render_affine. Removed compute_xform_vectors as it was no longer
3680 1999-11-03 Federico Mena Quintero <federico@redhat.com>
3682 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_point): I'm a
3683 doofus. Return a distance, not a boolean, for opaque images.
3685 * src/gnome-canvas-pixbuf.c (recompute_bounding_box): Do proper
3686 rounding of bounding box coordinates.
3687 (gnome_canvas_pixbuf_bounds): Implemented the ::bounds() method.
3688 (gnome_canvas_pixbuf_draw): Use the correct alpha threshold value.
3690 1999-11-03 Jonathan Blandford <jrb@redhat.com>
3692 * src/io-gif.c (gif_prepare_lzw): s/lwz/lzw/g
3694 1999-11-03 Michael Fulbright <drmike@redhat.com>
3696 * src/io-jpg.c (image_load_increment): Fixed code which moved
3697 buffer around as new data comes in to work properly. JPEG progressive
3698 loading should be working now except for grayscale JPEG's, which I
3699 will look into next.
3701 1999-11-03 <sopwith@redhat.com>
3702 * src/testpixbuf.c: A GtkFunction needs to return a value for
3703 deterministic behaviour. Also put dot printing back in.
3705 1999-11-03 <jrb@redhat.com>
3707 * src/io-gif.c (gif_get_extension): Read 'til the next empty block
3710 1999-11-02 Cody Russell <bratsche@dfw.net>
3711 * src/gdk-pixbuf-drawable.c: Changed the behavior to return NULL
3712 if part of the requested image is offscreen, rather than clipping
3715 1999-11-02 Jonathan Blandford <jrb@redhat.com>
3717 * src/io-gif.c (gif_fill_in_lines): Fill in the gif's blank areas
3718 for interlacing and progressive loading.
3720 1999-11-02 Cody Russell <bratsche@dfw.net>
3721 * src/gdk-pixbuf-drawable.c (gdk_pixbuf_from_drawable_core): Now
3722 calls gdk_pixbuf_new_from_art_pixbuf() instead of gdk_pixbuf_new().
3724 1999-11-02 Jonathan Blandford <jrb@redhat.com>
3726 * src/io-gif.c (gif_main_loop): Now progressive gif loading works!
3727 It's a little slow though. )-:
3729 1999-11-02 Elliot Lee <sopwith@redhat.com>
3730 * src/gdk-pixbuf-loader.[ch], src/gdk-pixbuf-io.h: Make the
3731 arguments to the write/load_increment operations const-correct.
3733 1999-11-02 Federico Mena Quintero <federico@redhat.com>
3735 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_point):
3736 Implemented the ::point() method. We do a simple containment test
3737 instead of a full distance calculation since the canvas is going
3738 to change to that scheme, anyways.
3740 1999-11-02 Elliot Lee <sopwith@redhat.com>
3742 * src/testpixbuf.c: Allow using $TBF_READLEN to specify the size
3743 of the chunks that are read from the input file.
3745 1999-11-02 Larry Ewing <lewing@gimp.org>
3747 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_render): add aa
3749 (gnome_canvas_pixbuf_class_init): add gnome_canvas_pixbuf_render
3752 1999-11-02 Federico Mena Quintero <federico@redhat.com>
3754 * src/gnome-canvas-pixbuf.c (compute_render_affine): Moved the
3755 affine computation code from ::draw() to here, since it is needed
3756 by ::point() as well.
3758 1999-11-02 Elliot Lee <sopwith@redhat.com>
3760 * src/gdk-pixbuf-loader.c: Reorganize gdk_pixbuf_loader_write into
3761 three functions, and eliminate duplication of code from write()
3762 and close(). Also fix bug where the 128-byte header was being
3765 1999-11-01 Federico Mena Quintero <federico@redhat.com>
3766 * src/gnome-canvas-pixbuf.c (recompute_bounding_box): Fixed
3767 bounding box computation.
3769 1999-11-01 Federico Mena Quintero <federico@redhat.com>
3771 * src/gnome-canvas-pixbuf.c: Start of the pixbuf canvas item.
3772 Drawing affines seem to work. Bounding box is fubared. ::point()
3773 is not implemented. This is a work in progress.
3775 * src/Makefile.am: Added gnome-canvas-pixbuf.[ch] to the list of
3778 * configure.in: Sigh. We need to link in libgnomeui for the
3779 canvas stuff. This mess will disappear when gdk-pixbuf gets
3780 folded into gnome-libs.
3782 1999-10-30 Jonathan Blandford <jrb@redhat.com>
3784 * src/io-gif.c: Some more work. Now it generates a gdk_pixbuf of
3785 the right size, at a minimum, even if the image is squished and
3787 (ReadImage): lets get the offset right. This will let transparent
3790 1999-10-29 Michael Fulbright <drmike@redhat.com>
3792 * src/io-jpeg.c: image_load_increment(): Fixed bug when
3793 image width was not a multiple of 4 - always use the
3794 gdk_pixbuf rowstride to increment pointers!
3796 1999-10-29 Michael Fulbright <drmike@redhat.com>
3798 * src/io-jpeg.c: Added first cut at progressive jpeg loading.
3799 Currently does not handle either progressive jpeg files (jpeg
3800 files with multiple scans at different quality settings), but
3801 I plan on adding this support soon. These are fairly rare in
3802 my experience, so it shouldn't slow people down too much.
3803 Grayscale jpegs also don't work but that should be easy to fix.
3805 1999-10-29 Michael Fulbright <drmike@redhat.com>
3807 * src/testpixbuf.c: Added title to windows so you can identify
3808 progressive and file windows.
3810 1999-10-29 Michael Fulbright <drmike@redhat.com>
3812 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): Actually
3813 load the image handler when we determine the image type.
3815 * src/gdk-pixbuf-io.[ch] (gdk_pixbuf_load_module): Changed the
3816 previously static function load_image_handler () to
3817 a public function gdk_pixbuf_load_module (). It is needed in
3818 gdk-pixbuf-loader.c to load image handler modules. This function
3819 is different from gdk_pixbuf_get_module (), which only returns
3820 a reference to the required handler, because it actually loads
3821 the handler into memory. Both actions should possibly be combined
3822 in a convenience function since one w/o the other doesn't seem to
3825 1999-10-28 Jonathan Blandford <jrb@redhat.com>
3827 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): don't send a
3830 1999-10-28 Federico Mena Quintero <federico@redhat.com>
3832 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable): New
3833 function to render a portion of a pixbuf to a drawable. Ignores
3834 alpha information and takes in a GC.
3835 (gdk_pixbuf_render_to_drawable_alpha): New function to render a
3836 portion of a pixbuf to a drawable. It automatically creates a GC
3837 and a clipping mask for alpha pixbufs.
3839 1999-10-28 Jonathan Blandford <jrb@redhat.com>
3841 * src/gdk-pixbuf.h: turned convenience macros into convenience
3842 functions so some error checking could be added.
3844 * src/io-tiff.c (image_load_increment): started work on the tiff
3845 non-incremental loader.
3846 (image_begin_load): Finished the incremental loader.
3848 * src/io-gif.c (image_load_increment): started work on the gif
3851 * src/gdk-pixbuf-io.h: Changed ModuleType to GdkPixbufModule.
3853 1999-10-27 Federico Mena Quintero <federico@redhat.com>
3855 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_threshold_alpha): New
3856 function to threshold a pixbuf's alpha channel into a bitmap.
3858 * src/gdk-pixbuf.c (gdk_pixbuf_new): Fixed so that it will
3859 contemplate future extensions to ArtPixBuf's formats.
3861 * src/io-png.c (png_info_callback): Use the new API of gdk_pixbuf_new().
3863 * src/gdk-pixbuf.h (gdk_pixbuf_get_height): Added some convenience
3864 macros to fetch the ArtPixBuf's fields.
3866 1999-10-27 Havoc Pennington <hp@pobox.com>
3868 * src/testpixbuf.c (main): Display the progressive load
3870 * src/io-png.c (setup_png_transformations): Break transformation
3871 code into separate function
3872 (png_info_callback): Use setup_png_transformations
3874 1999-10-27 Havoc Pennington <hp@pobox.com>
3876 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): Check
3877 properly whether the XPM module has already been loaded
3878 (gdk_pixbuf_new_from_file): Check properly if loader module
3879 was already loaded (was checking if load symbol was present
3880 in order to decide whether to re-load; should check module !=
3881 NULL, then load != NULL)
3882 (image_handler_load): Check in present working directory,
3883 makes it easier to debug for now
3884 (file_formats): This array initializer was seriously on crack,
3885 was assigning a function pointer to a GModule*
3887 * src/testpixbuf.c (main): Change type of pixbuf_loader to
3890 1999-10-27 Havoc Pennington <hp@pobox.com>
3892 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_finalize):
3893 Fix typo that prevented compilation
3894 (gdk_pixbuf_loader_destroy): ditto
3896 1999-10-27 Federico Mena Quintero <federico@redhat.com>
3898 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_new): Return a
3899 GdkPixbufLoader, not a GtkObject.
3900 (gtk_marshal_NONE__INT_INT_INT_INT): Made static.
3901 (gdk_pixbuf_loader_get_type): Documented.
3902 (gdk_pixbuf_loader_class_init): Initialize the parent class
3904 (gdk_pixbuf_loader_destroy): Added sanity checks. Call the parent
3905 class destroy function.
3906 (gdk_pixbuf_loader_new): Documented.
3907 (gdk_pixbuf_loader_finalize): Call the parent class finalize
3909 (gdk_pixbuf_loader_write): Use size_t for count.
3911 1999-10-27 Michael Fulbright <drmike@redhat.com>
3913 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_destroy): Fixed
3914 logic so we only try to close loader if it wasn't previously closed.
3916 1999-10-27 Michael Fulbright <drmike@redhat.com>
3918 * src/gdk-pixbuf-loader.c: Made sure image_loader struct member of
3919 pixbuf_loader properly initialized.
3921 * src/testpixbuf.c: Made sure we cleanup pixbuf_loader properly
3924 1999-10-26 Jonathan Blandford <jrb@redhat.com>
3926 * src/gdk-pixbuf-io.c (image_handler_load): load the vtable fully.
3928 * src/gdk-pixbuf-loader.c: Finished initial cut at the object.
3930 1999-10-26 Havoc Pennington <hp@pobox.com>
3932 * src/gdk-pixbuf-loader.h: fix signals
3934 * src/gdk-pixbuf-io.h: add new vtable fields
3937 1999-10-26 Jonathan Blandford <jrb@redhat.com>
3939 * src/gdk-pixbuf-loader.h: New Class. Beginning of progrssive
3942 1999-10-25 Federico Mena Quintero <federico@redhat.com>
3944 * configure.in (CFLAGS): Patch from Uwe Koloska
3945 <koloska@Rcs1.urz.tu-dresden.de> to fix a stupid typo of mine.
3947 1999-10-22 Havoc Pennington <hp@pobox.com>
3949 * src/io-xpm.c (mem_buffer): Clean up stupid
3950 increment-inside-array-dereference thing
3952 * src/testpixbuf.c: Add XPM data tests.
3954 * src/io-xpm.c: Make the XPM data buffer const, fix const
3955 correctness throughout the code.
3957 1999-10-22 Havoc Pennington <hp@pobox.com>
3959 * src/gdk-pixbuf.h: Export gdk_pixbuf_new_from_xpm_data()
3961 1999-10-22 Havoc Pennington <hp@pobox.com>
3963 * src/io-xpm.c (image_load_xpm_data): Export this symbol for
3964 loading an XPM from memory.
3966 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): New
3967 function, loads pixbuf from xpm data
3968 (image_handler_load): Add g_return_if_fail() to ensure the same
3969 module isn't loaded twice. Add g_module_symbol() to scan for XPM
3972 1999-10-22 Federico Mena Quintero <federico@redhat.com>
3974 * src/io-png.c (image_load): Patch from Kristian Hogsberg
3975 Kristensen <hogsberg@daimi.au.dk> to avoid allocating extra row
3976 buffers; the rows can be read in directly into the main pixel
3979 1999-10-20 Federico Mena Quintero <federico@redhat.com>
3981 * src/gdk-pixbuf-io.c (image_handler_load): Free path.
3983 1999-10-20 Federico Mena Quintero <federico@redhat.com>
3985 * configure.in: Bumped version number to 0.3.
3987 * src/Makefile.am (lbgdk_pixbuf_la_LDFLAGS): Added a libtool
3988 version number for the library.
3990 1999-10-20 Federico Mena Quintero <federico@redhat.com>
3992 * src/gdk-pixbuf.h (GdkPixbuf): Removed the unref_fn field. Now
3993 all memory management of the buffer is done by libart.
3995 * src/gdk-pixbuf.c (gdk_pixbuf_unref): Do destruction here.
3996 Removed gdk_pixbuf_destroy, gdk_pixbuf_duplicate.
3998 * src/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Implemented in
3999 terms of the libart functions. Removed the old code.
4001 * src/gdk-pixbuf-io.c (image_handler_load): Removed the save
4002 symbols. Saving will not be implemented in GdkPixbuf.
4004 * src/io-gif.c: Removed the saving stub.
4005 (image_load): Fixed memory management to fail gracefully if we run
4006 out of memory while loading the image. Close the gif file when we
4007 are done. This still needs more error handling for the DGif
4010 * src/io-jpeg.c (image_load): Some robustness fixes.
4012 * src/io-png.c: Removed the saving stuff.
4013 (image_load): Some memory management fixes.
4015 * src/io-tiff.c (image_load): Ditto.
4017 * src/io-xpm.c (pixbuf_create_from_xpm): Ditto.
4019 1999-10-18 Havoc Pennington <hp@pobox.com>
4021 * subautogen.sh: New name for macros/autogen.sh
4023 * autogen.sh: use subautogen.sh
4025 1999-10-18 Federico Mena Quintero <federico@redhat.com>
4027 * src/*: Reindented to use the GNOME Indentation. Renamed
4028 GdkPixBuf to GdkPixbuf, for consistency with the function names
4029 (and it is also easier to type) :-)
4031 1999-10-18 Havoc Pennington <hp@pobox.com>
4033 * configure.in: Use AM_PATH_GLIB instead of glib-config directly
4035 * src/Makefile.am: Re-enable testpixbuf with GTK_CFLAGS/GTK_LIBS
4037 1999-10-18 Havoc Pennington <hp@pobox.com>
4039 * Makefile.am (SUBDIRS): Remove "macros"
4041 * configure.in: Don't use GNOME_INIT, handle case where we are
4042 inside gnome-libs. AM_PATH_GTK for the GIF test
4044 * src/Makefile.am: Change flags to work without libgnomeui,
4045 comment out testpixbuf for now
4047 1999-10-18 Federico Mena Quintero <federico@redhat.com>
4049 * configure.in: Use $GTK_LIBS as the extra libs when checking for
4050 libgif/libungif, as they need the X libraries. Fixes bug #2472.
4052 1999-10-10 Cody Russell <bratsche@dfw.net>
4053 * src/gdk-pixbuf-drawable.c: core function now determines whether
4054 the requested geometry is on screen or not, and if some is not
4055 then the request is clamped to geometry that is on the screen.
4057 Changed 'pixbuf' to 'art_pixbuf' in core function.
4059 1999-10-08 Michael Fulbright <drmike@redhat.com>
4061 * src/gdk-pixbuf-data.c: Added to load rgb data from const data.
4063 * src/testpifbuf: Changed test program to display cdrom from rgb data
4064 if no filename given to test program.
4066 1999-10-07 Cody Russell <bratsche@dfw.net>
4067 * src/gdk-pixbuf-drawable.[ch]: Added. (Actually, Miguel committed
4068 them, but I wrote them).
4070 * src/gdk-pixbuf-drawable.h: Added a missing ; so things will now
4073 * src/Makefile.am: Added gdk-pixbuf-drawable.[ch] to
4074 libgdk_pixbuf_la_SOURCES and libgdk_pixbufinclude_HEADERS.
4076 * src/gdk-pixbuf-drawable.c: Added #include "gdk-pixbuf-drawable.h"
4079 * src/gdk-pixbuf-drawable.[ch]: Changed functions to return
4080 GdkPixBuf* instead of ArtPixBuf*.
4082 1999-09-22 Michael Meeks <michael@nuclecu.unam.mx>
4084 * src/gdk-pixbuf.c (gdk_pixbuf_new): created.
4085 (gdk_pixbuf_scale): use gdk_pixbuf_new + return a new scaled image.
4087 * src/gdk-pixbuf.h (struct _GdkPixBuf): Re-organise struct, + add
4088 GdkPixBufUnrefFunc + gdk_pixbuf_new.
4090 * src/io-jpeg.c (image_load): clean to use gdk_pixbuf_new.
4092 * src/io-xpm.c (_pixbuf_create_from_xpm): ditto.
4094 * src/io-tiff.c (image_load): ditto + fix leak
4096 * src/io-png.c (image_load): ditto + add more exit points; monitor.png
4097 crashes this module ( add warning :-)
4099 * src/io-bmp.c (image_load): ditto.
4101 * src/io-gif.c (image_load): ditto.
4103 1999-09-18 Michael Meeks <michael@nuclecu.unam.mx>
4105 * src/gdk-pixbuf.c (gdk_pixbuf_scale): Hack rgba support in so
4106 it doesn't crash scaling with alpha.
4108 1999-09-17 Federico Mena Quintero <federico@redhat.com>
4110 * src/io-bmp.c (image_load): Set the initial ref_count to 1.
4112 * src/io-gif.c (image_load): Likewise.
4114 * src/io-jpeg.c (image_load): Likewise.
4116 * src/io-png.c (image_load): Likewise.
4118 * src/io-tiff.c (image_load): Likewise.
4120 * src/io-xpm.c (_pixbuf_create_from_xpm): Likewise.
4122 * src/gdk-pixbuf-io.c (gdk_pixbuf_load_image): Added an assertion
4123 for the ref_count to be != 0.
4125 * src/gdk-pixbuf.c (gdk_pixbuf_ref): Be more paranoid with sanity
4127 (gdk_pixbuf_unref): Fix incorrect sanity check and comparison.
4129 1999-08-09 Federico Mena Quintero <federico@nuclecu.unam.mx>
4131 * src/io-png.c (image_save): Fixed compiler warnings. Fixed write
4132 to unallocated memory (row_ptr), and fixed its type as well. Take
4133 into account the ArtPixbuf's rowstride when assigning the row
4136 * src/gdk-pixbuf.c: Fixup includes.
4138 * src/gdk-pixbuf-io.c: Likewise.
4140 Sat Jul 31 19:19:47 CEST 1999
4142 * src/gdk-pixbuf-io.c:
4143 * src/io-png.c: Fixed two obvious C syntax bugs
4145 1999-07-29 Mark Crichton <crichton@gimp.org>
4147 * src/io-png.c (image_save): Added PNG saving function
4149 * src/gdk-pixbuf-io.c: Changed image_save function format. Now it's
4150 image_save(GdkPixBuf *p, FILE *f, ...)
4153 1999-07-26 Michael Zucchi <mzucchi@denr.sa.gov.au>
4155 * src/Makefile.am (*_LIB): Only build the relevant loaders which
4156 require extra libraries if we actually have those libraries.
4158 1999-07-23 Richard Hestilow <hestgray@ionet.net>
4160 * src/gdk-pixbuf.h: Include glib.h as it uses g* datatypes
4161 * gdk_pixbufConf.sh.in: Added for gnome-config
4163 * configure.in: Modified to generate gdk_pixbufConf.sh
4165 1999-07-20 Mark Crichton <crichton@gimp.org>
4167 * src/gdk-pixbuf.c (gdk_pixbuf_rotate): Fixed rotation. Now a bbox
4168 calculation needs to be done.
4170 1999-07-18 Larry Ewing <lewing@gimp.org>
4175 * src/io-jpeg.c: Fix a few memory leaks in the, most of them in
4176 error cases but one or two in the common case. There are probably
4177 a few small ones left.
4179 1999-07-18 Mark Crichton <crichton@gimp.org>
4181 * configure.in: removed version.h.
4183 * src/gdk-pixbuf-io.c (pixbuf_check_tiff): Minor readability
4186 1999-07-17 Mark Crichton <crichton@gimp.org>
4188 * src/gdk-pixbuf.c: Removed gdk_pixbuf_free, redundant code.
4189 (gdk_pixbuf_rotate): Added pixbuf rotation code.
4190 (gdk_pixbuf_scale): Changed // comments to /* */
4192 * src/gdk-pixbuf.h (gdk_pixbuf_destroy): Added gdk_pixbuf_destroy
4195 1999-07-16 Larry Ewing <lewing@gimp.org>
4197 * src/testpixbuf.c (expose_func): reverted the expose everything
4198 changes, I'm not sure why these went in.
4199 (config_func): bring this up to date with the new pixbuf_scale
4202 * src/gdk-pixbuf-io.c: added a couple of warnings to the module
4203 loading code so that poeple can diagnose problems better.
4205 * src/gdk-pixbuf.c (gdk_pixbux_scale): fix the borkedness, also it
4206 no longer allocates a new pixbuf, which make things nicer for the
4207 rest of the code. Unfortunately there is still a problem with
4208 scaling rgba images.
4210 1999-07-16 Mark Crichton <crichton@gimp.org>
4212 * src/testpixbuf.c (config_func): ConfigureEvent handler. This
4213 calls gdk_pixbuf_scale. However, something is not working.
4214 N.B.: current pixmap is now stored in user_data with a key of
4217 * src/gdk-pixbuf.c (gdk_pixbuf_scale): Implemented scaling function.
4218 Something is still borked, however.
4220 1999-07-15 Larry Ewing <lewing@gimp.org>
4222 * src/io-jpeg.c (image_load): add raph@gimp.org's fix to the jpeg
4225 * src/testpixbuf.c (main): fix up the file routines a little so
4226 that you can load multiple files given the file names
4228 1999-07-14 Larry Ewing <lewing@gimp.org>
4230 * src/testpixbuf.c (expose_func): added an almost proper expose
4231 handler for testpixbuf
4233 1999-07-13 Mark Crichton <crichton@gimp.org>
4235 * configure.in: Fixed GIF check. Replaced " with '
4236 * src/gdk-pixbuf.c: More (minor) work on gdk_pixbuf_scale
4238 1999-07-13 Mark Crichton <crichton@gimp.org>
4240 * configure.in: I am a bonehead. Added gif-lib check.