]> Pileus Git - ~andy/gtk/blob - gdk-pixbuf/ChangeLog
Fix handing of overall alpha.
[~andy/gtk] / gdk-pixbuf / ChangeLog
1 Mon Feb 11 14:31:53 2002  Owen Taylor  <otaylor@redhat.com>
2
3         * pixops/pixops.c (bilinear_make_weights): Fix handing of
4         overall alpha.
5
6 2002-02-10  Matthias Clasen  <matthias@local>
7
8         * test-loaders.c (main): Enable some tests which should work
9         now.
10
11         * io-wbmp.c (gdk_pixbuf__wbmp_image_load_increment): Detect
12         invalid image dimensions and insufficient memory.
13
14         * io-tga.c (try_preload): Detect invalid image dimensions.
15         (gdk_pixbuf__tga_stop_load): Don't try to unref NULL pointers.
16
17         * io-ico.c (DecodeHeader): Detect some invalid headers and
18         don't segfault.
19
20 Fri Feb  8 23:11:15 2002  Owen Taylor  <otaylor@redhat.com>
21
22         * pixops/pixops.c: Force all weight arrays to sum exactly
23         to 65535. (Fixes #70971, reported by Federico Mena Quintero)
24
25         * Makefile.am (libgdk_pixbuf_1_3_la_DEPENDENCIES): Add
26         libpixops.la.
27
28 2002-02-08  Federico Mena Quintero  <federico@ximian.com>
29
30         * pixops/pixops.h: Fix comment; PixopsInterpType -> GdkInterpType.
31
32 2002-02-08  Darin Adler  <darin@bentspoon.com>
33
34         * io-xbm.c: (next_int): Wean this from <ctype.h>.
35
36 2002-02-01  Matthias Clasen  <matthiasc@poet.de>
37
38         * Makefile.am: Build the tga loader as a static library. (#70157)
39
40         * io-ico.c: Merge 16- and 32-bit ico support from the stable 
41         branch.  (#61179)
42
43         * io-gif.c: Recomposite all images if the animation size changes
44         while loading.  (#70055)
45
46         * gdk-pixbuf.c (gdk-pixbuf-fill): Make it work for subpixbufs. 
47         (#70055)
48
49 Sat Jan 19 20:49:20 2002  Manish Singh  <yosh@gimp.org>
50
51         * io-jpeg.c, io-png.c: Made sure all the error cases involving
52         jpeg or png load/saves clean themselves up properly. Marked some
53         variables needed for cleanup volatile so they aren't clobbered by
54         setjmp.
55
56 Fri Jan 11 18:05:07 2002  Owen Taylor  <otaylor@redhat.com>
57
58         * pixops/pixops.c: Fix integer overflow for the values
59         passed to the pixel functions. (#55148, fix from Michael Hore)
60
61 Fri Jan 11 17:53:58 2002  Owen Taylor  <otaylor@redhat.com>
62
63         * pixops/pixops.c (pixops_scale_nearest): Remove meaningless
64         FIXME.
65
66         * pixops/pixops.c (pixops_process): Comment the computation
67         of run_end_index and fix some edge cases.
68
69         * pixops/{scale_line_22_33_mmx.S, composite_line_22_4a4_mmx.S:
70         composite_line_color_22_4a4_mmx.S}: Handle the case where
71         dest <= dest_end properly. (#52001, fix from Michael Hore)
72
73 Thu Jan 10 16:48:30 2002  Owen Taylor  <otaylor@redhat.com>
74
75         * pixops/pixops.c: Replace some hardcoded values with the 
76         SUBSAMPLE constant used elsewhere. (#51033)
77
78 Wed Jan  9 11:29:44 2002  Owen Taylor  <otaylor@redhat.com>
79
80         * Makefile.am (s-enum-types-h): Include glib-object.h,
81         Add G_BEGIN_DECLS/END_DECLS to gdk-pixbuf-enum-types.h. (#68325,
82         Mikael Hermansson)
83
84         * *.h: G_BEGIN_DECLS cleanups.
85
86 Tue Jan  8 10:58:04 2002  Owen Taylor  <otaylor@redhat.com>
87
88         * gdk-pixbuf-util.c (gdk_pixbuf_saturate_and_pixelate): 
89          - Massive cleanup, make actually legible. 
90          - Fix some clamp-to-range bugs found by Jim Cape (#68231). 
91          - Add a g_return_if_fail() if src and dest alpha don't match.
92          - Allow for src_rowstride != dest_rowstride.
93
94 2002-01-04  Hans Breuer  <hans@breuer.org>
95
96         * gdk_pixbuf.def : don't export functions prefixed
97         with underscore
98
99         * makefile.msc : use -FImsvc_recommende_pragmas.h
100
101 Thu Jan  3 19:31:58 2002  Owen Taylor  <otaylor@redhat.com>
102
103         * pixops/pixops.c (scale_line_22_33): Fix and uncomment
104         non-MMX version.
105
106         * pixops/pixops.c (pixops_composite_nearest): Remove a
107         division.
108
109         * pixops/pixops.c (pixops_composite): Add some docs
110         about the parameters.
111
112         * pixops/README: Add notes about the correct algorithms
113         for alpha compositing and how to implement them quickly.
114
115 2001-12-29  Tor Lillqvist  <tml@iki.fi>
116
117         * Makefile.am (EXTRA_DIST): Add makefile.msc.
118
119 Sat Dec 22 15:31:20 2001  Owen Taylor  <otaylor@redhat.com>
120
121         * gdk-pixdata.h: Fix trailing "," in enumeration.
122
123 2001-12-17  Matthias Clasen  <matthiasc@poet.de> 
124
125         * gdk-pixbuf.c, gdk-pixbuf-io.c, gdk-pixbuf-animation.c, 
126         gdk-pixbuf-data.c, gdk-pixbuf-loader.c, gdk-pixbuf-scale.c, 
127         gdk-pixbuf-util.c, gdk-pixdata.c: Markup fixes.
128
129 2001-12-16  Havoc Pennington  <hp@pobox.com>
130
131         * gdk-pixbuf-scale.c: docs enhancements
132
133 2001-12-14  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
134
135         * io-xpm.c: Use g_ascii_strcasecmp() instead of g_strcasecmp().
136
137 2001-12-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
138
139         * gdk-pixbuf-animation.c, gdk-pixbuf-loader.c, gdk-pixpuf.c,
140         io-gif-animation.c, io-gif.c, io-tiff.c, test-loaders.c: Remove
141         assorted G_OBJECT casts where unnecessary.
142
143         * gdk-pixbuf-loader.c: Call g_object_ref and g_object_unref
144         instead of gdk_pixbuf_animation_ref and gdk_pixbuf_animation_unref
145         resp.
146
147         * gdk-pixbuf-csource.c, io-bmp.c, io-gif-animation.c, io-ico.c,
148         io-jpeg.c, io-png.c, io-pnm.c, io-ras.c, io-tga.c, io-wbmp.c,
149         io-xbm.c, io-xpm.c, test-gdk-pixbuf.c: Dito for gdk_pixbuf_ref and
150         gdk_pixbuf_unref.
151         
152         * Makefile.am, pixops/Makefile.am: Compile everything with
153         -DG_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED
154
155         * gdk-pixdata.c: Use g_ascii_strup() instead of g_strup().
156
157         * io-xpm.c: Use g_ascii_strcasecmp() instead of g_strcasecmp().
158
159 2001-12-12  Matthias Clasen  <matthiasc@poet.de>
160
161         * gdk-pixbuf-io.c: Markup fixes.
162
163 2001-12-12  Matthias Clasen  <matthiasc@poet.de>
164
165         * Makefile.am (INCLUDES): Define G_LOG_DOMAIN. (#66412)
166
167         * gdk-pixbuf-loader.c, gdk-pixbuf-util.c: Markup fixes.
168
169 2001-12-11  Michael Natterer  <mitch@gimp.org>
170
171         * io-png.c: gdk_pixbuf__png_image_save: removed wrong endian
172         conversion stuff; don't copy RGB pixbufs' lines around before
173         saving them.
174
175 2001-12-05  Matthias Clasen  <matthiasc@poet.de>
176
177         * gdk-pixbuf.h (gdk_pixbuf_ref, gdk_pixbuf_unref,
178         gdk_pixbuf_animation_ref, gdk_pixbuf_animation_unref):
179         Deprecate. (#66208)
180
181 Tue Dec  4 11:45:45 2001  Owen Taylor  <otaylor@redhat.com>
182
183         * io-xpm.c (pixbuf_create_from_xpm): Fill in color 
184         fields to black for transparent colors since we'll
185         later initialize pixels from them. (Fixes purify
186         errors, #66093, HideToshi Tajima)
187
188 2001-11-30  Tor Lillqvist  <tml@iki.fi>
189
190         * gdk_pixbuf.def: Add gdk_pixbuf_get_option.
191
192 Fri Nov 30 15:55:34 2001  Owen Taylor  <otaylor@redhat.com>
193
194         * gdk-pixdata.c (gdk_pixdata_deserialize): Fix
195         alignment problem in deserialization, (#65785,
196         reported by Hidetoshi Tajima)
197
198 2001-11-28  Manish Singh  <yosh@gimp.org>
199
200         * gdk-pixbuf/io-bmp.c (gdk_pixbuf__bmp_image_load_increment): Fill
201         in missing error parameters to DecodeHeader and DecodeColormap.
202
203 2001-11-21  Federico Mena Quintero  <federico@ximian.com>
204
205         Fix Ximian bug #12125; merged from gdk-pixbuf stable.
206
207         * gdk-pixbuf/io-bmp.c (gdk_pixbuf__bmp_image_load_increment): Use
208         a simple state machine instead of a scary if/else chain.
209         (DecodeHeader): Set the reading state.
210         (DecodeColormap): Set the reading state.
211         (decode_bitmasks): New function, decodes the bitmasks for
212         BI_BITFIELDS coding.
213         (OneLine32): Handle BI_BITFIELDS coding.
214         (OneLine16): Likewise.
215
216 2001-11-18  Hans Breuer  <hans@breuer.org>
217
218         * io-xpm.c : use g_strcasecmp(), some poor platforms
219         don't have strcasecmp()
220
221         * makefile.msc : do INCLUDE_png etc. definition here to avoid
222         my temporary 'gdk-pixbuf-io-include.h' hack
223
224 Sun Nov 18 07:54:22 2001  Owen Taylor  <otaylor@redhat.com>
225
226         * gdk-pixbuf-loader.c: Remove include of gobject/signal.h.
227
228 2001-11-03  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
229
230         * gdk-pixbuf-loader.c, gdk-pixbuf-scale.c: Documentation fixes.
231
232 2001-10-29  Tor Lillqvist  <tml@iki.fi>
233
234         * Makefile.am: Use -no-undefined on Win32. Make
235         libgdk_pixbuf_1_3_la_OBJECTS depend on
236         gdk-pixbuf-marshal.c. Install import libraries.
237
238         * gdk_pixbuf.def: Update.
239
240         * gdk-pixbuf-io.c: (Win32) Use G_WIN32_DLLMAIN_FOR_DLL_NAME, saves
241         the actual DLL name of libgdk_pixbuf.
242         (get_libdir): Use it instead of guessing.
243
244         * io-xbm.c (gdk_pixbuf__xbm_image_begin_load): Use
245         g_file_open_tmp() insread of mkstemp().
246
247 2001-10-18  Matthias Clasen  <matthiasc@poet.de>
248
249         * io-xbm.c (gdk_pixbuf__xbm_image_load_real): Don't dereference
250         context when it may be NULL. (#62344)
251
252 2001-10-16  Matthias Clasen  <matthiasc@poet.de>
253
254         * gdk-pixdata.c, gdk-pixdata.h: Documentation.
255
256         * gdk-pixbuf-csource.1: Spelling fixes.
257
258 Wed Oct 10 11:52:17 2001  Owen Taylor  <otaylor@redhat.com>
259
260         * gdk-pixdata.c gdk-pixbuf.h: Get rid of 
261         GDK_PIXBUF_ERROR_HEADER/PIXEL_CORRUPT and use CORRUPT_IMAGE.
262         Get rid fo GD_PIXBUF_ERROR_UNKNOWN_FORMAT and use the
263         existing UKNOWN_TYPE error. (#58308)
264
265         * gdk-pixbuf.h, gdk-pixdata.c: Rename gdk_pixbuf_new_from_stream()
266         back to gdk_pixbuf_new_from_inline(). Rework docs to try
267         and be helpful for the common case. (#58308)
268
269 2001-10-05  Sven Neumann  <sven@gimp.org>
270
271         * gdk-pixbuf/gdk-pixbuf-io.c
272         * gdk-pixbuf/gdk-pixbuf-private.h
273         * gdk-pixbuf/gdk-pixbuf.c
274         * gdk-pixbuf/gdk-pixbuf.h
275         * gdk-pixbuf/io-jpeg.c
276         * gdk-pixbuf/io-png.c: changed GDK_PIXBUF_ERROR_BAD_OPTION_VALUE to
277         GDK_PIXBUF_ERROR_BAD_OPTION to we can use it for bad keys too. Added
278         new public API gdk_pixbuf_get_option() to retrieve key/value pairs
279         set by an image loader. Added support for saving and reading PNG tEXt 
280         chunks in PNG images.
281
282 Tue Oct  2 11:29:50 2001  Owen Taylor  <otaylor@redhat.com>
283
284         * gdk-pixdata.c (gdk_pixdata_to_csource): Fix indentation
285         use a macro to make code a bit more readable.
286
287 2001-10-02  Sven Neumann  <sven@gimp.org>
288
289         * gdk-pixdata.c: g_string_printfa => g_string_append_printf. 
290
291 Wed Sep 26 18:08:19 2001  Owen Taylor  <otaylor@redhat.com>
292
293         * Makefile.am (s-enum-types-h): Fix a typo in the include
294         guards. (#61254, Skip Montaro)
295
296 2001-09-21  Matthias Clasen  <matthiasc@poet.de>
297
298         * io-xpm.c (xpm_extract_color): Rewritten to handle
299         xpm colormap entries more thoroughly. (#59939)
300
301 2001-09-21  Hans Breuer  <hans@breuer.org>
302
303         * gdk-pixbuf.def : updated externals
304
305         * makefile.msc : generate gdk-pixbuf-enum-types.[hc]
306
307 Thu Sep 20 17:22:48 2001  Owen Taylor  <otaylor@redhat.com>
308
309         * io-tiff.c (gdk_pixbuf__tiff_image_load): On OSF, apparently fseek()
310         works in some on-demand way, so the fseek gdk_pixbuf_new_from_file() doesn't 
311         work here since we are using the raw file descriptor. So, we call lseek()
312         on the fileno(f) before using it. (#60840).
313
314 2001-09-20  James Henstridge  <james@daa.com.au>
315
316         * Makefile.am (gdk-pixbuf-enum-types.c): same change as in pango,
317         so that flags types are registered as flags rather than enums (not
318         that there are any flags here at the moment).
319
320 Wed Sep 19 00:28:24 2001  Owen Taylor  <otaylor@redhat.com>
321
322         * Makefile.am (gdk_pixbuf_headers): Don't include
323         gkd-pixbuf-features.h here since is in builddir
324         and confuses autogen rules.
325
326         * Makefile.am: Don't += variables before they have values,
327         automake-1.5 doesn't like it.
328
329         * Makefile.am: Fix srcdir != builddir for gdk-pixbuf-enum-types.c.
330
331         * Makefile.am: The whitespace strikes back.
332         
333 2001-09-17  Matt Wilson  <msw@redhat.com>
334
335         * Makefile.am (libpixbufloader_xbm_la_LDFLAGS): removed duplicate
336         LDFLAGS definition, use the -avoid-version one.
337         (libpixbufloader_tga_la_LDFLAGS): likewise
338
339 Mon Sep 17 11:49:02 2001  Owen Taylor  <otaylor@redhat.com>
340
341         * pixops/*: Mirror GdkInterpType to PixopsInterpType
342         to avoid including gdk-pixbuf headers.
343
344 2001-09-16  James Henstridge  <james@daa.com.au>
345
346         * .cvsignore: add generated files to ignore list.
347
348         * gdk-pixbuf.h: include gdk-pixbuf-enum-types.h
349
350         * Makefile.am: add rules to build gdk-pixbuf-enum-types.[ch]
351
352 Fri Sep 14 23:22:12 2001  Matthias Clasen  <matthiasc@poet.de>
353
354         * io-pnm.c (pnm_read_header): Use GDK_PIXBUF_ERROR_CORRUPT_IMAGE,
355         not GDK_PIXBUF_ERROR_HEADER_CORRUPT. (#58308)
356
357 Fri Sep 14 22:53:45 2001  Matthias Clasen  <matthiasc@poet.de>
358
359         * io-jpeg.c (gdk_pixbuf__jpeg_image_begin_load): Handle
360         out-of-memory situation better.
361
362         * io-pnm.c: Robustness fixes for pnm loader
363
364         * io-gif.c: Make gif loader survive TEST_RANDOMLY_MODIFY
365
366         * io-xpm.c (parse_color): detect very long color strings
367
368         All of the above from Matthias Clasen <matthiasc@poet.de>,
369         the remaining from Soeren Sandmann <sandmann@daimi.au.dk>.
370
371         * test-images.h: add tests:
372                 - four valid ppm's, eight invalid (matthiasc@poet.de)
373                 - one invalid xpm (matthiasc@poet.de)
374                 - one valid tga, one invalid (sandmann@daimi.au.dk)
375                 - one invalid tiff (sandmann@daimi.au.dk
376
377         * test-loaders.c: enable tests for ppm, png, gif, tga, tiff, xpm
378         
379         * io-tiff.c (gdk_pixbuf__tiff_image_stop_load): TIFFClientOpen can
380         fail - detect it when it happens
381
382         * io-tga.c (gdk_pixbuf__tga_load_increment): Fail if there is too
383         much data in file
384         
385         * gdk-pixbuf-io.c: moved wbmb check after ico check to avoid false
386         positives
387         
388 Fri Sep 14 00:30:48 2001  Tim Janik  <timj@gtk.org>
389
390         * Makefile.am: don't used BUILT_SOURCES to build marshal
391         files, as in conjunction with stamp files, this can
392         lead to endless rebuilding loops.
393
394 Tue Sep  4 00:22:07 2001  Owen Taylor  <otaylor@redhat.com>
395
396         * Makefile.am: Fix EXTRA_DIST for gdk-pixbuf-csource.1
397
398 Tue Sep  4 03:09:52 2001  Tim Janik  <timj@gtk.org>
399
400         * gdk-pixbuf-csource.1: new file, manual page for
401         the publically installed gdk-pixbuf-csource utility.
402
403 Thu Aug 30 08:30:03 2001  Matthias Clasen  <matthiasc@poet.de>
404
405         * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Propagate
406         errors from gdk_pixbuf_loader_load_module.
407
408 Thu Aug 30 08:27:37 2001  Matthias Clasen  <matthiasc@poet.de>
409
410         * io-png.c (png_row_callback): Check that row_num is valid.
411
412 Tue Aug 28 21:05:26 2001  Matthias Clasen  <matthiasc@poet.de>
413
414         * io-bmp.c (OneLine): Emit area_updated signal with proper
415         area information. (#52002)
416
417 Tue Aug 28 20:03:43 2001  Matthias Clasen  <matthiasc@poet.de>
418
419         * test-loaders.c (test_loader): Catch errors at close time. 
420         * test-loaders.c (main): Remove C++ comments. 
421
422 2001-08-21  Matthias Clasen  <matthiasc@poet.de>
423
424         * Makefile.am, gdk-pixbuf-io.c, pixbufloader_tga.def, 
425         io-tga.c: Add tga loader, patch by Nicola Girardi. (#56067)
426
427 2001-08-20  Matthias Clasen  <matthiasc@poet.de>
428
429         * test-images.h, test-loaders.c: Add ico and wbmp tests.
430         * io-jpeg.c (gdk_pixbuf__jpeg_image_save): Fail with a suitable
431         error if buffer allocation fails.
432         * io-ico.c: Make .ICO loader more robust.
433         All of these are due to sandmann@daimi.au.dk (#50187)
434
435 2001-08-19  Sven Neumann  <sven@gimp.org>
436
437         * pixops/pixops.c: applied some simple but effective optimizations 
438         to pixops_composite_nearest() and pixops_composite_color_nearest().
439
440 2001-08-07  Sven Neumann  <sven@gimp.org>
441
442         * gdk-pixbuf.c (gdk_pixbuf_fill): a comment asked to optimize this
443         function, so that's what I did.
444
445 2001-08-06  Kjartan Maraas  <kmaraas@gnome.org>
446
447         * gdk-pixdata.c: Fix a typo.
448         
449 2001-07-30  Hans Breuer  <hans@breuer.org>
450
451         * pixops/makefile.msc : new file
452         * makefile.msc : use it to complete the build
453
454 2001-07-20  Hans Breuer  <hans@breuer.org>
455
456         * gdk-pixdata.c : don't 'g_tohl (*istream++)', but move
457         pointer increment out of the macro, because  at least one
458         compiler (msvc 5.0) gets confused otherwise (applies the
459         wrong increment).
460
461         * gdk_pixbuf.def : updated exports
462
463         * makefile.msc : reflect gdk-pixbuf-csource changes
464  
465 2001-07-17  Darin Adler  <darin@bentspoon.com>
466
467         * gdk-pixbuf-csource.c: Add missing <stdlib.h> include.
468         * io-png.c: (setup_png_transformations): Add ifdef so we compile
469         without warnings with G_DISABLE_CHECKS on.
470         * io-pnm.c: (gdk_pixbuf__pnm_image_load_increment): Add a missing
471         const.
472         * io-wbmp.c: (getin), (get_mbi): Add a missing const.
473         * io-xbm.c: (gdk_pixbuf__xbm_image_load_real): Get rid of some
474         unused locals and add an initial value to quiet the compiler's
475         unintialized variable warning.
476         * pixops/pixops.c: Put an ifdef around some dead code.
477
478 Thu Jul  5 10:17:15 2001  Owen Taylor  <otaylor@redhat.com>
479
480         * pixops/Makefile.am (noinst_LTLIBRARIES): Switch
481         over to the new include flags AC_SUBST(). (Problem
482         pointed out by Mikael Hermansson.)
483
484 2001-06-29  Havoc Pennington  <hp@redhat.com>
485
486         * gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): fix for
487         G_DISABLE_COMPAT
488
489 Thu Jun 28 21:54:19 2001  Owen Taylor  <otaylor@redhat.com>
490
491         * make-inline-pixbuf.c test-gdk-pixbuf.c test-loaders.c
492         gdk-pixbuf-csource.c: Fix args to g_type_init ().
493
494 2001-06-28  Havoc Pennington  <hp@pobox.com>
495
496         * gdk-pixdata.c: <string.h>
497
498         * gdk-pixbuf-io.c (get_libdir): fix typo in dll name (aren't we
499         also leaking memory here from g_strdup_printf?)
500
501 Tue Jun 26 09:48:02 2001  Tim Janik  <timj@gtk.org>
502
503         * Makefile.am (noinst_PROGRAMS): get rid of make-inline-pixbuf
504
505         * gdk-pixbuf-data.[hc]: provide gdk_pixbuf_new_from_stream()
506         instead from gdk_pixbuf_new_from_inline().
507
508         * gdk-pixdata.[hc]: auxillary GdkPixdata structure, public
509         installed API for applications that need to serialize/deserialize
510         on their own (gimp, BEAST).
511         
512         * gdk-pixbuf/gdk-pixbuf-csource.c: provide publically installed
513         program that can dump images in CSource format and Pixbuf
514         stream format. supports RLE encoding, MACRO formatting etc...
515         invoke with --help.
516
517 Mon Jun 25 00:28:11 2001  Owen Taylor  <otaylor@redhat.com>
518
519         * Makefile.am: Actually update timestamps, so rules don't
520         constantly run.
521
522 2001-06-11  Havoc Pennington  <hp@redhat.com>
523
524         * Makefile.am (stamp-gdk-pixbuf-marshal.c): glib_genmarshal
525         already includes top_builddir
526
527 2001-06-08  Havoc Pennington  <hp@redhat.com>
528
529         * gdk-pixbuf-loader.c (gdk_pixbuf_loader_load_module): remove
530         bogus g_return_if_fail  
531
532         * io-gif.c (gif_get_lzw): if delay time is 0 or smaller than
533         likely timeout resolution, set it to an arbitrarily-chosen short
534         delay.
535         Fixes bug #55953 from warmenhoven@yahoo.com
536
537 2001-06-07  Havoc Pennington  <hp@redhat.com>
538
539         * Makefile.am: use Owen's new way of doing stampfiles/generated
540         sources
541
542 2001-06-07  Havoc Pennington  <hp@redhat.com>
543
544         * Makefile.am (gdk-pixbuf-marshal.c): fix up the glib-genmarshal path
545
546 2001-06-05  Havoc Pennington  <hp@redhat.com>
547
548         * test-loaders.c (main): use putenv not setenv, reported by 
549          Armin Theissen
550
551 2001-05-08  Havoc Pennington  <hp@redhat.com>
552
553         * gdk-pixbuf-util.c (gdk_pixbuf_add_alpha): docs fixup, 
554         and fix behavior to still subst color if the original image 
555         had alpha
556
557 2001-06-04  Havoc Pennington  <hp@redhat.com>
558
559         * io-pnm.c (pnm_skip_whitespace): patch from Szekeres Istvan,
560         bug #52560
561
562 2001-06-01  Havoc Pennington  <hp@redhat.com>
563
564         Apply patch from sandmann@daimi.au.dk, with some tweaks.
565         Makes things a bit more robust, and adds test-loaders.c 
566         which is good for finding further robustness bugs to fix.
567         
568         * io-tiff.c: Try to work around libtiff suckiness a bit; 
569         put a giant thread lock on the whole loader, 
570         paranoically check both whether error handlers were called and
571         also whether functions return false. Handle case where width or
572         height is 0. Various cleanups.
573
574         * io-png.c (gdk_pixbuf__png_image_stop_load): only unref pixbuf
575         if it existed
576         (png_error_callback): apparently libpng expects you to longjmp out
577         of this thing?
578
579         * io-gif.c (struct _GifContext): remove unused "pixbuf" field
580         (lzw_read_byte): change "Mail jrb if this fails" g_warning 
581         to a g_set_error()
582         (gif_get_lzw): check for out-of-memory
583         (gif_prepare_lzw): catch/report an error
584         (new_context): use try_malloc, since GifContext is nearly 70K
585         (gdk_pixbuf__gif_image_load_increment): set context->buf to NULL
586         so we don't crash later.
587
588         * Makefile.am: Add test-loaders
589
590         * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): handle context ==
591         NULL due to errors
592         
593 2001-05-29  Darin Adler  <darin@eazel.com>
594
595         * gdk-pixbuf.h: Fix prototype to use "(void)" instead of "()".
596
597 Mon May 28 14:21:35 2001  Jonathan Blandford  <jrb@redhat.com>
598
599         * io-bmp.c: Patch from Helmethead <hoshem@mel.comcen.com.au> to
600         fix up bmp decoder to: 
601          - adds 16 bpp bmp support (bug #53884)
602          - adds OS/2 1.x format bmp support (bug #54964)
603          - adds 4 bpp RLE compressed bmp support
604          - adds 1 bpp colormap support
605          - fixes negative height (top down) bmp support
606
607 2001-05-25  Hans Breuer  <hans@breuer.org>
608
609         * gdk_pixbuf.def : reflect Havoc's recent api change
610
611 Sun May 20 12:53:49 2001  Owen Taylor  <otaylor@redhat.com>
612
613         * Makefile.am (libgdk_pixbuf_1_3_la_LDFLAGS): Remove an
614         excess $(GLIB_LIBS).
615
616 Sun May 13 11:59:11 2001  Owen Taylor  <otaylor@redhat.com>
617
618         * Makefile.am: Make modules depend on libgdk_pixbuf.la.
619
620 2001-05-04  Havoc Pennington  <hp@redhat.com>
621
622         * pixops/pixops.c (pixops_process): merge fix from stable: Patch
623          from hoshem@mel.comcen.com.au to fix nonzero X offsets.  Fixes
624          bug #50371.
625         
626         * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest): merge
627         from stable: Patch from OKADA Mitsuru <m-okada@fjb.co.jp> to fix
628         confusion of using "src" instead of "p".
629         (pixops_composite_color_nearest): Use a more accurate (and
630         correct, to begin with) compositing method.  This cures checks
631         showing through on images with no alpha.
632
633         * gdk-pixbuf.c (gdk_pixbuf_fill): fix bug that left some trailing
634         bytes unfilled.
635
636         * gdk-pixbuf-io.h: fix UpdatedNotifyFunc to use signed ints
637
638         * gdk-pixbuf-loader.h (struct _GdkPixbufLoaderClass): Change
639         area_updated signal to use signed ints.  Removed animation-related
640         signals.
641
642         * io-gif.c, io-gif-animation.h, io-gif-animation.c: Massive
643         rewrite action
644
645         * gdk-pixbuf-animation.c: Add GdkPixbufAnimationIter to abstract
646         all the pesky details. Remove old frame-based API. Make
647         GdkPixbufAnimation an abstract base class, derived by the loaders.
648
649 Sun Apr 22 15:51:32 2001  Owen Taylor  <otaylor@redhat.com>
650
651         * Makefile.am (LDADDS): Add $(MATH_LIB).
652
653 2001-04-18  Havoc Pennington  <hp@redhat.com>
654
655         * gdk-pixbuf.c (gdk_pixbuf_fill): Function to fill pixbuf with a
656         given color.
657
658 Wed Apr  4 01:41:02 2001  Tim Janik  <timj@gtk.org>
659
660         * pixops/Makefile.am (noinst_LTLIBRARIES): include $top_srcdir
661         so we don't try to get <gtk/gtkobject.h> from standard search
662         paths.
663
664         * Makefile.am (gdk-pixbuf-marshal.c): use deps from srcdir.
665         add gdk-pixbuf-marshal.list to EXTRA_DIST.
666         take gdk-pixbuf-marshal.h out of _la sources.
667
668 2001-03-19  Tor Lillqvist  <tml@iki.fi>
669
670         * makefile.mingw.in: Handle gdk-pixbuf-marshal.c.
671
672         * gdk_pixbuf.def: Update.
673
674         * pixbufloader_*.def: Just export the fill_vtable functions now.
675
676 2001-03-18  Mike Kestner  <mkestner@ameritech.net>
677
678         * make-inline-pixbuf.c (main): Added logic to remove output when
679         failures occur.
680
681 2001-03-14  Havoc Pennington  <hp@redhat.com>
682
683         * Makefile.am (gdk-pixbuf-marshal.c): Use different temporary file
684         from gdk-pixbuf-marshal.h, fixes parallel makes.
685
686 Thu Mar  1 04:01:57 2001  Tim Janik  <timj@gtk.org>
687
688         * test-gdk-pixbuf.c: fixed includes.
689
690 2001-02-18  Havoc Pennington  <hp@pobox.com>
691
692         * gdk-pixbuf-io.c (gdk_pixbuf_load_module): prepend underscore
693         (gdk_pixbuf_get_named_module): prepend underscore
694         (gdk_pixbuf_get_module): prepend underscore
695
696 2001-02-19  Havoc Pennington  <hp@redhat.com>
697
698         * gdk-pixbuf-io.c (gdk_pixbuf_load_module): const fix
699
700 2001-02-17  Havoc Pennington  <hp@pobox.com>
701
702         * gdk-pixbuf-loader.c (gdk_pixbuf_loader_new_with_type): docs
703
704 2001-02-07  Alexander Larsson  <alexl@redhat.com>
705
706         * io-xpm.c (free_buffer):
707         Use g_free, since the buffer is allocated with g_try_alloc().
708
709 2001-02-06  Christophe Merlet  <redfox@eikonex.org>
710
711         * gdk-pixbuf-data.c: Fixes a minor typo.
712
713 Sun Feb  4 07:59:57 2001  Tim Janik  <timj@gtk.org>
714
715         * gdk-pixbuf.h: DOH! don't include glib/gobject.h but glib-object.h,
716         we finally need the gobject->gruntime rename.
717
718         * *.c: scratched calls to g_type_init(), there's simply no point in
719         doing that, use gtk_init().
720
721 2001-02-01  Havoc Pennington  <hp@pobox.com>
722
723         * gdk-pixbuf-loader.c, gdk-pixbuf-loader.h: rename "private" field
724         in struct to "priv" for C++
725
726 2001-01-31  Havoc Pennington  <hp@pobox.com>
727
728         * gdk-pixbuf.c: include glib-object.h instead of gvaluetypes.h
729
730 2001-01-26  Havoc Pennington  <hp@redhat.com>
731
732         * gdk-pixbuf-io.c (mname): fix included modules case.
733
734 2001-01-22  Havoc Pennington  <hp@redhat.com>
735
736         * gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): check errors 
737         from gdk_pixbuf_load_module
738
739 2001-01-22  Havoc Pennington  <hp@redhat.com>
740
741         * Makefile.am: Add built marshaller files to support
742         GdkPixbufLoader signals
743
744         * gdk-pixbuf-io.c (gdk_pixbuf_load_module): have
745         GDK_PIXBUF_MODULEDIR unconditionally replace the compiled-in
746         module location, rather than acting as a fallback, because we are
747         using GDK_PIXBUF_MODULEDIR to use gdk-pixbuf before installing it.
748
749         * gdk-pixbuf.h: include gdk-pixbuf-loader.h
750
751         * gdk-pixbuf-loader.h, gdk-pixbuf-loader.c: Move back over here
752         from gtk, and add error to close(), because stop_load may do
753         parsing of the image.
754         
755         * pixops/have_mmx.S (_pixops_have_mmx): add newline at end of file
756
757         * io-*.c: make individual operations static, and add fill_vtable
758         functions which are exported. Fix the collection of type warnings
759         that surfaced, including a number of functions that didn't
760         properly take a GError and some that weren't
761         const-correct. Involved adding error handling for a few loaders.
762
763         * gdk-pixbuf-io.h: Add error reporting to stop_load function
764         
765         * gdk-pixbuf-io.c (gdk_pixbuf_load_module): change to just look up
766         a function that fills in the GdkPixbufModule vtable, instead of 
767         looking up all the image functions individually; this means we 
768         can get type safety within modules for the loader functions.
769         Also it means you don't have to keep the statically compiled and 
770         GModule versions in sync. 
771
772         * test-gdk-pixbuf.c (main): remove gdk_pixbuf_init()
773
774         * make-inline-pixbuf.c (main): remove call to gdk_pixbuf_init()
775
776         * gdk-pixbuf.h: nuke gdk_pixbuf_init()
777         
778         * gdk-pixbuf-animation.c (gdk_pixbuf_frame_get_type): g_type_init
779         () here
780
781         * gdk-pixbuf.c (gdk_pixbuf_get_type): g_type_init () here
782
783         * gdk-pixbuf-animation.c (gdk_pixbuf_animation_get_type):
784         g_type_init() here
785
786 2001-01-20  John Harper  <jsh@eazel.com>
787
788         * io-xbm.c: new pixbuf loader, for X bitmap files. Basically a
789         collision between Xlib's RdBitF.c and io-tiff.c
790
791         * gdk-pixbuf-io.c, Makefile.am, pixbufloader_xbm.def: added
792         io-xbm.c support
793
794         [ merged from stable gdk-pixbuf module. Untested, but it
795         compiles, and works fine in the stable module ]
796
797 2001-01-18  Tor Lillqvist  <tml@iki.fi>
798
799         * gdk-pixbuf-io.c (get_libdir): (Win32) Use the new
800         g_win32_get_package_installation_subdirectory() function.  No need
801         to include windows.h.
802         (gtk_win32_get_installation_directory): Remove this then.
803
804 2001-01-01  Havoc Pennington  <hp@redhat.com>
805
806         * Makefile.am (libgdk_pixbuf_1_3_la_LDFLAGS): add
807         @LIBTOOL_EXPORT_OPTIONS@
808
809 2000-12-30  Tor Lillqvist  <tml@iki.fi>
810
811         * gdk_pixbuf.def: Update.
812
813 2000-12-16  Havoc Pennington  <hp@pobox.com>
814
815         * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file): ref
816         the pixbuf in the frame, so we can use gdk_pixbuf_frame_free
817         (gdk_pixbuf_frame_copy): new function
818         (gdk_pixbuf_frame_free): new function
819         (gdk_pixbuf_frame_get_type): new function
820         (GDK_TYPE_PIXBUF_FRAME): macro to get type for GdkPixbufFrame
821
822 Tue Nov 14 11:51:26 2000  Owen Taylor  <otaylor@redhat.com>
823
824         * Makefile.am: Add -avoid-version for all modules.
825
826 2000-11-13  Havoc Pennington  <hp@redhat.com>
827
828         * io-png.c (png_simple_error_callback): fix error message to not
829         say "save" since it's used for loading
830
831 2000-11-11  Hans Breuer <Hans@Breuer.Org>
832
833         * gdk-pixbuf-io.c : Fix all function prototype macros for self 
834         contained image handlers (!USE_G_MODULE). Files to save should
835         be opened in binary mode, fopen(s, "wb").
836
837         * io-xpm.c : added HAVE_UNISTD_H condition
838
839 2000-11-11  Tor Lillqvist  <tml@iki.fi>
840
841         * gdk_pixbuf.def: Add gdk_pixbuf_new_subpixbuf.
842
843         * io-tiff.c (gdk_pixbuf__tiff_image_begin_load): Use
844         g_file_open_tmp() (just added to GLib) instead of mkstemp() (or
845         mktemp() and open()).
846         
847         * io-xpm.c (gdk_pixbuf__xpm_image_begin_load): Ditto.
848
849 2000-11-01  Havoc Pennington  <hp@pobox.com>
850
851         * gdk-pixbuf.c (gdk_pixbuf_new_subpixbuf): New function to create 
852         a pixbuf pointing to a subregion of another pixbuf.
853
854 2000-10-16  Tor Lillqvist  <tml@iki.fi>
855
856         * gdk-pixbuf-io.c: Define also m_save (for the non-gmodule case).
857
858 2000-10-16  Havoc Pennington  <hp@redhat.com>
859
860         * gdk-pixbuf-io.c (gdk_pixbuf_get_module)
861         (gdk_pixbuf_get_named_module) (gdk_pixbuf_load_module): 
862         add error reporting here also
863
864         * make-inline-pixbuf.c (main): use GError
865
866         * io-xpm.c: include unistd.h
867
868         * gdk-pixbuf-util.c: include string.h
869
870         * io-*.c: add error reporting
871         
872         * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file): add
873         error reporting
874
875         * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file): Add error reporting
876
877         * gdk-pixbuf-io.h: Add GError** to load_increment and load 
878         methods
879
880         * gdk-pixbuf-io.c (gdk_pixbuf_save) (gdk_pixbuf_savev): return 
881         a G_FILE_ERROR if we fail to write or close the file.
882
883         * gdk-pixbuf.h: remove GDK_PIXBUF_ERROR_IO, instead we'll use
884         G_FILE_ERROR_*. Rename enum to GdkPixbufError, properly following
885         the GError naming rules. Add GError** to load functions.
886
887 2000-10-06  Havoc Pennington  <hp@redhat.com>
888
889         * gdk-pixbuf.h: add GdkPixbufAlphaMode
890
891 2000-10-06  Havoc Pennington  <hp@redhat.com>
892
893         This entry is a summary of the merged-in changes from 1.0. 
894         Relevant original ChangeLog entries are spliced in after 
895         this entry; the files they refer to are from the 1.0
896         gdk-pixbuf sources.
897         
898         * pixops/pixops.c (pixops_composite_nearest): sync a small fix
899         from 1.0
900
901         * io-xpm.c (xpm_seek_string): add fscanf error check from 1.0
902         Add progressive loader from 1.0
903
904         * io-tiff.c (gdk_pixbuf__tiff_image_begin_load): mem leak fixes
905         from 1.0 tree
906
907         * io-pnm.c: new version from 1.0 tree
908
909         * io-jpeg.c (gdk_pixbuf__jpeg_image_load): sync from 1.0, use 
910         malloc not g_malloc
911
912         * io-gif.c (lzw_read_byte): sync from 1.0, change a g_error to
913         g_warning
914         (gif_get_next_step): return 0 here, sync from 1.0
915
916         * gdk-pixbuf-util.c: sync email address change for Cody
917         Russell
918
919 2000-09-11  Jeffrey Stedfast  <fejj@helixcode.com>
920
921         * gdk-pixbuf/io-pnm.c: Pretty much totally rewrote again because
922         last nights code was still "broken". Should now properly handle
923         all error conditions gracefully.
924
925 2000-09-10  Jeffrey Stedfast  <fejj@helixcode.com>
926
927         * gdk-pixbuf/io-pnm.c: Rewrote.
928
929 2000-09-09  Federico Mena Quintero  <federico@helixcode.com>
930
931         * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest): Compute
932         the correct dest offset.
933
934 2000-08-25  Federico Mena Quintero  <federico@helixcode.com>
935
936         * gdk-pixbuf/io-xpm.c: #include <unistd.h>
937
938 2000-08-05  Larry Ewing  <lewing@helixcode.com>
939
940         * gdk-pixbuf/io-tiff.c: stop leaking context->tempname.
941
942         * gdk-pixbuf/io-xpm.c: same as above.
943
944 2000-07-26  Michael Meeks  <michael@helixcode.com>
945
946         * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_load): make
947         g_malloc a malloc.
948
949 2000-07-21  Larry Ewing  <lewing@helixcode.com>
950
951         * gdk-pixbuf/io-xpm.c: add a fake progressive loader so that
952         xpm at least supports the progressive interface like the one in
953         io-tiff.c. This should be reimplemented as an actual progressive
954         loader.
955
956 2000-07-19  Jonathan Blandford  <jrb@redhat.com>
957
958         * demo/pixbuf-demo.c (update_timeout): changed scaling level to
959         make it look better.
960         * gdk-pixbuf/testpixbuf.c (update_timeout): Patch from michael
961         meeks to handle errors better.
962         
963 2000-10-07  Tor Lillqvist  <tml@iki.fi>
964
965         * gdk_pixbuf.def
966         * pixbufloader_jpeg.def
967         * pixbufloader_png.def: Add new entry points.
968
969         * makefile.mingw.in: Use libintl.
970
971 2000-10-06  Havoc Pennington  <hp@redhat.com>
972
973         * gdk-pixbuf-io.c (gdk_pixbuf_save): s/format/type/g to be
974         consistent with gdk_pixbuf_loader_new_with_type(). 
975         Return runtime error if a module is missing.
976
977         * gdk-pixbuf.h: add GDK_PIXBUF_ERROR_UNKNOWN_TYPE
978
979 2000-10-05  Havoc Pennington  <hp@redhat.com>
980
981         Pixbuf saving, patch from David Welton.
982         
983         * Makefile.am (GDK_PIXBUF_LIBS): add INTLLIBS
984         (libgdk_pixbuf_1_3_la_SOURCES): add gdk-pixbuf-i18n.h
985
986         * gdk-pixbuf-i18n.h: Add _() to gdk-pixbuf
987
988         * io-png.c (gdk_pixbuf__png_image_save): PNG save routine.
989
990         * io-jpeg.c (gdk_pixbuf__jpeg_image_save): JPEG save routine.
991
992         * gdk-pixbuf-io.c (gdk_pixbuf_save): 
993         (gdk_pixbuf_savev): Implement pixbuf saving routines
994
995         * gdk-pixbuf.c (gdk_pixbuf_error_quark): pixbuf error quark
996         function
997
998         * gdk-pixbuf.h: Add public save routines; add pixbuf error 
999         types
1000
1001         * gdk-pixbuf-io.h: Add save function to GdkPixbufModule
1002
1003 2000-10-05  Dan Winship  <danw@helixcode.com>
1004
1005         * io-png.c, io-tiff.c, io-xpm.c: Fix comments to not claim that
1006         all three of these files are the JPEG image loader. (From
1007         gdk-pixbuf module.)
1008
1009 2000-10-03  Tor Lillqvist  <tml@iki.fi>
1010
1011         * makefile.mingw.in: Add rule for make-inline-pixbuf. Use
1012         gdk-pixbuf's version number in the rule for makefile.mingw itself.
1013
1014         * gdk_pixbuf.def: Add new entry points.
1015
1016 2000-09-26  Havoc Pennington  <hp@redhat.com>
1017
1018         * gdk-pixbuf-util.c (gdk_pixbuf_saturate_and_pixelate): Add this
1019         function here, instead of putting it in a private GTK+ file.
1020
1021         * gdk-pixbuf-private.h (GdkPixbufInlineFormat): include an 
1022         enum here for the known formats of inlined pixbufs.
1023         Also, #define our file magic here.
1024
1025 2000-06-23  Havoc Pennington  <hp@redhat.com>
1026
1027         * make-inline-pixbuf.c: Small program that creates C variable
1028         declarations of inline pixbuf data. This can be read 
1029         by gdk_pixbuf_new_from_inline.
1030
1031         * gdk-pixbuf.h (gdk_pixbuf_new_from_inline): New function to read
1032         inline pixbuf data and create a pixbuf from it. 
1033
1034         * gdk-pixbuf-data.c (gdk_pixbuf_new_from_inline): implement here
1035
1036 2000-09-07  Tor Lillqvist  <tml@iki.fi>
1037
1038         * makefile.mingw.in: Use own version number for gdk-pixbuf DLLs,
1039         like on Unix.
1040
1041 2000-08-12  Tor Lillqvist  <tml@iki.fi>
1042
1043         * gdk_pixbuf.def: Add missing entry point.
1044
1045 2000-08-10  Havoc Pennington  <hp@redhat.com>
1046
1047         * Makefile.am (EXTRA_DIST): The *.def files had the wrong names
1048         (s/pixbuf_/pixbufloader_)
1049         
1050 2000-08-02  Tor Lillqvist  <tml@iki.fi>
1051
1052         * io-bmp.c
1053         * io-ico.c
1054         * io-ras.c
1055         * io-tiff.c
1056         * io-wbmp.c: Conditionalise inclusion of <unistd.h>.
1057
1058         * makefile.mingw.in: List loaders alphabetically. Add the wbmp
1059         one. Fix names of DLLs to have '-' instead of '_'.
1060
1061 2000-07-31  Elliot Lee  <sopwith@redhat.com>
1062         * io-wbmp.c: Some bug fixes - now tested to work.
1063
1064 2000-07-27  Elliot Lee  <sopwith@redhat.com>
1065
1066         * gdk-pixbuf-io.h, gdk-pixbuf-io.c: Add
1067         gdk_pixbuf_get_named_module() function to facilitate above change
1068         * io-wbmp.c, pixbufloader_wbmp.defs, gdk-pixbuf-io.c, Makefile:
1069         Implement loader for WBMP format.
1070         * io-bmp.c: Don't malloc a temporary buffer - use stack instead.
1071
1072 2000-07-23  Tor Lillqvist  <tml@iki.fi>
1073
1074         Win32 build setup:
1075         
1076         * makefile.mingw.in
1077         * pixops/makefile.mingw.in
1078         * pixbuf_*.def: New files.
1079
1080         * Makefile.am
1081         * pixops/Makefile.am: Add them. Add rule to generate makefile.mingw.
1082
1083         * gdk-pixbuf-io.c (gtk_win32_get_installation_directory):
1084         New function, to get the GTK+ installation directory from
1085         the Windows Registry, where the installation program
1086         for whatever software includes GTK+ has stored it.
1087
1088         Used to avoid having hardcoding the directory where to look for
1089         loaders. This function is needed by gtk, too, so it should
1090         really be just in one place. Maybe a small static library
1091         one level up from here?
1092
1093         * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file)
1094         * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file): 
1095         Open file in binary mode. This *is* standard C. (No-op on Unix,
1096         of course.)
1097
1098         * io-jpeg.c: If we don't HAVE_SIGSETJMP, use normal setjmp().
1099
1100         * io-tiff.c: Use g_get_tmp_dir(). If we don't HAVE_MKSTEMP, use
1101         mktemp() and open().
1102         (gdk_pixbuf__tiff_image_stop_load): g_free() also the tempname.
1103
1104         * pixops/*.S: The Gas from mingw32 doesn't like the .type
1105         pseudo-op. Conditionalise on __MINGW32__, but probably
1106         should conditionalise on Gas version instead? Or could we
1107         do without .type on all systems?
1108
1109         * pixops/timescale.c: Use g_get_current_time()
1110         instead of gettimeofday().
1111
1112 Sat Jul 22 10:57:22 2000  Owen Taylor  <otaylor@redhat.com>
1113
1114         * Makefile.am (test_gdk_pixbuf_LDADD): Remove -lgmodule
1115
1116 Tue Jul 11 11:26:42 2000  Owen Taylor  <otaylor@redhat.com>
1117
1118         * gdk-pixbuf.c: Add <string.h> include.
1119
1120 Tue Jul 11 06:20:14 2000  Tim Janik  <timj@gtk.org>
1121
1122         * io-gif.c (gdk_pixbuf__gif_image_load_animation): 
1123         * gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): 
1124         * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file): 
1125         use g_object_new() instead of g_type_create_instance() which
1126         is a private function for fundamental type implementations.
1127         
1128 Thu Jul  6 11:49:47 2000  Owen Taylor  <otaylor@redhat.com>
1129
1130         * Makefile.am (libgdk_pixbuf_la_LDFLAGS): Use GTK+ version
1131         soname scheme for gdk-pixbuf.
1132         
1133 2000-06-21  Havoc Pennington  <hp@pobox.com>
1134
1135         * gdk-pixbuf.c: Convert GdkPixbuf to GObject, leaving it opaque
1136         (i.e. derivation is not allowed, and there are no virtual methods
1137         anyway).
1138         (gdk_pixbuf_preinit): Call g_type_init() here.
1139         (gdk_pixbuf_init): Add a user-friendly init function, for users
1140         of standalone gdk-pixbuf
1141
1142         * gdk-pixbuf-animation.c: Convert to GObject, in the same
1143         way GdkPixbufAnimation was done.
1144         
1145         * gdk-pixbuf.h: Remove gdk_pixbuf_set_unref_handler() and
1146         gdk_pixbuf_finalize() from API, since these are broken and don't
1147         make sense with new GObject stuff.
1148
1149 Wed Jun 21 16:02:48 2000  Owen Taylor  <otaylor@redhat.com>
1150
1151         * gdk-pixbuf-io.c (gdk_pixbuf_load_module): Add feature to
1152         support a GDK_PIXBUF_MODULEDIR env variable as a secondary
1153         load location.
1154
1155 2000-06-10  Federico Mena Quintero  <federico@helixcode.com>
1156
1157         * demo/pixbuf-demo.c: It was cold and rainy this Saturday morning,
1158         so I needed something to warm my thighs.  Running plain infinite
1159         loops on your laptop to make it hot is not very much fun.  A demo
1160         of the gdk-pixbuf scaling functions is way better, and looks
1161         prettier, too.
1162
1163         * configure.in (AC_OUTPUT): Added the demo Makefile.
1164
1165         * Makefile.am (SUBDIRS): Added the demo directory.
1166
1167 2000-06-09  Larry Ewing  <lewing@helixcode.com>
1168
1169         * gdk-pixbuf/io-png.c (gdk_pixbuf__png_image_load_increment):
1170         setjmp for the png error handler.  It seems setting the error
1171         handling functions does not avoid the jump, and so not calling
1172         setjmp was causing the incremental loader to jump into lala land.
1173         (gdk_pixbuf__png_image_begin_load): setjmp for error handling, I'm
1174         not sure this one is actually required but the docs say it must be
1175         set for every call to a png_* function.
1176         Also changed the comment to reflect the fact that setting the
1177         error handlers does _not_ avoid the longjmp.
1178
1179 2000-06-06  Larry Ewing  <lewing@helixcode.com>
1180
1181         * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
1182         take frame offest into account when trying to calculate the
1183         animation bbox.  Also set the width to the width not the height.
1184         (gdk_pixbuf_loader_animation_done): cycle over the frames to
1185         calculate bbox because now we finally have all the offset
1186         information for each frame.
1187
1188 2000-06-05      Mathieu Lacage  <mathieu@gnome.org>
1189
1190         * configure.in: add some gtk parameters to the
1191         GDK_PIXBUF_LIB²S and GDK_PIXBUG_INCLUDEDIR vars. One more
1192         fight in my crusade for strange prefix compile...
1193
1194 2000-05-30  Not Zed  <NotZed@HelixCode.com>
1195
1196         * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_begin_load):
1197         Initialise the error handler exit routine to our own.  Note this
1198         means that every function that accesses the jpeg lib on this
1199         object MUST do a setjmp.
1200         (gdk_pixbuf__jpeg_image_stop_load): setjmp before accessing jpeg
1201         lib for handling fatal error.
1202         (gdk_pixbuf__jpeg_image_load_increment): And here too.  So now
1203         your applications dont quit if there's a jpeg error!
1204
1205 2000-05-30  Federico Mena Quintero  <federico@helixcode.com>
1206
1207         * gdk-pixbuf.spec.in: Include all the loader libraries.  Patch
1208         from Frank de Lange <frank@unternet.org>.
1209
1210 2000-05-09  Darin Adler  <darin@eazel.com>
1211
1212         * gdk-pixbuf/test-gdk-pixbuf.c:
1213         Fixed includes to get rid of accidental GNOME dependency.
1214
1215 2000-05-26  Cody Russell  <car0969@gamma2.uta.edu>
1216         * Makefile.am: Added gdk-pixbuf.spec to EXTRA_DIST
1217
1218 2000-05-22  Federico Mena Quintero  <federico@helixcode.com>
1219
1220         * configure.in: Bumped version number to 0.8.0.
1221
1222         * doc/Makefile.am (content_files): The toplevel gdk-pixbuf.sgml
1223         file was not being distributed.
1224
1225         * gdk-pixbuf/pixops/Makefile.am (EXTRA_DIST): Added DETAILS.
1226
1227 2000-05-09  Darin Adler  <darin@eazel.com>
1228
1229         * gdk-pixbuf/gdk-pixbuf-drawable.c: (rgb565lsb), (rgb565msb),
1230         (rgb565alsb), (rgb565amsb), (rgb555lsb), (rgb555msb), (rgb555alsb),
1231         (rgb555amsb), (convert_real_slow): Change all conversion from 16-bit
1232         formats to 32-bit formats to re-use the high bits of the color values
1233         so that white maps to full white.
1234
1235 Fri May  5 12:16:32 2000  Owen Taylor  <otaylor@redhat.com>
1236
1237         * gdk-pixbuf/pixops/DETAILS: Add beginnings of file with 
1238         detailed information about the structure and algorithms
1239         of pixops so people can fix it instead of breaking it.
1240
1241 2000-05-04  Darin Adler  <darin@eazel.com>
1242
1243         * gdk-pixbuf/pixops/pixops.c: (pixops_composite_nearest),
1244         (composite_pixel), (composite_line):
1245         * gdk-pixbuf/test-gdk-pixbuf.c: (simple_composite_test_one_type):
1246         Now that Owen explained the algorithm, I think I implemented it
1247         right for the cases where the destination pixbuf is not opaque.
1248         The test does seem to confirm it.
1249
1250 2000-05-04  Darin Adler  <darin@eazel.com>
1251
1252         * gdk-pixbuf/.cvsignore:
1253         * gdk-pixbuf/Makefile.am:
1254         * gdk-pixbuf/test-gdk-pixbuf.c (store_pixel), (fill_with_pixel),
1255         (load_pixel), (simple_composite_test_one),
1256         (simple_composite_test_one_type), (simple_composite_test), (main):
1257         Added some tests of composite to highlight problems in the old
1258         implementation. These tests run without any user interaction.
1259         Just do "make check".
1260
1261         * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest),
1262         (composite_pixel), (composite_line): Fix composite to do a textbook
1263         "A over B" composite. This was clearly the intent, and it was easy
1264         to fix the code to do it. (Note to those that read my earlier tries
1265         at a patch; this version fixes typos that were present in all
1266         my patch attempts. I checked the final version by adding more tests.)
1267
1268 2000-04-22 05:27:43 2000  Owen Taylor  <otaylor@redhat.com>
1269
1270         * gdk-pixbuf/pixops/pixops.c (pixops_scale_nearest): Properly
1271         offset y coordinate accordining to render_y0.
1272
1273         * gdk-pixbuf/gdk-pixbuf-scale.c: Properly handle nonzero
1274         dest_x, dest_y.
1275
1276 2000-04-22  James Henstridge  <james@daa.com.au>
1277
1278         * gdk-pixbuf.spec.in (%files): moved %{prefix}/bin/* from the main
1279         package to the devel package.  The only file installed in bin is
1280         gdk-pixbuf-config, which belongs in -devel.  This should allow having
1281         multiple versions of the main gdk-pixbuf package installed.
1282
1283 2000-04-17  Karl Eichwalder  <ke@suse.de>
1284
1285         * gdk-pixbuf/Makefile.am (INCLUDES): Add $(GNOME_CFLAGS).
1286         Reported by Jens Finke.
1287
1288 2000-04-14 Tomasz K³opczko <kloczek@pld.org.pl>
1289
1290         * gdk-pixbuf/pixops/makefile.am: $(LIBART_CFLAGS) replaced by 
1291         $(GTK_CFLAGS) - now gdk-pixbuf compiles correctly.
1292
1293 2000-04-13  James Henstridge  <james@daa.com.au>
1294
1295         * configure.in: when performing the configure check to see if
1296         gmodule works, set CFLAGS to GLIB_CFLAGS and LIBS to GLIB_LIBS,
1297         rather than the other way round.  Also, call AC_MSG_RESULT in the
1298         even that dynamic modules were not supported.
1299
1300 2000-04-12  Federico Mena Quintero  <federico@helixcode.com>
1301
1302         This comes from an excellent idea by Tim Janik (timj@gtk.org) to
1303         hook to the last unref operation.
1304
1305         * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_set_last_unref_handler): New
1306         function to set the last unref handler for a pixbuf.
1307         (gdk_pixbuf_finalize): New function to actually finalize a pixbuf.
1308         It calls the pixbuf's destroy notification function and frees the
1309         GdkPixbuf structure itself.
1310         (gdk_pixbuf_unref): Use the last unref function of the pixbuf if
1311         available.
1312
1313         * gdk-pixbuf/gdk-pixbuf-private.h (struct _GdkPixbuf): New fields
1314         for the last unref handler and its user data.
1315
1316         * gdk-pixbuf/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Use
1317         g_new0() to allocate the pixbuf.
1318
1319         * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
1320         Fixed the call to gtk_signal_new() for the "frame_done" signal; it
1321         was not specifying the `frame' argument.
1322
1323         * gdk-pixbuf/gdk-pixbuf-animation.c
1324         (gdk_pixbuf_animation_get_width): Fixed docstring.
1325         (gdk_pixbuf_animation_get_height): Likewise.
1326         (gdk_pixbuf_animation_get_num_frames): Likewise.
1327         (gdk_pixbuf_animation_get_frames): Likewise.
1328
1329         * doc/gdk-pixbuf-sections.txt: Updated with the new functions and
1330         types.
1331
1332         * doc/tmpl/gdk-pixbuf.sgml: Added the description for GdkColorspace.
1333
1334         * doc/tmpl/scaling.sgml: Added the description for GdkInterpType.
1335
1336         * doc/tmpl/refcounting.sgml: Updated with the information about
1337         the last unref handler.
1338
1339         * doc/tmpl/*.sgml: Markup tweaks.
1340
1341         * gdk-pixbuf/Makefile.am (libgnomecanvaspixbuf_la_LDFLAGS): Sigh,
1342         update the libtool version number for libgnomecanvaspixbuf as
1343         well.
1344         (libpixbufloader_*_la_LDFLAGS): The loaders need to be versioned
1345         as well, or the old ones won't work with the new stuff.  Also,
1346         renamed the modules as follows.
1347
1348         * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_load_module): Now the
1349         modules are called "libpixbufloader-<format>.so" instead of
1350         "libpixbuf-<format>.so".  They needed renaming so that the new
1351         loaders won't overwrite the old ones; even with the versioning
1352         stuff, the new .so symlink to the .so.1.0.0 would overwrite the
1353         old real .so file.
1354
1355 2000-04-12  Paolo Molaro <lupus@debian.org>
1356
1357         * .cvsignore, src/.cvsignore: shut up cvs.
1358
1359 2000-04-11  Federico Mena Quintero  <federico@helixcode.com>
1360
1361         Most of this patch is based on a patch by Havoc Pennington
1362         (hp@redhat.com) to make GdkPixbuf's structures opaque and to
1363         remove the libart dependency.
1364
1365         * gdk-pixbuf/gdk-pixbuf.h: Removed the public structures.
1366         (GdkColorspace): New enum that for now only contains
1367         GDK_COLORSPACE_RGB.
1368         (GdkPixbufDestroyNotify): New type for the pixbuf's pixels destroy
1369         notification function.
1370         (GdkInterpType): New num with interpolation types.
1371
1372         * *.[ch]: Replace the libart stuff with our own stuff.
1373
1374         * pixops/*.[ch]: Likewise.
1375
1376         * gdk-pixbuf/gdk-pixbuf-private.h: New file with the private
1377         declarations of the GdkPixbuf structures.
1378
1379         * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_new_from_art_pixbuf):
1380         Removed function.
1381         (gdk_pixbuf_get_format): Constify.
1382         (gdk_pixbuf_get_n_channels): Constify.
1383         (gdk_pixbuf_get_has_alpha): Constify.
1384         (gdk_pixbuf_get_bits_per_sample): Constify.
1385         (gdk_pixbuf_get_pixels): Constify.
1386         (gdk_pixbuf_get_width): Constify.
1387         (gdk_pixbuf_get_height): Constify.
1388         (gdk_pixbuf_get_rowstride): Constify.
1389
1390         * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_copy): New function to copy
1391         a pixbuf.
1392
1393         * gdk-pixbuf/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Added a
1394         bits_per_sample argument; currently only 8 bits per sample are
1395         supported.
1396
1397         * gdk-pixbuf/gdk-pixbuf-animation.c (gdk_pixbuf_frame_get_pixbuf):
1398         New accessor.
1399         (gdk_pixbuf_frame_get_x_offset): New accessor.
1400         (gdk_pixbuf_frame_get_y_offset): New accessor.
1401         (gdk_pixbuf_frame_get_delay_time): New accessor.
1402         (gdk_pixbuf_frame_get_action): New accessor.
1403
1404         * gdk-pixbuf/gdk-pixbuf-render.c
1405         (gdk_pixbuf_render_pixmap_and_mask): Instead of returning a solid
1406         mask rectangle for pixbufs without an alpha channel, set the
1407         *mask_return to NULL.
1408
1409         * gdk-pixbuf/gdk-pixbuf-util.c (gdk_pixbuf_add_alpha): Constify.
1410
1411         * gdk-pixbuf/gdk-pixbuf-scale.c: Fix includes.
1412
1413         * gdk-pixbuf/gdk-pixbuf-scale.c (gdk_pixbuf_scale): Added some
1414         preconditions.  Maybe we should also check for the colorspace,
1415         bits per pixel, and such.
1416         (gdk_pixbuf_composite): Likewise.
1417         (gdk_pixbuf_composite_color): Likewise.
1418         (gdk_pixbuf_scale_simple): Likewise, and fail gracefully if we
1419         cannot allocate the new pixbuf.
1420         (gdk_pixbuf_composite_color_simple): Likewise.
1421
1422         * gdk-pixbuf/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_render):
1423         Use art_rgb_rgba_affine() or art_rgb_affine() since we no longer
1424         have an ArtPixBuf.
1425
1426         * gdk-pixbuf/io-bmp.c: Fix includes.
1427
1428         * gdk-pixbuf/pixops/pixops.c (pixops_scale_nearest): Fixed cast in
1429         an lvalue.
1430
1431         * TODO: Populated.
1432
1433         * configure.in: Removed checks for libart.
1434
1435         * gdk-pixbuf/Makefile.am: Removed references to libart.
1436         (noinst_HEADERS): Added gdk-pixbuf-private.h.
1437
1438         * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_LDFLAGS): Incremented
1439         the version number of the libtool library to indicate that this
1440         definitely is not compatible with the old usage.  I know you love
1441         me.  I know you do.
1442
1443         * configure.in: Bumped version number to 0.7.0.
1444
1445         * README: Updated.
1446
1447         * gdk-pixbuf-config.in (--libs): We no longer require libart.
1448
1449         * DEPENDS.libgdk_pixbuf: We no longer depend on libart.
1450
1451         * gdk-pixbuf.spec.in: Updated, but I don't guarantee anything.
1452
1453 2000-04-06  Jonathan Blandford  <jrb@redhat.com>
1454
1455         * gdk-pixbuf/testanimation.c (main): add more info to the
1456         testanimation frames.
1457
1458 2000-04-04  Ettore Perazzoli  <ettore@helixcode.com>
1459
1460         * gdk-pixbuf/gdk-pixbuf-animation.c
1461         (gdk_pixbuf_animation_get_width): New accessor function.
1462         (gdk_pixbuf_animation_get_height): New accessor function.
1463         (gdk_pixbuf_animation_get_num_frames): New accessor function.
1464         (gdk_pixbuf_animation_get_frames): New accessor function.
1465
1466 2000-04-01  Federico Mena Quintero  <federico@helixcode.com>
1467
1468         * gdk-pixbuf/gdk-pixbuf.c: Reverted Mark's change.  The refcount
1469         is private information, and the art_pixbuf will go away soon.
1470
1471 2000-03-31  Mark Crichton  <crichton@gimp.org>
1472
1473         * gdk-pixbuf/gdk-pixbuf.c: Added gdk_pixbuf_get_refcount
1474         and gdk_pixbuf_get_artpixbuf accessor functions.
1475
1476 2000-03-29  Federico Mena Quintero  <federico@helixcode.com>
1477
1478         * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_get_has_alpha): Return
1479         gboolean instead of int.
1480
1481 2000-03-29  Radek Doulik  <rodo@helixcode.com>
1482
1483         * gdk-pixbuf/gdk-pixbuf-animation.c
1484         (gdk_pixbuf_animation_new_from_file): same as below
1485
1486         * gdk-pixbuf/io-gif.c (gif_get_lzw): added update of width and
1487         height in GdkPixbufAnimation
1488
1489 2000-03-28  Radek Doulik  <rodo@helixcode.com>
1490
1491         * gdk-pixbuf/io-gif.c (gif_get_lzw): test also for
1492         context->frame_done_func and context->anim_done_func to make
1493         progressive animation loading work
1494
1495         * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
1496         added priv->pixbuf = NULL as pixbuf is now in frame (and to make
1497         gdk_pixbuf_loader_prepare happy)
1498         (gdk_pixbuf_loader_frame_done): update animation bbox
1499
1500         * gdk-pixbuf/gdk-pixbuf.h: added bbox size (width, height) to
1501         _GdkPixbufAnimation
1502
1503 2000-03-27  Radek Doulik  <rodo@helixcode.com>
1504
1505         * gdk-pixbuf/io-gif.c (gif_get_lzw): use frame_len and frame_width
1506         instead of width and height
1507
1508 2000-03-27  Owen Taylor  <otaylor@redhat.com>
1509
1510         * gdk-pixbuf/pixops/pixops.c: Fix problem with 
1511         precendence of >> and & which was keeping composite_color
1512         from working with non-gray images.
1513
1514 2000-03-08  Jonathan Blandford  <jrb@redhat.com>
1515
1516         * gdk-pixbuf/io-gif.c (gdk_pixbuf__gif_image_load): free the context.
1517         (gdk_pixbuf__gif_image_load_animation): free the context.
1518
1519 2000-03-06  Arjan van de Ven <arjan@fenrus.demon.nl>
1520
1521         * gdk-pixbuf/io-bmp.c: Fixed to pointer-bugs and a 
1522         mis-interpretation of the Microsoft documentation. Now
1523         it can load .BMP files that are not generated by The Gimp
1524         as well.
1525
1526 2000-03-01  Mark Crichton  <crichton@gimp.org>
1527
1528         * configure.in: Added BUILD_CANVAS_ITEM stuff to (finally)
1529         fix the last auto* build bug (where we have libart, but no
1530         gnome-libs)
1531
1532         * gdk-pixbuf/Makefile.am: Same.
1533
1534 2000-02-28  Matt Wilson  <msw@redhat.com>
1535
1536         * gdk-pixbuf/gdk-pixbuf-drawable.c: s/unsigned long/guint32/g,
1537         s/unsigned short/guint16/g, s/unsigned char/guint8/g
1538
1539 2000-02-26  Federico Mena Quintero  <federico@helixcode.com>
1540
1541         * README: We don't require libgif/ungif nor libXpm.
1542
1543         * NEWS: This was outdated, so updated it.
1544
1545 2000-02-25  Federico Mena Quintero  <federico@helixcode.com>
1546
1547         * gdk-pixbuf.m4: Use the correct name for
1548         gdk-pixbuf/gdk-pixbuf.h.  Thanks to Jacob Berkman for pointing
1549         this out.
1550
1551 2000-02-21  Federico Mena Quintero  <federico@helixcode.com>
1552
1553         * configure.in (GDK_PIXBUF_MINOR): Bumped version number to 0.6.0.
1554
1555         * doc/compiling.sgml: New appendix documenting the gdk-pixbuf
1556         library's particular options to configure.in.
1557
1558         * doc/gdk-pixbuf.sgml: Include compiling.sgml appendix via an
1559         entity.
1560
1561         * doc/Makefile.am (gdk-pixbuf.html): Added compiling.sgml.
1562
1563         * gdk-pixbuf/io-ico.c (gdk_pixbuf__ico_image_load_increment):
1564         Fixed typo in prototype name.
1565
1566         * configure.in: Changed duplicated AC_MSG_CHECKING message to
1567         something more meaningful; now it is "checking whether dynamic
1568         modules work".
1569
1570         * gdk-pixbuf/pixops/Makefile.am (noinst_PROGRAMS): Do not install
1571         the timescale program.
1572
1573         Integrated Miguel de Icaza's <miguel@gnu.org> patch for optionally
1574         creating a single static library with all the image format modules
1575         in it.
1576
1577 2000-02-20  Miguel de Icaza  <miguel@gnu.org>
1578
1579         * gdk-pixbuf/io-xpm.c (gdk_pixbuf__xpm_image_load): Add prefix.
1580         (gdk_pixbuf__xpm_image_load_xpm_data): Add prefix.
1581
1582         * gdk-pixbuf/io-tiff.c (gdk_pixbuf__tiff_image_load_real): Add prefix.
1583         (gdk_pixbuf__tiff_image_stop_load): Add prefix.
1584         (gdk_pixbuf__tiff_image_load_increment): Add prefix.
1585         (gdk_pixbuf__tiff_image_load): Add prefix.
1586         (gdk_pixbuf__tiff_image_stop_load): Update invocation.
1587         (gdk_pixbuf__tiff_image_begin_load): Add prefix.
1588
1589         * gdk-pixbuf/io-ras.c (gdk_pixbuf__ras_image_load): Add prefix.
1590         (gdk_pixbuf__ras_image_load): Updated invocation.
1591         (gdk_pixbuf__ras_image_begin_load): Add prefix.
1592         (gdk_pixbuf__ras_image_stop_load): Add prefix.
1593         (gdk_pixbuf__ras_image_load_increment): Add prefix.
1594
1595         * gdk-pixbuf/io-pnm.c (gdk_pixbuf__pnm_image_begin_load): Add prefix.
1596         (gdk_pixbuf__pnm_image_stop_load): Add prefix.
1597         (gdk_pixbuf__pnm_image_load_increment): Add prefix
1598         (gdk_pixbuf__pnm_image_load): Add prefix.
1599
1600         * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_load): Add prefix.
1601         (gdk_pixbuf__jpeg_image_load_increment): Add prefix.
1602         (gdk_pixbuf__jpeg_image_begin_load): Add prefix.
1603         (gdk_pixbuf__jpeg_image_stop_load): Add prefix.
1604
1605         * gdk-pixbuf/io-ico.c (gdk_pixbuf__ico_image_load): Add prefix.
1606         (gdk_pixbuf__ico_image_load): update invocation.
1607         (gdk_pixbuf__ico_image_load_increment): Add prefix.
1608         (gdk_pixbuf__ico_image_load): update invocation.
1609         (gdk_pixbuf__ico_image_begin_load): Add prefix.
1610         (gdk_pixbuf__ico_image_load): update invocation.
1611         (gdk_pixbuf__ico_image_stop_load): Add prefix.
1612
1613         * gdk-pixbuf/io-gif.c (gdk_pixbuf__gif_image_load_animation): Add prefix.
1614         (gdk_pixbuf__gif_image_load): Add prefix.
1615         (gdk_pixbuf__gif_image_begin_load): Add prefix.
1616         (gdk_pixbuf__gif_image_load_increment): Add prefix.
1617         (gdk_pixbuf__gif_image_load_animation): Add prefix.
1618         (gdk_pixbuf__gif_image_stop_load): Add prefix.
1619
1620         * gdk-pixbuf/io-bmp.c (gdk_pixbuf__bmp_image_load): Add prefix.
1621         (gdk_pixbuf__bmp_image_load): Rename function called.
1622         (gdk_pixbuf__bmp_image_load_increment): Add prefix
1623
1624         * gdk-pixbuf/io-png.c (gdk_pixbuf__png_image_load): Add prefix.
1625         (gdk_pixbuf__png_image_begin_load): Add prefix.
1626         (gdk_pixbuf__png_image_stop_load): Add prefix.
1627         (gdk_pixbuf__png_image_load_increment): Add prefix.
1628
1629         * gdk-pixbuf/gdk-pixbuf-io.c (file_formats): Make this static.
1630         (gdk_pixbuf_load_module): Load the shared library entry points
1631         using a "gdk_pixbuf__$module_name" prefix.
1632         (pixbuf_module_symbol): Wrapper routine that uses the module
1633         prefix for the modules to load the information.
1634
1635         * configure.in (GDK_PIXBUF_VERSION): New option --disable-modules
1636         lets the user specify that gdk-pixbuf should link all image loader
1637         code into the library instaed of creating shared library modules.
1638         
1639         (dynworks): Renamed the automake conditional DYNAMIC_MODULES_WORK
1640         to BUILD_DYNAMIC_MODULES.
1641
1642 2000-02-19  Jonathan Blandford  <jrb@redhat.com>
1643
1644         * gdk-pixbuf/io-gif.c (new_context): fix case where initial
1645         colormap entry is Transparent.
1646
1647 2000-02-19  Owen Taylor  <otaylor@redhat.com>
1648
1649         * gdk-pixbuf/pixops/pixops.c (scale_pixel): Fix error in
1650         scale factors for non-alpha case.
1651
1652 2000-02-14  Mark Crichton  <crichton@gimp.org>
1653
1654         * gdk-pixbuf/io-xpm.c (xpm_extract_color): Added check for "g" color type.
1655         Imlib/libXpm handle this, but we didn't.
1656
1657 2000-02-14  Darin Adler  <darin@eazel.com>
1658
1659         * gdk-pixbuf/testpixbuf.c: Remove now-unnecessary cast.
1660         * .cvsignore: gdk-pixbuf/.cvsignore: More to ignore.
1661
1662 2000-02-14  Elliot Lee  <sopwith@redhat.com>
1663         * gdk-pixbuf/gdk-pixbuf.h, gdk-pixbuf/gdk-pixbuf-data.c: Make passed-in argument 'const'.
1664
1665 2000-02-04  Michael Meeks  <mmeeks@gnu.org>
1666
1667         * gdk-pixbuf/io-gif.c (struct _GifContext): add x,y_offset.
1668         (gif_get_frame_info): put the offsets on the context.
1669         (gif_get_lzw): copy them off into the frame.
1670         (new_context): no change required; will 0 offsets by default.
1671
1672 2000-01-28  Michael Meeks  <michael@mejm2.dow.cam.ac.uk>
1673
1674         * gdk-pixbuf/pixops/pixops.c (pixops_process): const + nasty
1675         un-consting cast.
1676
1677         * gdk-pixbuf/pixops/pixops.h: const.
1678
1679         * gdk-pixbuf/gdk-pixbuf-util.c: const.
1680         
1681         * gdk-pixbuf/gdk-pixbuf-scale.c: const.
1682
1683         * gdk-pixbuf/gdk-pixbuf.h: constify lots of things.
1684
1685 2000-02-03  Federico Mena Quintero  <federico@helixcode.com>
1686
1687         * gdk-pixbuf/gdk-pixbuf-render.c
1688         (gdk_pixbuf_render_threshold_alpha): Added sanity check for width
1689         and height being >= 0.  Also, do nothing if either of them is
1690         zero.  Thanks to Ettore for pointing this out.
1691         (gdk_pixbuf_render_to_drawable): Likewise.
1692         (gdk_pixbuf_render_to_drawable_alpha): Likewise.
1693
1694 2000-02-02  Federico Mena Quintero  <federico@helixcode.com>
1695
1696         * gdk-pixbuf/io-gif.c (gif_get_lzw): Removed debugging g_print.
1697         Thanks to John Sullivan <sullivan@eazel.com> for the patch.
1698
1699         * gdk-pixbuf/testpixbuf-drawable.c (configure_cb): Get a new area
1700         of the screen when the window is resized.  Thanks to David
1701         N. Welton <davidw@linuxcare.com> for pointing this out.
1702         Misc. cleanups to the rest of the file.
1703
1704 2000-02-01  Federico Mena Quintero  <federico@helixcode.com>
1705
1706         * doc/tmpl/rendering.sgml: gnome_init() does not call
1707         gdk_rgb_init(), so don't mention that it does in the
1708         documentation.  Thanks to Alexander Kruuse <kruuse@home.se> for
1709         pointing this out.
1710
1711 2000-01-31  Havoc Pennington  <hp@redhat.com>
1712
1713         * gdk-pixbuf/Makefile.am (noinst_PROGRAMS): no testpixbuf-foo target
1714
1715 Mon Jan 31 12:38:50 2000  Owen Taylor  <otaylor@redhat.com>
1716
1717         * gdk-pixbuf/pixops/pixops.c (scale_line): Fix from Peter
1718         Wainwright to fix 4a => 4a scaling.
1719
1720 2000-01-29  Mark Crichton  <crichton@gimp.org>
1721
1722         * gdk-pixbuf-config: Oh dear, we weren't Telsa/Alan proof...
1723         put `libart-config --libs` in instead of -lart_lgpl.
1724
1725 2000-01-22  Federico Mena Quintero  <federico@helixcode.com>
1726
1727         * gdk-pixbuf/io-pnm.c (pnm_read_raw_scanline): Return an error on
1728         invalid pnm type.
1729         (pnm_read_ascii_scanline): Initialize data and mask.
1730
1731         * gdk-pixbuf/io-xpm.c (pixbuf_create_from_xpm): Initialize
1732         fallbackcolor to keep gcc happy.
1733
1734         * configure.in: Bumped version number to 0.5.0.
1735
1736         * gdk-pixbuf/pixops/timescale.c (dump_array): Removed unused variable.
1737         (main): Return 0.
1738
1739         * gdk-pixbuf/pixops/pixops.c (pixops_composite_color_nearest): Put
1740         parentheses around + in a shift to remove a compiler warning.
1741         (pixops_process): Likewise.
1742
1743         Patch from Ross Golder <rossigee@bigfoot.com> to create an RPM
1744         specfile:
1745
1746         * configure.in: Added gdk-pixbuf.spec to AC_OUTPUT.
1747
1748         * Makefile.am (EXTRA_DIST): Added gdk-pixbuf.spec.in
1749
1750 2000-01-22  Federico Mena Quintero  <federico@helixcode.com>
1751
1752         * gdk-pixbuf/gnome-canvas-pixbuf.c (PixbufPrivate): Removed the
1753         x_set and y_set arguments.  Now they are always on and start with
1754         defaults of 0.0 in units.
1755         (gnome_canvas_pixbuf_class_init): Likewise.
1756         (gnome_canvas_pixbuf_set_arg): Likewise.
1757         (gnome_canvas_pixbuf_get_arg): Likewise.
1758         (compute_viewport_affine): Likewise; always use the priv->x and
1759         priv->y fields.
1760
1761         * doc/tmpl/gnome-canvas-pixbuf.sgml: Modified to reflect the
1762         removal of the x_set/y_set arguments.
1763
1764 2000-01-21  Federico Mena Quintero  <federico@helixcode.com>
1765
1766         * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_ref): Return the same pixbuf
1767         as the input parameter.
1768
1769         * gdk-pixbuf/gdk-pixbuf-animation.c (gdk_pixbuf_animation_ref):
1770         Return the same animation as the input parameter.
1771
1772 2000-01-16  Elliot Lee  <sopwith@redhat.com>
1773
1774         * gdk-pixbuf/Makefile.am: Don't link against libgnomecanvaspixbuf.la
1775
1776 2000-01-16  Federico Mena Quintero  <federico@helixcode.com>
1777
1778         * configure.in: Removed the broken --enable-canvas-pixbuf option.
1779         Added the stuff necessary to substitute the variables in
1780         gnomecanvaspixbufConf.sh.in.
1781
1782         * gnomecanvaspixbufConf.sh.in: New gnome-config handler for the
1783         tiny gnomecanvaspixbuf library.
1784
1785         * Makefile.am: Build gnomecanvaspixbufConf.sh.
1786
1787         * gdk-pixbuf/Makefile.am: Create a libgnomecanvaspixbuf and only
1788         build it if gdk-pixbuf is being built outside of gnome-libs.
1789
1790         * doc/gdk-pixbuf-sections.txt: Added gdk_pixbuf_render_pixmap_and_mask().
1791
1792         * gdk-pixbuf/gdk-pixbuf-render.c
1793         (gdk_pixbuf_render_pixmap_and_mask): Renamed from
1794         gdk_pixbuf_render_pixmap().  Do not create the mask if it is not
1795         needed, and do not use a clipping mask when rendering the pixmap.
1796         Tweaked documentation a little.
1797
1798         * HACKING: New file with hacking policies for the gdk-pixbuf
1799         module.
1800
1801         * doc/Makefile.am (tmpl_sources): Added missing backslash.
1802
1803         * doc/Makefile.am: Use gnomecanvaspixbuf in gnome-config when
1804         scanning for docstrings.
1805
1806         * gdk-pixbuf/gdk-pixbuf-util.c (gdk_pixbuf_copy_area): Made sanity
1807         checks more stringent.  Removed "gint" abominations.  Made
1808         documentation consistent with the rest of the functions.
1809
1810         * doc/gdk-pixbuf-sections.txt: Added gdk_pixbuf_copy_area() to the
1811         utilities section.
1812
1813 2000-01-14  Jonathan Blandford  <jrb@redhat.com>
1814
1815         * gdk-pixbuf/gdk-pixbuf-render.c (gdk_pixbuf_render_pixmap): new
1816         function to let you create a gdk_pixmap from a gdk_pixbuf.
1817
1818 2000-01-11  Jacob Berkman  <jacob@helixcode.com>
1819
1820         * gdk-pixbuf/pixops/Makefile.am (INCLUDES): added
1821         $LIBART_CFLAGS to $INCLUDES
1822
1823 2000-01-10  Elliot Lee  <sopwith@redhat.com>
1824
1825         * configure.in, gdk-pixbuf/Makefile.am: Build a libcanvas_pixbuf.
1826
1827         * configure.in: Define version macros. Generate
1828         gdk-pixbuf/gdk-pixbuf-features.h. Always INSIDE_GNOME.
1829
1830         * gdk-pixbuf/Makefile.am: Add gdk-pixbuf-features.h
1831
1832         * gdk-pixbuf/gdk-pixbuf.c: Add definitions of
1833         gdk-pixbuf-features.h declarations, plus some initialization
1834         stubs.
1835
1836 2000-01-05  Owen Taylor  <otaylor@redhat.com>
1837
1838         * gdk-pixbuf/pixops/pixops.c: Fixed src_channels/dest_channels
1839         confusion. (Again caught by Tomas Ogren's Purify)
1840
1841 2000-01-07  Jonathan Blandford  <jrb@redhat.com>
1842
1843         * gdk-pixbuf/gdk-pixbuf-xform.c (gdk_pixbuf_rotate): comment out
1844         debugging printing.
1845
1846         * gdk-pixbuf/gdk-pixbuf-io.c: Added progressive animation loading.
1847         * gdk-pixbuf/gdk-pixbuf-io.h: Added progressive animation loading.
1848         * gdk-pixbuf/gdk-pixbuf-loader.c: Added progressive animation
1849         loading.
1850         * gdk-pixbuf/gdk-pixbuf-loader.h: Added progressive animation
1851         loading.
1852         * gdk-pixbuf/io-gif.c (image_load_increment): I think the
1853         ref-counting mess is finally fixed.  Added progressive animation
1854         loading.
1855         (gif_get_lzw): remove memory_leak
1856
1857         * doc/tmpl/gdk-pixbuf-loader.sgml: much longer long description
1858         added.
1859
1860 2000-01-05  Owen Taylor  <otaylor@redhat.com>
1861
1862         * gdk-pixbuf/pixops/pixops.c (pixops_process): Fix computation of end of run indices.
1863
1864         * gdk-pixbuf/pixops/pixops.c: Fix double increments when dest_channels == 4.
1865           (Pointed out by Tomas Ogren)
1866
1867 2000-01-05  Mark Crichton  <crichton@gimp.org>
1868
1869         * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_eat_header_write):
1870         Return 0 if gdk_pixbuf_load_loader_module returns FALSE.
1871
1872 2000-01-05 Elliot Lee <sopwith@redhat.com>
1873
1874         * gdk-pixbuf/pixops/Makefile.am: Link with -lm (to get 'ceil' function)
1875
1876 2000-01-05  Owen Taylor  <otaylor@redhat.com>
1877
1878         * doc/Makefile.am doc/gdk-pixbuf-sections.txt
1879           doc/gdk-pixbuf.sgml doc/tmpl/scaling.sgml:
1880         Added scaling functions into gtk-doc framework.
1881
1882         * gdk-pixbuf/gdk-pixbuf-scale.c: Documentation fixes.
1883
1884         * gdk-pixbuf/testpixbuf-scale.c (expose_cb): Simplify a bit.
1885
1886         * gdk-pixbuf/pixops/pixops.c (pixops_composite_color): Return
1887         immediately if scale_x or scale_y is 0.
1888
1889 2000-01-05  Owen Taylor  <otaylor@redhat.com>
1890
1891         * gdk-pixbuf/pixops/timescale.c: quick fix for initializing
1892         arrays in benchmark.
1893
1894 2000-01-05  Jonathan Blandford  <jrb@redhat.com>
1895
1896         * gdk-pixbuf/gdk-pixbuf-io.h: Change the order of the update func
1897         to make it more compatible with the rest of GTK.  Added animation
1898         framework for progressive loading.
1899
1900         * gdk-pixbuf/io-bmp.c (image_begin_load): Modified to handle new
1901         system.
1902         * gdk-pixbuf/io-ico.c (image_begin_load): ditto
1903         * gdk-pixbuf/io-png.c (image_begin_load): ditto
1904         * gdk-pixbuf/io-ras.c (image_begin_load): ditto
1905         * gdk-pixbuf/io-jpeg.c (image_begin_load): ditto
1906         * gdk-pixbuf/io-pnm.c (image_begin_load): ditto
1907         * gdk-pixbuf/io-tiff.c (image_begin_load): ditto
1908         * gdk-pixbuf/io-gif.c (image_begin_load): ditto
1909
1910 2000-01-05  Owen Taylor  <otaylor@redhat.com>
1911
1912         * gdk-pixbuf/pixops/README: Added a README with a TODO
1913         and some explainations of the algorithms.
1914
1915         * gdk-pixbuf/testpixbuf-scale.c: Set a background pixmap of None
1916         to reduce flashing when resizing.
1917
1918 2000-01-05  Owen Taylor  <otaylor@redhat.com>
1919
1920         * gdk-pixbuf/pixops/: Directory full of pixel data scaling
1921         code that will eventually migrate into libart.
1922
1923         * configure.in acconfig.h: Add checks for MMX compiler support
1924
1925         * gdk-pixbuf/gdk-pixbuf.h gdk-pixbuf/gdk-pixbuf-scale.c:
1926         Nice wrapper routines for the code in pixops that operate
1927         on pixbufs instead of raw data.
1928
1929         * gdk-pixbuf/testpixbuf-scale: Test program for scaling
1930         routines.
1931
1932 2000-01-05  Jonathan Blandford  <jrb@redhat.com>
1933
1934         * doc/tmpl/animation.sgml: Documentation changes.
1935
1936 2000-01-01  Federico Mena Quintero  <federico@helixcode.com>
1937
1938         * gdk-pixbuf/gdk-pixbuf.h (GdkPixbufAnimation): Added reference
1939         counting to animations.  A web browser may want to share a single
1940         copy of an animated GIF if it appears multiple times in a web
1941         page, for example.
1942
1943         * gdk-pixbuf/gdk-pixbuf-animation.c: New file.  Moved the
1944         animation functions here.
1945         (gdk_pixbuf_animation_new_from_file): Prettified.  Return a NULL
1946         animation if the loader does not support multiframe loading and
1947         the single-frame load returned NULL.  Check that the filename is
1948         not NULL.  Updated inline documentation.
1949         (gdk_pixbuf_animation_ref): New function.
1950         (gdk_pixbuf_animation_unref): New function.
1951         Removed gdk_pixbuf_animation_destroy() in favor of reference
1952         counting.
1953
1954         * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_new_from_file):
1955         Prettified.  Made ref_count assertion more paranoid.  Check that
1956         the filename is not NULL.
1957         (gdk_pixbuf_get_module): Use guchar * and guint for buffer and
1958         size, respectively.
1959         (gdk_pixbuf_new_from_xpm_data): Changed the "data" argument to
1960         const char **.
1961
1962         * gdk-pixbuf/io-gif.c (image_load_animation): Create the animation
1963         with a reference count of 1.
1964
1965         * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_SOURCES): Added
1966         gdk-pixbuf-animation.c.
1967
1968         * doc/tmpl/animation.sgml: Populated.  It is still missing a
1969         description of the overlay modes.
1970
1971         * doc/gdk-pixbuf-sections.txt: Added the animation section.  Moved
1972         the canvas item section to the end, as it will be moved later to
1973         gnome-libs.
1974
1975         * doc/gdk-pixbuf.sgml: Added the animation section.
1976
1977         * doc/Makefile.am (tmpl_sources): Added tmpl/animation.sgml.
1978
1979 1999-12-26  Peter Teichman  <pat@gnu.org>
1980
1981         * gdk-pixbuf/Makefile.am (libpixbuf_tiff_la_LIBADD): add
1982         $(LIBTIFF) to libpixbuf_tiff_la_LIBADD, proxying for mmarker.
1983         This closes bug #4676.
1984
1985 1999-12-23  Havoc Pennington  <hp@pobox.com>
1986
1987         * gdk-pixbuf/io-gif.c (image_load): Stuff that should have been
1988         set to NULL here (specifically context->animation) was not being
1989         set to NULL. use g_new0() to alloc the struct.
1990
1991 1999-12-20  Jonathan Blandford  <jrb@redhat.com>
1992
1993         * gdk-pixbuf/io-gif.c: finished work to make animated gifs load
1994         correctly.  Progressive loading needs some work, but that all
1995         needs doing from the gdk-pixbuf-loader end, not here.
1996
1997 1999-12-17  Jonathan Blandford  <jrb@redhat.com>
1998
1999         * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_animation_new_from_file):
2000         moved the file here.  It seems natural to put this function here,
2001         as that's where the gdk_pixbuf_new_from_file function is, but it's
2002         still a little convoluted.  The source files might be played with
2003         in a bit.
2004
2005 1999-12-14  Jonathan Blandford  <jrb@redhat.com>
2006
2007         * gdk-pixbuf/gdk-pixbuf-loader.c
2008         (gdk_pixbuf_loader_get_animation):  Gets the animation from the
2009         loader.
2010
2011 1999-12-16  Federico Mena Quintero  <federico@redhat.com>
2012
2013         * doc/tmpl/rendering.sgml: Added notice about initializing GdkRGB
2014         before using the GdkPixbuf rendering functions.  Thanks to Joe
2015         Shaw <joe@off.net> for pointing this out.
2016
2017 1999-12-13  Federico Mena Quintero  <federico@redhat.com>
2018
2019         * gdk-pixbuf/gnome-canvas-pixbuf.c
2020         (gnome_canvas_pixbuf_class_init): Renamed arguments to
2021         width_in_pixels, height_in_pixels, x_in_pixels, y_in_pixels, for
2022         consistency with the new canvas.
2023         (PixbufPrivate): Do the same renaming in the structure fields, for
2024         consistency.
2025
2026         * doc/tmpl/gnome-canvas-pixbuf.sgml: Updated for new argument names.
2027
2028 1999-12-12  Federico Mena Quintero  <federico@redhat.com>
2029
2030         * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_LDFLAGS): Use a
2031         conditional to see whether to link $(GNOME_LIBS) or not.
2032
2033 1999-12-10  Jonathan Blandford  <jrb@redhat.com>
2034
2035         * gdk-pixbuf/gdk-pixbuf-io.h: thinking about the new loading API.
2036
2037         * gdk-pixbuf/gdk-pixbuf-drawable.c (gdk_pixbuf_get_from_drawable):
2038         make a warning go away.
2039
2040         * gdk-pixbuf/gdk-pixbuf.h: added new prototypes for animations.
2041
2042         * gdk-pixbuf/gdk-pixbuf-loader.h: added new prototypes for
2043         animations.
2044
2045 1999-12-09  Michael Zucchi  <zucchi@zedzone.mmc.com.au>
2046
2047         * gdk-pixbuf/gdk-pixbuf.h: Enable gdk_pixbuf_get_from_drawable()
2048         api call.
2049
2050         * gdk-pixbuf/gdk-pixbuf-drawable.c (gdk_pixbuf_get_from_drawable):
2051         Filled in body of function.
2052         (rgbconvert): Added GdkColormap parameter, and to all conversion
2053         functions also.
2054         (convert_real_slow): New function - should convert ANY visual/data
2055         format properly, but it aint fast.  Used as a fallback when an
2056         optimised routine wont match.
2057         (rgbconvert): Do very specific tests on the data format to verify
2058         properly if the optimised version will do, otherwise use the
2059         fallback function for all other data formats.
2060
2061         * gdk-pixbuf/Makefile.am: Re-enabled building of
2062         textpixbuf-drawable.
2063
2064         * gdk-pixbuf/testpixbuf-drawable.c (main): Changed to use
2065         gdk_pixbuf_get_from_drawable().
2066
2067 1999-12-08  Arjan van de Ven <arjan@fenrus.demon.nl>
2068
2069         * gdk-pixbuf/gdk-pixbuf-drawable.c : Fixed the red/green/red
2070         bug on two occasions.
2071         * gdk-pixbuf/io-ras.c: Changed from the custom be32_to_cpu
2072         function to the generic glib one.
2073
2074 1999-12-08  Federico Mena Quintero  <federico@redhat.com>
2075
2076         * gdk-pixbuf/gdk-pixbuf-drawable.c: Fix includes.
2077         (gdk_pixbuf_get_from_drawable): Implemented the zillion sanity
2078         checks and API definition.  The body needs filling in and it needs
2079         to do the Right Thing(tm) for pixmaps plus the given colormap and
2080         windows and their own colormaps.
2081
2082         * gdk-pixbuf/gdk-pixbuf.h: Added prototype for
2083         gdk_pixbuf_get_from_drawable().  Killed gdk-pixbuf-drawable.h.
2084
2085         * gdk-pixbuf/Makefile.am: Re-added the gdk-pixbuf-drawable sources.
2086
2087         * doc/tmpl/from-drawables.sgml: Populated.
2088
2089         * doc/gdk-pixbuf.sgml: Added the from-drawables section.
2090
2091         * doc/Makefile.am (tmpl_sources): Added tmpl/from-drawables.sgml.
2092
2093         * doc/gdk-pixbuf-sections.txt: Added a section for getting pixbufs
2094         from drawables.
2095
2096 1999-12-07  Federico Mena Quintero  <federico@redhat.com>
2097
2098         * doc/tmpl/gnome-canvas-pixbuf.sgml: Added clarification about
2099         reference counting for GdkPixbuf structures.
2100
2101 1999-12-07  Martin Baulig  <martin@home-of-linux.org>
2102
2103         * gdk-pixbuf/Makefile.am (testpixbuf_LDADD): Conditionally
2104         include $(GNOME_LIBS) here.
2105
2106 1999-12-05  Arjan van de Ven <arjan@fenrus.demon.nl>
2107
2108         Added missing "include <string.h>" to:
2109         * gdk-pixbuf/io-ras.c
2110         * gdk-pixbuf/io-bmp.c
2111         * gdk-pixbuf/io-ico.c
2112
2113 1999-12-06  Federico Mena Quintero  <federico@redhat.com>
2114
2115         * gdk-pixbuf/gdk-pixbuf-io.c (file_formats): Patch from Arjan to
2116         fix an initializer.
2117
2118 1999-12-05  Federico Mena Quintero  <federico@redhat.com>
2119
2120         * gdk-pixbuf/Makefile.am (testpixbuf_LDADD): Add back
2121         $(GNOME_LIBS).  This must compile outside of gnome-libs.  If you
2122         want, send me a patch to do the conditional stuff properly.
2123         Otherwise, please read the GNOME Programming Guidelines,
2124         especially the "CVS policies" section.
2125
2126 1999-12-05  Jaka Mocnik  <jaka.mocnik@kiss.uni-lj.si>
2127
2128         * gdk-pixbuf/Makefile.am: removed GNOME_LIBS from testpixbuf_LDADD.
2129
2130 1999-12-05  Arjan van de Ven <arjan@fenrus.demon.nl>
2131
2132         * gdk-pixbuf/io-ico.c: Bug in palet-size
2133         calculation fixed
2134
2135 1999-12-04  Arjan van de Ven <arjan@fenrus.demon.nl>
2136
2137         * gdk-pixbuf/io-bmp.c: Major cleanup, added support for
2138         32 bpp and 4 bpp (uncompressed) images, fixed 1bpp.
2139
2140         * gdk-pixbuf/io-ras.c: Minor cleanup, ran through lclint
2141
2142         * gdk-pixbuf/io-ico.c: Minor cleanup, fixed 1bpp icons,
2143         ran through lclint.
2144
2145         * gdk-pixbuf/gdk-pixbuf-io.c: Added detection of .CUR files
2146         (Windows Cursor files). These are identical to .ICO files,
2147         except for the signature and 2 extra fields for the hotspot.
2148
2149 1999-12-03  Federico Mena Quintero  <federico@redhat.com>
2150
2151         * gdk-pixbuf/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_get_arg):
2152         Removed unused variable `item'.
2153
2154 1999-12-03  Jonathan Blandford  <jrb@redhat.com>
2155
2156         * gdk-pixbuf/io-gif.c (gif_fill_in_lines): added a comment to
2157         explain this function better.
2158
2159 1999-12-02  Federico Mena Quintero  <federico@redhat.com>
2160
2161         Source files moved from src/ to gdk-pixbuf/, to be consistent with
2162         other libraries.
2163
2164         * doc/Makefile.am: Modified for the new source directory.
2165
2166         * configure.in: Likewise.
2167
2168         * Makefile.am: Likewise.
2169
2170         * autogen.sh: Likewise.
2171
2172         * gdk-pixbuf/Makefile.am: Likewise.
2173
2174 1999-12-02  Federico Mena Quintero  <federico@redhat.com>
2175
2176         * src/testpixbuf.c: #include <config.h>, and fix includes.
2177
2178         * src/testpixbuf-drawable.c: #include <config.h>, and fix includes.
2179
2180         * src/io-xpm.c: Fix includes.
2181
2182         * src/io-tiff.c: Fix includes.
2183
2184         * src/io-ras.c: Fix includes, and do not include more stuff than needed.
2185
2186         * src/io-pnm.c: Fix inlcudes, and do not include more stuff than needed.
2187
2188         * src/io-png.c: Fix includes.
2189
2190         * src/io-ico.c: Fix includes, and do not include more stuff than needed.
2191
2192         * src/io-gif.c: Fix includes, and do not include more stuff than needed.
2193
2194         * src/io-bmp.c: Fix includes, and do not include more stuff than needed.
2195
2196         * src/gnome-canvas-pixbuf.c: Fix includes.
2197
2198         * src/gdk-pixbuf.c: Fix includes.
2199
2200         * src/gdk-pixbuf-util.c: Fix includes.
2201
2202         * src/gdk-pixbuf-render.c: Fix includes.
2203
2204         * src/gdk-pixbuf-io.h: Fix includes.
2205
2206         * src/gdk-pixbuf-drawable.c: Fix includes.
2207
2208         * src/gdk-pixbuf-drawable.h: Use angle brackets for the gdk-pixbuf
2209         include files.
2210
2211         * src/gdk-pixbuf-data.c: Fix includes.
2212
2213         * src/gdk-pixbuf-loader.c: #include <config.h>
2214
2215         * src/gdk-pixbuf-loader.h: Use angle brackets for the gdk-pixbuf
2216         include files.
2217
2218         * src/Makefile.am: Commented out the gdk-pixbuf-drawable stuff,
2219         since it is not finished.
2220
2221         * src/gdk-pixbuf.h: Removed unused transformation prototypes.
2222
2223         * src/gdk-pixbuf-util.c: New file with utility and convenience
2224         functions for pixbufs.
2225
2226         * src/Makefile.am (libgdk_pixbuf_la_SOURCES): Added gdk-pixbuf-util.c.
2227
2228         * doc/gdk-pixbuf-sections.txt: Added section for utility functions.
2229
2230         * doc/Makefile.am (tmpl_sources): Added tmpl/util.sgml.
2231
2232         * doc/gdk-pixbuf.sgml: Added the utilities section.
2233
2234         * doc/tmpl/util.sgml: Documentation for the utility functions.
2235
2236 1999-11-29  Owen Taylor  <otaylor@redhat.com>
2237
2238         * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
2239         Keep the mask around until after we draw ... since
2240         the GC changes aren't flushed to the X server until we
2241         draw, destroying it before that may result in BadPixmap
2242         errors.
2243
2244 1999-11-30  Havoc Pennington  <hp@pobox.com>
2245
2246         * configure.in: Add AM_CONDITIONAL for inside gnome-libs
2247
2248         * src/Makefile.am: conditionalize GnomeCanvasPixbuf
2249
2250 1999-11-29  Federico Mena Quintero  <federico@redhat.com>
2251
2252         * src/Makefile.am: Uncomment the GnomeCanvasPixbuf sources.  This
2253         should be made conditional, not blindly commented out.
2254
2255 1999-11-29  Jonathan Blandford  <jrb@redhat.com>
2256
2257         * src/Makefile.am (ICO_LIB): Added another loader from Arjan to
2258         handle .ico files.  Cool.
2259
2260 1999-11-24  Jonathan Blandford  <jrb@redhat.com>
2261
2262         * src/io-bmp.c (OneLine24): new patch from Arjan to handle
2263         compressed bmps.
2264
2265 1999-11-24  James Henstridge  <james@daa.com.au>
2266
2267         * configure.in (AC_OUTPUT): altered hack to place the symlink in the
2268         top builddir rather than src.  This still builds fine, and does not
2269         get gtk-doc into an infinite loop when trying to find all the source
2270         files.
2271
2272 1999-11-23  Jonathan Blandford  <jrb@redhat.com>
2273
2274         * Removed #PRAGMA } from headers.  Also, make compile if you don't
2275         have it installed, already.
2276
2277 1999-11-22  Federico Mena Quintero  <federico@redhat.com>
2278
2279         * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_draw): Create the
2280         temporary buffer to the size of the interesction of the bounding
2281         box and the expose area, not the whole expose area.  This speeds
2282         up things a lot.
2283
2284         * src/gdk-pixbuf-render.c (gdk_pixbuf_render_threshold_alpha): Do
2285         not paint black on the mask, since we already cleared it in a
2286         single gdk_draw_rectangle() operation.
2287
2288 1999-11-22  Raja R Harinath  <harinath@cs.umn.edu>
2289
2290         * configure.in (GDK_PIXBUF_DIR): Fix for srcdir != builddir.
2291
2292 1999-11-22  Havoc Pennington  <hp@pobox.com>
2293
2294         * src/Makefile.am (GDK_PIXBUF_LIBS): Patch from Paul Fisher
2295         <pnfisher@redhat.com> adds all -lgdk-pixbuf and all other
2296         dependencies to LIBADD variables for loadable modules. Necessary
2297         for a Java dynamic loading thing to be able to figure it out.
2298
2299 1999-11-22  Havoc Pennington  <hp@pobox.com>
2300
2301         * src/io-png.c (image_load_increment): Call the update_area
2302         callback depending on the number of rows loaded in this increment.
2303
2304         * src/testpixbuf.c (main): slow down the progressive load demo
2305
2306 1999-11-16  Havoc Pennington  <hp@pobox.com>
2307
2308         * src/gdk-pixbuf-drawable.h: Get the quotes right on the #include
2309
2310 1999-11-22  Jonathan Blandford  <jrb@redhat.com>
2311
2312         * configure.in (GDK_PIXBUF_DIR): make the symlink.  Does not work
2313         for srcdir != buildir != .  Beats me why; I can't figure it out.
2314         AC_OUTPUT_COMMANDS doesn't seem to let me substitute it correctly.
2315
2316 1999-11-21  Jonathan Blandford  <jrb@redhat.com>
2317
2318         * src/gdk-pixbuf-io.c: added io-bmp from Arjan
2319         <arjan@fenrus.demon.nl>
2320
2321 1999-11-20  Michael Zucchi  <zucchi@zedzone.mmc.com.au>
2322
2323         * src/gdk-pixbuf-drawable.c (gdk_pixbuf_from_drawable_core):
2324         Rework/reorder of the code.  Each case has been separated into
2325         another function; its big but it should be quick.
2326         gdk_pixbuf_rgba_from_drawable() will now return a pixbuf with
2327         opaque alpha information.  Not all depths/formats have been
2328         tested, but 8, 15/16 and 24 (alinged 32) should work ok.
2329
2330 1999-11-17  Larry Ewing  <lewing@gimp.org>
2331
2332         * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_bounds):
2333         implement the bounds method correctly.
2334         (compute_viewport_affine): compute the affine need to fit the
2335         image within the viewport given by the args.
2336         (compute_render_affine): call compute_viewport_affine.
2337
2338 1999-11-16  Havoc Pennington  <hp@pobox.com>
2339
2340         * src/gdk-pixbuf-drawable.h: Use includes from the current
2341         directory, not the system directory.
2342
2343 Mon Nov 15 17:18:28 1999  George Lebl <jirka@5z.com>
2344
2345         * src/testpixbuf-drawable.c: use includes from the current directory
2346           rather then from the system include directory as gdk-pixbuf
2347           includes are not yet installed when this is compiled.
2348
2349 1999-11-13  Cody Russell  <bratsche@dfw.net>
2350         * src/testpixbuf-drawable.c: Added a test program for drawable
2351         code.
2352
2353         * src/Makefile.am: Build testpixbuf-drawable.
2354
2355 1999-11-12  Cody Russell  <bratsche@dfw.net>
2356
2357         * src/gdk-pixbuf-drawable.c: Merged in Michael Zucchi's changes.
2358
2359 1999-11-10  Federico Mena Quintero  <federico@redhat.com>
2360
2361         * doc/tmpl/gdk-pixbuf-loader.sgml: Populated.
2362
2363         * doc/gdk-pixbuf.signals: Put in the real names of signal
2364         arguments.
2365
2366         * src/gdk-pixbuf-loader.c: Improved documentation comments.
2367
2368 1999-11-10  Jonathan Blandford  <jrb@redhat.com>
2369
2370         * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): emit the
2371         closed signal.
2372
2373         * src/io-ras.c (OneLineMapped_file): Now can handle indexing
2374         correctly.  Patch from Arjan to do so.
2375
2376 1999-11-10  Michael Fulbright  <drmike@redhat.com>
2377
2378         * src/io-pnm.c (pnm_ascii_read_scanline): Fixed loading of ASCII PNM
2379         files.
2380
2381         * src/testpixbuf.c: Added final queued draw when done loading image.
2382
2383 1999-11-10  Jonathan Blandford  <jrb@redhat.com>
2384
2385         * src/gdk-pixbuf-io.c (gdk_pixbuf_load_module): removed spurious
2386         print statements.
2387
2388 1999-11-10  Federico Mena Quintero  <federico@redhat.com>
2389
2390         * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): Added
2391         documentation.
2392
2393 1999-11-09  Federico Mena Quintero  <federico@redhat.com>
2394
2395         * src/io-png.c: Fixed some incompatible pointer initializations.
2396
2397         * src/io-jpeg.c (image_load_increment): Remove unused variable.
2398
2399 1999-11-09  Michael Fulbright  <drmike@redhat.com>
2400
2401         * src/testpixbuf.c: Fixed it to use timeout to read from file
2402         for progressive loading. Set TBF_KBPS=n, where n is the number of
2403         kilobytes/second to simulate in downloading. n has to be an integer.
2404
2405         * src/io-jpeg.c: Slight cosmetic cleanup.
2406
2407         * src/io-pnm.c: Fixed raw PNM loading bug. Also discovered that ASCII
2408         PBM loading has a similar problem and will address tomorrow.
2409
2410 1999-11-09  Havoc Pennington  <hp@pobox.com>
2411
2412         * src/Makefile.am (libgdk_pixbuf_la_SOURCES): build the
2413         gdk-pixbuf-drawable stuff.
2414
2415 1999-11-09  Federico Mena Quintero  <federico@redhat.com>
2416
2417         * configure.in: Bumped version number to 0.4.
2418
2419 1999-11-09  Michael Fulbright  <drmike@redhat.com>
2420
2421         * src/io-pnm.c : Finished progressive PNM loading code. Should handle
2422         all types of PNM files now.
2423
2424         * src/io-jpeg.c (image_load_increment): Figured out problem with
2425         loading Progressive JPEG's progressively (say that 10 times fast).
2426         Currently for Progressive JPEG's the entire image is loaded before
2427         it is displayed. libjpeg supports a fancier mechanism which I may
2428         implement later.
2429
2430         With these changes all JPEG formats appear to load properly for me.
2431
2432 1999-11-08  Jonathan Blandford  <jrb@redhat.com>
2433
2434         * src/io-ras.c (image_load_increment): Final patch from Arjan.
2435         Seems to do progressive loading.
2436
2437 1999-11-08  Michael Fulbright  <drmike@redhat.com>
2438
2439         * src/io-pnm.c image_load (): Fixed so we do not create a separate
2440         pixel buffer when reading in image - we reuse the pixel data in
2441         the GdkPixbuf structure instead.
2442
2443 1999-11-08  Michael Fulbright  <drmike@redhat.com>
2444
2445         * src/io-pnm.c pnm_read_ascii_scanline (): Added support for
2446         ASCII PNM files. Note I haven't tested loaded ASCII PBM files because
2447         I can't seem to find a utility to convert into this format.
2448         Next is to add progressive loading support for the PNM format.
2449
2450 1999-11-07  Federico Mena Quintero  <federico@redhat.com>
2451
2452         * doc/tmpl/gnome-canvas-pixbuf.sgml: Finished detailed explanation
2453         of the width, height, x, and y setting and pixels arguments.
2454
2455 1999-11-05  Jonathan Blandford  <jrb@redhat.com>
2456
2457         * src/io-ras.c (image_load): third patch.  Now it seems to load.
2458
2459         * src/gdk-pixbuf-io.c: second patch Arjan van de Ven
2460         <arjan@fenrus.demon.nl> to autodetect/load the sunras files.
2461
2462         * src/io-ras.c (image_load): new file from Arjan van de Ven
2463         <arjan@fenrus.demon.nl> to begin the ras loader.
2464
2465 1999-11-05  Federico Mena Quintero  <federico@redhat.com>
2466
2467         * doc/gdk-pixbuf-sections.txt: Removed gdk-pixbuf-io, since it is
2468         for internal use only.
2469
2470         * doc/gdk-pixbuf.sgml: Likewise.
2471
2472         * doc/tmpl/gnome-canvas-pixbuf.sgml: Finished docs.
2473
2474 1999-11-05  Michael Fulbright  <drmike@redhat.com>
2475
2476         * src/io-pnm.c: Implemented support for reading raw PBM/PGM/PPM
2477         files from a file. Next step is support for ASCII files, and
2478         then incremental loading.
2479
2480 1999-11-04  Federico Mena Quintero  <federico@redhat.com>
2481
2482         * Makefile.am: Added doc to SUBDIRS.
2483
2484 1999-11-04  Michael Fulbright  <drmike@redhat.com>
2485
2486         * src/io-jpeg.c: Prettied up code slightly.
2487         * src/io-pnm.c:  Start of pnm loader (from file and progressively).
2488                          Doesn't do much yet (will finish tomorrow).
2489         * src/gdk-pixbuf-io.c: Added pnm to structure of known types.
2490
2491 1999-11-04  Federico Mena Quintero  <federico@redhat.com>
2492
2493         * doc/tmpl/rendering.sgml: Populated.
2494
2495         * doc/Makefile.am: Added the template files.
2496
2497 1999-11-04  Havoc Pennington  <hp@pobox.com>
2498
2499         * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable): In
2500         docs, explain what a dither offset is for.
2501         (gdk_pixbuf_render_to_drawable_alpha): Explain why you would use
2502         this function vs. gdk_pixbuf_render_to_drawable().
2503
2504 1999-11-04  Havoc Pennington  <hp@pobox.com>
2505
2506         * configure.in: Use libart-config correctly; find gnome-config
2507         separately. Fix GNOME_LIBS to be correct in "no gnome installed
2508         yet" case.
2509
2510         * src/Makefile.am: Link to GNOME_LIBS instead of a hardcoded
2511         library list.
2512
2513         Patch untested in the inside-gnome-libs case, I need to commit
2514         then check out to the gnome-libs I'm using.
2515
2516 1999-11-04  Michael Fulbright  <drmike@redhat.com>
2517
2518         * src/io-jpeg.c (image_begin_load): Add update_func callback.
2519         * src/io-jpeg.c (image_load_increment): Call updated callback when
2520         new graphic data decoded.
2521
2522 1999-11-04  Jonathan Blandford  <jrb@redhat.com>
2523
2524         * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_update): handle the
2525         actual update.
2526         * src/io-png.c (image_begin_load): add a update_func callback.
2527         * src/io-gif.c (image_begin_load): add a update_func callback.
2528         (gif_get_lzw): added the update_func ability
2529
2530         * src/io-tiff.c (image_begin_load): add a update_func callback.
2531
2532 1999-11-04  Federico Mena Quintero  <federico@redhat.com>
2533
2534         * doc/tmpl/gdk-pixbuf.sgml: Populated.
2535
2536         * doc/tmpl/refcounting.sgml: Populated.
2537
2538         * doc/tmpl/file-loading.sgml: Populated.
2539
2540         * src/gdk-pixbuf.c: Added documentation comments.
2541
2542         * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_file): Added
2543         documentation comments.
2544
2545         * doc/: Finished integrating the documentation framework.
2546
2547 1999-11-03  Federico Mena Quintero  <federico@redhat.com>
2548
2549         * configure.in: Removed libgif stuff now that we do not depend on it.
2550         Added the necessary cruft for gtk-doc.
2551
2552         * src/Makefile.am: Unconditionally build the GIF loader.
2553
2554 1999-11-03  Jonathan Blandford  <jrb@redhat.com>
2555
2556         * src/io-gif.c (gif_read): renamed ReadOK to gif_read.
2557         Added a lot of comments to the file.
2558
2559         * src/Makefile.am (libpixbuf_gif_la_LIBADD): Remove dependency on
2560         lib*gif!!!!
2561
2562 1999-11-03  Michael Fulbright  <drmike@redhat.com>
2563
2564         * src/io-jpeg.c (image_load_increment): Further removal of
2565         bugginess in local buffering code. Handles grayscale jpegs
2566         correctly now.
2567
2568         * src/io-jpeg.c (image_load_stop): Was freeing local context
2569         for jpeg library before calling jpeg_decompres_finish ().
2570
2571 1999-11-03  Jonathan Blandford  <jrb@redhat.com>
2572
2573         * src/io-gif.c (image_load_increment): now handle arbitrary buffer
2574         sizes.
2575         (gif_get_lzw): set the transparency to the right val.
2576
2577 1999-11-03  Federico Mena Quintero  <federico@redhat.com>
2578
2579         * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_init):
2580         Initiailize the x and y fields.
2581         (gnome_canvas_pixbuf_destroy): Queue a redraw upon destruction.
2582         (PixbufPrivate): Renamed need_size_update to need_xform_update.
2583         (recompute_bounding_box): Do not use temporary values.
2584
2585 1999-11-03  Jonathan Blandford  <jrb@redhat.com>
2586
2587         * src/io-gif.c (set_gif_lzw_clear_code): new state.  Fixes
2588         un-compressed gifs.
2589
2590         * src/gnome-canvas-pixbuf.c (recompute_bounding_box): remove
2591         unneeded x,y,h,w vars.
2592
2593 1999-11-03  Larry Ewing  <lewing@gimp.org>
2594
2595         * src/gnome-canvas-pixbuf.c (compute_render_affine): adjust
2596         render_affine calculation for x,y offsets.
2597         (gnome_canvas_pixbuf_set_arg): add x,y args.
2598         (gnome_canvas_pixbuf_get_arg): add x,y args.
2599         (recompute_bounding_box): simply code using ArtDrect and the
2600         render_affine.  Removed compute_xform_vectors as it was no longer
2601         needed.
2602
2603 1999-11-03  Federico Mena Quintero  <federico@redhat.com>
2604
2605         * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_point): I'm a
2606         doofus.  Return a distance, not a boolean, for opaque images.
2607
2608         * src/gnome-canvas-pixbuf.c (recompute_bounding_box): Do proper
2609         rounding of bounding box coordinates.
2610         (gnome_canvas_pixbuf_bounds): Implemented the ::bounds() method.
2611         (gnome_canvas_pixbuf_draw): Use the correct alpha threshold value.
2612
2613 1999-11-03  Jonathan Blandford  <jrb@redhat.com>
2614
2615         * src/io-gif.c (gif_prepare_lzw): s/lwz/lzw/g
2616
2617 1999-11-03  Michael Fulbright  <drmike@redhat.com>
2618
2619         * src/io-jpg.c (image_load_increment): Fixed code which moved
2620         buffer around as new data comes in to work properly. JPEG progressive
2621         loading should be working now except for grayscale JPEG's, which I
2622         will look into next.
2623
2624 1999-11-03    <sopwith@redhat.com>
2625         * src/testpixbuf.c: A GtkFunction needs to return a value for deterministic behaviour.
2626           Also put dot printing back in.
2627
2628 1999-11-03    <jrb@redhat.com>
2629
2630         * src/io-gif.c (gif_get_extension): Read 'til the next empty block
2631         correctly, now.
2632
2633 1999-11-02  Cody Russell  <bratsche@dfw.net>
2634         * src/gdk-pixbuf-drawable.c: Changed the behavior to return NULL
2635         if part of the requested image is offscreen, rather than clipping
2636         the image.
2637
2638 1999-11-02  Jonathan Blandford  <jrb@redhat.com>
2639
2640         * src/io-gif.c (gif_fill_in_lines): Fill in the gif's blank areas
2641         for interlacing and progressive loading.
2642
2643 1999-11-02  Cody Russell  <bratsche@dfw.net>
2644         * src/gdk-pixbuf-drawable.c (gdk_pixbuf_from_drawable_core): Now
2645         calls gdk_pixbuf_new_from_art_pixbuf() instead of gdk_pixbuf_new().
2646
2647 1999-11-02  Jonathan Blandford  <jrb@redhat.com>
2648
2649         * src/io-gif.c (gif_main_loop): Now progressive gif loading works!
2650         It's a little slow though. )-:
2651
2652 1999-11-02 Elliot Lee <sopwith@redhat.com>
2653         * src/gdk-pixbuf-loader.[ch], src/gdk-pixbuf-io.h: Make the arguments to the
2654         write/load_increment operations const-correct.
2655
2656 1999-11-02  Federico Mena Quintero  <federico@redhat.com>
2657
2658         * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_point):
2659         Implemented the ::point() method.  We do a simple containment test
2660         instead of a full distance calculation since the canvas is going
2661         to change to that scheme, anyways.
2662
2663 1999-11-02 Elliot Lee <sopwith@redhat.com>
2664
2665         * src/testpixbuf.c: Allow using $TBF_READLEN to specify the size of the chunks
2666         that are read from the input file.
2667
2668 1999-11-02  Larry Ewing  <lewing@gimp.org>
2669
2670         * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_render): add aa
2671         render function.
2672         (gnome_canvas_pixbuf_class_init): add gnome_canvas_pixbuf_render
2673         to class.
2674
2675 1999-11-02  Federico Mena Quintero  <federico@redhat.com>
2676
2677         * src/gnome-canvas-pixbuf.c (compute_render_affine): Moved the
2678         affine computation code from ::draw() to here, since it is needed
2679         by ::point() as well.
2680
2681 1999-11-02 Elliot Lee <sopwith@redhat.com>
2682
2683         * src/gdk-pixbuf-loader.c: Reorganize gdk_pixbuf_loader_write into
2684         three functions, and eliminate duplication of code from write()
2685         and close(). Also fix bug where the 128-byte header was being
2686         written twice.
2687
2688 1999-11-01  Federico Mena Quintero  <federico@redhat.com>
2689         * src/gnome-canvas-pixbuf.c (recompute_bounding_box): Fixed
2690         bounding box computation.
2691
2692 1999-11-01  Federico Mena Quintero  <federico@redhat.com>
2693
2694         * src/gnome-canvas-pixbuf.c: Start of the pixbuf canvas item.
2695         Drawing affines seem to work.  Bounding box is fubared.  ::point()
2696         is not implemented.  This is a work in progress.
2697
2698         * src/Makefile.am: Added gnome-canvas-pixbuf.[ch] to the list of
2699         sources.
2700
2701         * configure.in: Sigh.  We need to link in libgnomeui for the
2702         canvas stuff.  This mess will disappear when gdk-pixbuf gets
2703         folded into gnome-libs.
2704
2705 1999-10-30  Jonathan Blandford  <jrb@redhat.com>
2706
2707         * src/io-gif.c: Some more work.  Now it generates a gdk_pixbuf of
2708         the right size, at a minimum, even if the image is squished and
2709         the wrong color.
2710         (ReadImage): lets get the offset right.  This will let transparent
2711         gifs work.
2712
2713 1999-10-29  Michael Fulbright  <drmike@redhat.com>
2714
2715         * src/io-jpeg.c: image_load_increment(): Fixed bug when
2716         image width was not a multiple of 4 - always use the
2717         gdk_pixbuf rowstride to increment pointers!
2718
2719 1999-10-29  Michael Fulbright  <drmike@redhat.com>
2720
2721         * src/io-jpeg.c: Added first cut at progressive jpeg loading.
2722         Currently does not handle either progressive jpeg files (jpeg
2723         files with multiple scans at different quality settings), but
2724         I plan on adding this support soon. These are fairly rare in
2725         my experience, so it shouldn't slow people down too much.
2726         Grayscale jpegs also don't work but that should be easy to fix.
2727
2728 1999-10-29  Michael Fulbright  <drmike@redhat.com>
2729
2730         * src/testpixbuf.c: Added title to windows so you can identify
2731         progressive and file windows.
2732
2733 1999-10-29  Michael Fulbright  <drmike@redhat.com>
2734
2735         * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): Actually
2736         load the image handler when we determine the image type.
2737
2738         * src/gdk-pixbuf-io.[ch] (gdk_pixbuf_load_module): Changed the
2739         previously static function load_image_handler () to
2740         a public function gdk_pixbuf_load_module (). It is needed in
2741         gdk-pixbuf-loader.c to load image handler modules.  This function
2742         is different from gdk_pixbuf_get_module (), which only returns
2743         a reference to the required handler, because it actually loads
2744         the handler into memory. Both actions should possibly be combined
2745         in a convenience function since one w/o the other doesn't seem to
2746         make much sense.
2747
2748 1999-10-28  Jonathan Blandford  <jrb@redhat.com>
2749
2750         * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): don't send a
2751         0 length buffer.
2752
2753 1999-10-28  Federico Mena Quintero  <federico@redhat.com>
2754
2755         * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable): New
2756         function to render a portion of a pixbuf to a drawable.  Ignores
2757         alpha information and takes in a GC.
2758         (gdk_pixbuf_render_to_drawable_alpha): New function to render a
2759         portion of a pixbuf to a drawable.  It automatically creates a GC
2760         and a clipping mask for alpha pixbufs.
2761
2762 1999-10-28  Jonathan Blandford  <jrb@redhat.com>
2763
2764         * src/gdk-pixbuf.h: turned convenience macros into convenience
2765         functions so some error checking could be added.
2766
2767         * src/io-tiff.c (image_load_increment): started work on the tiff
2768         non-incremental loader.
2769         (image_begin_load): Finished the incremental loader.
2770
2771         * src/io-gif.c (image_load_increment): started work on the gif
2772         incremental loader.
2773
2774         * src/gdk-pixbuf-io.h: Changed ModuleType to GdkPixbufModule.
2775
2776 1999-10-27  Federico Mena Quintero  <federico@redhat.com>
2777
2778         * src/gdk-pixbuf-render.c (gdk_pixbuf_render_threshold_alpha): New
2779         function to threshold a pixbuf's alpha channel into a bitmap.
2780
2781         * src/gdk-pixbuf.c (gdk_pixbuf_new): Fixed so that it will
2782         contemplate future extensions to ArtPixBuf's formats.
2783
2784         * src/io-png.c (png_info_callback): Use the new API of gdk_pixbuf_new().
2785
2786         * src/gdk-pixbuf.h (gdk_pixbuf_get_height): Added some convenience
2787         macros to fetch the ArtPixBuf's fields.
2788
2789 1999-10-27  Havoc Pennington  <hp@pobox.com>
2790
2791         * src/testpixbuf.c (main): Display the progressive load
2792
2793         * src/io-png.c (setup_png_transformations): Break transformation
2794         code into separate function
2795         (png_info_callback): Use setup_png_transformations
2796
2797 1999-10-27  Havoc Pennington  <hp@pobox.com>
2798
2799         * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): Check
2800         properly whether the XPM module has already been loaded
2801         (gdk_pixbuf_new_from_file): Check properly if loader module
2802         was already loaded (was checking if load symbol was present
2803         in order to decide whether to re-load; should check module !=
2804         NULL, then load != NULL)
2805         (image_handler_load): Check in present working directory,
2806         makes it easier to debug for now
2807         (file_formats): This array initializer was seriously on crack,
2808         was assigning a function pointer to a GModule*
2809
2810         * src/testpixbuf.c (main): Change type of pixbuf_loader to GdkPixbufLoader*
2811
2812 1999-10-27  Havoc Pennington  <hp@pobox.com>
2813
2814         * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_finalize):
2815         Fix typo that prevented compilation
2816         (gdk_pixbuf_loader_destroy): ditto
2817
2818 1999-10-27  Federico Mena Quintero  <federico@redhat.com>
2819
2820         * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_new): Return a
2821         GdkPixbufLoader, not a GtkObject.
2822         (gtk_marshal_NONE__INT_INT_INT_INT): Made static.
2823         (gdk_pixbuf_loader_get_type): Documented.
2824         (gdk_pixbuf_loader_class_init): Initialize the parent class
2825         correctly.
2826         (gdk_pixbuf_loader_destroy): Added sanity checks. Call the parent
2827         class destroy function.
2828         (gdk_pixbuf_loader_new): Documented.
2829         (gdk_pixbuf_loader_finalize): Call the parent class finalize
2830         function.
2831         (gdk_pixbuf_loader_write): Use size_t for count.
2832
2833 1999-10-27  Michael Fulbright  <drmike@redhat.com>
2834
2835         * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_destroy): Fixed
2836         logic so we only try to close loader if it wasn't previously closed.
2837
2838 1999-10-27  Michael Fulbright  <drmike@redhat.com>
2839
2840         * src/gdk-pixbuf-loader.c: Made sure image_loader struct member of
2841         pixbuf_loader properly initialized.
2842
2843         * src/testpixbuf.c: Made sure we cleanup pixbuf_loader properly
2844         when done.
2845
2846 1999-10-26  Jonathan Blandford  <jrb@redhat.com>
2847
2848         * src/gdk-pixbuf-io.c (image_handler_load): load the vtable fully.
2849
2850         * src/gdk-pixbuf-loader.c: Finished initial cut at the object.
2851
2852 1999-10-26  Havoc Pennington  <hp@pobox.com>
2853
2854         * src/gdk-pixbuf-loader.h: fix signals
2855
2856         * src/gdk-pixbuf-io.h: add new vtable fields
2857
2858
2859 1999-10-26  Jonathan Blandford  <jrb@redhat.com>
2860
2861         * src/gdk-pixbuf-loader.h: New Class.  Beginning of progrssive
2862         loading.
2863
2864 1999-10-25  Federico Mena Quintero  <federico@redhat.com>
2865
2866         * configure.in (CFLAGS): Patch from Uwe Koloska
2867         <koloska@Rcs1.urz.tu-dresden.de> to fix a stupid typo of mine.
2868
2869 1999-10-22  Havoc Pennington  <hp@pobox.com>
2870
2871         * src/io-xpm.c (mem_buffer): Clean up stupid
2872         increment-inside-array-dereference thing
2873
2874         * src/testpixbuf.c: Add XPM data tests.
2875
2876         * src/io-xpm.c: Make the XPM data buffer const, fix const
2877         correctness throughout the code.
2878
2879 1999-10-22  Havoc Pennington  <hp@pobox.com>
2880
2881         * src/gdk-pixbuf.h: Export gdk_pixbuf_new_from_xpm_data()
2882
2883 1999-10-22  Havoc Pennington  <hp@pobox.com>
2884
2885         * src/io-xpm.c (image_load_xpm_data): Export this symbol for
2886         loading an XPM from memory.
2887
2888         * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): New
2889         function, loads pixbuf from xpm data
2890         (image_handler_load): Add g_return_if_fail() to ensure the same
2891         module isn't loaded twice. Add g_module_symbol() to scan for XPM
2892         loader function.
2893
2894 1999-10-22  Federico Mena Quintero  <federico@redhat.com>
2895
2896         * src/io-png.c (image_load): Patch from Kristian Hogsberg
2897         Kristensen <hogsberg@daimi.au.dk> to avoid allocating extra row
2898         buffers; the rows can be read in directly into the main pixel
2899         buffer.
2900
2901 1999-10-20  Federico Mena Quintero  <federico@redhat.com>
2902
2903         * src/gdk-pixbuf-io.c (image_handler_load): Free path.
2904
2905 1999-10-20  Federico Mena Quintero  <federico@redhat.com>
2906
2907         * configure.in: Bumped version number to 0.3.
2908
2909         * src/Makefile.am (lbgdk_pixbuf_la_LDFLAGS): Added a libtool
2910         version number for the library.
2911
2912 1999-10-20  Federico Mena Quintero  <federico@redhat.com>
2913
2914         * src/gdk-pixbuf.h (GdkPixbuf): Removed the unref_fn field.  Now
2915         all memory management of the buffer is done by libart.
2916
2917         * src/gdk-pixbuf.c (gdk_pixbuf_unref): Do destruction here.
2918         Removed gdk_pixbuf_destroy, gdk_pixbuf_duplicate.
2919
2920         * src/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Implemented in
2921         terms of the libart functions.  Removed the old code.
2922
2923         * src/gdk-pixbuf-io.c (image_handler_load): Removed the save
2924         symbols.  Saving will not be implemented in GdkPixbuf.
2925
2926         * src/io-gif.c: Removed the saving stub.
2927         (image_load): Fixed memory management to fail gracefully if we run
2928         out of memory while loading the image.  Close the gif file when we
2929         are done.  This still needs more error handling for the DGif
2930         functions.
2931
2932         * src/io-jpeg.c (image_load): Some robustness fixes.
2933
2934         * src/io-png.c: Removed the saving stuff.
2935         (image_load): Some memory management fixes.
2936
2937         * src/io-tiff.c (image_load): Ditto.
2938
2939         * src/io-xpm.c (pixbuf_create_from_xpm): Ditto.
2940
2941 1999-10-18  Havoc Pennington  <hp@pobox.com>
2942
2943         * subautogen.sh: New name for macros/autogen.sh
2944
2945         * autogen.sh: use subautogen.sh
2946
2947 1999-10-18  Federico Mena Quintero  <federico@redhat.com>
2948
2949         * src/*: Reindented to use the GNOME Indentation.  Renamed
2950         GdkPixBuf to GdkPixbuf, for consistency with the function names
2951         (and it is also easier to type) :-)
2952
2953 1999-10-18  Havoc Pennington  <hp@pobox.com>
2954
2955         * configure.in: Use AM_PATH_GLIB instead of glib-config directly
2956
2957         * src/Makefile.am: Re-enable testpixbuf with GTK_CFLAGS/GTK_LIBS
2958
2959 1999-10-18  Havoc Pennington  <hp@pobox.com>
2960
2961         * Makefile.am (SUBDIRS): Remove "macros"
2962
2963         * configure.in: Don't use GNOME_INIT, handle case where we are
2964         inside gnome-libs. AM_PATH_GTK for the GIF test
2965
2966         * src/Makefile.am: Change flags to work without libgnomeui,
2967         comment out testpixbuf for now
2968
2969 1999-10-18  Federico Mena Quintero  <federico@redhat.com>
2970
2971         * configure.in: Use $GTK_LIBS as the extra libs when checking for
2972         libgif/libungif, as they need the X libraries.  Fixes bug #2472.
2973
2974 1999-10-10  Cody Russell  <bratsche@dfw.net>
2975         * src/gdk-pixbuf-drawable.c: core function now determines whether
2976         the requested geometry is on screen or not, and if some is not
2977         then the request is clamped to geometry that is on the screen.
2978
2979         Changed 'pixbuf' to 'art_pixbuf' in core function.
2980
2981 1999-10-08  Michael Fulbright  <drmike@redhat.com>
2982
2983         * src/gdk-pixbuf-data.c: Added to load rgb data from const data.
2984
2985         * src/testpifbuf: Changed test program to display cdrom from rgb data
2986         if no filename given to test program.
2987
2988 1999-10-07  Cody Russell  <bratsche@dfw.net>
2989         * src/gdk-pixbuf-drawable.[ch]: Added. (Actually, Miguel committed
2990         them, but I wrote them).
2991
2992         * src/gdk-pixbuf-drawable.h: Added a missing ; so things will now
2993         compile.
2994
2995         * src/Makefile.am: Added gdk-pixbuf-drawable.[ch] to
2996         libgdk_pixbuf_la_SOURCES and libgdk_pixbufinclude_HEADERS.
2997
2998         * src/gdk-pixbuf-drawable.c: Added #include "gdk-pixbuf-drawable.h"
2999         to fix compilation.
3000
3001         * src/gdk-pixbuf-drawable.[ch]: Changed functions to return
3002         GdkPixBuf* instead of ArtPixBuf*.
3003
3004 1999-09-22  Michael Meeks  <michael@nuclecu.unam.mx>
3005
3006         * src/gdk-pixbuf.c (gdk_pixbuf_new): created.
3007         (gdk_pixbuf_scale): use gdk_pixbuf_new + return a new scaled image.
3008
3009         * src/gdk-pixbuf.h (struct _GdkPixBuf): Re-organise struct, + add
3010         GdkPixBufUnrefFunc + gdk_pixbuf_new.
3011
3012         * src/io-jpeg.c (image_load): clean to use gdk_pixbuf_new.
3013
3014         * src/io-xpm.c (_pixbuf_create_from_xpm): ditto.
3015
3016         * src/io-tiff.c (image_load): ditto + fix leak
3017
3018         * src/io-png.c (image_load): ditto + add more exit points; monitor.png
3019         crashes this module ( add warning :-)
3020
3021         * src/io-bmp.c (image_load): ditto.
3022
3023         * src/io-gif.c (image_load): ditto.
3024
3025 1999-09-18  Michael Meeks  <michael@nuclecu.unam.mx>
3026
3027         * src/gdk-pixbuf.c (gdk_pixbuf_scale): Hack rgba support in so
3028         it doesn't crash scaling with alpha.
3029
3030 1999-09-17  Federico Mena Quintero  <federico@redhat.com>
3031
3032         * src/io-bmp.c (image_load): Set the initial ref_count to 1.
3033
3034         * src/io-gif.c (image_load): Likewise.
3035
3036         * src/io-jpeg.c (image_load): Likewise.
3037
3038         * src/io-png.c (image_load): Likewise.
3039
3040         * src/io-tiff.c (image_load): Likewise.
3041
3042         * src/io-xpm.c (_pixbuf_create_from_xpm): Likewise.
3043
3044         * src/gdk-pixbuf-io.c (gdk_pixbuf_load_image): Added an assertion
3045         for the ref_count to be != 0.
3046
3047         * src/gdk-pixbuf.c (gdk_pixbuf_ref): Be more paranoid with sanity
3048         checking.
3049         (gdk_pixbuf_unref): Fix incorrect sanity check and comparison.
3050
3051 1999-08-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
3052
3053         * src/io-png.c (image_save): Fixed compiler warnings.  Fixed write
3054         to unallocated memory (row_ptr), and fixed its type as well.  Take
3055         into account the ArtPixbuf's rowstride when assigning the row
3056         pointers.
3057
3058         * src/gdk-pixbuf.c: Fixup includes.
3059
3060         * src/gdk-pixbuf-io.c: Likewise.
3061
3062 Sat Jul 31 19:19:47 CEST 1999
3063
3064         * src/gdk-pixbuf-io.c:
3065         * src/io-png.c: Fixed two obvious C syntax bugs
3066
3067 1999-07-29  Mark Crichton  <crichton@gimp.org>
3068
3069         * src/io-png.c (image_save): Added PNG saving function
3070
3071         * src/gdk-pixbuf-io.c: Changed image_save function format.  Now it's
3072         image_save(GdkPixBuf *p, FILE *f, ...)
3073
3074
3075 1999-07-26  Michael Zucchi  <mzucchi@denr.sa.gov.au>
3076
3077         * src/Makefile.am (*_LIB): Only build the relevant loaders which
3078         require extra libraries if we actually have those libraries.
3079
3080 1999-07-23  Richard Hestilow  <hestgray@ionet.net>
3081
3082         * src/gdk-pixbuf.h: Include glib.h as it uses g* datatypes
3083         * gdk_pixbufConf.sh.in: Added for gnome-config
3084         * Makefile.am:
3085         * configure.in: Modified to generate gdk_pixbufConf.sh
3086
3087 1999-07-20  Mark Crichton  <crichton@gimp.org>
3088
3089         * src/gdk-pixbuf.c (gdk_pixbuf_rotate): Fixed rotation.  Now a bbox
3090         calculation needs to be done.
3091
3092 1999-07-18  Larry Ewing  <lewing@gimp.org>
3093
3094         * src/io-xpm.c:
3095         * src/io-gif.c:
3096         * src/io-png.c:
3097         * src/io-jpeg.c: Fix a few memory leaks in the, most of them in
3098         error cases but one or two in the common case.  There are probably
3099         a few small ones left.
3100
3101 1999-07-18  Mark Crichton  <crichton@gimp.org>
3102
3103         * configure.in: removed version.h.
3104
3105         * src/gdk-pixbuf-io.c (pixbuf_check_tiff): Minor readability
3106         improvements.
3107
3108 1999-07-17  Mark Crichton  <crichton@gimp.org>
3109
3110         * src/gdk-pixbuf.c: Removed gdk_pixbuf_free, redundant code.
3111         (gdk_pixbuf_rotate): Added pixbuf rotation code.
3112         (gdk_pixbuf_scale): Changed // comments to /* */
3113
3114         * src/gdk-pixbuf.h (gdk_pixbuf_destroy): Added gdk_pixbuf_destroy
3115         function to header.
3116
3117 1999-07-16  Larry Ewing  <lewing@gimp.org>
3118
3119         * src/testpixbuf.c (expose_func): reverted the expose everything
3120         changes, I'm not sure why these went in.
3121         (config_func): bring this up to date with the new pixbuf_scale
3122         semantics.
3123
3124         * src/gdk-pixbuf-io.c: added a couple of warnings to the module
3125         loading code so that poeple can diagnose problems better.
3126
3127         * src/gdk-pixbuf.c (gdk_pixbux_scale): fix the borkedness, also it
3128         no longer allocates a new pixbuf, which make things nicer for the
3129         rest of the code.  Unfortunately there is still a problem with
3130         scaling rgba images.
3131
3132 1999-07-16  Mark Crichton  <crichton@gimp.org>
3133
3134         * src/testpixbuf.c (config_func): ConfigureEvent handler.  This
3135         calls gdk_pixbuf_scale.  However, something is not working.
3136         N.B.: current pixmap is now stored in user_data with a key of
3137         "pixmap"
3138
3139         * src/gdk-pixbuf.c (gdk_pixbuf_scale): Implemented scaling function.
3140         Something is still borked, however.
3141
3142 1999-07-15  Larry Ewing  <lewing@gimp.org>
3143
3144         * src/io-jpeg.c (image_load): add raph@gimp.org's fix to the jpeg
3145         indexing routine
3146
3147         * src/testpixbuf.c (main): fix up the file routines a little so
3148         that you can load multiple files given the file names
3149
3150 1999-07-14  Larry Ewing  <lewing@gimp.org>
3151
3152         * src/testpixbuf.c (expose_func): added an almost proper expose
3153         handler for testpixbuf
3154
3155 1999-07-13  Mark Crichton  <crichton@gimp.org>
3156
3157         * configure.in: Fixed GIF check.  Replaced " with '
3158         * src/gdk-pixbuf.c: More (minor) work on gdk_pixbuf_scale
3159
3160 1999-07-13  Mark Crichton  <crichton@gimp.org>
3161
3162         * configure.in: I am a bonehead.  Added gif-lib check.