]> Pileus Git - ~andy/gtk/blob - gdk-pixbuf/ChangeLog
Welcome aboard, gdk-pixbuf.
[~andy/gtk] / gdk-pixbuf / ChangeLog
1 Wed Jun 21 16:02:48 2000  Owen Taylor  <otaylor@redhat.com>
2
3         * gdk-pixbuf-io.c (gdk_pixbuf_load_module): Add feature to
4         support a GDK_PIXBUF_MODULEDIR env variable as a secondary
5         load location.
6
7 2000-06-10  Federico Mena Quintero  <federico@helixcode.com>
8
9         * demo/pixbuf-demo.c: It was cold and rainy this Saturday morning,
10         so I needed something to warm my thighs.  Running plain infinite
11         loops on your laptop to make it hot is not very much fun.  A demo
12         of the gdk-pixbuf scaling functions is way better, and looks
13         prettier, too.
14
15         * configure.in (AC_OUTPUT): Added the demo Makefile.
16
17         * Makefile.am (SUBDIRS): Added the demo directory.
18
19 2000-06-09  Larry Ewing  <lewing@helixcode.com>
20
21         * gdk-pixbuf/io-png.c (gdk_pixbuf__png_image_load_increment):
22         setjmp for the png error handler.  It seems setting the error
23         handling functions does not avoid the jump, and so not calling
24         setjmp was causing the incremental loader to jump into lala land.
25         (gdk_pixbuf__png_image_begin_load): setjmp for error handling, I'm
26         not sure this one is actually required but the docs say it must be
27         set for every call to a png_* function.
28         Also changed the comment to reflect the fact that setting the
29         error handlers does _not_ avoid the longjmp.
30
31 2000-06-06  Larry Ewing  <lewing@helixcode.com>
32
33         * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
34         take frame offest into account when trying to calculate the
35         animation bbox.  Also set the width to the width not the height.
36         (gdk_pixbuf_loader_animation_done): cycle over the frames to
37         calculate bbox because now we finally have all the offset
38         information for each frame.
39
40 2000-06-05      Mathieu Lacage  <mathieu@gnome.org>
41
42         * configure.in: add some gtk parameters to the
43         GDK_PIXBUF_LIB²S and GDK_PIXBUG_INCLUDEDIR vars. One more
44         fight in my crusade for strange prefix compile...
45
46 2000-05-30  Not Zed  <NotZed@HelixCode.com>
47
48         * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_begin_load):
49         Initialise the error handler exit routine to our own.  Note this
50         means that every function that accesses the jpeg lib on this
51         object MUST do a setjmp.
52         (gdk_pixbuf__jpeg_image_stop_load): setjmp before accessing jpeg
53         lib for handling fatal error.
54         (gdk_pixbuf__jpeg_image_load_increment): And here too.  So now
55         your applications dont quit if there's a jpeg error!
56
57 2000-05-30  Federico Mena Quintero  <federico@helixcode.com>
58
59         * gdk-pixbuf.spec.in: Include all the loader libraries.  Patch
60         from Frank de Lange <frank@unternet.org>.
61
62 2000-05-09  Darin Adler  <darin@eazel.com>
63
64         * gdk-pixbuf/test-gdk-pixbuf.c:
65         Fixed includes to get rid of accidental GNOME dependency.
66
67 2000-05-26  Cody Russell  <car0969@gamma2.uta.edu>
68         * Makefile.am: Added gdk-pixbuf.spec to EXTRA_DIST
69
70 2000-05-22  Federico Mena Quintero  <federico@helixcode.com>
71
72         * configure.in: Bumped version number to 0.8.0.
73
74         * doc/Makefile.am (content_files): The toplevel gdk-pixbuf.sgml
75         file was not being distributed.
76
77         * gdk-pixbuf/pixops/Makefile.am (EXTRA_DIST): Added DETAILS.
78
79 2000-05-09  Darin Adler  <darin@eazel.com>
80
81         * gdk-pixbuf/gdk-pixbuf-drawable.c: (rgb565lsb), (rgb565msb),
82         (rgb565alsb), (rgb565amsb), (rgb555lsb), (rgb555msb), (rgb555alsb),
83         (rgb555amsb), (convert_real_slow): Change all conversion from 16-bit
84         formats to 32-bit formats to re-use the high bits of the color values
85         so that white maps to full white.
86
87 Fri May  5 12:16:32 2000  Owen Taylor  <otaylor@redhat.com>
88
89         * gdk-pixbuf/pixops/DETAILS: Add beginnings of file with 
90         detailed information about the structure and algorithms
91         of pixops so people can fix it instead of breaking it.
92
93 2000-05-04  Darin Adler  <darin@eazel.com>
94
95         * gdk-pixbuf/pixops/pixops.c: (pixops_composite_nearest),
96         (composite_pixel), (composite_line):
97         * gdk-pixbuf/test-gdk-pixbuf.c: (simple_composite_test_one_type):
98         Now that Owen explained the algorithm, I think I implemented it
99         right for the cases where the destination pixbuf is not opaque.
100         The test does seem to confirm it.
101
102 2000-05-04  Darin Adler  <darin@eazel.com>
103
104         * gdk-pixbuf/.cvsignore:
105         * gdk-pixbuf/Makefile.am:
106         * gdk-pixbuf/test-gdk-pixbuf.c (store_pixel), (fill_with_pixel),
107         (load_pixel), (simple_composite_test_one),
108         (simple_composite_test_one_type), (simple_composite_test), (main):
109         Added some tests of composite to highlight problems in the old
110         implementation. These tests run without any user interaction.
111         Just do "make check".
112
113         * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest),
114         (composite_pixel), (composite_line): Fix composite to do a textbook
115         "A over B" composite. This was clearly the intent, and it was easy
116         to fix the code to do it. (Note to those that read my earlier tries
117         at a patch; this version fixes typos that were present in all
118         my patch attempts. I checked the final version by adding more tests.)
119
120 2000-04-22 05:27:43 2000  Owen Taylor  <otaylor@redhat.com>
121
122         * gdk-pixbuf/pixops/pixops.c (pixops_scale_nearest): Properly
123         offset y coordinate accordining to render_y0.
124
125         * gdk-pixbuf/gdk-pixbuf-scale.c: Properly handle nonzero
126         dest_x, dest_y.
127
128 2000-04-22  James Henstridge  <james@daa.com.au>
129
130         * gdk-pixbuf.spec.in (%files): moved %{prefix}/bin/* from the main
131         package to the devel package.  The only file installed in bin is
132         gdk-pixbuf-config, which belongs in -devel.  This should allow having
133         multiple versions of the main gdk-pixbuf package installed.
134
135 2000-04-17  Karl Eichwalder  <ke@suse.de>
136
137         * gdk-pixbuf/Makefile.am (INCLUDES): Add $(GNOME_CFLAGS).
138         Reported by Jens Finke.
139
140 2000-04-14 Tomasz K³opczko <kloczek@pld.org.pl>
141
142         * gdk-pixbuf/pixops/makefile.am: $(LIBART_CFLAGS) replaced by 
143         $(GTK_CFLAGS) - now gdk-pixbuf compiles correctly.
144
145 2000-04-13  James Henstridge  <james@daa.com.au>
146
147         * configure.in: when performing the configure check to see if
148         gmodule works, set CFLAGS to GLIB_CFLAGS and LIBS to GLIB_LIBS,
149         rather than the other way round.  Also, call AC_MSG_RESULT in the
150         even that dynamic modules were not supported.
151
152 2000-04-12  Federico Mena Quintero  <federico@helixcode.com>
153
154         This comes from an excellent idea by Tim Janik (timj@gtk.org) to
155         hook to the last unref operation.
156
157         * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_set_last_unref_handler): New
158         function to set the last unref handler for a pixbuf.
159         (gdk_pixbuf_finalize): New function to actually finalize a pixbuf.
160         It calls the pixbuf's destroy notification function and frees the
161         GdkPixbuf structure itself.
162         (gdk_pixbuf_unref): Use the last unref function of the pixbuf if
163         available.
164
165         * gdk-pixbuf/gdk-pixbuf-private.h (struct _GdkPixbuf): New fields
166         for the last unref handler and its user data.
167
168         * gdk-pixbuf/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Use
169         g_new0() to allocate the pixbuf.
170
171         * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
172         Fixed the call to gtk_signal_new() for the "frame_done" signal; it
173         was not specifying the `frame' argument.
174
175         * gdk-pixbuf/gdk-pixbuf-animation.c
176         (gdk_pixbuf_animation_get_width): Fixed docstring.
177         (gdk_pixbuf_animation_get_height): Likewise.
178         (gdk_pixbuf_animation_get_num_frames): Likewise.
179         (gdk_pixbuf_animation_get_frames): Likewise.
180
181         * doc/gdk-pixbuf-sections.txt: Updated with the new functions and
182         types.
183
184         * doc/tmpl/gdk-pixbuf.sgml: Added the description for GdkColorspace.
185
186         * doc/tmpl/scaling.sgml: Added the description for GdkInterpType.
187
188         * doc/tmpl/refcounting.sgml: Updated with the information about
189         the last unref handler.
190
191         * doc/tmpl/*.sgml: Markup tweaks.
192
193         * gdk-pixbuf/Makefile.am (libgnomecanvaspixbuf_la_LDFLAGS): Sigh,
194         update the libtool version number for libgnomecanvaspixbuf as
195         well.
196         (libpixbufloader_*_la_LDFLAGS): The loaders need to be versioned
197         as well, or the old ones won't work with the new stuff.  Also,
198         renamed the modules as follows.
199
200         * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_load_module): Now the
201         modules are called "libpixbufloader-<format>.so" instead of
202         "libpixbuf-<format>.so".  They needed renaming so that the new
203         loaders won't overwrite the old ones; even with the versioning
204         stuff, the new .so symlink to the .so.1.0.0 would overwrite the
205         old real .so file.
206
207 2000-04-12  Paolo Molaro <lupus@debian.org>
208
209         * .cvsignore, src/.cvsignore: shut up cvs.
210
211 2000-04-11  Federico Mena Quintero  <federico@helixcode.com>
212
213         Most of this patch is based on a patch by Havoc Pennington
214         (hp@redhat.com) to make GdkPixbuf's structures opaque and to
215         remove the libart dependency.
216
217         * gdk-pixbuf/gdk-pixbuf.h: Removed the public structures.
218         (GdkColorspace): New enum that for now only contains
219         GDK_COLORSPACE_RGB.
220         (GdkPixbufDestroyNotify): New type for the pixbuf's pixels destroy
221         notification function.
222         (GdkInterpType): New num with interpolation types.
223
224         * *.[ch]: Replace the libart stuff with our own stuff.
225
226         * pixops/*.[ch]: Likewise.
227
228         * gdk-pixbuf/gdk-pixbuf-private.h: New file with the private
229         declarations of the GdkPixbuf structures.
230
231         * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_new_from_art_pixbuf):
232         Removed function.
233         (gdk_pixbuf_get_format): Constify.
234         (gdk_pixbuf_get_n_channels): Constify.
235         (gdk_pixbuf_get_has_alpha): Constify.
236         (gdk_pixbuf_get_bits_per_sample): Constify.
237         (gdk_pixbuf_get_pixels): Constify.
238         (gdk_pixbuf_get_width): Constify.
239         (gdk_pixbuf_get_height): Constify.
240         (gdk_pixbuf_get_rowstride): Constify.
241
242         * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_copy): New function to copy
243         a pixbuf.
244
245         * gdk-pixbuf/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Added a
246         bits_per_sample argument; currently only 8 bits per sample are
247         supported.
248
249         * gdk-pixbuf/gdk-pixbuf-animation.c (gdk_pixbuf_frame_get_pixbuf):
250         New accessor.
251         (gdk_pixbuf_frame_get_x_offset): New accessor.
252         (gdk_pixbuf_frame_get_y_offset): New accessor.
253         (gdk_pixbuf_frame_get_delay_time): New accessor.
254         (gdk_pixbuf_frame_get_action): New accessor.
255
256         * gdk-pixbuf/gdk-pixbuf-render.c
257         (gdk_pixbuf_render_pixmap_and_mask): Instead of returning a solid
258         mask rectangle for pixbufs without an alpha channel, set the
259         *mask_return to NULL.
260
261         * gdk-pixbuf/gdk-pixbuf-util.c (gdk_pixbuf_add_alpha): Constify.
262
263         * gdk-pixbuf/gdk-pixbuf-scale.c: Fix includes.
264
265         * gdk-pixbuf/gdk-pixbuf-scale.c (gdk_pixbuf_scale): Added some
266         preconditions.  Maybe we should also check for the colorspace,
267         bits per pixel, and such.
268         (gdk_pixbuf_composite): Likewise.
269         (gdk_pixbuf_composite_color): Likewise.
270         (gdk_pixbuf_scale_simple): Likewise, and fail gracefully if we
271         cannot allocate the new pixbuf.
272         (gdk_pixbuf_composite_color_simple): Likewise.
273
274         * gdk-pixbuf/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_render):
275         Use art_rgb_rgba_affine() or art_rgb_affine() since we no longer
276         have an ArtPixBuf.
277
278         * gdk-pixbuf/io-bmp.c: Fix includes.
279
280         * gdk-pixbuf/pixops/pixops.c (pixops_scale_nearest): Fixed cast in
281         an lvalue.
282
283         * TODO: Populated.
284
285         * configure.in: Removed checks for libart.
286
287         * gdk-pixbuf/Makefile.am: Removed references to libart.
288         (noinst_HEADERS): Added gdk-pixbuf-private.h.
289
290         * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_LDFLAGS): Incremented
291         the version number of the libtool library to indicate that this
292         definitely is not compatible with the old usage.  I know you love
293         me.  I know you do.
294
295         * configure.in: Bumped version number to 0.7.0.
296
297         * README: Updated.
298
299         * gdk-pixbuf-config.in (--libs): We no longer require libart.
300
301         * DEPENDS.libgdk_pixbuf: We no longer depend on libart.
302
303         * gdk-pixbuf.spec.in: Updated, but I don't guarantee anything.
304
305 2000-04-06  Jonathan Blandford  <jrb@redhat.com>
306
307         * gdk-pixbuf/testanimation.c (main): add more info to the
308         testanimation frames.
309
310 2000-04-04  Ettore Perazzoli  <ettore@helixcode.com>
311
312         * gdk-pixbuf/gdk-pixbuf-animation.c
313         (gdk_pixbuf_animation_get_width): New accessor function.
314         (gdk_pixbuf_animation_get_height): New accessor function.
315         (gdk_pixbuf_animation_get_num_frames): New accessor function.
316         (gdk_pixbuf_animation_get_frames): New accessor function.
317
318 2000-04-01  Federico Mena Quintero  <federico@helixcode.com>
319
320         * gdk-pixbuf/gdk-pixbuf.c: Reverted Mark's change.  The refcount
321         is private information, and the art_pixbuf will go away soon.
322
323 2000-03-31  Mark Crichton  <crichton@gimp.org>
324
325         * gdk-pixbuf/gdk-pixbuf.c: Added gdk_pixbuf_get_refcount
326         and gdk_pixbuf_get_artpixbuf accessor functions.
327
328 2000-03-29  Federico Mena Quintero  <federico@helixcode.com>
329
330         * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_get_has_alpha): Return
331         gboolean instead of int.
332
333 2000-03-29  Radek Doulik  <rodo@helixcode.com>
334
335         * gdk-pixbuf/gdk-pixbuf-animation.c
336         (gdk_pixbuf_animation_new_from_file): same as below
337
338         * gdk-pixbuf/io-gif.c (gif_get_lzw): added update of width and
339         height in GdkPixbufAnimation
340
341 2000-03-28  Radek Doulik  <rodo@helixcode.com>
342
343         * gdk-pixbuf/io-gif.c (gif_get_lzw): test also for
344         context->frame_done_func and context->anim_done_func to make
345         progressive animation loading work
346
347         * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
348         added priv->pixbuf = NULL as pixbuf is now in frame (and to make
349         gdk_pixbuf_loader_prepare happy)
350         (gdk_pixbuf_loader_frame_done): update animation bbox
351
352         * gdk-pixbuf/gdk-pixbuf.h: added bbox size (width, height) to
353         _GdkPixbufAnimation
354
355 2000-03-27  Radek Doulik  <rodo@helixcode.com>
356
357         * gdk-pixbuf/io-gif.c (gif_get_lzw): use frame_len and frame_width
358         instead of width and height
359
360 2000-03-27  Owen Taylor  <otaylor@redhat.com>
361
362         * gdk-pixbuf/pixops/pixops.c: Fix problem with 
363         precendence of >> and & which was keeping composite_color
364         from working with non-gray images.
365
366 2000-03-08  Jonathan Blandford  <jrb@redhat.com>
367
368         * gdk-pixbuf/io-gif.c (gdk_pixbuf__gif_image_load): free the context.
369         (gdk_pixbuf__gif_image_load_animation): free the context.
370
371 2000-03-06  Arjan van de Ven <arjan@fenrus.demon.nl>
372
373         * gdk-pixbuf/io-bmp.c: Fixed to pointer-bugs and a 
374         mis-interpretation of the Microsoft documentation. Now
375         it can load .BMP files that are not generated by The Gimp
376         as well.
377
378 2000-03-01  Mark Crichton  <crichton@gimp.org>
379
380         * configure.in: Added BUILD_CANVAS_ITEM stuff to (finally)
381         fix the last auto* build bug (where we have libart, but no
382         gnome-libs)
383
384         * gdk-pixbuf/Makefile.am: Same.
385
386 2000-02-28  Matt Wilson  <msw@redhat.com>
387
388         * gdk-pixbuf/gdk-pixbuf-drawable.c: s/unsigned long/guint32/g,
389         s/unsigned short/guint16/g, s/unsigned char/guint8/g
390
391 2000-02-26  Federico Mena Quintero  <federico@helixcode.com>
392
393         * README: We don't require libgif/ungif nor libXpm.
394
395         * NEWS: This was outdated, so updated it.
396
397 2000-02-25  Federico Mena Quintero  <federico@helixcode.com>
398
399         * gdk-pixbuf.m4: Use the correct name for
400         gdk-pixbuf/gdk-pixbuf.h.  Thanks to Jacob Berkman for pointing
401         this out.
402
403 2000-02-21  Federico Mena Quintero  <federico@helixcode.com>
404
405         * configure.in (GDK_PIXBUF_MINOR): Bumped version number to 0.6.0.
406
407         * doc/compiling.sgml: New appendix documenting the gdk-pixbuf
408         library's particular options to configure.in.
409
410         * doc/gdk-pixbuf.sgml: Include compiling.sgml appendix via an
411         entity.
412
413         * doc/Makefile.am (gdk-pixbuf.html): Added compiling.sgml.
414
415         * gdk-pixbuf/io-ico.c (gdk_pixbuf__ico_image_load_increment):
416         Fixed typo in prototype name.
417
418         * configure.in: Changed duplicated AC_MSG_CHECKING message to
419         something more meaningful; now it is "checking whether dynamic
420         modules work".
421
422         * gdk-pixbuf/pixops/Makefile.am (noinst_PROGRAMS): Do not install
423         the timescale program.
424
425         Integrated Miguel de Icaza's <miguel@gnu.org> patch for optionally
426         creating a single static library with all the image format modules
427         in it.
428
429 2000-02-20  Miguel de Icaza  <miguel@gnu.org>
430
431         * gdk-pixbuf/io-xpm.c (gdk_pixbuf__xpm_image_load): Add prefix.
432         (gdk_pixbuf__xpm_image_load_xpm_data): Add prefix.
433
434         * gdk-pixbuf/io-tiff.c (gdk_pixbuf__tiff_image_load_real): Add prefix.
435         (gdk_pixbuf__tiff_image_stop_load): Add prefix.
436         (gdk_pixbuf__tiff_image_load_increment): Add prefix.
437         (gdk_pixbuf__tiff_image_load): Add prefix.
438         (gdk_pixbuf__tiff_image_stop_load): Update invocation.
439         (gdk_pixbuf__tiff_image_begin_load): Add prefix.
440
441         * gdk-pixbuf/io-ras.c (gdk_pixbuf__ras_image_load): Add prefix.
442         (gdk_pixbuf__ras_image_load): Updated invocation.
443         (gdk_pixbuf__ras_image_begin_load): Add prefix.
444         (gdk_pixbuf__ras_image_stop_load): Add prefix.
445         (gdk_pixbuf__ras_image_load_increment): Add prefix.
446
447         * gdk-pixbuf/io-pnm.c (gdk_pixbuf__pnm_image_begin_load): Add prefix.
448         (gdk_pixbuf__pnm_image_stop_load): Add prefix.
449         (gdk_pixbuf__pnm_image_load_increment): Add prefix
450         (gdk_pixbuf__pnm_image_load): Add prefix.
451
452         * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_load): Add prefix.
453         (gdk_pixbuf__jpeg_image_load_increment): Add prefix.
454         (gdk_pixbuf__jpeg_image_begin_load): Add prefix.
455         (gdk_pixbuf__jpeg_image_stop_load): Add prefix.
456
457         * gdk-pixbuf/io-ico.c (gdk_pixbuf__ico_image_load): Add prefix.
458         (gdk_pixbuf__ico_image_load): update invocation.
459         (gdk_pixbuf__ico_image_load_increment): Add prefix.
460         (gdk_pixbuf__ico_image_load): update invocation.
461         (gdk_pixbuf__ico_image_begin_load): Add prefix.
462         (gdk_pixbuf__ico_image_load): update invocation.
463         (gdk_pixbuf__ico_image_stop_load): Add prefix.
464
465         * gdk-pixbuf/io-gif.c (gdk_pixbuf__gif_image_load_animation): Add prefix.
466         (gdk_pixbuf__gif_image_load): Add prefix.
467         (gdk_pixbuf__gif_image_begin_load): Add prefix.
468         (gdk_pixbuf__gif_image_load_increment): Add prefix.
469         (gdk_pixbuf__gif_image_load_animation): Add prefix.
470         (gdk_pixbuf__gif_image_stop_load): Add prefix.
471
472         * gdk-pixbuf/io-bmp.c (gdk_pixbuf__bmp_image_load): Add prefix.
473         (gdk_pixbuf__bmp_image_load): Rename function called.
474         (gdk_pixbuf__bmp_image_load_increment): Add prefix
475
476         * gdk-pixbuf/io-png.c (gdk_pixbuf__png_image_load): Add prefix.
477         (gdk_pixbuf__png_image_begin_load): Add prefix.
478         (gdk_pixbuf__png_image_stop_load): Add prefix.
479         (gdk_pixbuf__png_image_load_increment): Add prefix.
480
481         * gdk-pixbuf/gdk-pixbuf-io.c (file_formats): Make this static.
482         (gdk_pixbuf_load_module): Load the shared library entry points
483         using a "gdk_pixbuf__$module_name" prefix.
484         (pixbuf_module_symbol): Wrapper routine that uses the module
485         prefix for the modules to load the information.
486
487         * configure.in (GDK_PIXBUF_VERSION): New option --disable-modules
488         lets the user specify that gdk-pixbuf should link all image loader
489         code into the library instaed of creating shared library modules.
490         
491         (dynworks): Renamed the automake conditional DYNAMIC_MODULES_WORK
492         to BUILD_DYNAMIC_MODULES.
493
494 2000-02-19  Jonathan Blandford  <jrb@redhat.com>
495
496         * gdk-pixbuf/io-gif.c (new_context): fix case where initial
497         colormap entry is Transparent.
498
499 2000-02-19  Owen Taylor  <otaylor@redhat.com>
500
501         * gdk-pixbuf/pixops/pixops.c (scale_pixel): Fix error in
502         scale factors for non-alpha case.
503
504 2000-02-14  Mark Crichton  <crichton@gimp.org>
505
506         * gdk-pixbuf/io-xpm.c (xpm_extract_color): Added check for "g" color type.
507         Imlib/libXpm handle this, but we didn't.
508
509 2000-02-14  Darin Adler  <darin@eazel.com>
510
511         * gdk-pixbuf/testpixbuf.c: Remove now-unnecessary cast.
512         * .cvsignore: gdk-pixbuf/.cvsignore: More to ignore.
513
514 2000-02-14  Elliot Lee  <sopwith@redhat.com>
515         * gdk-pixbuf/gdk-pixbuf.h, gdk-pixbuf/gdk-pixbuf-data.c: Make passed-in argument 'const'.
516
517 2000-02-04  Michael Meeks  <mmeeks@gnu.org>
518
519         * gdk-pixbuf/io-gif.c (struct _GifContext): add x,y_offset.
520         (gif_get_frame_info): put the offsets on the context.
521         (gif_get_lzw): copy them off into the frame.
522         (new_context): no change required; will 0 offsets by default.
523
524 2000-01-28  Michael Meeks  <michael@mejm2.dow.cam.ac.uk>
525
526         * gdk-pixbuf/pixops/pixops.c (pixops_process): const + nasty
527         un-consting cast.
528
529         * gdk-pixbuf/pixops/pixops.h: const.
530
531         * gdk-pixbuf/gdk-pixbuf-util.c: const.
532         
533         * gdk-pixbuf/gdk-pixbuf-scale.c: const.
534
535         * gdk-pixbuf/gdk-pixbuf.h: constify lots of things.
536
537 2000-02-03  Federico Mena Quintero  <federico@helixcode.com>
538
539         * gdk-pixbuf/gdk-pixbuf-render.c
540         (gdk_pixbuf_render_threshold_alpha): Added sanity check for width
541         and height being >= 0.  Also, do nothing if either of them is
542         zero.  Thanks to Ettore for pointing this out.
543         (gdk_pixbuf_render_to_drawable): Likewise.
544         (gdk_pixbuf_render_to_drawable_alpha): Likewise.
545
546 2000-02-02  Federico Mena Quintero  <federico@helixcode.com>
547
548         * gdk-pixbuf/io-gif.c (gif_get_lzw): Removed debugging g_print.
549         Thanks to John Sullivan <sullivan@eazel.com> for the patch.
550
551         * gdk-pixbuf/testpixbuf-drawable.c (configure_cb): Get a new area
552         of the screen when the window is resized.  Thanks to David
553         N. Welton <davidw@linuxcare.com> for pointing this out.
554         Misc. cleanups to the rest of the file.
555
556 2000-02-01  Federico Mena Quintero  <federico@helixcode.com>
557
558         * doc/tmpl/rendering.sgml: gnome_init() does not call
559         gdk_rgb_init(), so don't mention that it does in the
560         documentation.  Thanks to Alexander Kruuse <kruuse@home.se> for
561         pointing this out.
562
563 2000-01-31  Havoc Pennington  <hp@redhat.com>
564
565         * gdk-pixbuf/Makefile.am (noinst_PROGRAMS): no testpixbuf-foo target
566
567 Mon Jan 31 12:38:50 2000  Owen Taylor  <otaylor@redhat.com>
568
569         * gdk-pixbuf/pixops/pixops.c (scale_line): Fix from Peter
570         Wainwright to fix 4a => 4a scaling.
571
572 2000-01-29  Mark Crichton  <crichton@gimp.org>
573
574         * gdk-pixbuf-config: Oh dear, we weren't Telsa/Alan proof...
575         put `libart-config --libs` in instead of -lart_lgpl.
576
577 2000-01-22  Federico Mena Quintero  <federico@helixcode.com>
578
579         * gdk-pixbuf/io-pnm.c (pnm_read_raw_scanline): Return an error on
580         invalid pnm type.
581         (pnm_read_ascii_scanline): Initialize data and mask.
582
583         * gdk-pixbuf/io-xpm.c (pixbuf_create_from_xpm): Initialize
584         fallbackcolor to keep gcc happy.
585
586         * configure.in: Bumped version number to 0.5.0.
587
588         * gdk-pixbuf/pixops/timescale.c (dump_array): Removed unused variable.
589         (main): Return 0.
590
591         * gdk-pixbuf/pixops/pixops.c (pixops_composite_color_nearest): Put
592         parentheses around + in a shift to remove a compiler warning.
593         (pixops_process): Likewise.
594
595         Patch from Ross Golder <rossigee@bigfoot.com> to create an RPM
596         specfile:
597
598         * configure.in: Added gdk-pixbuf.spec to AC_OUTPUT.
599
600         * Makefile.am (EXTRA_DIST): Added gdk-pixbuf.spec.in
601
602 2000-01-22  Federico Mena Quintero  <federico@helixcode.com>
603
604         * gdk-pixbuf/gnome-canvas-pixbuf.c (PixbufPrivate): Removed the
605         x_set and y_set arguments.  Now they are always on and start with
606         defaults of 0.0 in units.
607         (gnome_canvas_pixbuf_class_init): Likewise.
608         (gnome_canvas_pixbuf_set_arg): Likewise.
609         (gnome_canvas_pixbuf_get_arg): Likewise.
610         (compute_viewport_affine): Likewise; always use the priv->x and
611         priv->y fields.
612
613         * doc/tmpl/gnome-canvas-pixbuf.sgml: Modified to reflect the
614         removal of the x_set/y_set arguments.
615
616 2000-01-21  Federico Mena Quintero  <federico@helixcode.com>
617
618         * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_ref): Return the same pixbuf
619         as the input parameter.
620
621         * gdk-pixbuf/gdk-pixbuf-animation.c (gdk_pixbuf_animation_ref):
622         Return the same animation as the input parameter.
623
624 2000-01-16  Elliot Lee  <sopwith@redhat.com>
625
626         * gdk-pixbuf/Makefile.am: Don't link against libgnomecanvaspixbuf.la
627
628 2000-01-16  Federico Mena Quintero  <federico@helixcode.com>
629
630         * configure.in: Removed the broken --enable-canvas-pixbuf option.
631         Added the stuff necessary to substitute the variables in
632         gnomecanvaspixbufConf.sh.in.
633
634         * gnomecanvaspixbufConf.sh.in: New gnome-config handler for the
635         tiny gnomecanvaspixbuf library.
636
637         * Makefile.am: Build gnomecanvaspixbufConf.sh.
638
639         * gdk-pixbuf/Makefile.am: Create a libgnomecanvaspixbuf and only
640         build it if gdk-pixbuf is being built outside of gnome-libs.
641
642         * doc/gdk-pixbuf-sections.txt: Added gdk_pixbuf_render_pixmap_and_mask().
643
644         * gdk-pixbuf/gdk-pixbuf-render.c
645         (gdk_pixbuf_render_pixmap_and_mask): Renamed from
646         gdk_pixbuf_render_pixmap().  Do not create the mask if it is not
647         needed, and do not use a clipping mask when rendering the pixmap.
648         Tweaked documentation a little.
649
650         * HACKING: New file with hacking policies for the gdk-pixbuf
651         module.
652
653         * doc/Makefile.am (tmpl_sources): Added missing backslash.
654
655         * doc/Makefile.am: Use gnomecanvaspixbuf in gnome-config when
656         scanning for docstrings.
657
658         * gdk-pixbuf/gdk-pixbuf-util.c (gdk_pixbuf_copy_area): Made sanity
659         checks more stringent.  Removed "gint" abominations.  Made
660         documentation consistent with the rest of the functions.
661
662         * doc/gdk-pixbuf-sections.txt: Added gdk_pixbuf_copy_area() to the
663         utilities section.
664
665 2000-01-14  Jonathan Blandford  <jrb@redhat.com>
666
667         * gdk-pixbuf/gdk-pixbuf-render.c (gdk_pixbuf_render_pixmap): new
668         function to let you create a gdk_pixmap from a gdk_pixbuf.
669
670 2000-01-11  Jacob Berkman  <jacob@helixcode.com>
671
672         * gdk-pixbuf/pixops/Makefile.am (INCLUDES): added
673         $LIBART_CFLAGS to $INCLUDES
674
675 2000-01-10  Elliot Lee  <sopwith@redhat.com>
676
677         * configure.in, gdk-pixbuf/Makefile.am: Build a libcanvas_pixbuf.
678
679         * configure.in: Define version macros. Generate
680         gdk-pixbuf/gdk-pixbuf-features.h. Always INSIDE_GNOME.
681
682         * gdk-pixbuf/Makefile.am: Add gdk-pixbuf-features.h
683
684         * gdk-pixbuf/gdk-pixbuf.c: Add definitions of
685         gdk-pixbuf-features.h declarations, plus some initialization
686         stubs.
687
688 2000-01-05  Owen Taylor  <otaylor@redhat.com>
689
690         * gdk-pixbuf/pixops/pixops.c: Fixed src_channels/dest_channels
691         confusion. (Again caught by Tomas Ogren's Purify)
692
693 2000-01-07  Jonathan Blandford  <jrb@redhat.com>
694
695         * gdk-pixbuf/gdk-pixbuf-xform.c (gdk_pixbuf_rotate): comment out
696         debugging printing.
697
698         * gdk-pixbuf/gdk-pixbuf-io.c: Added progressive animation loading.
699         * gdk-pixbuf/gdk-pixbuf-io.h: Added progressive animation loading.
700         * gdk-pixbuf/gdk-pixbuf-loader.c: Added progressive animation
701         loading.
702         * gdk-pixbuf/gdk-pixbuf-loader.h: Added progressive animation
703         loading.
704         * gdk-pixbuf/io-gif.c (image_load_increment): I think the
705         ref-counting mess is finally fixed.  Added progressive animation
706         loading.
707         (gif_get_lzw): remove memory_leak
708
709         * doc/tmpl/gdk-pixbuf-loader.sgml: much longer long description
710         added.
711
712 2000-01-05  Owen Taylor  <otaylor@redhat.com>
713
714         * gdk-pixbuf/pixops/pixops.c (pixops_process): Fix computation of end of run indices.
715
716         * gdk-pixbuf/pixops/pixops.c: Fix double increments when dest_channels == 4.
717           (Pointed out by Tomas Ogren)
718
719 2000-01-05  Mark Crichton  <crichton@gimp.org>
720
721         * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_eat_header_write):
722         Return 0 if gdk_pixbuf_load_loader_module returns FALSE.
723
724 2000-01-05 Elliot Lee <sopwith@redhat.com>
725
726         * gdk-pixbuf/pixops/Makefile.am: Link with -lm (to get 'ceil' function)
727
728 2000-01-05  Owen Taylor  <otaylor@redhat.com>
729
730         * doc/Makefile.am doc/gdk-pixbuf-sections.txt
731           doc/gdk-pixbuf.sgml doc/tmpl/scaling.sgml:
732         Added scaling functions into gtk-doc framework.
733
734         * gdk-pixbuf/gdk-pixbuf-scale.c: Documentation fixes.
735
736         * gdk-pixbuf/testpixbuf-scale.c (expose_cb): Simplify a bit.
737
738         * gdk-pixbuf/pixops/pixops.c (pixops_composite_color): Return
739         immediately if scale_x or scale_y is 0.
740
741 2000-01-05  Owen Taylor  <otaylor@redhat.com>
742
743         * gdk-pixbuf/pixops/timescale.c: quick fix for initializing
744         arrays in benchmark.
745
746 2000-01-05  Jonathan Blandford  <jrb@redhat.com>
747
748         * gdk-pixbuf/gdk-pixbuf-io.h: Change the order of the update func
749         to make it more compatible with the rest of GTK.  Added animation
750         framework for progressive loading.
751
752         * gdk-pixbuf/io-bmp.c (image_begin_load): Modified to handle new
753         system.
754         * gdk-pixbuf/io-ico.c (image_begin_load): ditto
755         * gdk-pixbuf/io-png.c (image_begin_load): ditto
756         * gdk-pixbuf/io-ras.c (image_begin_load): ditto
757         * gdk-pixbuf/io-jpeg.c (image_begin_load): ditto
758         * gdk-pixbuf/io-pnm.c (image_begin_load): ditto
759         * gdk-pixbuf/io-tiff.c (image_begin_load): ditto
760         * gdk-pixbuf/io-gif.c (image_begin_load): ditto
761
762 2000-01-05  Owen Taylor  <otaylor@redhat.com>
763
764         * gdk-pixbuf/pixops/README: Added a README with a TODO
765         and some explainations of the algorithms.
766
767         * gdk-pixbuf/testpixbuf-scale.c: Set a background pixmap of None
768         to reduce flashing when resizing.
769
770 2000-01-05  Owen Taylor  <otaylor@redhat.com>
771
772         * gdk-pixbuf/pixops/: Directory full of pixel data scaling
773         code that will eventually migrate into libart.
774
775         * configure.in acconfig.h: Add checks for MMX compiler support
776
777         * gdk-pixbuf/gdk-pixbuf.h gdk-pixbuf/gdk-pixbuf-scale.c:
778         Nice wrapper routines for the code in pixops that operate
779         on pixbufs instead of raw data.
780
781         * gdk-pixbuf/testpixbuf-scale: Test program for scaling
782         routines.
783
784 2000-01-05  Jonathan Blandford  <jrb@redhat.com>
785
786         * doc/tmpl/animation.sgml: Documentation changes.
787
788 2000-01-01  Federico Mena Quintero  <federico@helixcode.com>
789
790         * gdk-pixbuf/gdk-pixbuf.h (GdkPixbufAnimation): Added reference
791         counting to animations.  A web browser may want to share a single
792         copy of an animated GIF if it appears multiple times in a web
793         page, for example.
794
795         * gdk-pixbuf/gdk-pixbuf-animation.c: New file.  Moved the
796         animation functions here.
797         (gdk_pixbuf_animation_new_from_file): Prettified.  Return a NULL
798         animation if the loader does not support multiframe loading and
799         the single-frame load returned NULL.  Check that the filename is
800         not NULL.  Updated inline documentation.
801         (gdk_pixbuf_animation_ref): New function.
802         (gdk_pixbuf_animation_unref): New function.
803         Removed gdk_pixbuf_animation_destroy() in favor of reference
804         counting.
805
806         * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_new_from_file):
807         Prettified.  Made ref_count assertion more paranoid.  Check that
808         the filename is not NULL.
809         (gdk_pixbuf_get_module): Use guchar * and guint for buffer and
810         size, respectively.
811         (gdk_pixbuf_new_from_xpm_data): Changed the "data" argument to
812         const char **.
813
814         * gdk-pixbuf/io-gif.c (image_load_animation): Create the animation
815         with a reference count of 1.
816
817         * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_SOURCES): Added
818         gdk-pixbuf-animation.c.
819
820         * doc/tmpl/animation.sgml: Populated.  It is still missing a
821         description of the overlay modes.
822
823         * doc/gdk-pixbuf-sections.txt: Added the animation section.  Moved
824         the canvas item section to the end, as it will be moved later to
825         gnome-libs.
826
827         * doc/gdk-pixbuf.sgml: Added the animation section.
828
829         * doc/Makefile.am (tmpl_sources): Added tmpl/animation.sgml.
830
831 1999-12-26  Peter Teichman  <pat@gnu.org>
832
833         * gdk-pixbuf/Makefile.am (libpixbuf_tiff_la_LIBADD): add
834         $(LIBTIFF) to libpixbuf_tiff_la_LIBADD, proxying for mmarker.
835         This closes bug #4676.
836
837 1999-12-23  Havoc Pennington  <hp@pobox.com>
838
839         * gdk-pixbuf/io-gif.c (image_load): Stuff that should have been
840         set to NULL here (specifically context->animation) was not being
841         set to NULL. use g_new0() to alloc the struct.
842
843 1999-12-20  Jonathan Blandford  <jrb@redhat.com>
844
845         * gdk-pixbuf/io-gif.c: finished work to make animated gifs load
846         correctly.  Progressive loading needs some work, but that all
847         needs doing from the gdk-pixbuf-loader end, not here.
848
849 1999-12-17  Jonathan Blandford  <jrb@redhat.com>
850
851         * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_animation_new_from_file):
852         moved the file here.  It seems natural to put this function here,
853         as that's where the gdk_pixbuf_new_from_file function is, but it's
854         still a little convoluted.  The source files might be played with
855         in a bit.
856
857 1999-12-14  Jonathan Blandford  <jrb@redhat.com>
858
859         * gdk-pixbuf/gdk-pixbuf-loader.c
860         (gdk_pixbuf_loader_get_animation):  Gets the animation from the
861         loader.
862
863 1999-12-16  Federico Mena Quintero  <federico@redhat.com>
864
865         * doc/tmpl/rendering.sgml: Added notice about initializing GdkRGB
866         before using the GdkPixbuf rendering functions.  Thanks to Joe
867         Shaw <joe@off.net> for pointing this out.
868
869 1999-12-13  Federico Mena Quintero  <federico@redhat.com>
870
871         * gdk-pixbuf/gnome-canvas-pixbuf.c
872         (gnome_canvas_pixbuf_class_init): Renamed arguments to
873         width_in_pixels, height_in_pixels, x_in_pixels, y_in_pixels, for
874         consistency with the new canvas.
875         (PixbufPrivate): Do the same renaming in the structure fields, for
876         consistency.
877
878         * doc/tmpl/gnome-canvas-pixbuf.sgml: Updated for new argument names.
879
880 1999-12-12  Federico Mena Quintero  <federico@redhat.com>
881
882         * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_LDFLAGS): Use a
883         conditional to see whether to link $(GNOME_LIBS) or not.
884
885 1999-12-10  Jonathan Blandford  <jrb@redhat.com>
886
887         * gdk-pixbuf/gdk-pixbuf-io.h: thinking about the new loading API.
888
889         * gdk-pixbuf/gdk-pixbuf-drawable.c (gdk_pixbuf_get_from_drawable):
890         make a warning go away.
891
892         * gdk-pixbuf/gdk-pixbuf.h: added new prototypes for animations.
893
894         * gdk-pixbuf/gdk-pixbuf-loader.h: added new prototypes for
895         animations.
896
897 1999-12-09  Michael Zucchi  <zucchi@zedzone.mmc.com.au>
898
899         * gdk-pixbuf/gdk-pixbuf.h: Enable gdk_pixbuf_get_from_drawable()
900         api call.
901
902         * gdk-pixbuf/gdk-pixbuf-drawable.c (gdk_pixbuf_get_from_drawable):
903         Filled in body of function.
904         (rgbconvert): Added GdkColormap parameter, and to all conversion
905         functions also.
906         (convert_real_slow): New function - should convert ANY visual/data
907         format properly, but it aint fast.  Used as a fallback when an
908         optimised routine wont match.
909         (rgbconvert): Do very specific tests on the data format to verify
910         properly if the optimised version will do, otherwise use the
911         fallback function for all other data formats.
912
913         * gdk-pixbuf/Makefile.am: Re-enabled building of
914         textpixbuf-drawable.
915
916         * gdk-pixbuf/testpixbuf-drawable.c (main): Changed to use
917         gdk_pixbuf_get_from_drawable().
918
919 1999-12-08  Arjan van de Ven <arjan@fenrus.demon.nl>
920
921         * gdk-pixbuf/gdk-pixbuf-drawable.c : Fixed the red/green/red
922         bug on two occasions.
923         * gdk-pixbuf/io-ras.c: Changed from the custom be32_to_cpu
924         function to the generic glib one.
925
926 1999-12-08  Federico Mena Quintero  <federico@redhat.com>
927
928         * gdk-pixbuf/gdk-pixbuf-drawable.c: Fix includes.
929         (gdk_pixbuf_get_from_drawable): Implemented the zillion sanity
930         checks and API definition.  The body needs filling in and it needs
931         to do the Right Thing(tm) for pixmaps plus the given colormap and
932         windows and their own colormaps.
933
934         * gdk-pixbuf/gdk-pixbuf.h: Added prototype for
935         gdk_pixbuf_get_from_drawable().  Killed gdk-pixbuf-drawable.h.
936
937         * gdk-pixbuf/Makefile.am: Re-added the gdk-pixbuf-drawable sources.
938
939         * doc/tmpl/from-drawables.sgml: Populated.
940
941         * doc/gdk-pixbuf.sgml: Added the from-drawables section.
942
943         * doc/Makefile.am (tmpl_sources): Added tmpl/from-drawables.sgml.
944
945         * doc/gdk-pixbuf-sections.txt: Added a section for getting pixbufs
946         from drawables.
947
948 1999-12-07  Federico Mena Quintero  <federico@redhat.com>
949
950         * doc/tmpl/gnome-canvas-pixbuf.sgml: Added clarification about
951         reference counting for GdkPixbuf structures.
952
953 1999-12-07  Martin Baulig  <martin@home-of-linux.org>
954
955         * gdk-pixbuf/Makefile.am (testpixbuf_LDADD): Conditionally
956         include $(GNOME_LIBS) here.
957
958 1999-12-05  Arjan van de Ven <arjan@fenrus.demon.nl>
959
960         Added missing "include <string.h>" to:
961         * gdk-pixbuf/io-ras.c
962         * gdk-pixbuf/io-bmp.c
963         * gdk-pixbuf/io-ico.c
964
965 1999-12-06  Federico Mena Quintero  <federico@redhat.com>
966
967         * gdk-pixbuf/gdk-pixbuf-io.c (file_formats): Patch from Arjan to
968         fix an initializer.
969
970 1999-12-05  Federico Mena Quintero  <federico@redhat.com>
971
972         * gdk-pixbuf/Makefile.am (testpixbuf_LDADD): Add back
973         $(GNOME_LIBS).  This must compile outside of gnome-libs.  If you
974         want, send me a patch to do the conditional stuff properly.
975         Otherwise, please read the GNOME Programming Guidelines,
976         especially the "CVS policies" section.
977
978 1999-12-05  Jaka Mocnik  <jaka.mocnik@kiss.uni-lj.si>
979
980         * gdk-pixbuf/Makefile.am: removed GNOME_LIBS from testpixbuf_LDADD.
981
982 1999-12-05  Arjan van de Ven <arjan@fenrus.demon.nl>
983
984         * gdk-pixbuf/io-ico.c: Bug in palet-size
985         calculation fixed
986
987 1999-12-04  Arjan van de Ven <arjan@fenrus.demon.nl>
988
989         * gdk-pixbuf/io-bmp.c: Major cleanup, added support for
990         32 bpp and 4 bpp (uncompressed) images, fixed 1bpp.
991
992         * gdk-pixbuf/io-ras.c: Minor cleanup, ran through lclint
993
994         * gdk-pixbuf/io-ico.c: Minor cleanup, fixed 1bpp icons,
995         ran through lclint.
996
997         * gdk-pixbuf/gdk-pixbuf-io.c: Added detection of .CUR files
998         (Windows Cursor files). These are identical to .ICO files,
999         except for the signature and 2 extra fields for the hotspot.
1000
1001 1999-12-03  Federico Mena Quintero  <federico@redhat.com>
1002
1003         * gdk-pixbuf/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_get_arg):
1004         Removed unused variable `item'.
1005
1006 1999-12-03  Jonathan Blandford  <jrb@redhat.com>
1007
1008         * gdk-pixbuf/io-gif.c (gif_fill_in_lines): added a comment to
1009         explain this function better.
1010
1011 1999-12-02  Federico Mena Quintero  <federico@redhat.com>
1012
1013         Source files moved from src/ to gdk-pixbuf/, to be consistent with
1014         other libraries.
1015
1016         * doc/Makefile.am: Modified for the new source directory.
1017
1018         * configure.in: Likewise.
1019
1020         * Makefile.am: Likewise.
1021
1022         * autogen.sh: Likewise.
1023
1024         * gdk-pixbuf/Makefile.am: Likewise.
1025
1026 1999-12-02  Federico Mena Quintero  <federico@redhat.com>
1027
1028         * src/testpixbuf.c: #include <config.h>, and fix includes.
1029
1030         * src/testpixbuf-drawable.c: #include <config.h>, and fix includes.
1031
1032         * src/io-xpm.c: Fix includes.
1033
1034         * src/io-tiff.c: Fix includes.
1035
1036         * src/io-ras.c: Fix includes, and do not include more stuff than needed.
1037
1038         * src/io-pnm.c: Fix inlcudes, and do not include more stuff than needed.
1039
1040         * src/io-png.c: Fix includes.
1041
1042         * src/io-ico.c: Fix includes, and do not include more stuff than needed.
1043
1044         * src/io-gif.c: Fix includes, and do not include more stuff than needed.
1045
1046         * src/io-bmp.c: Fix includes, and do not include more stuff than needed.
1047
1048         * src/gnome-canvas-pixbuf.c: Fix includes.
1049
1050         * src/gdk-pixbuf.c: Fix includes.
1051
1052         * src/gdk-pixbuf-util.c: Fix includes.
1053
1054         * src/gdk-pixbuf-render.c: Fix includes.
1055
1056         * src/gdk-pixbuf-io.h: Fix includes.
1057
1058         * src/gdk-pixbuf-drawable.c: Fix includes.
1059
1060         * src/gdk-pixbuf-drawable.h: Use angle brackets for the gdk-pixbuf
1061         include files.
1062
1063         * src/gdk-pixbuf-data.c: Fix includes.
1064
1065         * src/gdk-pixbuf-loader.c: #include <config.h>
1066
1067         * src/gdk-pixbuf-loader.h: Use angle brackets for the gdk-pixbuf
1068         include files.
1069
1070         * src/Makefile.am: Commented out the gdk-pixbuf-drawable stuff,
1071         since it is not finished.
1072
1073         * src/gdk-pixbuf.h: Removed unused transformation prototypes.
1074
1075         * src/gdk-pixbuf-util.c: New file with utility and convenience
1076         functions for pixbufs.
1077
1078         * src/Makefile.am (libgdk_pixbuf_la_SOURCES): Added gdk-pixbuf-util.c.
1079
1080         * doc/gdk-pixbuf-sections.txt: Added section for utility functions.
1081
1082         * doc/Makefile.am (tmpl_sources): Added tmpl/util.sgml.
1083
1084         * doc/gdk-pixbuf.sgml: Added the utilities section.
1085
1086         * doc/tmpl/util.sgml: Documentation for the utility functions.
1087
1088 1999-11-29  Owen Taylor  <otaylor@redhat.com>
1089
1090         * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
1091         Keep the mask around until after we draw ... since
1092         the GC changes aren't flushed to the X server until we
1093         draw, destroying it before that may result in BadPixmap
1094         errors.
1095
1096 1999-11-30  Havoc Pennington  <hp@pobox.com>
1097
1098         * configure.in: Add AM_CONDITIONAL for inside gnome-libs
1099
1100         * src/Makefile.am: conditionalize GnomeCanvasPixbuf
1101
1102 1999-11-29  Federico Mena Quintero  <federico@redhat.com>
1103
1104         * src/Makefile.am: Uncomment the GnomeCanvasPixbuf sources.  This
1105         should be made conditional, not blindly commented out.
1106
1107 1999-11-29  Jonathan Blandford  <jrb@redhat.com>
1108
1109         * src/Makefile.am (ICO_LIB): Added another loader from Arjan to
1110         handle .ico files.  Cool.
1111
1112 1999-11-24  Jonathan Blandford  <jrb@redhat.com>
1113
1114         * src/io-bmp.c (OneLine24): new patch from Arjan to handle
1115         compressed bmps.
1116
1117 1999-11-24  James Henstridge  <james@daa.com.au>
1118
1119         * configure.in (AC_OUTPUT): altered hack to place the symlink in the
1120         top builddir rather than src.  This still builds fine, and does not
1121         get gtk-doc into an infinite loop when trying to find all the source
1122         files.
1123
1124 1999-11-23  Jonathan Blandford  <jrb@redhat.com>
1125
1126         * Removed #PRAGMA } from headers.  Also, make compile if you don't
1127         have it installed, already.
1128
1129 1999-11-22  Federico Mena Quintero  <federico@redhat.com>
1130
1131         * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_draw): Create the
1132         temporary buffer to the size of the interesction of the bounding
1133         box and the expose area, not the whole expose area.  This speeds
1134         up things a lot.
1135
1136         * src/gdk-pixbuf-render.c (gdk_pixbuf_render_threshold_alpha): Do
1137         not paint black on the mask, since we already cleared it in a
1138         single gdk_draw_rectangle() operation.
1139
1140 1999-11-22  Raja R Harinath  <harinath@cs.umn.edu>
1141
1142         * configure.in (GDK_PIXBUF_DIR): Fix for srcdir != builddir.
1143
1144 1999-11-22  Havoc Pennington  <hp@pobox.com>
1145
1146         * src/Makefile.am (GDK_PIXBUF_LIBS): Patch from Paul Fisher
1147         <pnfisher@redhat.com> adds all -lgdk-pixbuf and all other
1148         dependencies to LIBADD variables for loadable modules. Necessary
1149         for a Java dynamic loading thing to be able to figure it out.
1150
1151 1999-11-22  Havoc Pennington  <hp@pobox.com>
1152
1153         * src/io-png.c (image_load_increment): Call the update_area
1154         callback depending on the number of rows loaded in this increment.
1155
1156         * src/testpixbuf.c (main): slow down the progressive load demo
1157
1158 1999-11-16  Havoc Pennington  <hp@pobox.com>
1159
1160         * src/gdk-pixbuf-drawable.h: Get the quotes right on the #include
1161
1162 1999-11-22  Jonathan Blandford  <jrb@redhat.com>
1163
1164         * configure.in (GDK_PIXBUF_DIR): make the symlink.  Does not work
1165         for srcdir != buildir != .  Beats me why; I can't figure it out.
1166         AC_OUTPUT_COMMANDS doesn't seem to let me substitute it correctly.
1167
1168 1999-11-21  Jonathan Blandford  <jrb@redhat.com>
1169
1170         * src/gdk-pixbuf-io.c: added io-bmp from Arjan
1171         <arjan@fenrus.demon.nl>
1172
1173 1999-11-20  Michael Zucchi  <zucchi@zedzone.mmc.com.au>
1174
1175         * src/gdk-pixbuf-drawable.c (gdk_pixbuf_from_drawable_core):
1176         Rework/reorder of the code.  Each case has been separated into
1177         another function; its big but it should be quick.
1178         gdk_pixbuf_rgba_from_drawable() will now return a pixbuf with
1179         opaque alpha information.  Not all depths/formats have been
1180         tested, but 8, 15/16 and 24 (alinged 32) should work ok.
1181
1182 1999-11-17  Larry Ewing  <lewing@gimp.org>
1183
1184         * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_bounds):
1185         implement the bounds method correctly.
1186         (compute_viewport_affine): compute the affine need to fit the
1187         image within the viewport given by the args.
1188         (compute_render_affine): call compute_viewport_affine.
1189
1190 1999-11-16  Havoc Pennington  <hp@pobox.com>
1191
1192         * src/gdk-pixbuf-drawable.h: Use includes from the current
1193         directory, not the system directory.
1194
1195 Mon Nov 15 17:18:28 1999  George Lebl <jirka@5z.com>
1196
1197         * src/testpixbuf-drawable.c: use includes from the current directory
1198           rather then from the system include directory as gdk-pixbuf
1199           includes are not yet installed when this is compiled.
1200
1201 1999-11-13  Cody Russell  <bratsche@dfw.net>
1202         * src/testpixbuf-drawable.c: Added a test program for drawable
1203         code.
1204
1205         * src/Makefile.am: Build testpixbuf-drawable.
1206
1207 1999-11-12  Cody Russell  <bratsche@dfw.net>
1208
1209         * src/gdk-pixbuf-drawable.c: Merged in Michael Zucchi's changes.
1210
1211 1999-11-10  Federico Mena Quintero  <federico@redhat.com>
1212
1213         * doc/tmpl/gdk-pixbuf-loader.sgml: Populated.
1214
1215         * doc/gdk-pixbuf.signals: Put in the real names of signal
1216         arguments.
1217
1218         * src/gdk-pixbuf-loader.c: Improved documentation comments.
1219
1220 1999-11-10  Jonathan Blandford  <jrb@redhat.com>
1221
1222         * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): emit the
1223         closed signal.
1224
1225         * src/io-ras.c (OneLineMapped_file): Now can handle indexing
1226         correctly.  Patch from Arjan to do so.
1227
1228 1999-11-10  Michael Fulbright  <drmike@redhat.com>
1229
1230         * src/io-pnm.c (pnm_ascii_read_scanline): Fixed loading of ASCII PNM
1231         files.
1232
1233         * src/testpixbuf.c: Added final queued draw when done loading image.
1234
1235 1999-11-10  Jonathan Blandford  <jrb@redhat.com>
1236
1237         * src/gdk-pixbuf-io.c (gdk_pixbuf_load_module): removed spurious
1238         print statements.
1239
1240 1999-11-10  Federico Mena Quintero  <federico@redhat.com>
1241
1242         * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): Added
1243         documentation.
1244
1245 1999-11-09  Federico Mena Quintero  <federico@redhat.com>
1246
1247         * src/io-png.c: Fixed some incompatible pointer initializations.
1248
1249         * src/io-jpeg.c (image_load_increment): Remove unused variable.
1250
1251 1999-11-09  Michael Fulbright  <drmike@redhat.com>
1252
1253         * src/testpixbuf.c: Fixed it to use timeout to read from file
1254         for progressive loading. Set TBF_KBPS=n, where n is the number of
1255         kilobytes/second to simulate in downloading. n has to be an integer.
1256
1257         * src/io-jpeg.c: Slight cosmetic cleanup.
1258
1259         * src/io-pnm.c: Fixed raw PNM loading bug. Also discovered that ASCII
1260         PBM loading has a similar problem and will address tomorrow.
1261
1262 1999-11-09  Havoc Pennington  <hp@pobox.com>
1263
1264         * src/Makefile.am (libgdk_pixbuf_la_SOURCES): build the
1265         gdk-pixbuf-drawable stuff.
1266
1267 1999-11-09  Federico Mena Quintero  <federico@redhat.com>
1268
1269         * configure.in: Bumped version number to 0.4.
1270
1271 1999-11-09  Michael Fulbright  <drmike@redhat.com>
1272
1273         * src/io-pnm.c : Finished progressive PNM loading code. Should handle
1274         all types of PNM files now.
1275
1276         * src/io-jpeg.c (image_load_increment): Figured out problem with
1277         loading Progressive JPEG's progressively (say that 10 times fast).
1278         Currently for Progressive JPEG's the entire image is loaded before
1279         it is displayed. libjpeg supports a fancier mechanism which I may
1280         implement later.
1281
1282         With these changes all JPEG formats appear to load properly for me.
1283
1284 1999-11-08  Jonathan Blandford  <jrb@redhat.com>
1285
1286         * src/io-ras.c (image_load_increment): Final patch from Arjan.
1287         Seems to do progressive loading.
1288
1289 1999-11-08  Michael Fulbright  <drmike@redhat.com>
1290
1291         * src/io-pnm.c image_load (): Fixed so we do not create a separate
1292         pixel buffer when reading in image - we reuse the pixel data in
1293         the GdkPixbuf structure instead.
1294
1295 1999-11-08  Michael Fulbright  <drmike@redhat.com>
1296
1297         * src/io-pnm.c pnm_read_ascii_scanline (): Added support for
1298         ASCII PNM files. Note I haven't tested loaded ASCII PBM files because
1299         I can't seem to find a utility to convert into this format.
1300         Next is to add progressive loading support for the PNM format.
1301
1302 1999-11-07  Federico Mena Quintero  <federico@redhat.com>
1303
1304         * doc/tmpl/gnome-canvas-pixbuf.sgml: Finished detailed explanation
1305         of the width, height, x, and y setting and pixels arguments.
1306
1307 1999-11-05  Jonathan Blandford  <jrb@redhat.com>
1308
1309         * src/io-ras.c (image_load): third patch.  Now it seems to load.
1310
1311         * src/gdk-pixbuf-io.c: second patch Arjan van de Ven
1312         <arjan@fenrus.demon.nl> to autodetect/load the sunras files.
1313
1314         * src/io-ras.c (image_load): new file from Arjan van de Ven
1315         <arjan@fenrus.demon.nl> to begin the ras loader.
1316
1317 1999-11-05  Federico Mena Quintero  <federico@redhat.com>
1318
1319         * doc/gdk-pixbuf-sections.txt: Removed gdk-pixbuf-io, since it is
1320         for internal use only.
1321
1322         * doc/gdk-pixbuf.sgml: Likewise.
1323
1324         * doc/tmpl/gnome-canvas-pixbuf.sgml: Finished docs.
1325
1326 1999-11-05  Michael Fulbright  <drmike@redhat.com>
1327
1328         * src/io-pnm.c: Implemented support for reading raw PBM/PGM/PPM
1329         files from a file. Next step is support for ASCII files, and
1330         then incremental loading.
1331
1332 1999-11-04  Federico Mena Quintero  <federico@redhat.com>
1333
1334         * Makefile.am: Added doc to SUBDIRS.
1335
1336 1999-11-04  Michael Fulbright  <drmike@redhat.com>
1337
1338         * src/io-jpeg.c: Prettied up code slightly.
1339         * src/io-pnm.c:  Start of pnm loader (from file and progressively).
1340                          Doesn't do much yet (will finish tomorrow).
1341         * src/gdk-pixbuf-io.c: Added pnm to structure of known types.
1342
1343 1999-11-04  Federico Mena Quintero  <federico@redhat.com>
1344
1345         * doc/tmpl/rendering.sgml: Populated.
1346
1347         * doc/Makefile.am: Added the template files.
1348
1349 1999-11-04  Havoc Pennington  <hp@pobox.com>
1350
1351         * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable): In
1352         docs, explain what a dither offset is for.
1353         (gdk_pixbuf_render_to_drawable_alpha): Explain why you would use
1354         this function vs. gdk_pixbuf_render_to_drawable().
1355
1356 1999-11-04  Havoc Pennington  <hp@pobox.com>
1357
1358         * configure.in: Use libart-config correctly; find gnome-config
1359         separately. Fix GNOME_LIBS to be correct in "no gnome installed
1360         yet" case.
1361
1362         * src/Makefile.am: Link to GNOME_LIBS instead of a hardcoded
1363         library list.
1364
1365         Patch untested in the inside-gnome-libs case, I need to commit
1366         then check out to the gnome-libs I'm using.
1367
1368 1999-11-04  Michael Fulbright  <drmike@redhat.com>
1369
1370         * src/io-jpeg.c (image_begin_load): Add update_func callback.
1371         * src/io-jpeg.c (image_load_increment): Call updated callback when
1372         new graphic data decoded.
1373
1374 1999-11-04  Jonathan Blandford  <jrb@redhat.com>
1375
1376         * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_update): handle the
1377         actual update.
1378         * src/io-png.c (image_begin_load): add a update_func callback.
1379         * src/io-gif.c (image_begin_load): add a update_func callback.
1380         (gif_get_lzw): added the update_func ability
1381
1382         * src/io-tiff.c (image_begin_load): add a update_func callback.
1383
1384 1999-11-04  Federico Mena Quintero  <federico@redhat.com>
1385
1386         * doc/tmpl/gdk-pixbuf.sgml: Populated.
1387
1388         * doc/tmpl/refcounting.sgml: Populated.
1389
1390         * doc/tmpl/file-loading.sgml: Populated.
1391
1392         * src/gdk-pixbuf.c: Added documentation comments.
1393
1394         * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_file): Added
1395         documentation comments.
1396
1397         * doc/: Finished integrating the documentation framework.
1398
1399 1999-11-03  Federico Mena Quintero  <federico@redhat.com>
1400
1401         * configure.in: Removed libgif stuff now that we do not depend on it.
1402         Added the necessary cruft for gtk-doc.
1403
1404         * src/Makefile.am: Unconditionally build the GIF loader.
1405
1406 1999-11-03  Jonathan Blandford  <jrb@redhat.com>
1407
1408         * src/io-gif.c (gif_read): renamed ReadOK to gif_read.
1409         Added a lot of comments to the file.
1410
1411         * src/Makefile.am (libpixbuf_gif_la_LIBADD): Remove dependency on
1412         lib*gif!!!!
1413
1414 1999-11-03  Michael Fulbright  <drmike@redhat.com>
1415
1416         * src/io-jpeg.c (image_load_increment): Further removal of
1417         bugginess in local buffering code. Handles grayscale jpegs
1418         correctly now.
1419
1420         * src/io-jpeg.c (image_load_stop): Was freeing local context
1421         for jpeg library before calling jpeg_decompres_finish ().
1422
1423 1999-11-03  Jonathan Blandford  <jrb@redhat.com>
1424
1425         * src/io-gif.c (image_load_increment): now handle arbitrary buffer
1426         sizes.
1427         (gif_get_lzw): set the transparency to the right val.
1428
1429 1999-11-03  Federico Mena Quintero  <federico@redhat.com>
1430
1431         * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_init):
1432         Initiailize the x and y fields.
1433         (gnome_canvas_pixbuf_destroy): Queue a redraw upon destruction.
1434         (PixbufPrivate): Renamed need_size_update to need_xform_update.
1435         (recompute_bounding_box): Do not use temporary values.
1436
1437 1999-11-03  Jonathan Blandford  <jrb@redhat.com>
1438
1439         * src/io-gif.c (set_gif_lzw_clear_code): new state.  Fixes
1440         un-compressed gifs.
1441
1442         * src/gnome-canvas-pixbuf.c (recompute_bounding_box): remove
1443         unneeded x,y,h,w vars.
1444
1445 1999-11-03  Larry Ewing  <lewing@gimp.org>
1446
1447         * src/gnome-canvas-pixbuf.c (compute_render_affine): adjust
1448         render_affine calculation for x,y offsets.
1449         (gnome_canvas_pixbuf_set_arg): add x,y args.
1450         (gnome_canvas_pixbuf_get_arg): add x,y args.
1451         (recompute_bounding_box): simply code using ArtDrect and the
1452         render_affine.  Removed compute_xform_vectors as it was no longer
1453         needed.
1454
1455 1999-11-03  Federico Mena Quintero  <federico@redhat.com>
1456
1457         * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_point): I'm a
1458         doofus.  Return a distance, not a boolean, for opaque images.
1459
1460         * src/gnome-canvas-pixbuf.c (recompute_bounding_box): Do proper
1461         rounding of bounding box coordinates.
1462         (gnome_canvas_pixbuf_bounds): Implemented the ::bounds() method.
1463         (gnome_canvas_pixbuf_draw): Use the correct alpha threshold value.
1464
1465 1999-11-03  Jonathan Blandford  <jrb@redhat.com>
1466
1467         * src/io-gif.c (gif_prepare_lzw): s/lwz/lzw/g
1468
1469 1999-11-03  Michael Fulbright  <drmike@redhat.com>
1470
1471         * src/io-jpg.c (image_load_increment): Fixed code which moved
1472         buffer around as new data comes in to work properly. JPEG progressive
1473         loading should be working now except for grayscale JPEG's, which I
1474         will look into next.
1475
1476 1999-11-03    <sopwith@redhat.com>
1477         * src/testpixbuf.c: A GtkFunction needs to return a value for deterministic behaviour.
1478           Also put dot printing back in.
1479
1480 1999-11-03    <jrb@redhat.com>
1481
1482         * src/io-gif.c (gif_get_extension): Read 'til the next empty block
1483         correctly, now.
1484
1485 1999-11-02  Cody Russell  <bratsche@dfw.net>
1486         * src/gdk-pixbuf-drawable.c: Changed the behavior to return NULL
1487         if part of the requested image is offscreen, rather than clipping
1488         the image.
1489
1490 1999-11-02  Jonathan Blandford  <jrb@redhat.com>
1491
1492         * src/io-gif.c (gif_fill_in_lines): Fill in the gif's blank areas
1493         for interlacing and progressive loading.
1494
1495 1999-11-02  Cody Russell  <bratsche@dfw.net>
1496         * src/gdk-pixbuf-drawable.c (gdk_pixbuf_from_drawable_core): Now
1497         calls gdk_pixbuf_new_from_art_pixbuf() instead of gdk_pixbuf_new().
1498
1499 1999-11-02  Jonathan Blandford  <jrb@redhat.com>
1500
1501         * src/io-gif.c (gif_main_loop): Now progressive gif loading works!
1502         It's a little slow though. )-:
1503
1504 1999-11-02 Elliot Lee <sopwith@redhat.com>
1505         * src/gdk-pixbuf-loader.[ch], src/gdk-pixbuf-io.h: Make the arguments to the
1506         write/load_increment operations const-correct.
1507
1508 1999-11-02  Federico Mena Quintero  <federico@redhat.com>
1509
1510         * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_point):
1511         Implemented the ::point() method.  We do a simple containment test
1512         instead of a full distance calculation since the canvas is going
1513         to change to that scheme, anyways.
1514
1515 1999-11-02 Elliot Lee <sopwith@redhat.com>
1516
1517         * src/testpixbuf.c: Allow using $TBF_READLEN to specify the size of the chunks
1518         that are read from the input file.
1519
1520 1999-11-02  Larry Ewing  <lewing@gimp.org>
1521
1522         * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_render): add aa
1523         render function.
1524         (gnome_canvas_pixbuf_class_init): add gnome_canvas_pixbuf_render
1525         to class.
1526
1527 1999-11-02  Federico Mena Quintero  <federico@redhat.com>
1528
1529         * src/gnome-canvas-pixbuf.c (compute_render_affine): Moved the
1530         affine computation code from ::draw() to here, since it is needed
1531         by ::point() as well.
1532
1533 1999-11-02 Elliot Lee <sopwith@redhat.com>
1534
1535         * src/gdk-pixbuf-loader.c: Reorganize gdk_pixbuf_loader_write into
1536         three functions, and eliminate duplication of code from write()
1537         and close(). Also fix bug where the 128-byte header was being
1538         written twice.
1539
1540 1999-11-01  Federico Mena Quintero  <federico@redhat.com>
1541         * src/gnome-canvas-pixbuf.c (recompute_bounding_box): Fixed
1542         bounding box computation.
1543
1544 1999-11-01  Federico Mena Quintero  <federico@redhat.com>
1545
1546         * src/gnome-canvas-pixbuf.c: Start of the pixbuf canvas item.
1547         Drawing affines seem to work.  Bounding box is fubared.  ::point()
1548         is not implemented.  This is a work in progress.
1549
1550         * src/Makefile.am: Added gnome-canvas-pixbuf.[ch] to the list of
1551         sources.
1552
1553         * configure.in: Sigh.  We need to link in libgnomeui for the
1554         canvas stuff.  This mess will disappear when gdk-pixbuf gets
1555         folded into gnome-libs.
1556
1557 1999-10-30  Jonathan Blandford  <jrb@redhat.com>
1558
1559         * src/io-gif.c: Some more work.  Now it generates a gdk_pixbuf of
1560         the right size, at a minimum, even if the image is squished and
1561         the wrong color.
1562         (ReadImage): lets get the offset right.  This will let transparent
1563         gifs work.
1564
1565 1999-10-29  Michael Fulbright  <drmike@redhat.com>
1566
1567         * src/io-jpeg.c: image_load_increment(): Fixed bug when
1568         image width was not a multiple of 4 - always use the
1569         gdk_pixbuf rowstride to increment pointers!
1570
1571 1999-10-29  Michael Fulbright  <drmike@redhat.com>
1572
1573         * src/io-jpeg.c: Added first cut at progressive jpeg loading.
1574         Currently does not handle either progressive jpeg files (jpeg
1575         files with multiple scans at different quality settings), but
1576         I plan on adding this support soon. These are fairly rare in
1577         my experience, so it shouldn't slow people down too much.
1578         Grayscale jpegs also don't work but that should be easy to fix.
1579
1580 1999-10-29  Michael Fulbright  <drmike@redhat.com>
1581
1582         * src/testpixbuf.c: Added title to windows so you can identify
1583         progressive and file windows.
1584
1585 1999-10-29  Michael Fulbright  <drmike@redhat.com>
1586
1587         * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): Actually
1588         load the image handler when we determine the image type.
1589
1590         * src/gdk-pixbuf-io.[ch] (gdk_pixbuf_load_module): Changed the
1591         previously static function load_image_handler () to
1592         a public function gdk_pixbuf_load_module (). It is needed in
1593         gdk-pixbuf-loader.c to load image handler modules.  This function
1594         is different from gdk_pixbuf_get_module (), which only returns
1595         a reference to the required handler, because it actually loads
1596         the handler into memory. Both actions should possibly be combined
1597         in a convenience function since one w/o the other doesn't seem to
1598         make much sense.
1599
1600 1999-10-28  Jonathan Blandford  <jrb@redhat.com>
1601
1602         * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): don't send a
1603         0 length buffer.
1604
1605 1999-10-28  Federico Mena Quintero  <federico@redhat.com>
1606
1607         * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable): New
1608         function to render a portion of a pixbuf to a drawable.  Ignores
1609         alpha information and takes in a GC.
1610         (gdk_pixbuf_render_to_drawable_alpha): New function to render a
1611         portion of a pixbuf to a drawable.  It automatically creates a GC
1612         and a clipping mask for alpha pixbufs.
1613
1614 1999-10-28  Jonathan Blandford  <jrb@redhat.com>
1615
1616         * src/gdk-pixbuf.h: turned convenience macros into convenience
1617         functions so some error checking could be added.
1618
1619         * src/io-tiff.c (image_load_increment): started work on the tiff
1620         non-incremental loader.
1621         (image_begin_load): Finished the incremental loader.
1622
1623         * src/io-gif.c (image_load_increment): started work on the gif
1624         incremental loader.
1625
1626         * src/gdk-pixbuf-io.h: Changed ModuleType to GdkPixbufModule.
1627
1628 1999-10-27  Federico Mena Quintero  <federico@redhat.com>
1629
1630         * src/gdk-pixbuf-render.c (gdk_pixbuf_render_threshold_alpha): New
1631         function to threshold a pixbuf's alpha channel into a bitmap.
1632
1633         * src/gdk-pixbuf.c (gdk_pixbuf_new): Fixed so that it will
1634         contemplate future extensions to ArtPixBuf's formats.
1635
1636         * src/io-png.c (png_info_callback): Use the new API of gdk_pixbuf_new().
1637
1638         * src/gdk-pixbuf.h (gdk_pixbuf_get_height): Added some convenience
1639         macros to fetch the ArtPixBuf's fields.
1640
1641 1999-10-27  Havoc Pennington  <hp@pobox.com>
1642
1643         * src/testpixbuf.c (main): Display the progressive load
1644
1645         * src/io-png.c (setup_png_transformations): Break transformation
1646         code into separate function
1647         (png_info_callback): Use setup_png_transformations
1648
1649 1999-10-27  Havoc Pennington  <hp@pobox.com>
1650
1651         * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): Check
1652         properly whether the XPM module has already been loaded
1653         (gdk_pixbuf_new_from_file): Check properly if loader module
1654         was already loaded (was checking if load symbol was present
1655         in order to decide whether to re-load; should check module !=
1656         NULL, then load != NULL)
1657         (image_handler_load): Check in present working directory,
1658         makes it easier to debug for now
1659         (file_formats): This array initializer was seriously on crack,
1660         was assigning a function pointer to a GModule*
1661
1662         * src/testpixbuf.c (main): Change type of pixbuf_loader to GdkPixbufLoader*
1663
1664 1999-10-27  Havoc Pennington  <hp@pobox.com>
1665
1666         * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_finalize):
1667         Fix typo that prevented compilation
1668         (gdk_pixbuf_loader_destroy): ditto
1669
1670 1999-10-27  Federico Mena Quintero  <federico@redhat.com>
1671
1672         * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_new): Return a
1673         GdkPixbufLoader, not a GtkObject.
1674         (gtk_marshal_NONE__INT_INT_INT_INT): Made static.
1675         (gdk_pixbuf_loader_get_type): Documented.
1676         (gdk_pixbuf_loader_class_init): Initialize the parent class
1677         correctly.
1678         (gdk_pixbuf_loader_destroy): Added sanity checks. Call the parent
1679         class destroy function.
1680         (gdk_pixbuf_loader_new): Documented.
1681         (gdk_pixbuf_loader_finalize): Call the parent class finalize
1682         function.
1683         (gdk_pixbuf_loader_write): Use size_t for count.
1684
1685 1999-10-27  Michael Fulbright  <drmike@redhat.com>
1686
1687         * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_destroy): Fixed
1688         logic so we only try to close loader if it wasn't previously closed.
1689
1690 1999-10-27  Michael Fulbright  <drmike@redhat.com>
1691
1692         * src/gdk-pixbuf-loader.c: Made sure image_loader struct member of
1693         pixbuf_loader properly initialized.
1694
1695         * src/testpixbuf.c: Made sure we cleanup pixbuf_loader properly
1696         when done.
1697
1698 1999-10-26  Jonathan Blandford  <jrb@redhat.com>
1699
1700         * src/gdk-pixbuf-io.c (image_handler_load): load the vtable fully.
1701
1702         * src/gdk-pixbuf-loader.c: Finished initial cut at the object.
1703
1704 1999-10-26  Havoc Pennington  <hp@pobox.com>
1705
1706         * src/gdk-pixbuf-loader.h: fix signals
1707
1708         * src/gdk-pixbuf-io.h: add new vtable fields
1709
1710
1711 1999-10-26  Jonathan Blandford  <jrb@redhat.com>
1712
1713         * src/gdk-pixbuf-loader.h: New Class.  Beginning of progrssive
1714         loading.
1715
1716 1999-10-25  Federico Mena Quintero  <federico@redhat.com>
1717
1718         * configure.in (CFLAGS): Patch from Uwe Koloska
1719         <koloska@Rcs1.urz.tu-dresden.de> to fix a stupid typo of mine.
1720
1721 1999-10-22  Havoc Pennington  <hp@pobox.com>
1722
1723         * src/io-xpm.c (mem_buffer): Clean up stupid
1724         increment-inside-array-dereference thing
1725
1726         * src/testpixbuf.c: Add XPM data tests.
1727
1728         * src/io-xpm.c: Make the XPM data buffer const, fix const
1729         correctness throughout the code.
1730
1731 1999-10-22  Havoc Pennington  <hp@pobox.com>
1732
1733         * src/gdk-pixbuf.h: Export gdk_pixbuf_new_from_xpm_data()
1734
1735 1999-10-22  Havoc Pennington  <hp@pobox.com>
1736
1737         * src/io-xpm.c (image_load_xpm_data): Export this symbol for
1738         loading an XPM from memory.
1739
1740         * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): New
1741         function, loads pixbuf from xpm data
1742         (image_handler_load): Add g_return_if_fail() to ensure the same
1743         module isn't loaded twice. Add g_module_symbol() to scan for XPM
1744         loader function.
1745
1746 1999-10-22  Federico Mena Quintero  <federico@redhat.com>
1747
1748         * src/io-png.c (image_load): Patch from Kristian Hogsberg
1749         Kristensen <hogsberg@daimi.au.dk> to avoid allocating extra row
1750         buffers; the rows can be read in directly into the main pixel
1751         buffer.
1752
1753 1999-10-20  Federico Mena Quintero  <federico@redhat.com>
1754
1755         * src/gdk-pixbuf-io.c (image_handler_load): Free path.
1756
1757 1999-10-20  Federico Mena Quintero  <federico@redhat.com>
1758
1759         * configure.in: Bumped version number to 0.3.
1760
1761         * src/Makefile.am (lbgdk_pixbuf_la_LDFLAGS): Added a libtool
1762         version number for the library.
1763
1764 1999-10-20  Federico Mena Quintero  <federico@redhat.com>
1765
1766         * src/gdk-pixbuf.h (GdkPixbuf): Removed the unref_fn field.  Now
1767         all memory management of the buffer is done by libart.
1768
1769         * src/gdk-pixbuf.c (gdk_pixbuf_unref): Do destruction here.
1770         Removed gdk_pixbuf_destroy, gdk_pixbuf_duplicate.
1771
1772         * src/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Implemented in
1773         terms of the libart functions.  Removed the old code.
1774
1775         * src/gdk-pixbuf-io.c (image_handler_load): Removed the save
1776         symbols.  Saving will not be implemented in GdkPixbuf.
1777
1778         * src/io-gif.c: Removed the saving stub.
1779         (image_load): Fixed memory management to fail gracefully if we run
1780         out of memory while loading the image.  Close the gif file when we
1781         are done.  This still needs more error handling for the DGif
1782         functions.
1783
1784         * src/io-jpeg.c (image_load): Some robustness fixes.
1785
1786         * src/io-png.c: Removed the saving stuff.
1787         (image_load): Some memory management fixes.
1788
1789         * src/io-tiff.c (image_load): Ditto.
1790
1791         * src/io-xpm.c (pixbuf_create_from_xpm): Ditto.
1792
1793 1999-10-18  Havoc Pennington  <hp@pobox.com>
1794
1795         * subautogen.sh: New name for macros/autogen.sh
1796
1797         * autogen.sh: use subautogen.sh
1798
1799 1999-10-18  Federico Mena Quintero  <federico@redhat.com>
1800
1801         * src/*: Reindented to use the GNOME Indentation.  Renamed
1802         GdkPixBuf to GdkPixbuf, for consistency with the function names
1803         (and it is also easier to type) :-)
1804
1805 1999-10-18  Havoc Pennington  <hp@pobox.com>
1806
1807         * configure.in: Use AM_PATH_GLIB instead of glib-config directly
1808
1809         * src/Makefile.am: Re-enable testpixbuf with GTK_CFLAGS/GTK_LIBS
1810
1811 1999-10-18  Havoc Pennington  <hp@pobox.com>
1812
1813         * Makefile.am (SUBDIRS): Remove "macros"
1814
1815         * configure.in: Don't use GNOME_INIT, handle case where we are
1816         inside gnome-libs. AM_PATH_GTK for the GIF test
1817
1818         * src/Makefile.am: Change flags to work without libgnomeui,
1819         comment out testpixbuf for now
1820
1821 1999-10-18  Federico Mena Quintero  <federico@redhat.com>
1822
1823         * configure.in: Use $GTK_LIBS as the extra libs when checking for
1824         libgif/libungif, as they need the X libraries.  Fixes bug #2472.
1825
1826 1999-10-10  Cody Russell  <bratsche@dfw.net>
1827         * src/gdk-pixbuf-drawable.c: core function now determines whether
1828         the requested geometry is on screen or not, and if some is not
1829         then the request is clamped to geometry that is on the screen.
1830
1831         Changed 'pixbuf' to 'art_pixbuf' in core function.
1832
1833 1999-10-08  Michael Fulbright  <drmike@redhat.com>
1834
1835         * src/gdk-pixbuf-data.c: Added to load rgb data from const data.
1836
1837         * src/testpifbuf: Changed test program to display cdrom from rgb data
1838         if no filename given to test program.
1839
1840 1999-10-07  Cody Russell  <bratsche@dfw.net>
1841         * src/gdk-pixbuf-drawable.[ch]: Added. (Actually, Miguel committed
1842         them, but I wrote them).
1843
1844         * src/gdk-pixbuf-drawable.h: Added a missing ; so things will now
1845         compile.
1846
1847         * src/Makefile.am: Added gdk-pixbuf-drawable.[ch] to
1848         libgdk_pixbuf_la_SOURCES and libgdk_pixbufinclude_HEADERS.
1849
1850         * src/gdk-pixbuf-drawable.c: Added #include "gdk-pixbuf-drawable.h"
1851         to fix compilation.
1852
1853         * src/gdk-pixbuf-drawable.[ch]: Changed functions to return
1854         GdkPixBuf* instead of ArtPixBuf*.
1855
1856 1999-09-22  Michael Meeks  <michael@nuclecu.unam.mx>
1857
1858         * src/gdk-pixbuf.c (gdk_pixbuf_new): created.
1859         (gdk_pixbuf_scale): use gdk_pixbuf_new + return a new scaled image.
1860
1861         * src/gdk-pixbuf.h (struct _GdkPixBuf): Re-organise struct, + add
1862         GdkPixBufUnrefFunc + gdk_pixbuf_new.
1863
1864         * src/io-jpeg.c (image_load): clean to use gdk_pixbuf_new.
1865
1866         * src/io-xpm.c (_pixbuf_create_from_xpm): ditto.
1867
1868         * src/io-tiff.c (image_load): ditto + fix leak
1869
1870         * src/io-png.c (image_load): ditto + add more exit points; monitor.png
1871         crashes this module ( add warning :-)
1872
1873         * src/io-bmp.c (image_load): ditto.
1874
1875         * src/io-gif.c (image_load): ditto.
1876
1877 1999-09-18  Michael Meeks  <michael@nuclecu.unam.mx>
1878
1879         * src/gdk-pixbuf.c (gdk_pixbuf_scale): Hack rgba support in so
1880         it doesn't crash scaling with alpha.
1881
1882 1999-09-17  Federico Mena Quintero  <federico@redhat.com>
1883
1884         * src/io-bmp.c (image_load): Set the initial ref_count to 1.
1885
1886         * src/io-gif.c (image_load): Likewise.
1887
1888         * src/io-jpeg.c (image_load): Likewise.
1889
1890         * src/io-png.c (image_load): Likewise.
1891
1892         * src/io-tiff.c (image_load): Likewise.
1893
1894         * src/io-xpm.c (_pixbuf_create_from_xpm): Likewise.
1895
1896         * src/gdk-pixbuf-io.c (gdk_pixbuf_load_image): Added an assertion
1897         for the ref_count to be != 0.
1898
1899         * src/gdk-pixbuf.c (gdk_pixbuf_ref): Be more paranoid with sanity
1900         checking.
1901         (gdk_pixbuf_unref): Fix incorrect sanity check and comparison.
1902
1903 1999-08-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
1904
1905         * src/io-png.c (image_save): Fixed compiler warnings.  Fixed write
1906         to unallocated memory (row_ptr), and fixed its type as well.  Take
1907         into account the ArtPixbuf's rowstride when assigning the row
1908         pointers.
1909
1910         * src/gdk-pixbuf.c: Fixup includes.
1911
1912         * src/gdk-pixbuf-io.c: Likewise.
1913
1914 Sat Jul 31 19:19:47 CEST 1999
1915
1916         * src/gdk-pixbuf-io.c:
1917         * src/io-png.c: Fixed two obvious C syntax bugs
1918
1919 1999-07-29  Mark Crichton  <crichton@gimp.org>
1920
1921         * src/io-png.c (image_save): Added PNG saving function
1922
1923         * src/gdk-pixbuf-io.c: Changed image_save function format.  Now it's
1924         image_save(GdkPixBuf *p, FILE *f, ...)
1925
1926
1927 1999-07-26  Michael Zucchi  <mzucchi@denr.sa.gov.au>
1928
1929         * src/Makefile.am (*_LIB): Only build the relevant loaders which
1930         require extra libraries if we actually have those libraries.
1931
1932 1999-07-23  Richard Hestilow  <hestgray@ionet.net>
1933
1934         * src/gdk-pixbuf.h: Include glib.h as it uses g* datatypes
1935         * gdk_pixbufConf.sh.in: Added for gnome-config
1936         * Makefile.am:
1937         * configure.in: Modified to generate gdk_pixbufConf.sh
1938
1939 1999-07-20  Mark Crichton  <crichton@gimp.org>
1940
1941         * src/gdk-pixbuf.c (gdk_pixbuf_rotate): Fixed rotation.  Now a bbox
1942         calculation needs to be done.
1943
1944 1999-07-18  Larry Ewing  <lewing@gimp.org>
1945
1946         * src/io-xpm.c:
1947         * src/io-gif.c:
1948         * src/io-png.c:
1949         * src/io-jpeg.c: Fix a few memory leaks in the, most of them in
1950         error cases but one or two in the common case.  There are probably
1951         a few small ones left.
1952
1953 1999-07-18  Mark Crichton  <crichton@gimp.org>
1954
1955         * configure.in: removed version.h.
1956
1957         * src/gdk-pixbuf-io.c (pixbuf_check_tiff): Minor readability
1958         improvements.
1959
1960 1999-07-17  Mark Crichton  <crichton@gimp.org>
1961
1962         * src/gdk-pixbuf.c: Removed gdk_pixbuf_free, redundant code.
1963         (gdk_pixbuf_rotate): Added pixbuf rotation code.
1964         (gdk_pixbuf_scale): Changed // comments to /* */
1965
1966         * src/gdk-pixbuf.h (gdk_pixbuf_destroy): Added gdk_pixbuf_destroy
1967         function to header.
1968
1969 1999-07-16  Larry Ewing  <lewing@gimp.org>
1970
1971         * src/testpixbuf.c (expose_func): reverted the expose everything
1972         changes, I'm not sure why these went in.
1973         (config_func): bring this up to date with the new pixbuf_scale
1974         semantics.
1975
1976         * src/gdk-pixbuf-io.c: added a couple of warnings to the module
1977         loading code so that poeple can diagnose problems better.
1978
1979         * src/gdk-pixbuf.c (gdk_pixbux_scale): fix the borkedness, also it
1980         no longer allocates a new pixbuf, which make things nicer for the
1981         rest of the code.  Unfortunately there is still a problem with
1982         scaling rgba images.
1983
1984 1999-07-16  Mark Crichton  <crichton@gimp.org>
1985
1986         * src/testpixbuf.c (config_func): ConfigureEvent handler.  This
1987         calls gdk_pixbuf_scale.  However, something is not working.
1988         N.B.: current pixmap is now stored in user_data with a key of
1989         "pixmap"
1990
1991         * src/gdk-pixbuf.c (gdk_pixbuf_scale): Implemented scaling function.
1992         Something is still borked, however.
1993
1994 1999-07-15  Larry Ewing  <lewing@gimp.org>
1995
1996         * src/io-jpeg.c (image_load): add raph@gimp.org's fix to the jpeg
1997         indexing routine
1998
1999         * src/testpixbuf.c (main): fix up the file routines a little so
2000         that you can load multiple files given the file names
2001
2002 1999-07-14  Larry Ewing  <lewing@gimp.org>
2003
2004         * src/testpixbuf.c (expose_func): added an almost proper expose
2005         handler for testpixbuf
2006
2007 1999-07-13  Mark Crichton  <crichton@gimp.org>
2008
2009         * configure.in: Fixed GIF check.  Replaced " with '
2010         * src/gdk-pixbuf.c: More (minor) work on gdk_pixbuf_scale
2011
2012 1999-07-13  Mark Crichton  <crichton@gimp.org>
2013
2014         * configure.in: I am a bonehead.  Added gif-lib check.