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