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