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