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