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