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