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