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