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