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