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