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