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