1 2005-07-22 Matthias Clasen <mclasen@redhat.com>
3 * === Released 2.7.4 ===
5 2005-07-22 Matthias Clasen <mclasen@redhat.com>
7 * queryloaders.c: Accept '*' in masks. (pointed out
10 * gdk-pixbuf-io.c (format_check): Make anchored patterns work
11 as they did before. (#311011, William Jon McCann)
13 2005-07-22 Matthias Clasen <mclasen@redhat.com>
15 * gdk-pixbuf-io.c (format_check): Interpret patterns where
16 the first byte of the mask is '*' as unanchored. (#311011)
17 (gdk_pixbuf_new_from_file): Use the first 256 bytes for
18 sniffing the file format.
20 2005-07-15 Matthias Clasen <mclasen@redhat.com>
22 * === Released 2.7.3 ===
24 2005-07-12 Matthias Clasen <mclasen@redhat.com>
27 * pixops/*: Add copyright and license information.
29 2005-07-09 Tor Lillqvist <tml@novell.com>
31 * Makefile.am: Don't use the scripts in build/win32 to compile the
32 rc file into a resource object file. (This means we lose the
33 build number increment magic, but I doubt it was that useful
34 anyway.) Instead use windres directly. To pass the normal .o file
35 produced by windres through libtool, which would want a .lo file,
36 pass it directly to the linker using a -Wl option.
38 * gdk_pixbuf.rc.in: Replace BUILDNUMBER with 0.
40 2005-07-08 Matthias Clasen <mclasen@redhat.com>
42 * === Released 2.7.2 ===
44 2005-07-01 Matthias Clasen <mclasen@redhat.com>
46 * === Released 2.7.1 ===
48 2005-07-01 Matthias Clasen <mclasen@redhat.com>
50 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file_at_scale): Allow
51 -1 for width/height and interpret them as "not constrained".
52 (#309258, Mark McLoughlin)
54 2005-06-26 Tor Lillqvist <tml@novell.com>
56 * Makefile.am: Current GNU tools do understand the PRIVATE
57 keyword, so no need to remove those entries from the import
58 library. libtool installs the .dll.a import library itself, so no
59 need to do it here. Do install the .def file.
61 2005-06-22 Matthias Clasen <mclasen@redhat.com>
63 * gdk-pixbuf-i18n.h: Use glib-i18n.h
65 2005-06-20 Matthias Clasen <mclasen@redhat.com>
67 * === Released 2.7.0 ===
69 2005-06-15 Matthias Clasen <mclasen@redhat.com>
72 * gdk-pixbuf-simple-anim.h: Add
73 gdk_pixbuf_simple_anim_iter_get_type()
75 2005-06-08 Matthias Clasen <mclasen@redhat.com>
77 * io-pnm.c (pnm_read_next_value): Check for overflow.
78 (#306394, Morten Welinder)
80 2005-05-27 Matthias Clasen <mclasen@redhat.com>
82 * io-bmp.c: Accept the 108 byte header of BMP v4. (#168799)
84 2005-05-25 Matthias Clasen <mclasen@redhat.com>
87 * gdk-pixbuf-simple-anim.[hc]: No need to expose the iter
88 subclass at all in the headers.
90 * Makefile.am: Add new files.
92 * gdk-pixbuf.symbols: Add new api.
94 * gdk-pixbuf.h: Include gdk-pixbuf-simple-anim.h here.
96 * gdk-pixbuf-simple-anim.[hc]: Add a way to construct
97 simple animations out of pixbufs. (#135161, Dom Lachowicz)
99 2005-05-24 Sven Neumann <sven@gimp.org>
101 * io-png.c: allow to specify the PNG compression level by passing
102 a "compression" parameter to the PNG save function (bug #305337).
104 * gdk-pixbuf-io.c (gdk_pixbuf_save): document the new parameter.
106 2005-04-09 Matthias Clasen <mclasen@redhat.com>
108 * Makefile.am: Use $(NM), not nm directly. (#301299,
109 Nguyen Thai Ngoc Duy)
111 * io-bmp.c (gdk_pixbuf__bmp_image_save_to_callback):
112 Don't overflow the stack. (Jakub Jelinek, Arjan van de Ven)
114 2005-04-08 Matthias Clasen <mclasen@redhat.com>
116 * io-pcx.c: No debugging output, please. (#173107,
119 2005-04-07 Matthias Clasen <mclasen@redhat.com>
121 * io-bmp.c (DecodeColormap): Initialize the colormap to
122 zero. (#171762, David Costanzo)
124 2005-03-30 Matthias Clasen <mclasen@redhat.com>
126 * io-bmp.c: Avoid bus errors due to unaligned access. (#168173,
127 Morten Welinder, Ivan Wong)
129 2005-03-29 Matthias Clasen <mclasen@redhat.com>
131 * io-tga.c (parse_rle_data): Fix the update areas for incremental
132 loading of compressed tgas. (#171883, David Costanzo)
134 2005-03-27 Matthias Clasen <mclasen@redhat.com>
136 * io-bmp.c (DoCompressed): Use the correct update regions for
137 compressed bmps. (#150664, Owen Taylor, test images provided
140 Sun Mar 27 19:59:52 2005 Manish Singh <yosh@gimp.org>
142 * io-bmp.c (grow_buffer): reject 0-sized buffers as corrupt header
143 data. Fixes bug #171707.
145 2005-03-25 Matthias Clasen <mclasen@redhat.com>
147 * gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Use canonical
150 2005-03-21 Matthias Clasen <mclasen@redhat.com>
152 * gdk-pixbuf.c (gdk_pixbuf_class_init): Mark param spec strings
155 2005-03-14 Matthias Clasen <mclasen@redhat.com>
157 Make PLT-reduction work with gcc4, and don't include
158 everything in gdk-pixbuf-alias.h:
160 * gdk-pixbuf.symbols: Group symbols by header and source file.
161 * /makegdkpixbufalias.pl: Protect definitions by the same
162 preprocessor symbols used to guard the headers. Move
163 the alias declarations to a separate file which is
164 produced when calling makegdkpixbufalias.pl -def
165 * Makefile.am (gdk-pixbuf-aliasdef.c): Add a rule to generate
167 * *.c: Include gdk-pixbuf-alias.h after the other headers,
168 include gdk-pixbuf-aliasdef.c at the bottom.
170 2005-03-10 Tor Lillqvist <tml@novell.com>
174 * gdk-pixbuf.symbols: Implement DLL ABI stablility for
175 gdk_pixbuf_save() and gdk_pixbuf_savev(). (#167973)
177 2005-03-09 Matthias Clasen <mclasen@redhat.com>
179 * io-gif-animation.c (gdk_pixbuf_gif_anim_frame_composite): Fix
180 a C99ism. (#169741, Morten Welinder)
182 2005-03-08 Matthias Clasen <mclasen@redhat.com>
184 * gdk-pixbuf.c (gdk_pixbuf_class_init): Use canonical
185 form of the name when registering properties.
187 * gdk-pixbuf.symbols: Add the new attributes here, too.
189 * gdk-pixbuf-core.h: Use G_GNUC_NULL_TERMINATED where
190 appropriate. (#165682, Marc Meissner)
192 2005-03-07 Matthias Clasen <mclasen@redhat.com>
194 * io-xpm.c: Use a generated table of offsets
195 into a big const string to avoid relocations
196 in the rgb color table. (#168901, Tommi Komulainen)
198 * gen-color-table.pl: Script to generate the table,
199 copied from Owen Taylors script by the same name
202 * xpm-color-table.h: The generated table.
204 2005-03-03 Matthias Clasen <mclasen@redhat.com>
206 * io-xpm.c (pixbuf_create_from_xpm): Check the number
207 of scanned items. (#168906, Morten Welinder)
209 Make the gif loader handle oom when loading
210 animations. (#168857, Tommi Komulainen)
212 * io-gif-animation.c (gdk_pixbuf_gif_anim_frame_composite):
213 Handle oom by returning NULL.
215 * io-gif.c (gif_get_lzw): Return an error if composite
218 2005-02-28 Matthias Clasen <mclasen@redhat.com>
220 * pixops/*.S: Add .note.GNU-stack sections to Mark these as not
221 requiring an executable stack.
223 2005-02-23 Matthias Clasen <mclasen@redhat.com>
225 * gdk-pixbuf-io.c: Document BMP saving support.
227 * io-bmp.c: Support saving as BMP. (168173, Ivan Wong)
229 * io-ico.c: Fix a typo. (#168173, Ivan Wong)
231 2005-02-15 Matthias Clasen <mclasen@redhat.com>
233 * io-pnm.c (pnm_skip_whitespace): Don't read over the end of
234 the buffer if '#' appears at the very end. (#167141, Doug Morgan)
236 2005-02-05 Hans Breuer <hans@breuer.org>
238 * makefile.msc : rule for gdk_pixbuf.def
240 2005-02-07 Matthias Clasen <mclasen@redhat.com>
242 * io-pnm.c (pnm_read_next_value): Pass in the max number
244 (pnm_read_ascii_scanline): And use it here to enable
245 parsing of pbm images without whitespace between the
246 pixels. (#165803, Samuel Hym)
248 2005-01-22 Matthias Clasen <mclasen@redhat.com>
250 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_new_with_type)
251 (gdk_pixbuf_loader_new_with_mime_type): Close the loader
252 before unreffing it in the error case. (#164915, Crispin
255 2005-01-12 Owen Taylor <otaylor@redhat.com>
257 * Makefile.am: Use grep | head -n 1 instead of grep -m 1
259 with slightly older versions of GNU grep in
260 install-libtool-import-lib rule.
262 2005-01-08 Matthias Clasen <mclasen@redhat.com>
264 * === Released 2.6.1 ===
266 2005-01-04 Matthias Clasen <mclasen@redhat.com>
268 * io-bmp.c (DecodeHeader): Error on compressed images with
269 negative height. Also make uncompressed images with data_offset
270 != header_size work. (#150664, Owen Taylor)
272 2005-01-02 Matthias Clasen <mclasen@redhat.com>
274 * pixops/pixops.c (bilinear_box_make_weights): Really fix the
275 math to make the vectors sum up to 1, making GDK_INTERP_HYPER
276 work again. (#162703, Dennis Nezic)
278 2004-12-27 Matthias Clasen <mclasen@redhat.com>
280 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file)
281 Avoid deadlock. Pointed out by Callum McKenzie.
283 Wed Dec 22 01:17:44 2004 Jonathan Blandford <jrb@redhat.com>
285 * queryloaders.c (main): print out the version and binary name in
286 the header comment. Problem reported by Seth Nickell.
288 2004-12-16 Matthias Clasen <mclasen@redhat.com>
290 * === Released 2.6.0 ===
292 Fri Dec 10 13:57:44 2004 Manish Singh <yosh@gimp.org>
294 * abicheck.sh: filter out PRIVATE.
296 2004-12-05 Tor Lillqvist <tml@iki.fi>
298 * gdk-pixbuf-animation.c
302 * make-inline-pixbuf.c
303 * queryloaders.c: Use gstdio wrappers. Document that file names
304 are in the GLib file name encoding.
306 * gdk-pixbuf-csource.c
307 * queryloaders.c: On Windows, convert command line arguments and
308 environment variable values from locale encoding to UTF-8.
310 * queryloaders.c: On Windows, use wide character API when
316 * gdk-pixbuf-animation.h
317 * gdk-pixbuf-animation.c: Like in GLib, for DLL ABI stability on
318 Windows, add binary compatibility versions of functions that take
319 file names as arguments. They use the system codepage, not GLib
320 file name encoding (which is UTF-8 on Windows). Use #defines to
321 make newly compiled code use the "real" functions that use the
322 GLib file name encoding scheme.
324 2004-12-02 Matthias Clasen <mclasen@redhat.com>
326 * === Released 2.5.6 ===
328 2004-11-30 Matthias Clasen <mclasen@redhat.com>
330 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_iter_get_pixbuf):
331 Fix a typo in the docs. (#159955, Masao Mutoh)
333 2004-11-29 Matthias Clasen <mclasen@redhat.com>
335 * Makefile.am (gdk-pixbuf-alias.h): Use the perl found by
336 configure. (#149826, Morten Welinder)
338 Sun Nov 28 12:11:21 2004 Manish Singh <yosh@gimp.org>
340 * makegdkpixbufalias.pl: Typo fix, so attributes are really
343 2004-11-28 Matthias Clasen <mclasen@redhat.com>
345 * gdk-pixbuf.symbols:
346 * Makefile.am: Mark get_type() functions generated by glib-mkenums
349 Thu Nov 25 14:21:37 2004 Manish Singh <yosh@gi,p.org>
351 * abicheck.sh: filter out G_GNUC stuff when doing the compare.
353 2004-11-23 Matthias Clasen <mclasen@redhat.com>
355 * gdk-pixbuf-core.h: Don't mark gdk_pixbuf_error_quark() as const,
356 to be consistent with all the other error_quark functions.
357 (technically they are const, but since these are called only
358 in error paths, giving the compiler better optimization
359 opportunities doesn't matter much)
361 * gdk-pixbuf.symbols: Add attribute annotations.
362 * makegdkpixbufalias.pl: Keep attribute annotations, but strip PRIVATE.
363 * Makefile.am (gdk_pixbuf.def): Strip attribute annotations, but keep
366 Mon Nov 15 18:58:22 2004 Manish Singh <yosh@gimp.org>
368 * gdk-pixbuf-private.h: _gdk_pixbuf_lock now returns a gboolean.
370 * abicheck.sh: don't hardcode lengths for cut, instead split on
373 2004-11-15 Matthias Clasen <mclasen@redhat.com>
375 * gdk-pixbuf-animation.c:
376 * gdk-pixbuf-loader.c:
377 * gdk-pixbuf-io.c: Be extra careful when locking and handle
378 the case that the module may initialize the thread system.
380 * gdk-pixbuf-io.[hc] (_gdk_pixbuf_lock): Return whether the
381 lock was actually taken.
383 * queryloaders.c (query_module): Set vtable->module before
384 calling fill_vtable(), since gdk-pixbuf-io.c does does the
385 same and modules may rely on it. (#158177, Dan Winship)
387 2004-11-12 Matthias Clasen <mclasen@redhat.com>
389 * gdk-pixbuf-io.c (gdk_pixbuf_io_init): Don't use
390 _gdk_pixbuf_load_module_unlocked() in the !USE_GMODULE case.
392 * === Released 2.5.5 ===
394 2004-11-12 Matthias Clasen <mclasen@redhat.com>
396 Changes to make gdk-pixbuf threadsafe (#157310, #157306,
399 * gdk-pixbuf-io.h (enum GdkPixbufFormatFlags): Add
400 GDK_PIXBUF_FORMAT_THREADSAFE to indicate that an image loader
403 * gdk-pixbuf-io.c (get_file_formats, _gdk_pixbuf_load_module):
404 Use a lock to make initialization of global data structures
406 * gdk-pixbuf-private.h:
407 * gdk-pixbuf-io.c (_gdk_pixbuf_lock, _gdk_pixbuf_unlock):
408 Auxiliary functions which use another lock to protect
409 threadunsafe image loaders.
411 * gdk-pixbuf-io.c (gdk_pixbuf_real_save):
412 (save_to_callback_with_tmp_file):
413 (gdk_pixbuf_real_save_to_callback):
414 (gdk_pixbuf_new_from_xpm_data):
415 (_gdk_pixbuf_generic_image_load):
416 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file):
417 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_load_module):
418 (gdk_pixbuf_loader_close):
419 (gdk_pixbuf_loader_finalize):
420 Use _gdk_pixbuf_lock() and _gdk_pixbuf_unlock().
422 * io-ani.c, io-bmp.c, io-gif.c, io-ico.c:
423 * io-jpeg.c, io-pcx.c, io-png.c, io-pnm.c:
424 * io-ras.c, io-tga.c, io-wbmp.c, io-xbm.c:
425 * io-xpm.c: Mark as threadsafe.
427 * io-tiff.c: Remove pointless locking, mark as
430 2004-11-10 Matthias Clasen <mclasen@redhat.com>
432 * gdk-pixbuf-animation.c:
433 * gdk-pixbuf-io.c: Use g_filename_display_name() instead of
434 g_filename_to_utf8() when putting filenames in error messages.
436 2004-11-04 Matthias Clasen <mclasen@redhat.com>
438 * gdk-pixbuf.c (gdk_pixbuf_class_init): Document current
439 restrictions for property values. (#157409, Matthew H. Plough)
441 2004-11-01 Matthias Clasen <mclasen@redhat.com>
443 * gdk-pixbuf-features.h.in: Break the declaration of the three
444 version variables, so that gtk-doc can grok it.
446 2004-10-29 Hans Breuer <hans@breuer.org>
448 * makefile.msc : updated
450 2004-10-27 Matthias Clasen <mclasen@redhat.com>
452 * === Released 2.5.4 ===
454 2004-10-27 Matthias Clasen <mclasen@redhat.com>
456 * Makefile.am (gdk-pixbuf-alias.h): Fix srcdir != builddir
459 2004-09-19 Matthias Clasen <mclasen@redhat.com>
461 * === Released 2.5.3 ===
463 2004-09-15 Matthias Clasen <mclasen@redhat.com>
466 * io-xpm.c: Fix some security issues discovered by Chris Evans.
468 Mon Sep 13 19:31:34 2004 Matthias Clasen <maclas@gmx.de>
470 * io-jpeg.c (real_save_jpeg): Drop the alpha channel
471 when saving 4-channel pixbufs. (#152450, Emmanuel Pacaud)
473 2004-09-09 Matthias Clasen <mclasen@redhat.com>
475 * makegdkpixbufalias.pl: Use the short prefix "IA__" for
476 aliases instead of the long suffix "__internal_alias".
478 2004-09-01 Matthias Clasen <mclasen@redhat.com>
480 * gdk-pixbuf-core.h: Align argument names with source.
482 Thu Aug 26 01:23:16 2004 Matthias Clasen <maclas@gmx.de>
485 * gdk-pixbuf.symbols:
486 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file_at_scale):
487 Add gdk_pixbuf_new_from_file_at_scale(), which is just
488 like gdk_pixbuf_new_from_file_at_size(), but optionally
489 ignores the aspect ratio. (#136395, Dom Lachowicz)
491 Wed Aug 25 17:23:23 2004 Manish Singh <yosh@gimp.org>
493 * io-gif.c: remove unused set_need_recomposite() function.
495 2004-08-25 Matthias Clasen <mclasen@redhat.com>
497 * === Released 2.5.2 ===
499 * abicheck.sh: Make work in make distcheck.
501 2004-08-25 Matthias Clasen <mclasen@redhat.com>
503 * Makefile.am: Use the same prefix when creating
504 gdk-pixbuf-marshal.c and gdk-pixbuf-marshal.h
506 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): _-prefix
509 2004-08-24 Matthias Clasen <mclasen@redhat.com>
511 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_new_with_mime_type): Use
512 the correct index and compare correctly, reported by Tommi Komulainen.
513 (gdk_pixbuf_loader_new_with_mime_type):
515 * gdk-pixdata.c (gdk_pixdata_from_pixbuf): Work around bugs in
516 the runlength encoder by forcing rowstride * height to be
517 divisible by bpp. (#150882)
519 Sun Aug 22 03:20:56 2004 Matthias Clasen <maclas@gmx.de>
521 * pixops/pixops.c (pixops_scale_nearest): Fix a mixup in the handling
522 of dest_channels. (#111922, Christophe Fergeau)
524 Fri Aug 20 11:59:10 2004 Owen Taylor <otaylor@redhat.com>
526 * io-bmp.c: Fix infinite loop that can occur for bad
527 image data (#150601, Chris Evans, Manish Singh)
529 2004-08-17 Matthias Clasen <mclasen@redhat.com>
531 * abicheck.sh: No need for INCLUDE_INTERNAL_SYMBOLS any more.
533 * Makefile.am (gdk-pixbuf-alias.h): Don't use cpp to filter the symbols.
535 * makegdkpixbufalias.pl: Move the #ifdef processing into the perl script,
536 and keep the #ifdefs which differentiate between platforms.
538 * gdk-pixbuf.symbols: Remove the marshalers.
540 * Makefile.am (stamp-gdk-pixbuf-marshal.h): _-prefix the marshalers.
542 Thu Aug 12 22:19:12 2004 Matthias Clasen <maclas@gmx.de>
544 * io-bmp.c (DecodeHeader): Properly determine the number of
545 colors in an OS/2 BMP file. (#150003, Jon-Kare Hellan)
547 2004-08-12 Matthias Clasen <mclasen@redhat.com>
549 * pixops/pixops.c: Remove C99-isms. (#149967, Vincent Noel)
551 Wed Aug 11 22:56:55 2004 Matthias Clasen <maclas@gmx.de>
553 * abicheck.sh: Check all symbols.
555 2004-08-11 Matthias Clasen <mclasen@redhat.com>
557 * pixops/pixops.c: Make scaling and compositing functions handle
558 edge pixels consistently. (#111922, Brian Cameron)
560 * pixops/pixops-internal.h:
562 * pixops/*.S: underscore prefix the mmx implementations, in order
565 * gdk-pixbuf.symbols: Remove the mmx pixops implementations.
567 * abicheck.sh: No need to define INCLUDE_MMX_SYMBOLS any more.
569 Tue Aug 10 23:53:59 2004 Matthias Clasen <maclas@gmx.de>
571 Add hidden aliases for exported symbols which are
572 used internally in order to get rid of many PLT
573 entries. (#145519, Arjan van de Ven)
575 * gdk/Makefile.am: Add rules to generate gdk_pixbuf.def and
576 gdk-pixbuf-alias.h from gdk-pixbuf.symbols, and make make
577 check check the abi with abicheck.sh.
579 * gdk/gdk-pixbuf.symbols: New file. Definition of the gdk-pixbuf
580 ABI. The file can be processed by cpp to filter out certain
583 * gdk/abicheck.sh: New file. Script to check the actually
584 symbols exported from libgdk_pibuf.2.0.so against the symbols
585 found in gdk-pixbuf.symbols.
587 * gdk/makegdkpixbufalias.pl: New file. Perl script to generate the
588 header containing the alias definitions for internally used
589 exported symbols from a list of symbols.
591 * *.c: Include gdk-pixbuf-alias.h
593 2004-08-06 Hans Breuer <hans@breuer.org>
595 * gdk_pixbuf.def makefile.msc : updated
597 Sun Aug 1 23:57:06 2004 Matthias Clasen <maclas@gmx.de>
599 * io-pcx.c (pcx_increment_load_data_1): Fix progressive
600 loading of 8bit pcx files. (#148518, Magnus Bergman)
602 2004-08-01 Matthias Clasen <mclasen@redhat.com>
604 * === Released 2.5.1 ===
606 Tue Jul 20 22:23:26 2004 Matthias Clasen <maclas@gmx.de>
608 * gdk-pixbuf-io.h: Remove trailing commas from
609 enumerations. (#148035)
611 Sun Jul 18 20:17:41 2004 Soeren Sandmann <sandmann@daimi.au.dk>
613 * === released 2.5.0 ==
615 Thu Jul 15 19:19:21 2004 Matthias Clasen <maclas@gmx.de>
617 * io-png.c (real_save_png):
618 * gdk-pixbuf-io.c (gdk_pixbuf_io_init): Use 'cannot' instead
619 of 'can not' in messages. (#144226, Morten Welinder)
621 Fri Jul 9 15:38:06 2004 Manish Singh <yosh@gimp.org>
623 * gdk-pixbuf-io.c (gdk_pixbuf_format_set_disabled): function doesn't
624 return a value, so don't use g_return_val_if_fail()
626 * gdk-pixbuf-scale.c (gdk_pixbuf_rotate_simple): initialize dest in
627 the can't happen case, to quiet gcc.
629 * io-tiff.c (tifflibversion): enclose in #if TIFFLIB_VERSION >=
632 Wed Jul 7 23:53:58 2004 Matthias Clasen <maclas@gmx.de>
635 * gdk-pixbuf-io.c (gdk_pixbuf_format_is_disabled):
636 * gdk-pixbuf-io.c (gdk_pixbuf_format_set_disabled):
637 * gdk-pixbuf-io.c (gdk_pixbuf_format_get_license):
638 New functions to disable/enable individual loaders and to
639 obtain license information about loaders.
641 * gdk-pixbuf-io.h (GdkPixbufFormat): Add disabled and
644 * gdk-pixbuf-io.c (_gdk_pixbuf_get_module):
645 * gdk-pixbuf-io.c (_gdk_pixbuf_get_named_module): Skip
648 * io-*.c: Add license information in the fill_info
651 2004-07-07 Matthias Clasen <mclasen@redhat.com>
653 * gdk-pixbuf-features.h.in: Fix the build.
655 2004-07-06 Tor Lillqvist <tml@iki.fi>
657 * gdk-pixbuf-features.h.in
658 * gdk-pixbuf.c: Mark the version variables for proper import and
659 export from Windows DLLs. Thanks to Laurent Sansonetti for
660 reporting the problem.
662 Sat Jul 3 00:41:44 2004 Matthias Clasen <maclas@gmx.de>
664 * pixops/pixops.c (bilinear_box_make_weights): Correct the
665 math to calculate bilinear weights. (#112412, Brian Cameron)
667 Mon Jun 21 00:44:51 2004 Matthias Clasen <maclas@gmx.de>
669 * gdk-pixbuf-transform.h:
670 * gdk-pixbuf-scale.c (gdk_pixbuf_rotate_simple):
671 * gdk-pixbuf-scale.c (gdk_pixbuf_flip): New functions to
672 rotate pixbufs by multiples of 90 degrees and to flip them
673 horizontally or vertically.
675 Sun Jun 20 01:06:48 2004 Matthias Clasen <maclas@gmx.de>
677 Header reorganization. (#51999, Jeff Franks, reorganization
678 proposed by Havoc Pennington)
680 * gdk-pixbuf.h: This is now an include-only header, and the only
681 one which applications should directly use.
683 * gdk-pixbuf-animation.h: Add animation api from gdk-pixbuf.h.
684 * gdk-pixbuf-io.h: Add io api from gdk-pixbuf.h.
685 * gdk-pixbuf-loader.h: Add loader api from gdk-pixbuf.h.
686 * gdk-pixbuf-transform.h: New header.
687 * gdk-pixbuf-core.h: New header.
689 Sat Jun 19 01:44:12 2004 Matthias Clasen <maclas@gmx.de>
691 * gdk-pixbuf-scale.c (gdk_pixbuf_composite): Add a figure which
692 explains pixbuf compositing.
694 2004-06-16 Matthias Clasen <mclasen@redhat.com>
696 * io-tiff.c: Make the tiff loader work with both
697 libtiff 3.5.7 and libtiff 3.6.1. (#135541, Marco Ghirlanda)
699 Fri Jun 11 22:02:56 2004 Matthias Clasen <maclas@gmx.de>
701 * io-gif.c, io-pnm.c, io-tga.c, io-xpm.c: Don't use
702 contractions like "don't" or "isn't" in error messages.
703 It isn't nice to use them in log entries either...
704 (#137774, Morten Welinder, patch by Alexander Winston)
706 Sat Jun 5 00:59:12 2004 Matthias Clasen <maclas@gmx.de>
710 * gdk-pixbuf-animation.c:
711 * gdk-pixbuf-io.c: Convert filenames to UTF-8 when embedding
712 them in error messages. (#143654, Sven Neumann)
714 Sun May 16 22:53:47 2004 Matthias Clasen <maclas@gmx.de>
718 * io-pnm.c (pnm_read_next_value): Don't read integers
719 partially. (#142584, Kouichirou Hiratsuka)
721 2004-05-10 Matthias Clasen <mclasen@redhat.com>
725 * pixops/timescale.c:
728 * gdk-pixbuf-scale.c: _-prefix the nonstatic pixops_...
729 functions. (#142233, Morten Welinder)
731 Wed May 5 23:09:48 2004 Matthias Clasen <maclas@gmx.de>
733 * gdk-pixbuf-io.h (GdkPixbufFormatFlags): New format flag
734 GDK_PIXBUF_FORMAT_SCALABLE to mark scalable formats.
737 * gdk-pixbuf-io.c (gdk_pixbuf_format_is_scalable): New function.
738 (#137995, Dom Lachowicz)
740 2004-04-30 Matthias Clasen <mclasen@redhat.com>
742 * === Released 2.4.1 ===
744 2004-04-13 Matthias Clasen <mclasen@redhat.com>
746 * io-ani.c (gdk_pixbuf__ani_image_load_animation):
747 * gdk-pixbuf-io.c (gdk_pixbuf_get_file_info)
748 (_gdk_pixbuf_generic_image_load)
749 (gdk_pixbuf_new_from_file_at_size): When calling fread()
750 in a loop, check for ferror() as well as for feof() to
751 avoid infinite loops on directories. (#137804, Alex Converse)
753 Mon Mar 15 15:01:59 2004 Owen Taylor <otaylor@redhat.com>
755 * === Released 2.4.0 ===
757 2004-03-15 Tor Lillqvist <tml@iki.fi>
759 * queryloaders.c (main): [Win32] Look up installation prefix at
760 run-time, replace prefix in PIXBUF_LIBDIR with that. (#106141)
762 Merges from stable branch that had been left out. (#136282, J. Ali
765 Changes for run-time lookup of installation location on Win32:
767 * Makefile.am (INCLUDES): Define GTK_PREFIX as $(prefix).
769 * gdk-pixbuf-io.c (get_sysconfdir): New function, look up
770 installation location at runtime and deduce GTK_SYSCONFDIR
772 (get_toplevel): Similar, for the top-level installation directory.
773 (correct_prefix): Replace compile-time prefix with run-time
775 (get_libdir): Remove, not used any longer.
776 (gdk_pixbuf_io_init): Call correct_prefix() on Win32.
778 * queryloaders.c (query_module): [Win32] Change backslahses into
781 Tue Mar 9 09:33:28 2004 Owen Taylor <otaylor@redhat.com>
783 * === Released 2.3.6 ===
785 2004-03-05 Tor Lillqvist <tml@iki.fi>
787 * gdk_pixbuf.def: Add missing entries. Thanks to J. Ali Harlow.
789 Fri Mar 5 22:22:25 2004 Matthias Clasen <maclas@gmx.de>
791 * io-bmp.c (OneLine32): Don't try to load an alpha channel
792 from the BMP, since there is no evidence that even 32bit
793 BMPs have an alpha channel. (#135502)
795 Mon Mar 1 19:47:48 2004 Owen Taylor <otaylor@redhat.com>
797 * === Released 2.3.5 ====
799 2004-02-28 Hans Breuer <hans@breuer.org>
801 * io-tiff.c : include <io.h> for lseek()
802 * io-xbm.c : use HAVE_UNISTD_H
804 Tue Feb 24 14:45:03 2004 Owen Taylor <otaylor@redhat.com>
806 * === Released 2.3.3 ===
808 Sun Feb 22 01:09:55 2004 Matthias Clasen <maclas@gmx.de>
810 * io-bmp.c (gdk_pixbuf__bmp_image_begin_load): Remove debugging
813 Fri Feb 20 22:25:32 2004 Matthias Clasen <maclas@gmx.de>
815 * io-bmp.c (DecodeHeader): Store and sanity-check the clrUsed field
816 from the header for use in DecodeColormap.
817 * io-bmp.c (DecodeColormap): Don't read more colormap entries than
818 the header says are there. (#134235, Kazuho Okui)
820 Sun Feb 8 01:07:20 2004 Manish Singh <yosh@gimp.org>
822 * gdk-pixbuf-io.c: removed unnecessary G_OBJECT() cast checks.
824 * io-jpeg.c: make the return type for to_callback_empty_output_buffer
825 "boolean", which should be defined by the jpeg headers. The right
826 return type for this function depends on how the jpeg library
827 was built (one wonders what happens if different compilers are used).
829 2004-01-28 Hans Breuer <hans@breuer.org>
831 * gdk_pixbuf.def : updated externals
833 Sat Jan 17 23:02:55 2004 Matthias Clasen <maclas@gmx.de>
835 The second part of the fix for #114351 (see also
838 * gdk-pixbuf-i18n.h (P_): Use translation domain gtk20-properties.
840 Sat Jan 17 00:01:51 2004 Matthias Clasen <maclas@gmx.de>
842 The first part of the fix for #114351 (see also
845 * gdk-pixbuf-i18n.h: Define P_() for property blurbs and nicks.
847 * gdk-pixbuf.c: Mark property blurbs and nicks with P_().
849 Thu Jan 8 22:01:14 2004 Matthias Clasen <maclas@gmx.de>
851 * queryloaders.c (loader_sanity_check): Don't use bitwise operators
852 on booleans. (#130923, reported by Telsa Gwynne, fix by Dave Jones)
854 2004-01-06 Federico Mena Quintero <federico@ximian.com>
856 * gdk-pixbuf-io.c (gdk_pixbuf_save): Escape an ampersand in the
857 documentation comment, and hack around an empty line in the code
858 example so that gtk-doc won't put a <para> due to it.
860 * gdk-pixbuf.c (gdk_pixbuf_get_pixels): Link to the documentation
861 section on image data.
863 2004-01-06 Federico Mena Quintero <federico@ximian.com>
865 * gdk-pixdata.c (gdk_pixbuf_new_from_inline): Fix example in
866 documentation comment. Fixes #130701.
868 Wed Jan 7 02:41:14 2004 Matthias Clasen <maclas@gmx.de>
870 * gdk-pixbuf-io.c (gdk_pixbuf_save_to_bufferv):
871 * gdk-pixbuf-io.c (gdk_pixbuf_save_to_buffer):
872 * gdk-pixbuf-io.c (gdk_pixbuf_save_to_callbackv):
873 * gdk-pixbuf-io.c (gdk_pixbuf_save_to_callback): New public API
874 to save pixbufs to non-file locations. (#82203, Tim Evans)
877 * gdk-pixbuf.def: Declare the new public API.
879 * gdk-pixbuf-io.h: Add save_to_callback to the module interface.
882 * io-png.c: Implement save_to_callback.
884 * gdk-pixbuf-io.c (gdk_pixbuf_savev):
885 * gdk-pixbuf-io.c (gdk_pixbuf_save): Update documentation.
887 * gdk-pixbuf-io.c (gdk_pixbuf_real_save): Support saving via
888 image_module->save_to_callback.
890 * gdk-pixbuf-io.c (gdk_pixbuf_real_save_to_callback): New generic
891 save_to_callback function which falls back to image_module->save
894 Wed Jan 7 01:17:36 2004 Matthias Clasen <maclas@gmx.de>
896 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_size_func):
897 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_set_size):
898 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_init): Make it possible
899 to call gdk_pixbuf_loader_set_size (loader, 0, 0) by changing
900 the initial values of priv->width/height to -1.
902 * io-tiff.c (tiff_image_parse):
903 * io-ras.c (RAS2State):
904 * io-pnm.c (gdk_pixbuf__pnm_image_load_increment):
905 * io-pcx.c (gdk_pixbuf__pcx_load_increment):
906 * io-jpeg.c (gdk_pixbuf__jpeg_image_load_increment):
907 * io-png.c (png_info_callback):
908 * io-ico.c (DecodeHeader):
909 * io-bmp.c (DecodeHeader): Call size_func once the size is known,
910 even if the module can't make use of the scaling information. If
911 size_func returns 0, don't allocate a pixbuf and return, if
912 necessary with an error.
915 * gdk-pixbuf-io.c (gdk_pixbuf_get_file_info): A new function
916 to determine the type and size of an image file without loading
917 it completely. (#53725)
919 Sun Jan 4 00:44:57 2004 Matthias Clasen <maclas@gmx.de>
921 * gdk-pixbuf.c (gdk_pixbuf_class_init): Turn the pixbuf
922 attributes into (construct-only, but always readable)
923 properties. (#130196)
925 * gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Set properties
928 Mon Dec 22 01:35:36 2003 Matthias Clasen <maclas@gmx.de>
930 * Makefile.am (gdk-pixbuf.loaders): Fix building with
931 --disable-modules --with-included-loaders, create an
932 empty gdk-pixbuf.loaders file. (#124496, Arno Charlet, fix
933 proposed by Owen Taylor)
935 Thu Dec 11 01:57:05 2003 Matthias Clasen <maclas@gmx.de>
937 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): Move
938 the documentation for signals inline, to get proper parameter
939 documentation. (#128977)
941 Sat Nov 15 00:26:19 2003 Matthias Clasen <maclas@gmx.de>
943 * queryloaders.c (loader_sanity_check): Check that the mask
944 is NULL or a string of the same length consisting entirely of
945 ' ', '!', 'x', 'z', 'n'.
947 Mon Nov 10 00:17:52 2003 Matthias Clasen <maclas@gmx.de>
949 * Makefile.am (install-data-local): Typo fix in warning.
951 Sun Nov 9 23:07:05 2003 Matthias Clasen <maclas@gmx.de>
953 * gdk-pixbuf-io.c (_gdk_pixbuf_generic_image_load): If neither
954 load nor begin_load are available fall back to load_animation
955 and use gdk_pixbuf_animation_get_static_image() to obtain a
956 pixbuf. Inefficient, but at least doesn't crash.
958 Sun Nov 9 21:56:20 2003 Matthias Clasen <maclas@gmx.de>
960 * queryloaders.c (write_loader_info): New function to write
961 out the information for a single loader, factored out of
963 (loader_sanity_check): New function to perform
964 sanity checks on a loader.
965 (query_module): Use the new functions.
967 Thu Nov 6 00:27:27 2003 Matthias Clasen <maclas@gmx.de>
969 * io-pcx.c (gdk_pixbuf__pcx_load_increment): Fold two similar
970 strings into on. (#126204, Danilo Segan)
972 2003-09-19 Matthias Clasen <maclas@gmx.de>
974 * io-tga.c (try_preload): Remove a pointless check.
975 (#122710, Kjartan Maraas)
977 Mon Aug 18 10:25:29 2003 Owen Taylor <otaylor@redhat.com>
979 * gdk-pixdata.c (gdk_pixdata_to_csource): Add the correct
980 alignment magic for Sun compiler and for GCC to get
981 the strings aligned. (Patch from Brian Cameron, #117217)
983 2003-08-14 Matthias Clasen <maclas@gmx.de>
985 * gdk-pixdata.c (gdk_pixdata_to_csource): Improve doc comment
986 wording. (#119754, Doug Quale)
988 2003-08-03 Matthias Clasen <maclas@gmx.de>
990 * gdk-pixbuf.c (gdk_pixbuf_get_rowstride):
991 * gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Clarify misleading
992 explanation of rowstride. (#119000)
994 2003-07-24 Matthias Clasen <maclas@gmx.de>
996 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file_at_size): Preserve the
997 aspect ratio. (#118145, Owen Taylor)
999 2003-07-23 Matthias Clasen <maclas@gmx.de>
1001 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file_at_size): Close loader
1002 before unref'ing it. (#118146, Owen Taylor)
1004 2003-03-01 Hans Breuer <hans@breuer.org>
1006 * makefile.msc : updated
1008 * gdk_pixbuf.def : export a bunch of new functions
1010 2003-07-18 Matthias Clasen <maclas@gmx.de>
1012 * pixops/pixops.c (correct_total): Split correction into multiple
1013 pieces if no single weight is large enough to apply the unsplit
1014 correction. (#117431, problem reported by Tomas Ögren)
1016 2003-07-13 Matthias Clasen <maclas@gmx.de>
1019 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file_at_size): New function
1020 to load an image from a file at a specified size. (#105326, Dom
1023 2003-07-11 Matthias Clasen <maclas@gmx.de>
1025 * queryloaders.c (query_module): Handle absolute filenames
1026 properly. (#117170, Jens Elkner)
1028 * gdk-pixbuf-io.c: Mention that NULL-terminated arrays returned by
1029 gdk_pixbuf_format_get_mime_types() and
1030 gdk_pixbuf_format_get_extensions() must be freed with g_strfreev().
1032 2003-07-04 Matthias Clasen <maclas@gmx.de>
1034 * gdk-pixbuf-io.c: Document ICO save parameters.
1036 * io-ico.c: Support saving of ICOs and CURs. Currently, only
1037 single-image ICOs are produced, but the code for multi-image ICOs
1038 is already in place. The saver understands the options "depth"
1039 (can be "32", "24" or "16") and "x_hot"/"y_hot" for hotspot
1040 coordinates of CURs.
1042 2003-06-28 Matthias Clasen <maclas@gmx.de>
1044 * io-ico.c (DecodeHeader): Stop discriminating against 32bpp ICOs
1045 a): Use the byte size of the image as a heuristic when selecting
1046 the bitmap to load - this lets us select 32bpp bitmaps which come
1047 after a 8bpp bitmap.
1048 (OneLineTransp): Stop discriminating against 32bpp ICOs b): Don't
1049 overwrite the alpha channel of 32bpp ICOs.
1050 (gdk_pixbuf__ico_image_load_increment): Stop decoding the header
1053 Fri Jun 27 03:56:59 2003 Soeren Sandmann <sandmann@daimi.au.dk>
1055 * io-gif-animation.c (gdk_pixbuf_gif_anim_frame_composite): Make
1056 it compile with C89 compilers.
1058 2003-06-23 Matthias Clasen <maclas@gmx.de>
1060 * io-gif.c (gif_get_frame_info): Remove the pointless refusal to
1061 load images with dubious disposal mode on the first frame. Just
1062 ignore it, as everybody else does.
1064 2003-06-22 Matthias Clasen <maclas@gmx.de>
1066 * gdk-pixbuf-loader.[hc] (gdk_pixbuf_loader_new_with_mime_type):
1067 New function to obtain a loader for a specific mime type.
1068 (#105324, Dom Lachowicz)
1070 * io-gif.c (gif_get_extension): Reset block_count to 0 for all
1071 application extensions, otherwise the data blocks of unknown
1072 extensions are not propertly skipped.
1074 Second half of the fix for #106962, handle frames extending beyond
1077 * io-gif.c (clip_frame): New helper function to clip a rectangle
1078 to the logical screen size of the gif.
1079 (maybe_update): New helper function to call update_func only if
1080 the rectangle is not completely off-bounds.
1081 (gif_get_lzw): Read frames extending outside the logical screen
1082 size, but be careful clip to the logical screen size
1083 when operating on the composite pixbuf and when calling update_func.
1084 (gif_init): Set the animation size to the logical screen size.
1085 (gif_get_frame_info): Don't refuse to load images with frames
1086 extending beyond the logical screen size.
1088 * io-gif-animation.c (gdk_pixbuf_gif_anim_frame_composite): Be
1089 careful to clip all rectangles to the logical screen size, also
1090 handle the fact that frames may be completely off-bounds.
1092 2003-06-21 Matthias Clasen <maclas@gmx.de>
1094 * io-gif.c: Merge from 2.2: Fix update_func() arguments and accept
1095 empty frames. (#106962)
1097 2003-06-17 Matthias Clasen <maclas@gmx.de>
1099 * Makefile.am (man_MANS): Removed, man pages are now installed
1100 from docs/reference/gdk-pixbuf.
1102 2003-06-03 Matthias Clasen <maclas@gmx.de>
1104 * gdk-pixdata.c (gdk_pixbuf_new_from_inline): Document
1105 data_length == -1, add an example. (#97290)
1107 2003-06-01 Matthias Clasen <maclas@gmx.de>
1109 * gdk-pixdata.h (struct _GdkPixdata): Fix misleading documentation
1110 of rowstride. (#113924, Noah Levitt)
1112 2003-05-27 Matthias Clasen <maclas@gmx.de>
1114 * io-wbmp.c: Remove dubious bitfields of
1115 unspecified signedness. (#112919, Morten Welinder)gdk-p
1117 * gdk-pixdata.c (gdk_pixdata_to_csource): Replace all occurances
1118 of g_string_new ("") by g_string_new (NULL). (#106975, Morten
1121 2003-05-21 Matthias Clasen <maclas@gmx.de>
1123 * pixbufloader_pcx.def:
1124 * io-pcx.c: A loader for PCX files. (#113035, Josh Beam)
1127 * Makefile.am: Add PCX loader.
1129 2003-05-19 Matthias Clasen <maclas@gmx.de>
1131 Improve progressive loading from slow sources: (#107368)
1133 * io-gif-animation.c (gdk_pixbuf_gif_anim_get_iter): Initialize
1134 first_loop_slowness.
1135 (gdk_pixbuf_gif_anim_iter_advance): Don't wrap during loading if
1136 the datasource falls behind the speed of the display.
1138 * io-gif-animation.h: Add a loading flag to GdkPixbufGifAnim and
1139 first_loop_slowness to GdkPixbufGifAnimIter.
1141 Wed May 14 18:24:50 2003 Owen Taylor <otaylor@redhat.com>
1143 * gdk-pixdata.c (gdk_pixdata_deserialize): Add a
1144 (gint32 *) => (guint32 *) cast. (#108615, Rick Jones)
1146 2003-04-24 Matthias Clasen <maclas@gmx.de>
1148 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_write):
1149 (gdk_pixbuf_loader_new_with_type):
1150 (gdk_pixbuf_loader_close):
1151 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file):
1154 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file):
1155 Add sanity checks for GError handling. (#108345)
1157 Tue Apr 1 15:33:51 2003 Owen Taylor <otaylor@redhat.com>
1159 * pixops/pixops.c (make_weights): Exploit the fact that all
1160 our filters are separable to simplify the calculation of
1161 the weight tables. (Based on a patch from Brian Cameron.)
1163 * pixops/Makefile.am pixbuf-transform-math.ltx:
1164 Add a short article describing how the math in pixops.c
1167 2003-03-21 Matthias Clasen <maclas@gmx.de>
1169 * gdk-pixbuf-animation.c (gdk_pixbuf_non_anim_get_type): Add
1170 missing static. (#108614)
1172 * io-jpeg.c (gdk_pixbuf__jpeg_image_begin_load):
1173 * io-ico.c (gdk_pixbuf__ico_image_stop_load): Add missing static
1174 qualifiers apparently causing problems on some platforms. (#108617)
1176 2003-03-11 Matthias Clasen <maclas@gmx.de>
1178 * io-ico.c (DecodeHeader): Calculate LineWidth for 16bpp from
1179 width, like for the other depths. (noticed by Marijn Ros)
1181 2003-03-08 Matthias Clasen <maclas@gmx.de>
1183 Bug #107664 continued:
1185 * io-xpm.c (find_color): Fix 0/FALSE confusion
1186 * gdk-pixbuf.c (gdk_pixbuf_get_has_alpha): Fix -1/gboolean
1189 2003-03-06 Matthias Clasen <maclas@gmx.de>
1191 * io-gif.c (gif_read): Fix 0/FALSE confusion (#107664, Morten
1194 2003-02-20 Matthias Clasen <maclas@gmx.de>
1196 * io-gif-animation.c (gdk_pixbuf_gif_anim_frame_composite):
1197 Always clear the initial frame and "disposed" areas with
1198 transparent pixels, no matter whether the frame has transparency
1201 2003-02-18 Matthias Clasen <maclas@gmx.de>
1203 * io-tga.c (pixbuf_flip_row):
1204 (pixbuf_flip_vertically): Auxiliary functions used to implement
1205 support for arbitrary origins.
1206 (parse_data_for_row_pseudocolor):
1207 (parse_data_for_row_truecolor):
1208 (parse_data_for_row_grayscale):
1209 (parse_data_for_row):
1210 (fill_in_context): Remove the check for upper-left origin.
1211 (parse_rle_data): Support arbitrary origins. (#105912)
1213 * io-tga.c (fread_check):
1215 (get_header_from_file):
1216 (get_colormap_from_file):
1217 (get_image_pseudocolor):
1218 (swap_channels_pixbuf):
1219 (get_image_truecolor):
1220 (get_image_grayscale):
1221 (gdk_pixbuf__tga_load): Remove the non-incremental load
1222 implementation, since we have generic_image_load () now.
1224 (gdk_pixbuf__tga_stop_load): Fix a potential crash discovered by
1227 2003-02-14 Matthias Clasen <maclas@gmx.de>
1229 * io-tga.c (try_preload):
1230 (gdk_pixbuf__tga_load): Actually reject images with origin
1231 not in the upper-left corner. (#105912)
1233 2003-02-06 Matthias Clasen <maclas@gmx.de>
1235 * queryloaders.c (query_module): Better error message if
1236 module_open() fails. (#105349, Tim Mooney)
1238 Mon Jan 27 17:10:30 2003 Owen Taylor <otaylor@redhat.com>
1240 * Makefile.am (gdk-pixbuf.loaders): Rewrite to run
1241 on the .la files rather than looking for .so files.
1242 (#102142, Martin Gansser)
1244 * Makefile.am: Don't build gdk-pixbuf.loaders when
1247 2003-01-05 Tor Lillqvist <tml@iki.fi>
1249 * Makefile.am (gdk-pixbuf.loaders): Use @SOEXT@ in the find command.
1251 * gdk_pixbuf.def: Add gdk_pixbuf_loader_set_size.
1253 2003-01-03 Matthias Clasen <maclas@gmx.de>
1255 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): Don't crash if
1256 gdk-pixbuf.loaders file is missing. (#102222)
1258 2002-12-08 Matthias Clasen <maclas@gmx.de>
1260 * gdk-pixbuf-animation.h:
1261 * gdk-pixbuf-io.h: Add /*< public|private >*/ markers.
1263 Sat Dec 7 10:14:05 2002 Owen Taylor <otaylor@redhat.com>
1265 * Makefile.am (gdk-pixbuf.loaders): Make gdk-pixbuf.loaders
1266 also depend gdk-pixbuf-query-loaders. (#97096, Daniel Elstner)
1268 2002-12-05 Matthias Clasen <maclas@gmx.de>
1270 * io-ico.c: Remove leftover debug output. (#100357, Owen Taylor)
1272 2002-12-04 Bastien Nocera <hadess@hadess.net>
1274 * io-tiff.c: (tiff_image_parse): use G_BIG_ENDIAN instead of
1275 WORDS_BIGENDIAN which isn't set by configure.in
1277 2002-11-29 Matthias Clasen <maclas@gmx.de>
1279 * gdk-pixbuf-animation.c:
1280 * gdk-pixbuf.c: Add deprecation docs.
1282 2002-11-28 Matthias Clasen <maclas@gmx.de>
1284 * gdk-pixbuf/gdk-pixbuf-io.c:
1285 * gdk-pixbuf/gdk-pixbuf-loader.c:
1286 * gdk-pixbuf/gdk-pixbuf.c: Document 2.2 API additions. I'm not
1287 going to list all individual functions here; if you want to see
1288 the list, grep for "Since: 2.2".
1290 Fri Nov 8 19:06:07 2002 Owen Taylor <otaylor@redhat.com>
1292 * Makefile.am (gdk-pixbuf.loaders): Make gdk-pixbuf.loaders
1293 file depend on the loaders (#97096, Jeff Waugh)
1295 Wed Nov 6 15:19:53 2002 Owen Taylor <otaylor@redhat.com>
1297 * io-gif.c (CHECK_LZW_SP): Fix trailing semicolon on macro,
1300 2002-11-05 Matthias Clasen <maclas@gmx.de>
1302 * gdk-pixbuf-loader.c: Reindent to follow the gdk-pixbuf indentation.
1304 Tue Nov 5 14:16:17 2002 Owen Taylor <otaylor@redhat.com>
1306 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Fix
1307 leaked pixbuf reference (#96823, Morten Welinder)
1309 2002-10-23 Matthias Clasen <maclas@gmx.de>
1311 * io-gif.c (lzw_read_byte): Check for stack overflow throughout.
1312 (#91808, Elliot Lee)
1314 2002-10-21 Matthias Clasen <maclas@gmx.de>
1316 Support the Netscape application extension for gif animations
1319 * io-gif-animation.h:
1320 * io-gif-animation.c (gdk_pixbuf_gif_anim_iter_advance):
1321 Add loop count to GdkPixbufGifAnim and use it in the advance
1322 method of GdkPixbufGifAnimIter.
1324 * io-gif.c (gif_get_extension): Parse Netscape application
1325 extension block and set the animation loop count.
1327 2002-10-11 Matthias Clasen <maclas@gmx.de>
1329 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_format): Remove
1332 * gdk-pixbuf-io.h: Remove unused typedef
1333 GdkPixbufModuleGetSignatureFunc.
1335 2002-10-04 jacob berkman <jacob@ximian.com>
1337 * queryloaders.c (query_module): make legal C
1339 2002-10-04 Matthias Clasen <maclas@gmx.de>
1341 * Makefile.am gdk-pixbuf-animation.c gdk-pixbuf-data.c
1342 gdk-pixbuf-io.c gdk-pixbuf-io.h gdk-pixbuf-loader.c
1343 gdk-pixbuf-loader.h gdk-pixbuf-private.h gdk-pixbuf.h
1344 gdk-pixdata.c io-ani-animation.h io-ani.c io-bmp.c
1345 io-gif-animation.c io-gif-animation.h io-gif.c io-ico.c
1346 io-jpeg.c io-png.c io-pnm.c io-ras.c io-tga.c io-tiff.c
1347 io-wbmp.c io-xbm.c io-xpm.c pixbufloader_ani.def
1348 pixbufloader_bmp.def pixbufloader_gif.def pixbufloader_ico.def
1349 pixbufloader_jpeg.def pixbufloader_png.def
1350 pixbufloader_pnm.def pixbufloader_ras.def pixbufloader_tga.def
1351 pixbufloader_tiff.def pixbufloader_wbmp.def
1352 pixbufloader_xbm.def pixbufloader_xpm.def test-gdk-pixbuf.c
1353 gdk-pixbuf-animation.h queryloaders.c: Support for separately
1354 installed loaders. (#77486)
1356 Thu Oct 3 18:25:57 2002 Owen Taylor <otaylor@redhat.com>
1358 * io-jpeg.c (gdk_pixbuf__jpeg_image_save):
1359 Fix memory leak. (#94399)
1361 Tue Oct 1 17:35:43 2002 Owen Taylor <otaylor@redhat.com>
1363 * gdkpixdata.c: Patch from Andy Wingo to always
1364 escape ? to avoid accidentally generating trigraphs
1365 in the output (#94631)
1367 2002-09-28 Tor Lillqvist <tml@iki.fi>
1369 * pixops/*.S: Don't use .type on Cygwin, either (#91597, Masahiro
1372 2002-09-27 Federico Mena Quintero <federico@ximian.com>
1374 * io-ico.c (gdk_pixbuf__ico_image_begin_load): Free the context if
1375 we cannot allocate the HeaderBuf.
1377 2002-09-27 Federico Mena Quintero <federico@ximian.com>
1379 * io-bmp.c (OneLine): Fix the update region notification to handle
1380 top-to-bottom and bottom-to-top BMPs correctly.
1382 2002-09-19 Matthias Clasen <maclas@gmx.de>
1384 * Revert the previous change; the symbols need to be exported
1385 to be usable from dlopened modules.
1387 2002-09-18 Matthias Clasen <maclas@gmx.de>
1389 * io-xpm.c, io-xbm.c, io-ico.c, io-ani.c, io-png.c,
1390 gdk-pixbuf.c, gdk-pixbuf-animation.c, gdk-pixbuf-loader.c,
1391 gdk-pixbuf-private.h: _-prefix gdk_pixbuf_non_anim_new and
1392 gdk_pixbuf_set_option. Adjust all callers.
1394 2002-09-14 Hans Breuer <hans@breuer.org>
1396 * pixops/Makefile.am : added makefile.msc to EXTRA_DIST
1398 2002-09-12 Matthias Clasen <maclas@gmx.de>
1400 * io-gif-animation.h:
1401 * gdk-pixbuf.h: Move GdkPixbufFrame from the public header to
1402 the gif-animation-specific private header. (#91929)
1404 2002-09-12 Federico Mena Quintero <federico@ximian.com>
1406 * io-jpeg.c (gdk_pixbuf__jpeg_image_load): Unref the pixbuf if we
1407 hit an unsupported colorspace.
1409 2002-09-06 Matthias Clasen <maclas@gmx.de>
1411 * io-ani.c, io-ani-animation.h, io-ani-animation.c,
1412 pixbufloader_ani.def, Makefile.am, gdk-pixbuf-io.c: New loader,
1413 for .ANI animations.
1415 * io-xpm.c (pixbuf_create_from_xpm):
1416 * io-xbm.c (gdk_pixbuf__xbm_image_load_real):
1417 * io-ico.c (DecodeHeader): Attach hotspot coordinates to the
1418 pixbuf as options "x_hot" and "y_hot".
1420 2002-09-04 Matthias Clasen <maclas@gmx.de>
1422 * io-tga.c (io_buffer_append):
1423 * io-ico.c (DecodeHeader):
1424 * io-bmp.c (grow_buffer): Don't leak memory if g_try_realloc fails.
1426 * gdk-pixbuf-io.c (pixbuf_check_ico): Fix loading of .CUR files.
1429 2002-08-25 Tor Lillqvist <tml@iki.fi>
1431 * Makefile.am (libgdk_pixbuf_2_0_la_DEPENDENCIES): Add
1432 gdk_pixbuf_win32res_lo. (#87101, J. Ali Harlow)
1434 2002-08-22 Matthias Clasen <maclas@gmx.de>
1437 gdk-pixbuf-io.c (_gdk_pixbuf_generic_image_load): No longer
1438 static, thus _gdk_pixbuf-prefixed.
1440 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file):
1441 Keep this logic in sync with gdk_pixbuf_new_from_file(). (Based
1442 on a patch by Anders Carlsson)
1444 * io-png.c (gdk_pixbuf__png_image_save): Plug a memory
1445 leak. (#91422, Sven Neumann)
1447 2002-07-31 Sven Neumann <sven@gimp.org>
1449 * gdk-pixdata.c (gdk_pixdata_to_csource): free the result of
1450 gdk_pixdata_serialize() (bug #89411).
1452 Mon Jul 29 23:06:10 2002 Owen Taylor <otaylor@redhat.com>
1454 * gdk-pixbuf-scale.c: Fix some warnings by adding
1455 casts to PixopsInterpType. (#85839, David L. Cooper, II.)
1457 2002-07-16 Matthias Clasen <maclas@gmx.de>
1459 * io-ras.c (DoCompressed): Avoid unnecessary casting.
1461 2002-07-07 Matthias Clasen <maclas@gmx.de>
1463 * gdk-pixbuf-io.c (generic_image_load): New function for loading
1464 an image from a file either via module->load or incrementally.
1465 (prepared_notify): ModulePreparedNotifyFunc for generic_image_load.
1466 (gdk_pixbuf_new_from_file): Use generic_image_load.
1467 * io-bmp.c, io-ico.c, io-ras.c, io-wbmp.c: Remove trivial
1468 implementations of module->load. (#71266)
1470 * io-ico.c (DecodeHeader): Correct computation of image height.
1471 (OneLine): Correct update notification.
1473 Load-at-size functionality (#53726):
1475 * gdk-pixbuf-io.h (ModuleSizeFunc): New.
1476 (_GdkPixbufModule): Prepend a ModuleSizeFunc to the
1477 begin_load arguments. Adjust all modules.
1478 * gdk-pixbuf-loader.c (struct GdkPixbufLoaderPrivate): Add
1479 fields width, height, size_fixed, need_scale.
1480 (gdk_pixbuf_loader_class_init): Add size_prepared signal.
1481 (gdk_pixbuf_loader_set_size): New function.
1482 (gdk_pixbuf_loader_size_func): ModuleSizeFunc which gets
1483 passed to the module, emits size_prepared.
1484 (gdk_pixbuf_loader_prepare): Call gdk_pixbuf_loader_size_func
1485 if necessary, only emit area_prepared if no separate scaling
1487 (gdk_pixbuf_loader_update): Only emit area_updated if no
1488 separate scaling is required.
1489 (gdk_pixbuf_loader_load_module): Add size_func as first argument.
1490 (gdk_pixbuf_loader_close): If necessary scale the image
1491 to the desired size and emit area_prepared and area_updated.
1492 * gdk-pixbuf-loader.h (struct _GdkPixbufLoaderClass): Add
1493 size_prepared signal.
1494 (gdk_pixbuf_loader_set_size) New API.
1495 * gdk-pixbuf-marshal.list: Add VOID:INT,INT.
1496 * io-jpeg.c: User cinfo->output_width/height instead of
1497 cinfo->image_width/height throughout when adressing the pixbuf.
1498 (gdk_pixbuf__jpeg_image_load_increment): Call size_func, and
1499 find the nearest possible output size which libjpeg can produce
1500 that is still larger than the desired size.
1502 2002-07-06 Matthias Clasen <maclas@gmx.de>
1504 * io-tiff.c (tiff_set_error): Handle global_error == NULL
1506 (tiff_image_parse): Don't trust TIFFRGBAImageBegin to set
1507 the "put" routine. (Fixes #87384)
1508 (gdk_pixbuf__tiff_image_stop_load): Don't call TIFFClose too
1511 2002-07-02 Matthias Clasen <maclas@gmx.de>
1513 Miscellaneous bmp loader fixes (#85448, #86286, #86287):
1515 * io-bmp.c (grow_buffer): New function to avoid crashes
1516 on unchecked reallocs.
1517 (DecodeHeader, DecodeColormap, decode_bitmasks,
1518 DoCompressed): Use grow_buffer instead of g_realloc
1519 throughout. Change signatures where necessary to pass the
1521 (OneLine16): Fix loading of 16bpp BI_RGB bmps.
1522 (DoCompressed): Rewritten to properly support BI_RLE4 and
1525 Support for compressed ras images (#84994):
1527 * io-ras.c (RAS2State): Error on unsupported ras variations.
1528 (OneLine8): Fix colormap indexing.
1529 (OneLine): Call updated_func with proper region.
1530 (DoCompressed): New function, handles compressed ras data.
1531 (gdk_pixbuf__ras_image_load_increment): Handle compressed ras
1534 Better colorspace support for the jpeg loader (#61211):
1536 * io-jpeg.c (convert_cmyk_to_rgb): New function.
1537 (gdk_pixbuf__jpeg_image_load,
1538 gdk_pixbuf__jpeg_image_load_increment): Allocate a pixbuf with
1539 alpha for 4-channel jpegs and call convert_cmyk_to_rgb for these.
1541 All of this needs to be merged to GNOME 1.4 gdk-pixbuf.
1543 2002-06-28 Sven Neumann <sven@gimp.org>
1545 * gdk-pixbuf-csource.c (print_blurb): converted a Tab to spaces.
1547 Thu Jun 13 18:11:11 2002 Owen Taylor <otaylor@redhat.com>
1549 * pixops/pixops.c: Fix problem where when no alpha was
1550 involved, we scaled rather than composited, but then
1551 went ahead and composited anyways. (#76958, Patch
1552 from Matthias Clasen). Needs to be merged to GNOME
1555 2002-06-13 Matthias Clasen <maclas@gmx.de>
1557 * io-jpeg.c: Use libjpeg in buffered-image mode in order to
1558 incrementally display incrementally loaded progressive jpegs.
1560 2002-06-07 Federico Mena Quintero <federico@ximian.com>
1562 * io-bmp.c (lsb_32):
1563 (lsb_16): New functions to fetch 32 or 16-bit little-endian values
1564 starting at a specific memory location. We do this instead of
1565 GINT32_FROM_LE() as the latter is simply dereferences a cast,
1566 which doesn't work on platforms with alignment requirements.
1569 2002-06-01 Matthias Clasen <maclas@gmx.de>
1571 * gdk-pixbuf-io.c (pixbuf_check_xbm): Accept xbms starting
1572 with a C comment - those seem to be not uncommon, e.g. the Gimp
1573 produces them. (#82706)
1575 * io-xbm.c (read_bitmap_file_data): Don't leak memory on certain
1577 (gdk_pixbuf__xbm_image_load_real): Don't leak memory on valid inputs.
1579 2002-05-22 Tor Lillqvist <tml@iki.fi>
1581 * gdk-pixbuf-io.c (get_libdir): Use GTK_BINARY_VERSION (and not
1582 GTK_VERSION) in the path to the loaders on Win32, too.
1584 * Makefile.am: Pass GTK_BINARY_VERSION.
1586 2002-05-22 Federico Mena Quintero <federico@ximian.com>
1588 * io-xpm.c (pixbuf_create_from_xpm): Ahem, take the rowstride into
1589 account!!! Fixes #82515.
1591 [This bug is not present in the GNOME 1.4 branch as its XPM loader
1592 does not use gdk_pixbuf_new(); rather it malloc()s a buffer with
1593 no row padding and then uses gdk_pixbuf_new_from_data() on it.]
1595 [IMPORTANT: The comment above is to make my life easier when
1596 merging stuff across branches. If you make changes to gdk-pixbuf
1597 in either branch, please include a comment in the ChangeLog that
1598 indicates whether this should be merged into the other branch.
1601 2002-05-18 Matthias Clasen <maclas@gmx.de>
1603 * io-tiff.c (tiff_image_parse): fix packing order on bigendian
1606 Thu May 16 15:17:30 2002 Owen Taylor <otaylor@redhat.com>
1608 * pixops/pixops.c: Patch from Matthias Clasen to fix some typos
1611 Thu May 16 15:02:46 2002 Owen Taylor <otaylor@redhat.com>
1613 * gdk-pixdata.c (gdk_pixdata_to_csource): Fix 64-bit warning.
1616 2002-05-07 Michael Natterer <mitch@gimp.org>
1618 * gdk-pixbuf/Makefile.am: build the static pixbuf loaders
1619 conditionally like the dynamic ones so --without-lib<foo> is
1620 honored when building with --disable-modules. (#66867)
1622 Sun May 5 02:27:01 2002 Soeren Sandmann <sandmann@daimi.au.dk>
1624 * Makefile.am (noinst_PROGRAMS): remove test-loaders (moved to
1626 * test-loaders.c, test-images.h: remove
1628 2002-04-24 Matthias Clasen <maclas@gmx.de>
1630 * gdk-pixbuf-io.c (gdk_pixbuf_save): Remove the ISO8859-1
1631 restriction from the description of png tEXt parameters.
1633 * io-png.c (png_text_to_pixbuf_option):
1634 (gdk_pixbuf__png_image_save): If libpng supports it,
1635 store and retrieve non-ISO8859-1 text as UTF-8. (#76172)
1637 2002-04-11 Matthias Clasen <maclas@gmx.de>
1639 More fixes for #77807:
1641 * io-tga.c (get_contiguous_pixbuf): Helper function to create
1642 a pixbuf with a contiguous pixel array while being careful about
1645 * io-tga.c (fill_in_context, get_image_pseudocolor,
1646 get_image_truecolor, get_image_grayscale): Use
1647 get_contiguous_pixbuf instead of manually allocating image
1650 * io-xpm.c (pixbuf_create_from_xpm):
1651 * io-pnm.c (gdk_pixbuf__pnm_image_load):
1652 * io-jpeg.c (gdk_pixbuf__jpeg_image_load): Use gdk_pixbuf_new
1653 instead of manually allocating image storage.
1655 2002-04-09 Matthias Clasen <maclas@gmx.de>
1657 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_load_module): Use
1658 priv->image_module->module_name instead of image_type which may
1661 2002-04-06 Matthias Clasen <maclas@gmx.de>
1663 * io-png.c (gdk_pixbuf__png_image_load): Restructured to use
1664 gdk_pixbuf_new instead of manually allocating image storage. This
1665 gives us a good rowstride and overflow checks. (#77807)
1667 2002-04-05 Matthias Clasen <maclas@gmx.de>
1669 * io-tiff.c (tiff_image_parse): Avoid allocating an extra copy of
1670 the image by using a TIFFRGBAImage{Begin,Get,End} with suitable
1671 put functions instead of TIFFRGBAImage. And check image dimensions
1674 2002-04-03 Matthias Clasen <maclas@gmx.de>
1676 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_type): Fix a doc typo.
1678 2002-03-29 Matthias Clasen <maclas@gmx.de>
1680 * io-png.c (png_simple_error_callback): libpng error handlers must
1681 not return to their callers, thus longjmp out. This prevents
1682 annoying stderr output from the default error handler.
1684 2002-03-27 Matthias Clasen <maclas@gmx.de>
1686 * io-png.c (gdk_pixbuf__png_image_stop_load): Don't leak info_ptr.
1688 * io-png.c (gdk_pixbuf__png_image_load): Get rid of unused
1689 end_info. Also call png_read_end to check proper ending of the png
1690 file and catch text chunks after the image data.
1692 2002-03-27 Matthias Clasen <maclas@gmx.de>
1694 * io-png.c (gdk_pixbuf__png_image_load,
1695 gdk_pixbuf__png_image_begin_load): Make libpng use g_malloc
1696 instead of system malloc.
1698 2002-03-26 Matthias Clasen <maclas@gmx.de>
1700 * io-tiff.c (tiff_image_parse): Don't leak pixbuf on error.
1702 * io-gif.c (gdk_pixbuf__gif_image_load_increment): Don't leak
1703 context->buf on error.
1705 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Make sure to call
1706 stop_load even for short images to prevent memleaks.
1708 2002-03-25 Matthias Clasen <maclas@gmx.de>
1710 * io-png.c (setup_png_transformations): Changed signature to
1711 return success and set a GError parameter, adjusted all callers.
1712 Also work around a possible FPE in libpng and always check that
1713 the new info is sane.
1715 2002-03-23 Matthias Clasen <maclas@gmx.de>
1717 * io-wbmp.c (gdk_pixbuf__wbmp_image_load_increment):
1718 context->updated_func is NULL during a nonincremental load.
1719 (gdk_pixbuf__wbmp_image_load): Stop reading after the first error.
1721 2002-03-18 Matthias Clasen <maclas@gmx.de>
1723 * io-tga.c: Fix assumptions on rowstride by manually allocating a
1724 contiguous pixel buffer. Catch buffer overruns in RLE-modi.
1725 Support grayscale + alpha (which can be written, but not read (!)
1728 2002-03-15 Matthias Clasen <maclas@gmx.de>
1730 * io-gif.c (gif_get_frame_info): Catch invalid frame dimensions.
1732 2002-03-13 Matthias Clasen <maclas@gmx.de>
1734 * test-images.h: Add valid_ras_test and invalid_bmp_1.
1736 * test-loaders.c (main): Add random tests for ras and pnm and an
1737 invalid bmp which was a crasher until my 2002-03-12 commit.
1739 * io-pnm.c (gdk_pixbuf__pnm_image_load_increment): Don't unref the
1742 * io-ras.c: Handle some errors.
1744 2002-03-12 Sven Neumann <sven@gimp.org>
1746 * gdk-pixbuf.c (gdk_pixbuf_fill): use sequential writes instead of
1747 calling memcpy(). Simpler and potentially faster. (#70332)
1749 2002-03-12 Matthias Clasen <maclas@gmx.de>
1751 * io-bmp.c (DecodeHeader): Replace a g_assert_not_reached ()
1752 which could actually be reached by a proper error status return.
1754 2002-03-05 Matthias Clasen <maclas@gmx.de>
1756 * test-loaders.c, test-images.h: More random tests.
1758 * io-bmp.c (DecodeHeader): Fail gracefully on OOM here.
1760 Tue Mar 5 10:39:03 2002 Owen Taylor <otaylor@redhat.com>
1762 * Makefile.am (loaderdir): Put the modules into the
1763 GTK_BINARY_VERSION directory for consistency with
1764 immodules and theme engines.
1766 Sat Mar 2 22:11:10 2002 Owen Taylor <otaylor@redhat.com>
1768 * gdk-pixbuf-io.c (_gdk_pixbuf_load_module): If we
1769 can't load the module using the g_module_build_path()
1770 filename, try loading it as a .la file.
1772 * test-loaders.c: Look for modules in current directory
1773 rather than .libs, so we find the right .la files.
1775 * test-loaders.c: Back out some accidental commits.
1777 Sat Mar 2 21:28:03 2002 Owen Taylor <otaylor@redhat.com>
1779 * gdk-pixbuf.c (gdk_pixbuf_new): Bullet-proof against integer
1782 2002-03-03 Tor Lillqvist <tml@iki.fi>
1784 * gtk-pixbuf.rc.in: Remove.
1786 * gdk_pixbuf.rc.in: Name like this instead (wrong name used by
1789 * makefile.msc: Corresponding changes.
1791 * Makefile.am: Use gdk_pixbuf.rc on Win32. Distribute it.
1793 2002-02-28 Matthias Clasen <maclas@gmx.de>
1795 * pixops/pixops.c (tile_make_weights): Move the call to
1796 correct_total() to the right spot. (#72732)
1798 Wed Feb 27 18:33:04 2002 Owen Taylor <otaylor@redhat.com>
1800 * gdk-pixdata.c (gdk_pixdata_to_csource): Use {} not
1801 () to group around string assigned to char[]. (#72767,
1804 2002-02-21 Havoc Pennington <hp@pobox.com>
1806 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_load_module): remove
1807 C++-commented debug spew, reported by David L. Cooper
1809 2002-02-15 Matthias Clasen <maclas@gmx.de>
1811 * pixops/pixops.c (correct_total): New function to make sure
1812 that the weights sum up to the correct total without introducing
1814 (tile_make_weights, bilinear_make_fast_weights,
1815 bilinear_make_weights): Use correct_total.
1817 2002-02-10 Matthias Clasen <maclas@gmx.de>
1819 * test-images.h (tiff1_test_3), test-loaders.c (main): Add a
1820 (#ifdef 0'ed) test provoking a segfault in TIFFReadDirectory().
1822 * io-ico.c (DecodeHeader): Check that pixbuf could be allocated.
1824 * test-images.h (ico_test_2), test-loaders.c (main): Test the
1827 * io-wbmp.c (gdk_pixbuf__wbmp_image_load_increment): Don't write
1828 beyond the end of buffer if width % 8 != 0.
1830 * io-tga.c (try_preload): Enforce that ctx->hdr->type is one of
1831 the supported types, otherwise parse_data_for_row () will not make
1832 any progress, leading to an infinite loop.
1834 Mon Feb 11 14:31:53 2002 Owen Taylor <otaylor@redhat.com>
1836 * pixops/pixops.c (bilinear_make_weights): Fix handing of
1839 2002-02-10 Matthias Clasen <maclas@gmx.de>
1841 * test-loaders.c (main): Enable some tests which should work
1844 * io-wbmp.c (gdk_pixbuf__wbmp_image_load_increment): Detect
1845 invalid image dimensions and insufficient memory.
1847 * io-tga.c (try_preload): Detect invalid image dimensions.
1848 (gdk_pixbuf__tga_stop_load): Don't try to unref NULL pointers.
1850 * io-ico.c (DecodeHeader): Detect some invalid headers and
1853 Fri Feb 8 23:11:15 2002 Owen Taylor <otaylor@redhat.com>
1855 * pixops/pixops.c: Force all weight arrays to sum exactly
1856 to 65535. (Fixes #70971, reported by Federico Mena Quintero)
1858 * Makefile.am (libgdk_pixbuf_1_3_la_DEPENDENCIES): Add
1861 2002-02-08 Federico Mena Quintero <federico@ximian.com>
1863 * pixops/pixops.h: Fix comment; PixopsInterpType -> GdkInterpType.
1865 2002-02-08 Darin Adler <darin@bentspoon.com>
1867 * io-xbm.c: (next_int): Wean this from <ctype.h>.
1869 2002-02-01 Matthias Clasen <matthiasc@poet.de>
1871 * Makefile.am: Build the tga loader as a static library. (#70157)
1873 * io-ico.c: Merge 16- and 32-bit ico support from the stable
1876 * io-gif.c: Recomposite all images if the animation size changes
1877 while loading. (#70055)
1879 * gdk-pixbuf.c (gdk-pixbuf-fill): Make it work for subpixbufs.
1882 Sat Jan 19 20:49:20 2002 Manish Singh <yosh@gimp.org>
1884 * io-jpeg.c, io-png.c: Made sure all the error cases involving
1885 jpeg or png load/saves clean themselves up properly. Marked some
1886 variables needed for cleanup volatile so they aren't clobbered by
1889 Fri Jan 11 18:05:07 2002 Owen Taylor <otaylor@redhat.com>
1891 * pixops/pixops.c: Fix integer overflow for the values
1892 passed to the pixel functions. (#55148, fix from Michael Hore)
1894 Fri Jan 11 17:53:58 2002 Owen Taylor <otaylor@redhat.com>
1896 * pixops/pixops.c (pixops_scale_nearest): Remove meaningless
1899 * pixops/pixops.c (pixops_process): Comment the computation
1900 of run_end_index and fix some edge cases.
1902 * pixops/{scale_line_22_33_mmx.S, composite_line_22_4a4_mmx.S:
1903 composite_line_color_22_4a4_mmx.S}: Handle the case where
1904 dest <= dest_end properly. (#52001, fix from Michael Hore)
1906 Thu Jan 10 16:48:30 2002 Owen Taylor <otaylor@redhat.com>
1908 * pixops/pixops.c: Replace some hardcoded values with the
1909 SUBSAMPLE constant used elsewhere. (#51033)
1911 Wed Jan 9 11:29:44 2002 Owen Taylor <otaylor@redhat.com>
1913 * Makefile.am (s-enum-types-h): Include glib-object.h,
1914 Add G_BEGIN_DECLS/END_DECLS to gdk-pixbuf-enum-types.h. (#68325,
1917 * *.h: G_BEGIN_DECLS cleanups.
1919 Tue Jan 8 10:58:04 2002 Owen Taylor <otaylor@redhat.com>
1921 * gdk-pixbuf-util.c (gdk_pixbuf_saturate_and_pixelate):
1922 - Massive cleanup, make actually legible.
1923 - Fix some clamp-to-range bugs found by Jim Cape (#68231).
1924 - Add a g_return_if_fail() if src and dest alpha don't match.
1925 - Allow for src_rowstride != dest_rowstride.
1927 2002-01-04 Hans Breuer <hans@breuer.org>
1929 * gdk_pixbuf.def : don't export functions prefixed
1932 * makefile.msc : use -FImsvc_recommende_pragmas.h
1934 Thu Jan 3 19:31:58 2002 Owen Taylor <otaylor@redhat.com>
1936 * pixops/pixops.c (scale_line_22_33): Fix and uncomment
1939 * pixops/pixops.c (pixops_composite_nearest): Remove a
1942 * pixops/pixops.c (pixops_composite): Add some docs
1943 about the parameters.
1945 * pixops/README: Add notes about the correct algorithms
1946 for alpha compositing and how to implement them quickly.
1948 2001-12-29 Tor Lillqvist <tml@iki.fi>
1950 * Makefile.am (EXTRA_DIST): Add makefile.msc.
1952 Sat Dec 22 15:31:20 2001 Owen Taylor <otaylor@redhat.com>
1954 * gdk-pixdata.h: Fix trailing "," in enumeration.
1956 2001-12-17 Matthias Clasen <matthiasc@poet.de>
1958 * gdk-pixbuf.c, gdk-pixbuf-io.c, gdk-pixbuf-animation.c,
1959 gdk-pixbuf-data.c, gdk-pixbuf-loader.c, gdk-pixbuf-scale.c,
1960 gdk-pixbuf-util.c, gdk-pixdata.c: Markup fixes.
1962 2001-12-16 Havoc Pennington <hp@pobox.com>
1964 * gdk-pixbuf-scale.c: docs enhancements
1966 2001-12-14 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1968 * io-xpm.c: Use g_ascii_strcasecmp() instead of g_strcasecmp().
1970 2001-12-13 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1972 * gdk-pixbuf-animation.c, gdk-pixbuf-loader.c, gdk-pixpuf.c,
1973 io-gif-animation.c, io-gif.c, io-tiff.c, test-loaders.c: Remove
1974 assorted G_OBJECT casts where unnecessary.
1976 * gdk-pixbuf-loader.c: Call g_object_ref and g_object_unref
1977 instead of gdk_pixbuf_animation_ref and gdk_pixbuf_animation_unref
1980 * gdk-pixbuf-csource.c, io-bmp.c, io-gif-animation.c, io-ico.c,
1981 io-jpeg.c, io-png.c, io-pnm.c, io-ras.c, io-tga.c, io-wbmp.c,
1982 io-xbm.c, io-xpm.c, test-gdk-pixbuf.c: Dito for gdk_pixbuf_ref and
1985 * Makefile.am, pixops/Makefile.am: Compile everything with
1986 -DG_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED
1988 * gdk-pixdata.c: Use g_ascii_strup() instead of g_strup().
1990 * io-xpm.c: Use g_ascii_strcasecmp() instead of g_strcasecmp().
1992 2001-12-12 Matthias Clasen <matthiasc@poet.de>
1994 * gdk-pixbuf-io.c: Markup fixes.
1996 2001-12-12 Matthias Clasen <matthiasc@poet.de>
1998 * Makefile.am (INCLUDES): Define G_LOG_DOMAIN. (#66412)
2000 * gdk-pixbuf-loader.c, gdk-pixbuf-util.c: Markup fixes.
2002 2001-12-11 Michael Natterer <mitch@gimp.org>
2004 * io-png.c: gdk_pixbuf__png_image_save: removed wrong endian
2005 conversion stuff; don't copy RGB pixbufs' lines around before
2008 2001-12-05 Matthias Clasen <matthiasc@poet.de>
2010 * gdk-pixbuf.h (gdk_pixbuf_ref, gdk_pixbuf_unref,
2011 gdk_pixbuf_animation_ref, gdk_pixbuf_animation_unref):
2014 Tue Dec 4 11:45:45 2001 Owen Taylor <otaylor@redhat.com>
2016 * io-xpm.c (pixbuf_create_from_xpm): Fill in color
2017 fields to black for transparent colors since we'll
2018 later initialize pixels from them. (Fixes purify
2019 errors, #66093, HideToshi Tajima)
2021 2001-11-30 Tor Lillqvist <tml@iki.fi>
2023 * gdk_pixbuf.def: Add gdk_pixbuf_get_option.
2025 Fri Nov 30 15:55:34 2001 Owen Taylor <otaylor@redhat.com>
2027 * gdk-pixdata.c (gdk_pixdata_deserialize): Fix
2028 alignment problem in deserialization, (#65785,
2029 reported by Hidetoshi Tajima)
2031 2001-11-28 Manish Singh <yosh@gimp.org>
2033 * gdk-pixbuf/io-bmp.c (gdk_pixbuf__bmp_image_load_increment): Fill
2034 in missing error parameters to DecodeHeader and DecodeColormap.
2036 2001-11-21 Federico Mena Quintero <federico@ximian.com>
2038 Fix Ximian bug #12125; merged from gdk-pixbuf stable.
2040 * gdk-pixbuf/io-bmp.c (gdk_pixbuf__bmp_image_load_increment): Use
2041 a simple state machine instead of a scary if/else chain.
2042 (DecodeHeader): Set the reading state.
2043 (DecodeColormap): Set the reading state.
2044 (decode_bitmasks): New function, decodes the bitmasks for
2045 BI_BITFIELDS coding.
2046 (OneLine32): Handle BI_BITFIELDS coding.
2047 (OneLine16): Likewise.
2049 2001-11-18 Hans Breuer <hans@breuer.org>
2051 * io-xpm.c : use g_strcasecmp(), some poor platforms
2052 don't have strcasecmp()
2054 * makefile.msc : do INCLUDE_png etc. definition here to avoid
2055 my temporary 'gdk-pixbuf-io-include.h' hack
2057 Sun Nov 18 07:54:22 2001 Owen Taylor <otaylor@redhat.com>
2059 * gdk-pixbuf-loader.c: Remove include of gobject/signal.h.
2061 2001-11-03 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2063 * gdk-pixbuf-loader.c, gdk-pixbuf-scale.c: Documentation fixes.
2065 2001-10-29 Tor Lillqvist <tml@iki.fi>
2067 * Makefile.am: Use -no-undefined on Win32. Make
2068 libgdk_pixbuf_1_3_la_OBJECTS depend on
2069 gdk-pixbuf-marshal.c. Install import libraries.
2071 * gdk_pixbuf.def: Update.
2073 * gdk-pixbuf-io.c: (Win32) Use G_WIN32_DLLMAIN_FOR_DLL_NAME, saves
2074 the actual DLL name of libgdk_pixbuf.
2075 (get_libdir): Use it instead of guessing.
2077 * io-xbm.c (gdk_pixbuf__xbm_image_begin_load): Use
2078 g_file_open_tmp() insread of mkstemp().
2080 2001-10-18 Matthias Clasen <matthiasc@poet.de>
2082 * io-xbm.c (gdk_pixbuf__xbm_image_load_real): Don't dereference
2083 context when it may be NULL. (#62344)
2085 2001-10-16 Matthias Clasen <matthiasc@poet.de>
2087 * gdk-pixdata.c, gdk-pixdata.h: Documentation.
2089 * gdk-pixbuf-csource.1: Spelling fixes.
2091 Wed Oct 10 11:52:17 2001 Owen Taylor <otaylor@redhat.com>
2093 * gdk-pixdata.c gdk-pixbuf.h: Get rid of
2094 GDK_PIXBUF_ERROR_HEADER/PIXEL_CORRUPT and use CORRUPT_IMAGE.
2095 Get rid fo GD_PIXBUF_ERROR_UNKNOWN_FORMAT and use the
2096 existing UKNOWN_TYPE error. (#58308)
2098 * gdk-pixbuf.h, gdk-pixdata.c: Rename gdk_pixbuf_new_from_stream()
2099 back to gdk_pixbuf_new_from_inline(). Rework docs to try
2100 and be helpful for the common case. (#58308)
2102 2001-10-05 Sven Neumann <sven@gimp.org>
2104 * gdk-pixbuf/gdk-pixbuf-io.c
2105 * gdk-pixbuf/gdk-pixbuf-private.h
2106 * gdk-pixbuf/gdk-pixbuf.c
2107 * gdk-pixbuf/gdk-pixbuf.h
2108 * gdk-pixbuf/io-jpeg.c
2109 * gdk-pixbuf/io-png.c: changed GDK_PIXBUF_ERROR_BAD_OPTION_VALUE to
2110 GDK_PIXBUF_ERROR_BAD_OPTION to we can use it for bad keys too. Added
2111 new public API gdk_pixbuf_get_option() to retrieve key/value pairs
2112 set by an image loader. Added support for saving and reading PNG tEXt
2113 chunks in PNG images.
2115 Tue Oct 2 11:29:50 2001 Owen Taylor <otaylor@redhat.com>
2117 * gdk-pixdata.c (gdk_pixdata_to_csource): Fix indentation
2118 use a macro to make code a bit more readable.
2120 2001-10-02 Sven Neumann <sven@gimp.org>
2122 * gdk-pixdata.c: g_string_printfa => g_string_append_printf.
2124 Wed Sep 26 18:08:19 2001 Owen Taylor <otaylor@redhat.com>
2126 * Makefile.am (s-enum-types-h): Fix a typo in the include
2127 guards. (#61254, Skip Montaro)
2129 2001-09-21 Matthias Clasen <matthiasc@poet.de>
2131 * io-xpm.c (xpm_extract_color): Rewritten to handle
2132 xpm colormap entries more thoroughly. (#59939)
2134 2001-09-21 Hans Breuer <hans@breuer.org>
2136 * gdk-pixbuf.def : updated externals
2138 * makefile.msc : generate gdk-pixbuf-enum-types.[hc]
2140 Thu Sep 20 17:22:48 2001 Owen Taylor <otaylor@redhat.com>
2142 * io-tiff.c (gdk_pixbuf__tiff_image_load): On OSF, apparently fseek()
2143 works in some on-demand way, so the fseek
2144 gdk_pixbuf_new_from_file() doesn't work here since we are using
2145 the raw file descriptor. So, we call lseek() on the fileno(f)
2146 before using it. (#60840).
2148 2001-09-20 James Henstridge <james@daa.com.au>
2150 * Makefile.am (gdk-pixbuf-enum-types.c): same change as in pango,
2151 so that flags types are registered as flags rather than enums (not
2152 that there are any flags here at the moment).
2154 Wed Sep 19 00:28:24 2001 Owen Taylor <otaylor@redhat.com>
2156 * Makefile.am (gdk_pixbuf_headers): Don't include
2157 gkd-pixbuf-features.h here since is in builddir
2158 and confuses autogen rules.
2160 * Makefile.am: Don't += variables before they have values,
2161 automake-1.5 doesn't like it.
2163 * Makefile.am: Fix srcdir != builddir for gdk-pixbuf-enum-types.c.
2165 * Makefile.am: The whitespace strikes back.
2167 2001-09-17 Matt Wilson <msw@redhat.com>
2169 * Makefile.am (libpixbufloader_xbm_la_LDFLAGS): removed duplicate
2170 LDFLAGS definition, use the -avoid-version one.
2171 (libpixbufloader_tga_la_LDFLAGS): likewise
2173 Mon Sep 17 11:49:02 2001 Owen Taylor <otaylor@redhat.com>
2175 * pixops/*: Mirror GdkInterpType to PixopsInterpType
2176 to avoid including gdk-pixbuf headers.
2178 2001-09-16 James Henstridge <james@daa.com.au>
2180 * .cvsignore: add generated files to ignore list.
2182 * gdk-pixbuf.h: include gdk-pixbuf-enum-types.h
2184 * Makefile.am: add rules to build gdk-pixbuf-enum-types.[ch]
2186 Fri Sep 14 23:22:12 2001 Matthias Clasen <matthiasc@poet.de>
2188 * io-pnm.c (pnm_read_header): Use GDK_PIXBUF_ERROR_CORRUPT_IMAGE,
2189 not GDK_PIXBUF_ERROR_HEADER_CORRUPT. (#58308)
2191 Fri Sep 14 22:53:45 2001 Matthias Clasen <matthiasc@poet.de>
2193 * io-jpeg.c (gdk_pixbuf__jpeg_image_begin_load): Handle
2194 out-of-memory situation better.
2196 * io-pnm.c: Robustness fixes for pnm loader
2198 * io-gif.c: Make gif loader survive TEST_RANDOMLY_MODIFY
2200 * io-xpm.c (parse_color): detect very long color strings
2202 All of the above from Matthias Clasen <matthiasc@poet.de>,
2203 the remaining from Soeren Sandmann <sandmann@daimi.au.dk>.
2205 * test-images.h: add tests:
2206 - four valid ppm's, eight invalid (matthiasc@poet.de)
2207 - one invalid xpm (matthiasc@poet.de)
2208 - one valid tga, one invalid (sandmann@daimi.au.dk)
2209 - one invalid tiff (sandmann@daimi.au.dk
2211 * test-loaders.c: enable tests for ppm, png, gif, tga, tiff, xpm
2213 * io-tiff.c (gdk_pixbuf__tiff_image_stop_load): TIFFClientOpen can
2214 fail - detect it when it happens
2216 * io-tga.c (gdk_pixbuf__tga_load_increment): Fail if there is too
2219 * gdk-pixbuf-io.c: moved wbmb check after ico check to avoid false
2222 Fri Sep 14 00:30:48 2001 Tim Janik <timj@gtk.org>
2224 * Makefile.am: don't used BUILT_SOURCES to build marshal
2225 files, as in conjunction with stamp files, this can
2226 lead to endless rebuilding loops.
2228 Tue Sep 4 00:22:07 2001 Owen Taylor <otaylor@redhat.com>
2230 * Makefile.am: Fix EXTRA_DIST for gdk-pixbuf-csource.1
2232 Tue Sep 4 03:09:52 2001 Tim Janik <timj@gtk.org>
2234 * gdk-pixbuf-csource.1: new file, manual page for
2235 the publically installed gdk-pixbuf-csource utility.
2237 Thu Aug 30 08:30:03 2001 Matthias Clasen <matthiasc@poet.de>
2239 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Propagate
2240 errors from gdk_pixbuf_loader_load_module.
2242 Thu Aug 30 08:27:37 2001 Matthias Clasen <matthiasc@poet.de>
2244 * io-png.c (png_row_callback): Check that row_num is valid.
2246 Tue Aug 28 21:05:26 2001 Matthias Clasen <matthiasc@poet.de>
2248 * io-bmp.c (OneLine): Emit area_updated signal with proper
2249 area information. (#52002)
2251 Tue Aug 28 20:03:43 2001 Matthias Clasen <matthiasc@poet.de>
2253 * test-loaders.c (test_loader): Catch errors at close time.
2254 * test-loaders.c (main): Remove C++ comments.
2256 2001-08-21 Matthias Clasen <matthiasc@poet.de>
2258 * Makefile.am, gdk-pixbuf-io.c, pixbufloader_tga.def,
2259 io-tga.c: Add tga loader, patch by Nicola Girardi. (#56067)
2261 2001-08-20 Matthias Clasen <matthiasc@poet.de>
2263 * test-images.h, test-loaders.c: Add ico and wbmp tests.
2264 * io-jpeg.c (gdk_pixbuf__jpeg_image_save): Fail with a suitable
2265 error if buffer allocation fails.
2266 * io-ico.c: Make .ICO loader more robust.
2267 All of these are due to sandmann@daimi.au.dk (#50187)
2269 2001-08-19 Sven Neumann <sven@gimp.org>
2271 * pixops/pixops.c: applied some simple but effective optimizations
2272 to pixops_composite_nearest() and pixops_composite_color_nearest().
2274 2001-08-07 Sven Neumann <sven@gimp.org>
2276 * gdk-pixbuf.c (gdk_pixbuf_fill): a comment asked to optimize this
2277 function, so that's what I did.
2279 2001-08-06 Kjartan Maraas <kmaraas@gnome.org>
2281 * gdk-pixdata.c: Fix a typo.
2283 2001-07-30 Hans Breuer <hans@breuer.org>
2285 * pixops/makefile.msc : new file
2286 * makefile.msc : use it to complete the build
2288 2001-07-20 Hans Breuer <hans@breuer.org>
2290 * gdk-pixdata.c : don't 'g_tohl (*istream++)', but move
2291 pointer increment out of the macro, because at least one
2292 compiler (msvc 5.0) gets confused otherwise (applies the
2295 * gdk_pixbuf.def : updated exports
2297 * makefile.msc : reflect gdk-pixbuf-csource changes
2299 2001-07-17 Darin Adler <darin@bentspoon.com>
2301 * gdk-pixbuf-csource.c: Add missing <stdlib.h> include.
2302 * io-png.c: (setup_png_transformations): Add ifdef so we compile
2303 without warnings with G_DISABLE_CHECKS on.
2304 * io-pnm.c: (gdk_pixbuf__pnm_image_load_increment): Add a missing
2306 * io-wbmp.c: (getin), (get_mbi): Add a missing const.
2307 * io-xbm.c: (gdk_pixbuf__xbm_image_load_real): Get rid of some
2308 unused locals and add an initial value to quiet the compiler's
2309 unintialized variable warning.
2310 * pixops/pixops.c: Put an ifdef around some dead code.
2312 Thu Jul 5 10:17:15 2001 Owen Taylor <otaylor@redhat.com>
2314 * pixops/Makefile.am (noinst_LTLIBRARIES): Switch
2315 over to the new include flags AC_SUBST(). (Problem
2316 pointed out by Mikael Hermansson.)
2318 2001-06-29 Havoc Pennington <hp@redhat.com>
2320 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): fix for
2323 Thu Jun 28 21:54:19 2001 Owen Taylor <otaylor@redhat.com>
2325 * make-inline-pixbuf.c test-gdk-pixbuf.c test-loaders.c
2326 gdk-pixbuf-csource.c: Fix args to g_type_init ().
2328 2001-06-28 Havoc Pennington <hp@pobox.com>
2330 * gdk-pixdata.c: <string.h>
2332 * gdk-pixbuf-io.c (get_libdir): fix typo in dll name (aren't we
2333 also leaking memory here from g_strdup_printf?)
2335 Tue Jun 26 09:48:02 2001 Tim Janik <timj@gtk.org>
2337 * Makefile.am (noinst_PROGRAMS): get rid of make-inline-pixbuf
2339 * gdk-pixbuf-data.[hc]: provide gdk_pixbuf_new_from_stream()
2340 instead from gdk_pixbuf_new_from_inline().
2342 * gdk-pixdata.[hc]: auxillary GdkPixdata structure, public
2343 installed API for applications that need to serialize/deserialize
2344 on their own (gimp, BEAST).
2346 * gdk-pixbuf/gdk-pixbuf-csource.c: provide publically installed
2347 program that can dump images in CSource format and Pixbuf
2348 stream format. supports RLE encoding, MACRO formatting etc...
2351 Mon Jun 25 00:28:11 2001 Owen Taylor <otaylor@redhat.com>
2353 * Makefile.am: Actually update timestamps, so rules don't
2356 2001-06-11 Havoc Pennington <hp@redhat.com>
2358 * Makefile.am (stamp-gdk-pixbuf-marshal.c): glib_genmarshal
2359 already includes top_builddir
2361 2001-06-08 Havoc Pennington <hp@redhat.com>
2363 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_load_module): remove
2364 bogus g_return_if_fail
2366 * io-gif.c (gif_get_lzw): if delay time is 0 or smaller than
2367 likely timeout resolution, set it to an arbitrarily-chosen short
2369 Fixes bug #55953 from warmenhoven@yahoo.com
2371 2001-06-07 Havoc Pennington <hp@redhat.com>
2373 * Makefile.am: use Owen's new way of doing stampfiles/generated
2376 2001-06-07 Havoc Pennington <hp@redhat.com>
2378 * Makefile.am (gdk-pixbuf-marshal.c): fix up the glib-genmarshal path
2380 2001-06-05 Havoc Pennington <hp@redhat.com>
2382 * test-loaders.c (main): use putenv not setenv, reported by
2385 2001-05-08 Havoc Pennington <hp@redhat.com>
2387 * gdk-pixbuf-util.c (gdk_pixbuf_add_alpha): docs fixup,
2388 and fix behavior to still subst color if the original image
2391 2001-06-04 Havoc Pennington <hp@redhat.com>
2393 * io-pnm.c (pnm_skip_whitespace): patch from Szekeres Istvan,
2396 2001-06-01 Havoc Pennington <hp@redhat.com>
2398 Apply patch from sandmann@daimi.au.dk, with some tweaks.
2399 Makes things a bit more robust, and adds test-loaders.c
2400 which is good for finding further robustness bugs to fix.
2402 * io-tiff.c: Try to work around libtiff suckiness a bit;
2403 put a giant thread lock on the whole loader,
2404 paranoically check both whether error handlers were called and
2405 also whether functions return false. Handle case where width or
2406 height is 0. Various cleanups.
2408 * io-png.c (gdk_pixbuf__png_image_stop_load): only unref pixbuf
2410 (png_error_callback): apparently libpng expects you to longjmp out
2413 * io-gif.c (struct _GifContext): remove unused "pixbuf" field
2414 (lzw_read_byte): change "Mail jrb if this fails" g_warning
2416 (gif_get_lzw): check for out-of-memory
2417 (gif_prepare_lzw): catch/report an error
2418 (new_context): use try_malloc, since GifContext is nearly 70K
2419 (gdk_pixbuf__gif_image_load_increment): set context->buf to NULL
2420 so we don't crash later.
2422 * Makefile.am: Add test-loaders
2424 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): handle context ==
2427 2001-05-29 Darin Adler <darin@eazel.com>
2429 * gdk-pixbuf.h: Fix prototype to use "(void)" instead of "()".
2431 Mon May 28 14:21:35 2001 Jonathan Blandford <jrb@redhat.com>
2433 * io-bmp.c: Patch from Helmethead <hoshem@mel.comcen.com.au> to
2434 fix up bmp decoder to:
2435 - adds 16 bpp bmp support (bug #53884)
2436 - adds OS/2 1.x format bmp support (bug #54964)
2437 - adds 4 bpp RLE compressed bmp support
2438 - adds 1 bpp colormap support
2439 - fixes negative height (top down) bmp support
2441 2001-05-25 Hans Breuer <hans@breuer.org>
2443 * gdk_pixbuf.def : reflect Havoc's recent api change
2445 Sun May 20 12:53:49 2001 Owen Taylor <otaylor@redhat.com>
2447 * Makefile.am (libgdk_pixbuf_1_3_la_LDFLAGS): Remove an
2448 excess $(GLIB_LIBS).
2450 Sun May 13 11:59:11 2001 Owen Taylor <otaylor@redhat.com>
2452 * Makefile.am: Make modules depend on libgdk_pixbuf.la.
2454 2001-05-04 Havoc Pennington <hp@redhat.com>
2456 * pixops/pixops.c (pixops_process): merge fix from stable: Patch
2457 from hoshem@mel.comcen.com.au to fix nonzero X offsets. Fixes
2460 * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest): merge
2461 from stable: Patch from OKADA Mitsuru <m-okada@fjb.co.jp> to fix
2462 confusion of using "src" instead of "p".
2463 (pixops_composite_color_nearest): Use a more accurate (and
2464 correct, to begin with) compositing method. This cures checks
2465 showing through on images with no alpha.
2467 * gdk-pixbuf.c (gdk_pixbuf_fill): fix bug that left some trailing
2470 * gdk-pixbuf-io.h: fix UpdatedNotifyFunc to use signed ints
2472 * gdk-pixbuf-loader.h (struct _GdkPixbufLoaderClass): Change
2473 area_updated signal to use signed ints. Removed animation-related
2476 * io-gif.c, io-gif-animation.h, io-gif-animation.c: Massive
2479 * gdk-pixbuf-animation.c: Add GdkPixbufAnimationIter to abstract
2480 all the pesky details. Remove old frame-based API. Make
2481 GdkPixbufAnimation an abstract base class, derived by the loaders.
2483 Sun Apr 22 15:51:32 2001 Owen Taylor <otaylor@redhat.com>
2485 * Makefile.am (LDADDS): Add $(MATH_LIB).
2487 2001-04-18 Havoc Pennington <hp@redhat.com>
2489 * gdk-pixbuf.c (gdk_pixbuf_fill): Function to fill pixbuf with a
2492 Wed Apr 4 01:41:02 2001 Tim Janik <timj@gtk.org>
2494 * pixops/Makefile.am (noinst_LTLIBRARIES): include $top_srcdir
2495 so we don't try to get <gtk/gtkobject.h> from standard search
2498 * Makefile.am (gdk-pixbuf-marshal.c): use deps from srcdir.
2499 add gdk-pixbuf-marshal.list to EXTRA_DIST.
2500 take gdk-pixbuf-marshal.h out of _la sources.
2502 2001-03-19 Tor Lillqvist <tml@iki.fi>
2504 * makefile.mingw.in: Handle gdk-pixbuf-marshal.c.
2506 * gdk_pixbuf.def: Update.
2508 * pixbufloader_*.def: Just export the fill_vtable functions now.
2510 2001-03-18 Mike Kestner <mkestner@ameritech.net>
2512 * make-inline-pixbuf.c (main): Added logic to remove output when
2515 2001-03-14 Havoc Pennington <hp@redhat.com>
2517 * Makefile.am (gdk-pixbuf-marshal.c): Use different temporary file
2518 from gdk-pixbuf-marshal.h, fixes parallel makes.
2520 Thu Mar 1 04:01:57 2001 Tim Janik <timj@gtk.org>
2522 * test-gdk-pixbuf.c: fixed includes.
2524 2001-02-18 Havoc Pennington <hp@pobox.com>
2526 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): prepend underscore
2527 (gdk_pixbuf_get_named_module): prepend underscore
2528 (gdk_pixbuf_get_module): prepend underscore
2530 2001-02-19 Havoc Pennington <hp@redhat.com>
2532 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): const fix
2534 2001-02-17 Havoc Pennington <hp@pobox.com>
2536 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_new_with_type): docs
2538 2001-02-07 Alexander Larsson <alexl@redhat.com>
2540 * io-xpm.c (free_buffer):
2541 Use g_free, since the buffer is allocated with g_try_alloc().
2543 2001-02-06 Christophe Merlet <redfox@eikonex.org>
2545 * gdk-pixbuf-data.c: Fixes a minor typo.
2547 Sun Feb 4 07:59:57 2001 Tim Janik <timj@gtk.org>
2549 * gdk-pixbuf.h: DOH! don't include glib/gobject.h but glib-object.h,
2550 we finally need the gobject->gruntime rename.
2552 * *.c: scratched calls to g_type_init(), there's simply no point in
2553 doing that, use gtk_init().
2555 2001-02-01 Havoc Pennington <hp@pobox.com>
2557 * gdk-pixbuf-loader.c, gdk-pixbuf-loader.h: rename "private" field
2558 in struct to "priv" for C++
2560 2001-01-31 Havoc Pennington <hp@pobox.com>
2562 * gdk-pixbuf.c: include glib-object.h instead of gvaluetypes.h
2564 2001-01-26 Havoc Pennington <hp@redhat.com>
2566 * gdk-pixbuf-io.c (mname): fix included modules case.
2568 2001-01-22 Havoc Pennington <hp@redhat.com>
2570 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): check errors
2571 from gdk_pixbuf_load_module
2573 2001-01-22 Havoc Pennington <hp@redhat.com>
2575 * Makefile.am: Add built marshaller files to support
2576 GdkPixbufLoader signals
2578 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): have
2579 GDK_PIXBUF_MODULEDIR unconditionally replace the compiled-in
2580 module location, rather than acting as a fallback, because we are
2581 using GDK_PIXBUF_MODULEDIR to use gdk-pixbuf before installing it.
2583 * gdk-pixbuf.h: include gdk-pixbuf-loader.h
2585 * gdk-pixbuf-loader.h, gdk-pixbuf-loader.c: Move back over here
2586 from gtk, and add error to close(), because stop_load may do
2587 parsing of the image.
2589 * pixops/have_mmx.S (_pixops_have_mmx): add newline at end of file
2591 * io-*.c: make individual operations static, and add fill_vtable
2592 functions which are exported. Fix the collection of type warnings
2593 that surfaced, including a number of functions that didn't
2594 properly take a GError and some that weren't
2595 const-correct. Involved adding error handling for a few loaders.
2597 * gdk-pixbuf-io.h: Add error reporting to stop_load function
2599 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): change to just look up
2600 a function that fills in the GdkPixbufModule vtable, instead of
2601 looking up all the image functions individually; this means we
2602 can get type safety within modules for the loader functions.
2603 Also it means you don't have to keep the statically compiled and
2604 GModule versions in sync.
2606 * test-gdk-pixbuf.c (main): remove gdk_pixbuf_init()
2608 * make-inline-pixbuf.c (main): remove call to gdk_pixbuf_init()
2610 * gdk-pixbuf.h: nuke gdk_pixbuf_init()
2612 * gdk-pixbuf-animation.c (gdk_pixbuf_frame_get_type): g_type_init
2615 * gdk-pixbuf.c (gdk_pixbuf_get_type): g_type_init () here
2617 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_get_type):
2620 2001-01-20 John Harper <jsh@eazel.com>
2622 * io-xbm.c: new pixbuf loader, for X bitmap files. Basically a
2623 collision between Xlib's RdBitF.c and io-tiff.c
2625 * gdk-pixbuf-io.c, Makefile.am, pixbufloader_xbm.def: added
2628 [ merged from stable gdk-pixbuf module. Untested, but it
2629 compiles, and works fine in the stable module ]
2631 2001-01-18 Tor Lillqvist <tml@iki.fi>
2633 * gdk-pixbuf-io.c (get_libdir): (Win32) Use the new
2634 g_win32_get_package_installation_subdirectory() function. No need
2635 to include windows.h.
2636 (gtk_win32_get_installation_directory): Remove this then.
2638 2001-01-01 Havoc Pennington <hp@redhat.com>
2640 * Makefile.am (libgdk_pixbuf_1_3_la_LDFLAGS): add
2641 @LIBTOOL_EXPORT_OPTIONS@
2643 2000-12-30 Tor Lillqvist <tml@iki.fi>
2645 * gdk_pixbuf.def: Update.
2647 2000-12-16 Havoc Pennington <hp@pobox.com>
2649 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file): ref
2650 the pixbuf in the frame, so we can use gdk_pixbuf_frame_free
2651 (gdk_pixbuf_frame_copy): new function
2652 (gdk_pixbuf_frame_free): new function
2653 (gdk_pixbuf_frame_get_type): new function
2654 (GDK_TYPE_PIXBUF_FRAME): macro to get type for GdkPixbufFrame
2656 Tue Nov 14 11:51:26 2000 Owen Taylor <otaylor@redhat.com>
2658 * Makefile.am: Add -avoid-version for all modules.
2660 2000-11-13 Havoc Pennington <hp@redhat.com>
2662 * io-png.c (png_simple_error_callback): fix error message to not
2663 say "save" since it's used for loading
2665 2000-11-11 Hans Breuer <Hans@Breuer.Org>
2667 * gdk-pixbuf-io.c : Fix all function prototype macros for self
2668 contained image handlers (!USE_G_MODULE). Files to save should
2669 be opened in binary mode, fopen(s, "wb").
2671 * io-xpm.c : added HAVE_UNISTD_H condition
2673 2000-11-11 Tor Lillqvist <tml@iki.fi>
2675 * gdk_pixbuf.def: Add gdk_pixbuf_new_subpixbuf.
2677 * io-tiff.c (gdk_pixbuf__tiff_image_begin_load): Use
2678 g_file_open_tmp() (just added to GLib) instead of mkstemp() (or
2679 mktemp() and open()).
2681 * io-xpm.c (gdk_pixbuf__xpm_image_begin_load): Ditto.
2683 2000-11-01 Havoc Pennington <hp@pobox.com>
2685 * gdk-pixbuf.c (gdk_pixbuf_new_subpixbuf): New function to create
2686 a pixbuf pointing to a subregion of another pixbuf.
2688 2000-10-16 Tor Lillqvist <tml@iki.fi>
2690 * gdk-pixbuf-io.c: Define also m_save (for the non-gmodule case).
2692 2000-10-16 Havoc Pennington <hp@redhat.com>
2694 * gdk-pixbuf-io.c (gdk_pixbuf_get_module)
2695 (gdk_pixbuf_get_named_module) (gdk_pixbuf_load_module):
2696 add error reporting here also
2698 * make-inline-pixbuf.c (main): use GError
2700 * io-xpm.c: include unistd.h
2702 * gdk-pixbuf-util.c: include string.h
2704 * io-*.c: add error reporting
2706 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file): add
2709 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file): Add error reporting
2711 * gdk-pixbuf-io.h: Add GError** to load_increment and load
2714 * gdk-pixbuf-io.c (gdk_pixbuf_save) (gdk_pixbuf_savev): return
2715 a G_FILE_ERROR if we fail to write or close the file.
2717 * gdk-pixbuf.h: remove GDK_PIXBUF_ERROR_IO, instead we'll use
2718 G_FILE_ERROR_*. Rename enum to GdkPixbufError, properly following
2719 the GError naming rules. Add GError** to load functions.
2721 2000-10-06 Havoc Pennington <hp@redhat.com>
2723 * gdk-pixbuf.h: add GdkPixbufAlphaMode
2725 2000-10-06 Havoc Pennington <hp@redhat.com>
2727 This entry is a summary of the merged-in changes from 1.0.
2728 Relevant original ChangeLog entries are spliced in after
2729 this entry; the files they refer to are from the 1.0
2732 * pixops/pixops.c (pixops_composite_nearest): sync a small fix
2735 * io-xpm.c (xpm_seek_string): add fscanf error check from 1.0
2736 Add progressive loader from 1.0
2738 * io-tiff.c (gdk_pixbuf__tiff_image_begin_load): mem leak fixes
2741 * io-pnm.c: new version from 1.0 tree
2743 * io-jpeg.c (gdk_pixbuf__jpeg_image_load): sync from 1.0, use
2746 * io-gif.c (lzw_read_byte): sync from 1.0, change a g_error to
2748 (gif_get_next_step): return 0 here, sync from 1.0
2750 * gdk-pixbuf-util.c: sync email address change for Cody
2753 2000-09-11 Jeffrey Stedfast <fejj@helixcode.com>
2755 * gdk-pixbuf/io-pnm.c: Pretty much totally rewrote again because
2756 last nights code was still "broken". Should now properly handle
2757 all error conditions gracefully.
2759 2000-09-10 Jeffrey Stedfast <fejj@helixcode.com>
2761 * gdk-pixbuf/io-pnm.c: Rewrote.
2763 2000-09-09 Federico Mena Quintero <federico@helixcode.com>
2765 * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest): Compute
2766 the correct dest offset.
2768 2000-08-25 Federico Mena Quintero <federico@helixcode.com>
2770 * gdk-pixbuf/io-xpm.c: #include <unistd.h>
2772 2000-08-05 Larry Ewing <lewing@helixcode.com>
2774 * gdk-pixbuf/io-tiff.c: stop leaking context->tempname.
2776 * gdk-pixbuf/io-xpm.c: same as above.
2778 2000-07-26 Michael Meeks <michael@helixcode.com>
2780 * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_load): make
2783 2000-07-21 Larry Ewing <lewing@helixcode.com>
2785 * gdk-pixbuf/io-xpm.c: add a fake progressive loader so that
2786 xpm at least supports the progressive interface like the one in
2787 io-tiff.c. This should be reimplemented as an actual progressive
2790 2000-07-19 Jonathan Blandford <jrb@redhat.com>
2792 * demo/pixbuf-demo.c (update_timeout): changed scaling level to
2793 make it look better.
2794 * gdk-pixbuf/testpixbuf.c (update_timeout): Patch from michael
2795 meeks to handle errors better.
2797 2000-10-07 Tor Lillqvist <tml@iki.fi>
2800 * pixbufloader_jpeg.def
2801 * pixbufloader_png.def: Add new entry points.
2803 * makefile.mingw.in: Use libintl.
2805 2000-10-06 Havoc Pennington <hp@redhat.com>
2807 * gdk-pixbuf-io.c (gdk_pixbuf_save): s/format/type/g to be
2808 consistent with gdk_pixbuf_loader_new_with_type().
2809 Return runtime error if a module is missing.
2811 * gdk-pixbuf.h: add GDK_PIXBUF_ERROR_UNKNOWN_TYPE
2813 2000-10-05 Havoc Pennington <hp@redhat.com>
2815 Pixbuf saving, patch from David Welton.
2817 * Makefile.am (GDK_PIXBUF_LIBS): add INTLLIBS
2818 (libgdk_pixbuf_1_3_la_SOURCES): add gdk-pixbuf-i18n.h
2820 * gdk-pixbuf-i18n.h: Add _() to gdk-pixbuf
2822 * io-png.c (gdk_pixbuf__png_image_save): PNG save routine.
2824 * io-jpeg.c (gdk_pixbuf__jpeg_image_save): JPEG save routine.
2826 * gdk-pixbuf-io.c (gdk_pixbuf_save):
2827 (gdk_pixbuf_savev): Implement pixbuf saving routines
2829 * gdk-pixbuf.c (gdk_pixbuf_error_quark): pixbuf error quark
2832 * gdk-pixbuf.h: Add public save routines; add pixbuf error
2835 * gdk-pixbuf-io.h: Add save function to GdkPixbufModule
2837 2000-10-05 Dan Winship <danw@helixcode.com>
2839 * io-png.c, io-tiff.c, io-xpm.c: Fix comments to not claim that
2840 all three of these files are the JPEG image loader. (From
2843 2000-10-03 Tor Lillqvist <tml@iki.fi>
2845 * makefile.mingw.in: Add rule for make-inline-pixbuf. Use
2846 gdk-pixbuf's version number in the rule for makefile.mingw itself.
2848 * gdk_pixbuf.def: Add new entry points.
2850 2000-09-26 Havoc Pennington <hp@redhat.com>
2852 * gdk-pixbuf-util.c (gdk_pixbuf_saturate_and_pixelate): Add this
2853 function here, instead of putting it in a private GTK+ file.
2855 * gdk-pixbuf-private.h (GdkPixbufInlineFormat): include an
2856 enum here for the known formats of inlined pixbufs.
2857 Also, #define our file magic here.
2859 2000-06-23 Havoc Pennington <hp@redhat.com>
2861 * make-inline-pixbuf.c: Small program that creates C variable
2862 declarations of inline pixbuf data. This can be read
2863 by gdk_pixbuf_new_from_inline.
2865 * gdk-pixbuf.h (gdk_pixbuf_new_from_inline): New function to read
2866 inline pixbuf data and create a pixbuf from it.
2868 * gdk-pixbuf-data.c (gdk_pixbuf_new_from_inline): implement here
2870 2000-09-07 Tor Lillqvist <tml@iki.fi>
2872 * makefile.mingw.in: Use own version number for gdk-pixbuf DLLs,
2875 2000-08-12 Tor Lillqvist <tml@iki.fi>
2877 * gdk_pixbuf.def: Add missing entry point.
2879 2000-08-10 Havoc Pennington <hp@redhat.com>
2881 * Makefile.am (EXTRA_DIST): The *.def files had the wrong names
2882 (s/pixbuf_/pixbufloader_)
2884 2000-08-02 Tor Lillqvist <tml@iki.fi>
2890 * io-wbmp.c: Conditionalise inclusion of <unistd.h>.
2892 * makefile.mingw.in: List loaders alphabetically. Add the wbmp
2893 one. Fix names of DLLs to have '-' instead of '_'.
2895 2000-07-31 Elliot Lee <sopwith@redhat.com>
2896 * io-wbmp.c: Some bug fixes - now tested to work.
2898 2000-07-27 Elliot Lee <sopwith@redhat.com>
2900 * gdk-pixbuf-io.h, gdk-pixbuf-io.c: Add
2901 gdk_pixbuf_get_named_module() function to facilitate above change
2902 * io-wbmp.c, pixbufloader_wbmp.defs, gdk-pixbuf-io.c, Makefile:
2903 Implement loader for WBMP format.
2904 * io-bmp.c: Don't malloc a temporary buffer - use stack instead.
2906 2000-07-23 Tor Lillqvist <tml@iki.fi>
2911 * pixops/makefile.mingw.in
2912 * pixbuf_*.def: New files.
2915 * pixops/Makefile.am: Add them. Add rule to generate makefile.mingw.
2917 * gdk-pixbuf-io.c (gtk_win32_get_installation_directory):
2918 New function, to get the GTK+ installation directory from
2919 the Windows Registry, where the installation program
2920 for whatever software includes GTK+ has stored it.
2922 Used to avoid having hardcoding the directory where to look for
2923 loaders. This function is needed by gtk, too, so it should
2924 really be just in one place. Maybe a small static library
2925 one level up from here?
2927 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file)
2928 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file):
2929 Open file in binary mode. This *is* standard C. (No-op on Unix,
2932 * io-jpeg.c: If we don't HAVE_SIGSETJMP, use normal setjmp().
2934 * io-tiff.c: Use g_get_tmp_dir(). If we don't HAVE_MKSTEMP, use
2935 mktemp() and open().
2936 (gdk_pixbuf__tiff_image_stop_load): g_free() also the tempname.
2938 * pixops/*.S: The Gas from mingw32 doesn't like the .type
2939 pseudo-op. Conditionalise on __MINGW32__, but probably
2940 should conditionalise on Gas version instead? Or could we
2941 do without .type on all systems?
2943 * pixops/timescale.c: Use g_get_current_time()
2944 instead of gettimeofday().
2946 Sat Jul 22 10:57:22 2000 Owen Taylor <otaylor@redhat.com>
2948 * Makefile.am (test_gdk_pixbuf_LDADD): Remove -lgmodule
2950 Tue Jul 11 11:26:42 2000 Owen Taylor <otaylor@redhat.com>
2952 * gdk-pixbuf.c: Add <string.h> include.
2954 Tue Jul 11 06:20:14 2000 Tim Janik <timj@gtk.org>
2956 * io-gif.c (gdk_pixbuf__gif_image_load_animation):
2957 * gdk-pixbuf-data.c (gdk_pixbuf_new_from_data):
2958 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file):
2959 use g_object_new() instead of g_type_create_instance() which
2960 is a private function for fundamental type implementations.
2962 Thu Jul 6 11:49:47 2000 Owen Taylor <otaylor@redhat.com>
2964 * Makefile.am (libgdk_pixbuf_la_LDFLAGS): Use GTK+ version
2965 soname scheme for gdk-pixbuf.
2967 2000-06-21 Havoc Pennington <hp@pobox.com>
2969 * gdk-pixbuf.c: Convert GdkPixbuf to GObject, leaving it opaque
2970 (i.e. derivation is not allowed, and there are no virtual methods
2972 (gdk_pixbuf_preinit): Call g_type_init() here.
2973 (gdk_pixbuf_init): Add a user-friendly init function, for users
2974 of standalone gdk-pixbuf
2976 * gdk-pixbuf-animation.c: Convert to GObject, in the same
2977 way GdkPixbufAnimation was done.
2979 * gdk-pixbuf.h: Remove gdk_pixbuf_set_unref_handler() and
2980 gdk_pixbuf_finalize() from API, since these are broken and don't
2981 make sense with new GObject stuff.
2983 Wed Jun 21 16:02:48 2000 Owen Taylor <otaylor@redhat.com>
2985 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): Add feature to
2986 support a GDK_PIXBUF_MODULEDIR env variable as a secondary
2989 2000-06-10 Federico Mena Quintero <federico@helixcode.com>
2991 * demo/pixbuf-demo.c: It was cold and rainy this Saturday morning,
2992 so I needed something to warm my thighs. Running plain infinite
2993 loops on your laptop to make it hot is not very much fun. A demo
2994 of the gdk-pixbuf scaling functions is way better, and looks
2997 * configure.in (AC_OUTPUT): Added the demo Makefile.
2999 * Makefile.am (SUBDIRS): Added the demo directory.
3001 2000-06-09 Larry Ewing <lewing@helixcode.com>
3003 * gdk-pixbuf/io-png.c (gdk_pixbuf__png_image_load_increment):
3004 setjmp for the png error handler. It seems setting the error
3005 handling functions does not avoid the jump, and so not calling
3006 setjmp was causing the incremental loader to jump into lala land.
3007 (gdk_pixbuf__png_image_begin_load): setjmp for error handling, I'm
3008 not sure this one is actually required but the docs say it must be
3009 set for every call to a png_* function.
3010 Also changed the comment to reflect the fact that setting the
3011 error handlers does _not_ avoid the longjmp.
3013 2000-06-06 Larry Ewing <lewing@helixcode.com>
3015 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
3016 take frame offest into account when trying to calculate the
3017 animation bbox. Also set the width to the width not the height.
3018 (gdk_pixbuf_loader_animation_done): cycle over the frames to
3019 calculate bbox because now we finally have all the offset
3020 information for each frame.
3022 2000-06-05 Mathieu Lacage <mathieu@gnome.org>
3024 * configure.in: add some gtk parameters to the
3025 GDK_PIXBUF_LIBÃ�²S and GDK_PIXBUG_INCLUDEDIR vars. One more
3026 fight in my crusade for strange prefix compile...
3028 2000-05-30 Not Zed <NotZed@HelixCode.com>
3030 * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_begin_load):
3031 Initialise the error handler exit routine to our own. Note this
3032 means that every function that accesses the jpeg lib on this
3033 object MUST do a setjmp.
3034 (gdk_pixbuf__jpeg_image_stop_load): setjmp before accessing jpeg
3035 lib for handling fatal error.
3036 (gdk_pixbuf__jpeg_image_load_increment): And here too. So now
3037 your applications dont quit if there's a jpeg error!
3039 2000-05-30 Federico Mena Quintero <federico@helixcode.com>
3041 * gdk-pixbuf.spec.in: Include all the loader libraries. Patch
3042 from Frank de Lange <frank@unternet.org>.
3044 2000-05-09 Darin Adler <darin@eazel.com>
3046 * gdk-pixbuf/test-gdk-pixbuf.c:
3047 Fixed includes to get rid of accidental GNOME dependency.
3049 2000-05-26 Cody Russell <car0969@gamma2.uta.edu>
3050 * Makefile.am: Added gdk-pixbuf.spec to EXTRA_DIST
3052 2000-05-22 Federico Mena Quintero <federico@helixcode.com>
3054 * configure.in: Bumped version number to 0.8.0.
3056 * doc/Makefile.am (content_files): The toplevel gdk-pixbuf.sgml
3057 file was not being distributed.
3059 * gdk-pixbuf/pixops/Makefile.am (EXTRA_DIST): Added DETAILS.
3061 2000-05-09 Darin Adler <darin@eazel.com>
3063 * gdk-pixbuf/gdk-pixbuf-drawable.c: (rgb565lsb), (rgb565msb),
3064 (rgb565alsb), (rgb565amsb), (rgb555lsb), (rgb555msb), (rgb555alsb),
3065 (rgb555amsb), (convert_real_slow): Change all conversion from 16-bit
3066 formats to 32-bit formats to re-use the high bits of the color values
3067 so that white maps to full white.
3069 Fri May 5 12:16:32 2000 Owen Taylor <otaylor@redhat.com>
3071 * gdk-pixbuf/pixops/DETAILS: Add beginnings of file with
3072 detailed information about the structure and algorithms
3073 of pixops so people can fix it instead of breaking it.
3075 2000-05-04 Darin Adler <darin@eazel.com>
3077 * gdk-pixbuf/pixops/pixops.c: (pixops_composite_nearest),
3078 (composite_pixel), (composite_line):
3079 * gdk-pixbuf/test-gdk-pixbuf.c: (simple_composite_test_one_type):
3080 Now that Owen explained the algorithm, I think I implemented it
3081 right for the cases where the destination pixbuf is not opaque.
3082 The test does seem to confirm it.
3084 2000-05-04 Darin Adler <darin@eazel.com>
3086 * gdk-pixbuf/.cvsignore:
3087 * gdk-pixbuf/Makefile.am:
3088 * gdk-pixbuf/test-gdk-pixbuf.c (store_pixel), (fill_with_pixel),
3089 (load_pixel), (simple_composite_test_one),
3090 (simple_composite_test_one_type), (simple_composite_test), (main):
3091 Added some tests of composite to highlight problems in the old
3092 implementation. These tests run without any user interaction.
3093 Just do "make check".
3095 * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest),
3096 (composite_pixel), (composite_line): Fix composite to do a textbook
3097 "A over B" composite. This was clearly the intent, and it was easy
3098 to fix the code to do it. (Note to those that read my earlier tries
3099 at a patch; this version fixes typos that were present in all
3100 my patch attempts. I checked the final version by adding more tests.)
3102 2000-04-22 05:27:43 2000 Owen Taylor <otaylor@redhat.com>
3104 * gdk-pixbuf/pixops/pixops.c (pixops_scale_nearest): Properly
3105 offset y coordinate accordining to render_y0.
3107 * gdk-pixbuf/gdk-pixbuf-scale.c: Properly handle nonzero
3110 2000-04-22 James Henstridge <james@daa.com.au>
3112 * gdk-pixbuf.spec.in (%files): moved %{prefix}/bin/* from the main
3113 package to the devel package. The only file installed in bin is
3114 gdk-pixbuf-config, which belongs in -devel. This should allow having
3115 multiple versions of the main gdk-pixbuf package installed.
3117 2000-04-17 Karl Eichwalder <ke@suse.de>
3119 * gdk-pixbuf/Makefile.am (INCLUDES): Add $(GNOME_CFLAGS).
3120 Reported by Jens Finke.
3122 2000-04-14 Tomasz KÃ�³opczko <kloczek@pld.org.pl>
3124 * gdk-pixbuf/pixops/makefile.am: $(LIBART_CFLAGS) replaced by
3125 $(GTK_CFLAGS) - now gdk-pixbuf compiles correctly.
3127 2000-04-13 James Henstridge <james@daa.com.au>
3129 * configure.in: when performing the configure check to see if
3130 gmodule works, set CFLAGS to GLIB_CFLAGS and LIBS to GLIB_LIBS,
3131 rather than the other way round. Also, call AC_MSG_RESULT in the
3132 even that dynamic modules were not supported.
3134 2000-04-12 Federico Mena Quintero <federico@helixcode.com>
3136 This comes from an excellent idea by Tim Janik (timj@gtk.org) to
3137 hook to the last unref operation.
3139 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_set_last_unref_handler): New
3140 function to set the last unref handler for a pixbuf.
3141 (gdk_pixbuf_finalize): New function to actually finalize a pixbuf.
3142 It calls the pixbuf's destroy notification function and frees the
3143 GdkPixbuf structure itself.
3144 (gdk_pixbuf_unref): Use the last unref function of the pixbuf if
3147 * gdk-pixbuf/gdk-pixbuf-private.h (struct _GdkPixbuf): New fields
3148 for the last unref handler and its user data.
3150 * gdk-pixbuf/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Use
3151 g_new0() to allocate the pixbuf.
3153 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
3154 Fixed the call to gtk_signal_new() for the "frame_done" signal; it
3155 was not specifying the `frame' argument.
3157 * gdk-pixbuf/gdk-pixbuf-animation.c
3158 (gdk_pixbuf_animation_get_width): Fixed docstring.
3159 (gdk_pixbuf_animation_get_height): Likewise.
3160 (gdk_pixbuf_animation_get_num_frames): Likewise.
3161 (gdk_pixbuf_animation_get_frames): Likewise.
3163 * doc/gdk-pixbuf-sections.txt: Updated with the new functions and
3166 * doc/tmpl/gdk-pixbuf.sgml: Added the description for GdkColorspace.
3168 * doc/tmpl/scaling.sgml: Added the description for GdkInterpType.
3170 * doc/tmpl/refcounting.sgml: Updated with the information about
3171 the last unref handler.
3173 * doc/tmpl/*.sgml: Markup tweaks.
3175 * gdk-pixbuf/Makefile.am (libgnomecanvaspixbuf_la_LDFLAGS): Sigh,
3176 update the libtool version number for libgnomecanvaspixbuf as
3178 (libpixbufloader_*_la_LDFLAGS): The loaders need to be versioned
3179 as well, or the old ones won't work with the new stuff. Also,
3180 renamed the modules as follows.
3182 * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_load_module): Now the
3183 modules are called "libpixbufloader-<format>.so" instead of
3184 "libpixbuf-<format>.so". They needed renaming so that the new
3185 loaders won't overwrite the old ones; even with the versioning
3186 stuff, the new .so symlink to the .so.1.0.0 would overwrite the
3189 2000-04-12 Paolo Molaro <lupus@debian.org>
3191 * .cvsignore, src/.cvsignore: shut up cvs.
3193 2000-04-11 Federico Mena Quintero <federico@helixcode.com>
3195 Most of this patch is based on a patch by Havoc Pennington
3196 (hp@redhat.com) to make GdkPixbuf's structures opaque and to
3197 remove the libart dependency.
3199 * gdk-pixbuf/gdk-pixbuf.h: Removed the public structures.
3200 (GdkColorspace): New enum that for now only contains
3202 (GdkPixbufDestroyNotify): New type for the pixbuf's pixels destroy
3203 notification function.
3204 (GdkInterpType): New num with interpolation types.
3206 * *.[ch]: Replace the libart stuff with our own stuff.
3208 * pixops/*.[ch]: Likewise.
3210 * gdk-pixbuf/gdk-pixbuf-private.h: New file with the private
3211 declarations of the GdkPixbuf structures.
3213 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_new_from_art_pixbuf):
3215 (gdk_pixbuf_get_format): Constify.
3216 (gdk_pixbuf_get_n_channels): Constify.
3217 (gdk_pixbuf_get_has_alpha): Constify.
3218 (gdk_pixbuf_get_bits_per_sample): Constify.
3219 (gdk_pixbuf_get_pixels): Constify.
3220 (gdk_pixbuf_get_width): Constify.
3221 (gdk_pixbuf_get_height): Constify.
3222 (gdk_pixbuf_get_rowstride): Constify.
3224 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_copy): New function to copy
3227 * gdk-pixbuf/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Added a
3228 bits_per_sample argument; currently only 8 bits per sample are
3231 * gdk-pixbuf/gdk-pixbuf-animation.c (gdk_pixbuf_frame_get_pixbuf):
3233 (gdk_pixbuf_frame_get_x_offset): New accessor.
3234 (gdk_pixbuf_frame_get_y_offset): New accessor.
3235 (gdk_pixbuf_frame_get_delay_time): New accessor.
3236 (gdk_pixbuf_frame_get_action): New accessor.
3238 * gdk-pixbuf/gdk-pixbuf-render.c
3239 (gdk_pixbuf_render_pixmap_and_mask): Instead of returning a solid
3240 mask rectangle for pixbufs without an alpha channel, set the
3241 *mask_return to NULL.
3243 * gdk-pixbuf/gdk-pixbuf-util.c (gdk_pixbuf_add_alpha): Constify.
3245 * gdk-pixbuf/gdk-pixbuf-scale.c: Fix includes.
3247 * gdk-pixbuf/gdk-pixbuf-scale.c (gdk_pixbuf_scale): Added some
3248 preconditions. Maybe we should also check for the colorspace,
3249 bits per pixel, and such.
3250 (gdk_pixbuf_composite): Likewise.
3251 (gdk_pixbuf_composite_color): Likewise.
3252 (gdk_pixbuf_scale_simple): Likewise, and fail gracefully if we
3253 cannot allocate the new pixbuf.
3254 (gdk_pixbuf_composite_color_simple): Likewise.
3256 * gdk-pixbuf/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_render):
3257 Use art_rgb_rgba_affine() or art_rgb_affine() since we no longer
3260 * gdk-pixbuf/io-bmp.c: Fix includes.
3262 * gdk-pixbuf/pixops/pixops.c (pixops_scale_nearest): Fixed cast in
3267 * configure.in: Removed checks for libart.
3269 * gdk-pixbuf/Makefile.am: Removed references to libart.
3270 (noinst_HEADERS): Added gdk-pixbuf-private.h.
3272 * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_LDFLAGS): Incremented
3273 the version number of the libtool library to indicate that this
3274 definitely is not compatible with the old usage. I know you love
3277 * configure.in: Bumped version number to 0.7.0.
3281 * gdk-pixbuf-config.in (--libs): We no longer require libart.
3283 * DEPENDS.libgdk_pixbuf: We no longer depend on libart.
3285 * gdk-pixbuf.spec.in: Updated, but I don't guarantee anything.
3287 2000-04-06 Jonathan Blandford <jrb@redhat.com>
3289 * gdk-pixbuf/testanimation.c (main): add more info to the
3290 testanimation frames.
3292 2000-04-04 Ettore Perazzoli <ettore@helixcode.com>
3294 * gdk-pixbuf/gdk-pixbuf-animation.c
3295 (gdk_pixbuf_animation_get_width): New accessor function.
3296 (gdk_pixbuf_animation_get_height): New accessor function.
3297 (gdk_pixbuf_animation_get_num_frames): New accessor function.
3298 (gdk_pixbuf_animation_get_frames): New accessor function.
3300 2000-04-01 Federico Mena Quintero <federico@helixcode.com>
3302 * gdk-pixbuf/gdk-pixbuf.c: Reverted Mark's change. The refcount
3303 is private information, and the art_pixbuf will go away soon.
3305 2000-03-31 Mark Crichton <crichton@gimp.org>
3307 * gdk-pixbuf/gdk-pixbuf.c: Added gdk_pixbuf_get_refcount
3308 and gdk_pixbuf_get_artpixbuf accessor functions.
3310 2000-03-29 Federico Mena Quintero <federico@helixcode.com>
3312 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_get_has_alpha): Return
3313 gboolean instead of int.
3315 2000-03-29 Radek Doulik <rodo@helixcode.com>
3317 * gdk-pixbuf/gdk-pixbuf-animation.c
3318 (gdk_pixbuf_animation_new_from_file): same as below
3320 * gdk-pixbuf/io-gif.c (gif_get_lzw): added update of width and
3321 height in GdkPixbufAnimation
3323 2000-03-28 Radek Doulik <rodo@helixcode.com>
3325 * gdk-pixbuf/io-gif.c (gif_get_lzw): test also for
3326 context->frame_done_func and context->anim_done_func to make
3327 progressive animation loading work
3329 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
3330 added priv->pixbuf = NULL as pixbuf is now in frame (and to make
3331 gdk_pixbuf_loader_prepare happy)
3332 (gdk_pixbuf_loader_frame_done): update animation bbox
3334 * gdk-pixbuf/gdk-pixbuf.h: added bbox size (width, height) to
3337 2000-03-27 Radek Doulik <rodo@helixcode.com>
3339 * gdk-pixbuf/io-gif.c (gif_get_lzw): use frame_len and frame_width
3340 instead of width and height
3342 2000-03-27 Owen Taylor <otaylor@redhat.com>
3344 * gdk-pixbuf/pixops/pixops.c: Fix problem with
3345 precendence of >> and & which was keeping composite_color
3346 from working with non-gray images.
3348 2000-03-08 Jonathan Blandford <jrb@redhat.com>
3350 * gdk-pixbuf/io-gif.c (gdk_pixbuf__gif_image_load): free the context.
3351 (gdk_pixbuf__gif_image_load_animation): free the context.
3353 2000-03-06 Arjan van de Ven <arjan@fenrus.demon.nl>
3355 * gdk-pixbuf/io-bmp.c: Fixed to pointer-bugs and a
3356 mis-interpretation of the Microsoft documentation. Now
3357 it can load .BMP files that are not generated by The Gimp
3360 2000-03-01 Mark Crichton <crichton@gimp.org>
3362 * configure.in: Added BUILD_CANVAS_ITEM stuff to (finally)
3363 fix the last auto* build bug (where we have libart, but no
3366 * gdk-pixbuf/Makefile.am: Same.
3368 2000-02-28 Matt Wilson <msw@redhat.com>
3370 * gdk-pixbuf/gdk-pixbuf-drawable.c: s/unsigned long/guint32/g,
3371 s/unsigned short/guint16/g, s/unsigned char/guint8/g
3373 2000-02-26 Federico Mena Quintero <federico@helixcode.com>
3375 * README: We don't require libgif/ungif nor libXpm.
3377 * NEWS: This was outdated, so updated it.
3379 2000-02-25 Federico Mena Quintero <federico@helixcode.com>
3381 * gdk-pixbuf.m4: Use the correct name for
3382 gdk-pixbuf/gdk-pixbuf.h. Thanks to Jacob Berkman for pointing
3385 2000-02-21 Federico Mena Quintero <federico@helixcode.com>
3387 * configure.in (GDK_PIXBUF_MINOR): Bumped version number to 0.6.0.
3389 * doc/compiling.sgml: New appendix documenting the gdk-pixbuf
3390 library's particular options to configure.in.
3392 * doc/gdk-pixbuf.sgml: Include compiling.sgml appendix via an
3395 * doc/Makefile.am (gdk-pixbuf.html): Added compiling.sgml.
3397 * gdk-pixbuf/io-ico.c (gdk_pixbuf__ico_image_load_increment):
3398 Fixed typo in prototype name.
3400 * configure.in: Changed duplicated AC_MSG_CHECKING message to
3401 something more meaningful; now it is "checking whether dynamic
3404 * gdk-pixbuf/pixops/Makefile.am (noinst_PROGRAMS): Do not install
3405 the timescale program.
3407 Integrated Miguel de Icaza's <miguel@gnu.org> patch for optionally
3408 creating a single static library with all the image format modules
3411 2000-02-20 Miguel de Icaza <miguel@gnu.org>
3413 * gdk-pixbuf/io-xpm.c (gdk_pixbuf__xpm_image_load): Add prefix.
3414 (gdk_pixbuf__xpm_image_load_xpm_data): Add prefix.
3416 * gdk-pixbuf/io-tiff.c (gdk_pixbuf__tiff_image_load_real): Add prefix.
3417 (gdk_pixbuf__tiff_image_stop_load): Add prefix.
3418 (gdk_pixbuf__tiff_image_load_increment): Add prefix.
3419 (gdk_pixbuf__tiff_image_load): Add prefix.
3420 (gdk_pixbuf__tiff_image_stop_load): Update invocation.
3421 (gdk_pixbuf__tiff_image_begin_load): Add prefix.
3423 * gdk-pixbuf/io-ras.c (gdk_pixbuf__ras_image_load): Add prefix.
3424 (gdk_pixbuf__ras_image_load): Updated invocation.
3425 (gdk_pixbuf__ras_image_begin_load): Add prefix.
3426 (gdk_pixbuf__ras_image_stop_load): Add prefix.
3427 (gdk_pixbuf__ras_image_load_increment): Add prefix.
3429 * gdk-pixbuf/io-pnm.c (gdk_pixbuf__pnm_image_begin_load): Add prefix.
3430 (gdk_pixbuf__pnm_image_stop_load): Add prefix.
3431 (gdk_pixbuf__pnm_image_load_increment): Add prefix
3432 (gdk_pixbuf__pnm_image_load): Add prefix.
3434 * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_load): Add prefix.
3435 (gdk_pixbuf__jpeg_image_load_increment): Add prefix.
3436 (gdk_pixbuf__jpeg_image_begin_load): Add prefix.
3437 (gdk_pixbuf__jpeg_image_stop_load): Add prefix.
3439 * gdk-pixbuf/io-ico.c (gdk_pixbuf__ico_image_load): Add prefix.
3440 (gdk_pixbuf__ico_image_load): update invocation.
3441 (gdk_pixbuf__ico_image_load_increment): Add prefix.
3442 (gdk_pixbuf__ico_image_load): update invocation.
3443 (gdk_pixbuf__ico_image_begin_load): Add prefix.
3444 (gdk_pixbuf__ico_image_load): update invocation.
3445 (gdk_pixbuf__ico_image_stop_load): Add prefix.
3447 * gdk-pixbuf/io-gif.c (gdk_pixbuf__gif_image_load_animation): Add prefix.
3448 (gdk_pixbuf__gif_image_load): Add prefix.
3449 (gdk_pixbuf__gif_image_begin_load): Add prefix.
3450 (gdk_pixbuf__gif_image_load_increment): Add prefix.
3451 (gdk_pixbuf__gif_image_load_animation): Add prefix.
3452 (gdk_pixbuf__gif_image_stop_load): Add prefix.
3454 * gdk-pixbuf/io-bmp.c (gdk_pixbuf__bmp_image_load): Add prefix.
3455 (gdk_pixbuf__bmp_image_load): Rename function called.
3456 (gdk_pixbuf__bmp_image_load_increment): Add prefix
3458 * gdk-pixbuf/io-png.c (gdk_pixbuf__png_image_load): Add prefix.
3459 (gdk_pixbuf__png_image_begin_load): Add prefix.
3460 (gdk_pixbuf__png_image_stop_load): Add prefix.
3461 (gdk_pixbuf__png_image_load_increment): Add prefix.
3463 * gdk-pixbuf/gdk-pixbuf-io.c (file_formats): Make this static.
3464 (gdk_pixbuf_load_module): Load the shared library entry points
3465 using a "gdk_pixbuf__$module_name" prefix.
3466 (pixbuf_module_symbol): Wrapper routine that uses the module
3467 prefix for the modules to load the information.
3469 * configure.in (GDK_PIXBUF_VERSION): New option --disable-modules
3470 lets the user specify that gdk-pixbuf should link all image loader
3471 code into the library instaed of creating shared library modules.
3473 (dynworks): Renamed the automake conditional DYNAMIC_MODULES_WORK
3474 to BUILD_DYNAMIC_MODULES.
3476 2000-02-19 Jonathan Blandford <jrb@redhat.com>
3478 * gdk-pixbuf/io-gif.c (new_context): fix case where initial
3479 colormap entry is Transparent.
3481 2000-02-19 Owen Taylor <otaylor@redhat.com>
3483 * gdk-pixbuf/pixops/pixops.c (scale_pixel): Fix error in
3484 scale factors for non-alpha case.
3486 2000-02-14 Mark Crichton <crichton@gimp.org>
3488 * gdk-pixbuf/io-xpm.c (xpm_extract_color): Added check for "g"
3489 color type. Imlib/libXpm handle this, but we didn't.
3491 2000-02-14 Darin Adler <darin@eazel.com>
3493 * gdk-pixbuf/testpixbuf.c: Remove now-unnecessary cast.
3494 * .cvsignore: gdk-pixbuf/.cvsignore: More to ignore.
3496 2000-02-14 Elliot Lee <sopwith@redhat.com>
3497 * gdk-pixbuf/gdk-pixbuf.h, gdk-pixbuf/gdk-pixbuf-data.c: Make
3498 passed-in argument 'const'.
3500 2000-02-04 Michael Meeks <mmeeks@gnu.org>
3502 * gdk-pixbuf/io-gif.c (struct _GifContext): add x,y_offset.
3503 (gif_get_frame_info): put the offsets on the context.
3504 (gif_get_lzw): copy them off into the frame.
3505 (new_context): no change required; will 0 offsets by default.
3507 2000-01-28 Michael Meeks <michael@mejm2.dow.cam.ac.uk>
3509 * gdk-pixbuf/pixops/pixops.c (pixops_process): const + nasty
3512 * gdk-pixbuf/pixops/pixops.h: const.
3514 * gdk-pixbuf/gdk-pixbuf-util.c: const.
3516 * gdk-pixbuf/gdk-pixbuf-scale.c: const.
3518 * gdk-pixbuf/gdk-pixbuf.h: constify lots of things.
3520 2000-02-03 Federico Mena Quintero <federico@helixcode.com>
3522 * gdk-pixbuf/gdk-pixbuf-render.c
3523 (gdk_pixbuf_render_threshold_alpha): Added sanity check for width
3524 and height being >= 0. Also, do nothing if either of them is
3525 zero. Thanks to Ettore for pointing this out.
3526 (gdk_pixbuf_render_to_drawable): Likewise.
3527 (gdk_pixbuf_render_to_drawable_alpha): Likewise.
3529 2000-02-02 Federico Mena Quintero <federico@helixcode.com>
3531 * gdk-pixbuf/io-gif.c (gif_get_lzw): Removed debugging g_print.
3532 Thanks to John Sullivan <sullivan@eazel.com> for the patch.
3534 * gdk-pixbuf/testpixbuf-drawable.c (configure_cb): Get a new area
3535 of the screen when the window is resized. Thanks to David
3536 N. Welton <davidw@linuxcare.com> for pointing this out.
3537 Misc. cleanups to the rest of the file.
3539 2000-02-01 Federico Mena Quintero <federico@helixcode.com>
3541 * doc/tmpl/rendering.sgml: gnome_init() does not call
3542 gdk_rgb_init(), so don't mention that it does in the
3543 documentation. Thanks to Alexander Kruuse <kruuse@home.se> for
3546 2000-01-31 Havoc Pennington <hp@redhat.com>
3548 * gdk-pixbuf/Makefile.am (noinst_PROGRAMS): no testpixbuf-foo target
3550 Mon Jan 31 12:38:50 2000 Owen Taylor <otaylor@redhat.com>
3552 * gdk-pixbuf/pixops/pixops.c (scale_line): Fix from Peter
3553 Wainwright to fix 4a => 4a scaling.
3555 2000-01-29 Mark Crichton <crichton@gimp.org>
3557 * gdk-pixbuf-config: Oh dear, we weren't Telsa/Alan proof...
3558 put `libart-config --libs` in instead of -lart_lgpl.
3560 2000-01-22 Federico Mena Quintero <federico@helixcode.com>
3562 * gdk-pixbuf/io-pnm.c (pnm_read_raw_scanline): Return an error on
3564 (pnm_read_ascii_scanline): Initialize data and mask.
3566 * gdk-pixbuf/io-xpm.c (pixbuf_create_from_xpm): Initialize
3567 fallbackcolor to keep gcc happy.
3569 * configure.in: Bumped version number to 0.5.0.
3571 * gdk-pixbuf/pixops/timescale.c (dump_array): Removed unused variable.
3574 * gdk-pixbuf/pixops/pixops.c (pixops_composite_color_nearest): Put
3575 parentheses around + in a shift to remove a compiler warning.
3576 (pixops_process): Likewise.
3578 Patch from Ross Golder <rossigee@bigfoot.com> to create an RPM
3581 * configure.in: Added gdk-pixbuf.spec to AC_OUTPUT.
3583 * Makefile.am (EXTRA_DIST): Added gdk-pixbuf.spec.in
3585 2000-01-22 Federico Mena Quintero <federico@helixcode.com>
3587 * gdk-pixbuf/gnome-canvas-pixbuf.c (PixbufPrivate): Removed the
3588 x_set and y_set arguments. Now they are always on and start with
3589 defaults of 0.0 in units.
3590 (gnome_canvas_pixbuf_class_init): Likewise.
3591 (gnome_canvas_pixbuf_set_arg): Likewise.
3592 (gnome_canvas_pixbuf_get_arg): Likewise.
3593 (compute_viewport_affine): Likewise; always use the priv->x and
3596 * doc/tmpl/gnome-canvas-pixbuf.sgml: Modified to reflect the
3597 removal of the x_set/y_set arguments.
3599 2000-01-21 Federico Mena Quintero <federico@helixcode.com>
3601 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_ref): Return the same pixbuf
3602 as the input parameter.
3604 * gdk-pixbuf/gdk-pixbuf-animation.c (gdk_pixbuf_animation_ref):
3605 Return the same animation as the input parameter.
3607 2000-01-16 Elliot Lee <sopwith@redhat.com>
3609 * gdk-pixbuf/Makefile.am: Don't link against libgnomecanvaspixbuf.la
3611 2000-01-16 Federico Mena Quintero <federico@helixcode.com>
3613 * configure.in: Removed the broken --enable-canvas-pixbuf option.
3614 Added the stuff necessary to substitute the variables in
3615 gnomecanvaspixbufConf.sh.in.
3617 * gnomecanvaspixbufConf.sh.in: New gnome-config handler for the
3618 tiny gnomecanvaspixbuf library.
3620 * Makefile.am: Build gnomecanvaspixbufConf.sh.
3622 * gdk-pixbuf/Makefile.am: Create a libgnomecanvaspixbuf and only
3623 build it if gdk-pixbuf is being built outside of gnome-libs.
3625 * doc/gdk-pixbuf-sections.txt: Added gdk_pixbuf_render_pixmap_and_mask().
3627 * gdk-pixbuf/gdk-pixbuf-render.c
3628 (gdk_pixbuf_render_pixmap_and_mask): Renamed from
3629 gdk_pixbuf_render_pixmap(). Do not create the mask if it is not
3630 needed, and do not use a clipping mask when rendering the pixmap.
3631 Tweaked documentation a little.
3633 * HACKING: New file with hacking policies for the gdk-pixbuf
3636 * doc/Makefile.am (tmpl_sources): Added missing backslash.
3638 * doc/Makefile.am: Use gnomecanvaspixbuf in gnome-config when
3639 scanning for docstrings.
3641 * gdk-pixbuf/gdk-pixbuf-util.c (gdk_pixbuf_copy_area): Made sanity
3642 checks more stringent. Removed "gint" abominations. Made
3643 documentation consistent with the rest of the functions.
3645 * doc/gdk-pixbuf-sections.txt: Added gdk_pixbuf_copy_area() to the
3648 2000-01-14 Jonathan Blandford <jrb@redhat.com>
3650 * gdk-pixbuf/gdk-pixbuf-render.c (gdk_pixbuf_render_pixmap): new
3651 function to let you create a gdk_pixmap from a gdk_pixbuf.
3653 2000-01-11 Jacob Berkman <jacob@helixcode.com>
3655 * gdk-pixbuf/pixops/Makefile.am (INCLUDES): added
3656 $LIBART_CFLAGS to $INCLUDES
3658 2000-01-10 Elliot Lee <sopwith@redhat.com>
3660 * configure.in, gdk-pixbuf/Makefile.am: Build a libcanvas_pixbuf.
3662 * configure.in: Define version macros. Generate
3663 gdk-pixbuf/gdk-pixbuf-features.h. Always INSIDE_GNOME.
3665 * gdk-pixbuf/Makefile.am: Add gdk-pixbuf-features.h
3667 * gdk-pixbuf/gdk-pixbuf.c: Add definitions of
3668 gdk-pixbuf-features.h declarations, plus some initialization
3671 2000-01-05 Owen Taylor <otaylor@redhat.com>
3673 * gdk-pixbuf/pixops/pixops.c: Fixed src_channels/dest_channels
3674 confusion. (Again caught by Tomas Ogren's Purify)
3676 2000-01-07 Jonathan Blandford <jrb@redhat.com>
3678 * gdk-pixbuf/gdk-pixbuf-xform.c (gdk_pixbuf_rotate): comment out
3681 * gdk-pixbuf/gdk-pixbuf-io.c: Added progressive animation loading.
3682 * gdk-pixbuf/gdk-pixbuf-io.h: Added progressive animation loading.
3683 * gdk-pixbuf/gdk-pixbuf-loader.c: Added progressive animation
3685 * gdk-pixbuf/gdk-pixbuf-loader.h: Added progressive animation
3687 * gdk-pixbuf/io-gif.c (image_load_increment): I think the
3688 ref-counting mess is finally fixed. Added progressive animation
3690 (gif_get_lzw): remove memory_leak
3692 * doc/tmpl/gdk-pixbuf-loader.sgml: much longer long description
3695 2000-01-05 Owen Taylor <otaylor@redhat.com>
3697 * gdk-pixbuf/pixops/pixops.c (pixops_process): Fix computation of
3700 * gdk-pixbuf/pixops/pixops.c: Fix double increments when
3701 dest_channels == 4. (Pointed out by Tomas Ogren)
3703 2000-01-05 Mark Crichton <crichton@gimp.org>
3705 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_eat_header_write):
3706 Return 0 if gdk_pixbuf_load_loader_module returns FALSE.
3708 2000-01-05 Elliot Lee <sopwith@redhat.com>
3710 * gdk-pixbuf/pixops/Makefile.am: Link with -lm (to get 'ceil' function)
3712 2000-01-05 Owen Taylor <otaylor@redhat.com>
3714 * doc/Makefile.am doc/gdk-pixbuf-sections.txt
3715 doc/gdk-pixbuf.sgml doc/tmpl/scaling.sgml:
3716 Added scaling functions into gtk-doc framework.
3718 * gdk-pixbuf/gdk-pixbuf-scale.c: Documentation fixes.
3720 * gdk-pixbuf/testpixbuf-scale.c (expose_cb): Simplify a bit.
3722 * gdk-pixbuf/pixops/pixops.c (pixops_composite_color): Return
3723 immediately if scale_x or scale_y is 0.
3725 2000-01-05 Owen Taylor <otaylor@redhat.com>
3727 * gdk-pixbuf/pixops/timescale.c: quick fix for initializing
3728 arrays in benchmark.
3730 2000-01-05 Jonathan Blandford <jrb@redhat.com>
3732 * gdk-pixbuf/gdk-pixbuf-io.h: Change the order of the update func
3733 to make it more compatible with the rest of GTK. Added animation
3734 framework for progressive loading.
3736 * gdk-pixbuf/io-bmp.c (image_begin_load): Modified to handle new
3738 * gdk-pixbuf/io-ico.c (image_begin_load): ditto
3739 * gdk-pixbuf/io-png.c (image_begin_load): ditto
3740 * gdk-pixbuf/io-ras.c (image_begin_load): ditto
3741 * gdk-pixbuf/io-jpeg.c (image_begin_load): ditto
3742 * gdk-pixbuf/io-pnm.c (image_begin_load): ditto
3743 * gdk-pixbuf/io-tiff.c (image_begin_load): ditto
3744 * gdk-pixbuf/io-gif.c (image_begin_load): ditto
3746 2000-01-05 Owen Taylor <otaylor@redhat.com>
3748 * gdk-pixbuf/pixops/README: Added a README with a TODO
3749 and some explainations of the algorithms.
3751 * gdk-pixbuf/testpixbuf-scale.c: Set a background pixmap of None
3752 to reduce flashing when resizing.
3754 2000-01-05 Owen Taylor <otaylor@redhat.com>
3756 * gdk-pixbuf/pixops/: Directory full of pixel data scaling
3757 code that will eventually migrate into libart.
3759 * configure.in acconfig.h: Add checks for MMX compiler support
3761 * gdk-pixbuf/gdk-pixbuf.h gdk-pixbuf/gdk-pixbuf-scale.c:
3762 Nice wrapper routines for the code in pixops that operate
3763 on pixbufs instead of raw data.
3765 * gdk-pixbuf/testpixbuf-scale: Test program for scaling
3768 2000-01-05 Jonathan Blandford <jrb@redhat.com>
3770 * doc/tmpl/animation.sgml: Documentation changes.
3772 2000-01-01 Federico Mena Quintero <federico@helixcode.com>
3774 * gdk-pixbuf/gdk-pixbuf.h (GdkPixbufAnimation): Added reference
3775 counting to animations. A web browser may want to share a single
3776 copy of an animated GIF if it appears multiple times in a web
3779 * gdk-pixbuf/gdk-pixbuf-animation.c: New file. Moved the
3780 animation functions here.
3781 (gdk_pixbuf_animation_new_from_file): Prettified. Return a NULL
3782 animation if the loader does not support multiframe loading and
3783 the single-frame load returned NULL. Check that the filename is
3784 not NULL. Updated inline documentation.
3785 (gdk_pixbuf_animation_ref): New function.
3786 (gdk_pixbuf_animation_unref): New function.
3787 Removed gdk_pixbuf_animation_destroy() in favor of reference
3790 * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_new_from_file):
3791 Prettified. Made ref_count assertion more paranoid. Check that
3792 the filename is not NULL.
3793 (gdk_pixbuf_get_module): Use guchar * and guint for buffer and
3795 (gdk_pixbuf_new_from_xpm_data): Changed the "data" argument to
3798 * gdk-pixbuf/io-gif.c (image_load_animation): Create the animation
3799 with a reference count of 1.
3801 * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_SOURCES): Added
3802 gdk-pixbuf-animation.c.
3804 * doc/tmpl/animation.sgml: Populated. It is still missing a
3805 description of the overlay modes.
3807 * doc/gdk-pixbuf-sections.txt: Added the animation section. Moved
3808 the canvas item section to the end, as it will be moved later to
3811 * doc/gdk-pixbuf.sgml: Added the animation section.
3813 * doc/Makefile.am (tmpl_sources): Added tmpl/animation.sgml.
3815 1999-12-26 Peter Teichman <pat@gnu.org>
3817 * gdk-pixbuf/Makefile.am (libpixbuf_tiff_la_LIBADD): add
3818 $(LIBTIFF) to libpixbuf_tiff_la_LIBADD, proxying for mmarker.
3819 This closes bug #4676.
3821 1999-12-23 Havoc Pennington <hp@pobox.com>
3823 * gdk-pixbuf/io-gif.c (image_load): Stuff that should have been
3824 set to NULL here (specifically context->animation) was not being
3825 set to NULL. use g_new0() to alloc the struct.
3827 1999-12-20 Jonathan Blandford <jrb@redhat.com>
3829 * gdk-pixbuf/io-gif.c: finished work to make animated gifs load
3830 correctly. Progressive loading needs some work, but that all
3831 needs doing from the gdk-pixbuf-loader end, not here.
3833 1999-12-17 Jonathan Blandford <jrb@redhat.com>
3835 * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_animation_new_from_file):
3836 moved the file here. It seems natural to put this function here,
3837 as that's where the gdk_pixbuf_new_from_file function is, but it's
3838 still a little convoluted. The source files might be played with
3841 1999-12-14 Jonathan Blandford <jrb@redhat.com>
3843 * gdk-pixbuf/gdk-pixbuf-loader.c
3844 (gdk_pixbuf_loader_get_animation): Gets the animation from the
3847 1999-12-16 Federico Mena Quintero <federico@redhat.com>
3849 * doc/tmpl/rendering.sgml: Added notice about initializing GdkRGB
3850 before using the GdkPixbuf rendering functions. Thanks to Joe
3851 Shaw <joe@off.net> for pointing this out.
3853 1999-12-13 Federico Mena Quintero <federico@redhat.com>
3855 * gdk-pixbuf/gnome-canvas-pixbuf.c
3856 (gnome_canvas_pixbuf_class_init): Renamed arguments to
3857 width_in_pixels, height_in_pixels, x_in_pixels, y_in_pixels, for
3858 consistency with the new canvas.
3859 (PixbufPrivate): Do the same renaming in the structure fields, for
3862 * doc/tmpl/gnome-canvas-pixbuf.sgml: Updated for new argument names.
3864 1999-12-12 Federico Mena Quintero <federico@redhat.com>
3866 * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_LDFLAGS): Use a
3867 conditional to see whether to link $(GNOME_LIBS) or not.
3869 1999-12-10 Jonathan Blandford <jrb@redhat.com>
3871 * gdk-pixbuf/gdk-pixbuf-io.h: thinking about the new loading API.
3873 * gdk-pixbuf/gdk-pixbuf-drawable.c (gdk_pixbuf_get_from_drawable):
3874 make a warning go away.
3876 * gdk-pixbuf/gdk-pixbuf.h: added new prototypes for animations.
3878 * gdk-pixbuf/gdk-pixbuf-loader.h: added new prototypes for
3881 1999-12-09 Michael Zucchi <zucchi@zedzone.mmc.com.au>
3883 * gdk-pixbuf/gdk-pixbuf.h: Enable gdk_pixbuf_get_from_drawable()
3886 * gdk-pixbuf/gdk-pixbuf-drawable.c (gdk_pixbuf_get_from_drawable):
3887 Filled in body of function.
3888 (rgbconvert): Added GdkColormap parameter, and to all conversion
3890 (convert_real_slow): New function - should convert ANY visual/data
3891 format properly, but it aint fast. Used as a fallback when an
3892 optimised routine wont match.
3893 (rgbconvert): Do very specific tests on the data format to verify
3894 properly if the optimised version will do, otherwise use the
3895 fallback function for all other data formats.
3897 * gdk-pixbuf/Makefile.am: Re-enabled building of
3898 textpixbuf-drawable.
3900 * gdk-pixbuf/testpixbuf-drawable.c (main): Changed to use
3901 gdk_pixbuf_get_from_drawable().
3903 1999-12-08 Arjan van de Ven <arjan@fenrus.demon.nl>
3905 * gdk-pixbuf/gdk-pixbuf-drawable.c : Fixed the red/green/red
3906 bug on two occasions.
3907 * gdk-pixbuf/io-ras.c: Changed from the custom be32_to_cpu
3908 function to the generic glib one.
3910 1999-12-08 Federico Mena Quintero <federico@redhat.com>
3912 * gdk-pixbuf/gdk-pixbuf-drawable.c: Fix includes.
3913 (gdk_pixbuf_get_from_drawable): Implemented the zillion sanity
3914 checks and API definition. The body needs filling in and it needs
3915 to do the Right Thing(tm) for pixmaps plus the given colormap and
3916 windows and their own colormaps.
3918 * gdk-pixbuf/gdk-pixbuf.h: Added prototype for
3919 gdk_pixbuf_get_from_drawable(). Killed gdk-pixbuf-drawable.h.
3921 * gdk-pixbuf/Makefile.am: Re-added the gdk-pixbuf-drawable sources.
3923 * doc/tmpl/from-drawables.sgml: Populated.
3925 * doc/gdk-pixbuf.sgml: Added the from-drawables section.
3927 * doc/Makefile.am (tmpl_sources): Added tmpl/from-drawables.sgml.
3929 * doc/gdk-pixbuf-sections.txt: Added a section for getting pixbufs
3932 1999-12-07 Federico Mena Quintero <federico@redhat.com>
3934 * doc/tmpl/gnome-canvas-pixbuf.sgml: Added clarification about
3935 reference counting for GdkPixbuf structures.
3937 1999-12-07 Martin Baulig <martin@home-of-linux.org>
3939 * gdk-pixbuf/Makefile.am (testpixbuf_LDADD): Conditionally
3940 include $(GNOME_LIBS) here.
3942 1999-12-05 Arjan van de Ven <arjan@fenrus.demon.nl>
3944 Added missing "include <string.h>" to:
3945 * gdk-pixbuf/io-ras.c
3946 * gdk-pixbuf/io-bmp.c
3947 * gdk-pixbuf/io-ico.c
3949 1999-12-06 Federico Mena Quintero <federico@redhat.com>
3951 * gdk-pixbuf/gdk-pixbuf-io.c (file_formats): Patch from Arjan to
3954 1999-12-05 Federico Mena Quintero <federico@redhat.com>
3956 * gdk-pixbuf/Makefile.am (testpixbuf_LDADD): Add back
3957 $(GNOME_LIBS). This must compile outside of gnome-libs. If you
3958 want, send me a patch to do the conditional stuff properly.
3959 Otherwise, please read the GNOME Programming Guidelines,
3960 especially the "CVS policies" section.
3962 1999-12-05 Jaka Mocnik <jaka.mocnik@kiss.uni-lj.si>
3964 * gdk-pixbuf/Makefile.am: removed GNOME_LIBS from testpixbuf_LDADD.
3966 1999-12-05 Arjan van de Ven <arjan@fenrus.demon.nl>
3968 * gdk-pixbuf/io-ico.c: Bug in palet-size
3971 1999-12-04 Arjan van de Ven <arjan@fenrus.demon.nl>
3973 * gdk-pixbuf/io-bmp.c: Major cleanup, added support for
3974 32 bpp and 4 bpp (uncompressed) images, fixed 1bpp.
3976 * gdk-pixbuf/io-ras.c: Minor cleanup, ran through lclint
3978 * gdk-pixbuf/io-ico.c: Minor cleanup, fixed 1bpp icons,
3981 * gdk-pixbuf/gdk-pixbuf-io.c: Added detection of .CUR files
3982 (Windows Cursor files). These are identical to .ICO files,
3983 except for the signature and 2 extra fields for the hotspot.
3985 1999-12-03 Federico Mena Quintero <federico@redhat.com>
3987 * gdk-pixbuf/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_get_arg):
3988 Removed unused variable `item'.
3990 1999-12-03 Jonathan Blandford <jrb@redhat.com>
3992 * gdk-pixbuf/io-gif.c (gif_fill_in_lines): added a comment to
3993 explain this function better.
3995 1999-12-02 Federico Mena Quintero <federico@redhat.com>
3997 Source files moved from src/ to gdk-pixbuf/, to be consistent with
4000 * doc/Makefile.am: Modified for the new source directory.
4002 * configure.in: Likewise.
4004 * Makefile.am: Likewise.
4006 * autogen.sh: Likewise.
4008 * gdk-pixbuf/Makefile.am: Likewise.
4010 1999-12-02 Federico Mena Quintero <federico@redhat.com>
4012 * src/testpixbuf.c: #include <config.h>, and fix includes.
4014 * src/testpixbuf-drawable.c: #include <config.h>, and fix includes.
4016 * src/io-xpm.c: Fix includes.
4018 * src/io-tiff.c: Fix includes.
4020 * src/io-ras.c: Fix includes, and do not include more stuff than needed.
4022 * src/io-pnm.c: Fix inlcudes, and do not include more stuff than needed.
4024 * src/io-png.c: Fix includes.
4026 * src/io-ico.c: Fix includes, and do not include more stuff than needed.
4028 * src/io-gif.c: Fix includes, and do not include more stuff than needed.
4030 * src/io-bmp.c: Fix includes, and do not include more stuff than needed.
4032 * src/gnome-canvas-pixbuf.c: Fix includes.
4034 * src/gdk-pixbuf.c: Fix includes.
4036 * src/gdk-pixbuf-util.c: Fix includes.
4038 * src/gdk-pixbuf-render.c: Fix includes.
4040 * src/gdk-pixbuf-io.h: Fix includes.
4042 * src/gdk-pixbuf-drawable.c: Fix includes.
4044 * src/gdk-pixbuf-drawable.h: Use angle brackets for the gdk-pixbuf
4047 * src/gdk-pixbuf-data.c: Fix includes.
4049 * src/gdk-pixbuf-loader.c: #include <config.h>
4051 * src/gdk-pixbuf-loader.h: Use angle brackets for the gdk-pixbuf
4054 * src/Makefile.am: Commented out the gdk-pixbuf-drawable stuff,
4055 since it is not finished.
4057 * src/gdk-pixbuf.h: Removed unused transformation prototypes.
4059 * src/gdk-pixbuf-util.c: New file with utility and convenience
4060 functions for pixbufs.
4062 * src/Makefile.am (libgdk_pixbuf_la_SOURCES): Added gdk-pixbuf-util.c.
4064 * doc/gdk-pixbuf-sections.txt: Added section for utility functions.
4066 * doc/Makefile.am (tmpl_sources): Added tmpl/util.sgml.
4068 * doc/gdk-pixbuf.sgml: Added the utilities section.
4070 * doc/tmpl/util.sgml: Documentation for the utility functions.
4072 1999-11-29 Owen Taylor <otaylor@redhat.com>
4074 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
4075 Keep the mask around until after we draw ... since
4076 the GC changes aren't flushed to the X server until we
4077 draw, destroying it before that may result in BadPixmap
4080 1999-11-30 Havoc Pennington <hp@pobox.com>
4082 * configure.in: Add AM_CONDITIONAL for inside gnome-libs
4084 * src/Makefile.am: conditionalize GnomeCanvasPixbuf
4086 1999-11-29 Federico Mena Quintero <federico@redhat.com>
4088 * src/Makefile.am: Uncomment the GnomeCanvasPixbuf sources. This
4089 should be made conditional, not blindly commented out.
4091 1999-11-29 Jonathan Blandford <jrb@redhat.com>
4093 * src/Makefile.am (ICO_LIB): Added another loader from Arjan to
4094 handle .ico files. Cool.
4096 1999-11-24 Jonathan Blandford <jrb@redhat.com>
4098 * src/io-bmp.c (OneLine24): new patch from Arjan to handle
4101 1999-11-24 James Henstridge <james@daa.com.au>
4103 * configure.in (AC_OUTPUT): altered hack to place the symlink in the
4104 top builddir rather than src. This still builds fine, and does not
4105 get gtk-doc into an infinite loop when trying to find all the source
4108 1999-11-23 Jonathan Blandford <jrb@redhat.com>
4110 * Removed #PRAGMA } from headers. Also, make compile if you don't
4111 have it installed, already.
4113 1999-11-22 Federico Mena Quintero <federico@redhat.com>
4115 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_draw): Create the
4116 temporary buffer to the size of the interesction of the bounding
4117 box and the expose area, not the whole expose area. This speeds
4120 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_threshold_alpha): Do
4121 not paint black on the mask, since we already cleared it in a
4122 single gdk_draw_rectangle() operation.
4124 1999-11-22 Raja R Harinath <harinath@cs.umn.edu>
4126 * configure.in (GDK_PIXBUF_DIR): Fix for srcdir != builddir.
4128 1999-11-22 Havoc Pennington <hp@pobox.com>
4130 * src/Makefile.am (GDK_PIXBUF_LIBS): Patch from Paul Fisher
4131 <pnfisher@redhat.com> adds all -lgdk-pixbuf and all other
4132 dependencies to LIBADD variables for loadable modules. Necessary
4133 for a Java dynamic loading thing to be able to figure it out.
4135 1999-11-22 Havoc Pennington <hp@pobox.com>
4137 * src/io-png.c (image_load_increment): Call the update_area
4138 callback depending on the number of rows loaded in this increment.
4140 * src/testpixbuf.c (main): slow down the progressive load demo
4142 1999-11-16 Havoc Pennington <hp@pobox.com>
4144 * src/gdk-pixbuf-drawable.h: Get the quotes right on the #include
4146 1999-11-22 Jonathan Blandford <jrb@redhat.com>
4148 * configure.in (GDK_PIXBUF_DIR): make the symlink. Does not work
4149 for srcdir != buildir != . Beats me why; I can't figure it out.
4150 AC_OUTPUT_COMMANDS doesn't seem to let me substitute it correctly.
4152 1999-11-21 Jonathan Blandford <jrb@redhat.com>
4154 * src/gdk-pixbuf-io.c: added io-bmp from Arjan
4155 <arjan@fenrus.demon.nl>
4157 1999-11-20 Michael Zucchi <zucchi@zedzone.mmc.com.au>
4159 * src/gdk-pixbuf-drawable.c (gdk_pixbuf_from_drawable_core):
4160 Rework/reorder of the code. Each case has been separated into
4161 another function; its big but it should be quick.
4162 gdk_pixbuf_rgba_from_drawable() will now return a pixbuf with
4163 opaque alpha information. Not all depths/formats have been
4164 tested, but 8, 15/16 and 24 (alinged 32) should work ok.
4166 1999-11-17 Larry Ewing <lewing@gimp.org>
4168 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_bounds):
4169 implement the bounds method correctly.
4170 (compute_viewport_affine): compute the affine need to fit the
4171 image within the viewport given by the args.
4172 (compute_render_affine): call compute_viewport_affine.
4174 1999-11-16 Havoc Pennington <hp@pobox.com>
4176 * src/gdk-pixbuf-drawable.h: Use includes from the current
4177 directory, not the system directory.
4179 Mon Nov 15 17:18:28 1999 George Lebl <jirka@5z.com>
4181 * src/testpixbuf-drawable.c: use includes from the current directory
4182 rather then from the system include directory as gdk-pixbuf
4183 includes are not yet installed when this is compiled.
4185 1999-11-13 Cody Russell <bratsche@dfw.net>
4186 * src/testpixbuf-drawable.c: Added a test program for drawable
4189 * src/Makefile.am: Build testpixbuf-drawable.
4191 1999-11-12 Cody Russell <bratsche@dfw.net>
4193 * src/gdk-pixbuf-drawable.c: Merged in Michael Zucchi's changes.
4195 1999-11-10 Federico Mena Quintero <federico@redhat.com>
4197 * doc/tmpl/gdk-pixbuf-loader.sgml: Populated.
4199 * doc/gdk-pixbuf.signals: Put in the real names of signal
4202 * src/gdk-pixbuf-loader.c: Improved documentation comments.
4204 1999-11-10 Jonathan Blandford <jrb@redhat.com>
4206 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): emit the
4209 * src/io-ras.c (OneLineMapped_file): Now can handle indexing
4210 correctly. Patch from Arjan to do so.
4212 1999-11-10 Michael Fulbright <drmike@redhat.com>
4214 * src/io-pnm.c (pnm_ascii_read_scanline): Fixed loading of ASCII PNM
4217 * src/testpixbuf.c: Added final queued draw when done loading image.
4219 1999-11-10 Jonathan Blandford <jrb@redhat.com>
4221 * src/gdk-pixbuf-io.c (gdk_pixbuf_load_module): removed spurious
4224 1999-11-10 Federico Mena Quintero <federico@redhat.com>
4226 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): Added
4229 1999-11-09 Federico Mena Quintero <federico@redhat.com>
4231 * src/io-png.c: Fixed some incompatible pointer initializations.
4233 * src/io-jpeg.c (image_load_increment): Remove unused variable.
4235 1999-11-09 Michael Fulbright <drmike@redhat.com>
4237 * src/testpixbuf.c: Fixed it to use timeout to read from file
4238 for progressive loading. Set TBF_KBPS=n, where n is the number of
4239 kilobytes/second to simulate in downloading. n has to be an integer.
4241 * src/io-jpeg.c: Slight cosmetic cleanup.
4243 * src/io-pnm.c: Fixed raw PNM loading bug. Also discovered that ASCII
4244 PBM loading has a similar problem and will address tomorrow.
4246 1999-11-09 Havoc Pennington <hp@pobox.com>
4248 * src/Makefile.am (libgdk_pixbuf_la_SOURCES): build the
4249 gdk-pixbuf-drawable stuff.
4251 1999-11-09 Federico Mena Quintero <federico@redhat.com>
4253 * configure.in: Bumped version number to 0.4.
4255 1999-11-09 Michael Fulbright <drmike@redhat.com>
4257 * src/io-pnm.c : Finished progressive PNM loading code. Should handle
4258 all types of PNM files now.
4260 * src/io-jpeg.c (image_load_increment): Figured out problem with
4261 loading Progressive JPEG's progressively (say that 10 times fast).
4262 Currently for Progressive JPEG's the entire image is loaded before
4263 it is displayed. libjpeg supports a fancier mechanism which I may
4266 With these changes all JPEG formats appear to load properly for me.
4268 1999-11-08 Jonathan Blandford <jrb@redhat.com>
4270 * src/io-ras.c (image_load_increment): Final patch from Arjan.
4271 Seems to do progressive loading.
4273 1999-11-08 Michael Fulbright <drmike@redhat.com>
4275 * src/io-pnm.c image_load (): Fixed so we do not create a separate
4276 pixel buffer when reading in image - we reuse the pixel data in
4277 the GdkPixbuf structure instead.
4279 1999-11-08 Michael Fulbright <drmike@redhat.com>
4281 * src/io-pnm.c pnm_read_ascii_scanline (): Added support for
4282 ASCII PNM files. Note I haven't tested loaded ASCII PBM files because
4283 I can't seem to find a utility to convert into this format.
4284 Next is to add progressive loading support for the PNM format.
4286 1999-11-07 Federico Mena Quintero <federico@redhat.com>
4288 * doc/tmpl/gnome-canvas-pixbuf.sgml: Finished detailed explanation
4289 of the width, height, x, and y setting and pixels arguments.
4291 1999-11-05 Jonathan Blandford <jrb@redhat.com>
4293 * src/io-ras.c (image_load): third patch. Now it seems to load.
4295 * src/gdk-pixbuf-io.c: second patch Arjan van de Ven
4296 <arjan@fenrus.demon.nl> to autodetect/load the sunras files.
4298 * src/io-ras.c (image_load): new file from Arjan van de Ven
4299 <arjan@fenrus.demon.nl> to begin the ras loader.
4301 1999-11-05 Federico Mena Quintero <federico@redhat.com>
4303 * doc/gdk-pixbuf-sections.txt: Removed gdk-pixbuf-io, since it is
4304 for internal use only.
4306 * doc/gdk-pixbuf.sgml: Likewise.
4308 * doc/tmpl/gnome-canvas-pixbuf.sgml: Finished docs.
4310 1999-11-05 Michael Fulbright <drmike@redhat.com>
4312 * src/io-pnm.c: Implemented support for reading raw PBM/PGM/PPM
4313 files from a file. Next step is support for ASCII files, and
4314 then incremental loading.
4316 1999-11-04 Federico Mena Quintero <federico@redhat.com>
4318 * Makefile.am: Added doc to SUBDIRS.
4320 1999-11-04 Michael Fulbright <drmike@redhat.com>
4322 * src/io-jpeg.c: Prettied up code slightly.
4323 * src/io-pnm.c: Start of pnm loader (from file and progressively).
4324 Doesn't do much yet (will finish tomorrow).
4325 * src/gdk-pixbuf-io.c: Added pnm to structure of known types.
4327 1999-11-04 Federico Mena Quintero <federico@redhat.com>
4329 * doc/tmpl/rendering.sgml: Populated.
4331 * doc/Makefile.am: Added the template files.
4333 1999-11-04 Havoc Pennington <hp@pobox.com>
4335 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable): In
4336 docs, explain what a dither offset is for.
4337 (gdk_pixbuf_render_to_drawable_alpha): Explain why you would use
4338 this function vs. gdk_pixbuf_render_to_drawable().
4340 1999-11-04 Havoc Pennington <hp@pobox.com>
4342 * configure.in: Use libart-config correctly; find gnome-config
4343 separately. Fix GNOME_LIBS to be correct in "no gnome installed
4346 * src/Makefile.am: Link to GNOME_LIBS instead of a hardcoded
4349 Patch untested in the inside-gnome-libs case, I need to commit
4350 then check out to the gnome-libs I'm using.
4352 1999-11-04 Michael Fulbright <drmike@redhat.com>
4354 * src/io-jpeg.c (image_begin_load): Add update_func callback.
4355 * src/io-jpeg.c (image_load_increment): Call updated callback when
4356 new graphic data decoded.
4358 1999-11-04 Jonathan Blandford <jrb@redhat.com>
4360 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_update): handle the
4362 * src/io-png.c (image_begin_load): add a update_func callback.
4363 * src/io-gif.c (image_begin_load): add a update_func callback.
4364 (gif_get_lzw): added the update_func ability
4366 * src/io-tiff.c (image_begin_load): add a update_func callback.
4368 1999-11-04 Federico Mena Quintero <federico@redhat.com>
4370 * doc/tmpl/gdk-pixbuf.sgml: Populated.
4372 * doc/tmpl/refcounting.sgml: Populated.
4374 * doc/tmpl/file-loading.sgml: Populated.
4376 * src/gdk-pixbuf.c: Added documentation comments.
4378 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_file): Added
4379 documentation comments.
4381 * doc/: Finished integrating the documentation framework.
4383 1999-11-03 Federico Mena Quintero <federico@redhat.com>
4385 * configure.in: Removed libgif stuff now that we do not depend on it.
4386 Added the necessary cruft for gtk-doc.
4388 * src/Makefile.am: Unconditionally build the GIF loader.
4390 1999-11-03 Jonathan Blandford <jrb@redhat.com>
4392 * src/io-gif.c (gif_read): renamed ReadOK to gif_read.
4393 Added a lot of comments to the file.
4395 * src/Makefile.am (libpixbuf_gif_la_LIBADD): Remove dependency on
4398 1999-11-03 Michael Fulbright <drmike@redhat.com>
4400 * src/io-jpeg.c (image_load_increment): Further removal of
4401 bugginess in local buffering code. Handles grayscale jpegs
4404 * src/io-jpeg.c (image_load_stop): Was freeing local context
4405 for jpeg library before calling jpeg_decompres_finish ().
4407 1999-11-03 Jonathan Blandford <jrb@redhat.com>
4409 * src/io-gif.c (image_load_increment): now handle arbitrary buffer
4411 (gif_get_lzw): set the transparency to the right val.
4413 1999-11-03 Federico Mena Quintero <federico@redhat.com>
4415 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_init):
4416 Initiailize the x and y fields.
4417 (gnome_canvas_pixbuf_destroy): Queue a redraw upon destruction.
4418 (PixbufPrivate): Renamed need_size_update to need_xform_update.
4419 (recompute_bounding_box): Do not use temporary values.
4421 1999-11-03 Jonathan Blandford <jrb@redhat.com>
4423 * src/io-gif.c (set_gif_lzw_clear_code): new state. Fixes
4426 * src/gnome-canvas-pixbuf.c (recompute_bounding_box): remove
4427 unneeded x,y,h,w vars.
4429 1999-11-03 Larry Ewing <lewing@gimp.org>
4431 * src/gnome-canvas-pixbuf.c (compute_render_affine): adjust
4432 render_affine calculation for x,y offsets.
4433 (gnome_canvas_pixbuf_set_arg): add x,y args.
4434 (gnome_canvas_pixbuf_get_arg): add x,y args.
4435 (recompute_bounding_box): simply code using ArtDrect and the
4436 render_affine. Removed compute_xform_vectors as it was no longer
4439 1999-11-03 Federico Mena Quintero <federico@redhat.com>
4441 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_point): I'm a
4442 doofus. Return a distance, not a boolean, for opaque images.
4444 * src/gnome-canvas-pixbuf.c (recompute_bounding_box): Do proper
4445 rounding of bounding box coordinates.
4446 (gnome_canvas_pixbuf_bounds): Implemented the ::bounds() method.
4447 (gnome_canvas_pixbuf_draw): Use the correct alpha threshold value.
4449 1999-11-03 Jonathan Blandford <jrb@redhat.com>
4451 * src/io-gif.c (gif_prepare_lzw): s/lwz/lzw/g
4453 1999-11-03 Michael Fulbright <drmike@redhat.com>
4455 * src/io-jpg.c (image_load_increment): Fixed code which moved
4456 buffer around as new data comes in to work properly. JPEG progressive
4457 loading should be working now except for grayscale JPEG's, which I
4458 will look into next.
4460 1999-11-03 <sopwith@redhat.com>
4461 * src/testpixbuf.c: A GtkFunction needs to return a value for
4462 deterministic behaviour. Also put dot printing back in.
4464 1999-11-03 <jrb@redhat.com>
4466 * src/io-gif.c (gif_get_extension): Read 'til the next empty block
4469 1999-11-02 Cody Russell <bratsche@dfw.net>
4470 * src/gdk-pixbuf-drawable.c: Changed the behavior to return NULL
4471 if part of the requested image is offscreen, rather than clipping
4474 1999-11-02 Jonathan Blandford <jrb@redhat.com>
4476 * src/io-gif.c (gif_fill_in_lines): Fill in the gif's blank areas
4477 for interlacing and progressive loading.
4479 1999-11-02 Cody Russell <bratsche@dfw.net>
4480 * src/gdk-pixbuf-drawable.c (gdk_pixbuf_from_drawable_core): Now
4481 calls gdk_pixbuf_new_from_art_pixbuf() instead of gdk_pixbuf_new().
4483 1999-11-02 Jonathan Blandford <jrb@redhat.com>
4485 * src/io-gif.c (gif_main_loop): Now progressive gif loading works!
4486 It's a little slow though. )-:
4488 1999-11-02 Elliot Lee <sopwith@redhat.com>
4489 * src/gdk-pixbuf-loader.[ch], src/gdk-pixbuf-io.h: Make the
4490 arguments to the write/load_increment operations const-correct.
4492 1999-11-02 Federico Mena Quintero <federico@redhat.com>
4494 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_point):
4495 Implemented the ::point() method. We do a simple containment test
4496 instead of a full distance calculation since the canvas is going
4497 to change to that scheme, anyways.
4499 1999-11-02 Elliot Lee <sopwith@redhat.com>
4501 * src/testpixbuf.c: Allow using $TBF_READLEN to specify the size
4502 of the chunks that are read from the input file.
4504 1999-11-02 Larry Ewing <lewing@gimp.org>
4506 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_render): add aa
4508 (gnome_canvas_pixbuf_class_init): add gnome_canvas_pixbuf_render
4511 1999-11-02 Federico Mena Quintero <federico@redhat.com>
4513 * src/gnome-canvas-pixbuf.c (compute_render_affine): Moved the
4514 affine computation code from ::draw() to here, since it is needed
4515 by ::point() as well.
4517 1999-11-02 Elliot Lee <sopwith@redhat.com>
4519 * src/gdk-pixbuf-loader.c: Reorganize gdk_pixbuf_loader_write into
4520 three functions, and eliminate duplication of code from write()
4521 and close(). Also fix bug where the 128-byte header was being
4524 1999-11-01 Federico Mena Quintero <federico@redhat.com>
4525 * src/gnome-canvas-pixbuf.c (recompute_bounding_box): Fixed
4526 bounding box computation.
4528 1999-11-01 Federico Mena Quintero <federico@redhat.com>
4530 * src/gnome-canvas-pixbuf.c: Start of the pixbuf canvas item.
4531 Drawing affines seem to work. Bounding box is fubared. ::point()
4532 is not implemented. This is a work in progress.
4534 * src/Makefile.am: Added gnome-canvas-pixbuf.[ch] to the list of
4537 * configure.in: Sigh. We need to link in libgnomeui for the
4538 canvas stuff. This mess will disappear when gdk-pixbuf gets
4539 folded into gnome-libs.
4541 1999-10-30 Jonathan Blandford <jrb@redhat.com>
4543 * src/io-gif.c: Some more work. Now it generates a gdk_pixbuf of
4544 the right size, at a minimum, even if the image is squished and
4546 (ReadImage): lets get the offset right. This will let transparent
4549 1999-10-29 Michael Fulbright <drmike@redhat.com>
4551 * src/io-jpeg.c: image_load_increment(): Fixed bug when
4552 image width was not a multiple of 4 - always use the
4553 gdk_pixbuf rowstride to increment pointers!
4555 1999-10-29 Michael Fulbright <drmike@redhat.com>
4557 * src/io-jpeg.c: Added first cut at progressive jpeg loading.
4558 Currently does not handle either progressive jpeg files (jpeg
4559 files with multiple scans at different quality settings), but
4560 I plan on adding this support soon. These are fairly rare in
4561 my experience, so it shouldn't slow people down too much.
4562 Grayscale jpegs also don't work but that should be easy to fix.
4564 1999-10-29 Michael Fulbright <drmike@redhat.com>
4566 * src/testpixbuf.c: Added title to windows so you can identify
4567 progressive and file windows.
4569 1999-10-29 Michael Fulbright <drmike@redhat.com>
4571 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): Actually
4572 load the image handler when we determine the image type.
4574 * src/gdk-pixbuf-io.[ch] (gdk_pixbuf_load_module): Changed the
4575 previously static function load_image_handler () to
4576 a public function gdk_pixbuf_load_module (). It is needed in
4577 gdk-pixbuf-loader.c to load image handler modules. This function
4578 is different from gdk_pixbuf_get_module (), which only returns
4579 a reference to the required handler, because it actually loads
4580 the handler into memory. Both actions should possibly be combined
4581 in a convenience function since one w/o the other doesn't seem to
4584 1999-10-28 Jonathan Blandford <jrb@redhat.com>
4586 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): don't send a
4589 1999-10-28 Federico Mena Quintero <federico@redhat.com>
4591 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable): New
4592 function to render a portion of a pixbuf to a drawable. Ignores
4593 alpha information and takes in a GC.
4594 (gdk_pixbuf_render_to_drawable_alpha): New function to render a
4595 portion of a pixbuf to a drawable. It automatically creates a GC
4596 and a clipping mask for alpha pixbufs.
4598 1999-10-28 Jonathan Blandford <jrb@redhat.com>
4600 * src/gdk-pixbuf.h: turned convenience macros into convenience
4601 functions so some error checking could be added.
4603 * src/io-tiff.c (image_load_increment): started work on the tiff
4604 non-incremental loader.
4605 (image_begin_load): Finished the incremental loader.
4607 * src/io-gif.c (image_load_increment): started work on the gif
4610 * src/gdk-pixbuf-io.h: Changed ModuleType to GdkPixbufModule.
4612 1999-10-27 Federico Mena Quintero <federico@redhat.com>
4614 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_threshold_alpha): New
4615 function to threshold a pixbuf's alpha channel into a bitmap.
4617 * src/gdk-pixbuf.c (gdk_pixbuf_new): Fixed so that it will
4618 contemplate future extensions to ArtPixBuf's formats.
4620 * src/io-png.c (png_info_callback): Use the new API of gdk_pixbuf_new().
4622 * src/gdk-pixbuf.h (gdk_pixbuf_get_height): Added some convenience
4623 macros to fetch the ArtPixBuf's fields.
4625 1999-10-27 Havoc Pennington <hp@pobox.com>
4627 * src/testpixbuf.c (main): Display the progressive load
4629 * src/io-png.c (setup_png_transformations): Break transformation
4630 code into separate function
4631 (png_info_callback): Use setup_png_transformations
4633 1999-10-27 Havoc Pennington <hp@pobox.com>
4635 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): Check
4636 properly whether the XPM module has already been loaded
4637 (gdk_pixbuf_new_from_file): Check properly if loader module
4638 was already loaded (was checking if load symbol was present
4639 in order to decide whether to re-load; should check module !=
4640 NULL, then load != NULL)
4641 (image_handler_load): Check in present working directory,
4642 makes it easier to debug for now
4643 (file_formats): This array initializer was seriously on crack,
4644 was assigning a function pointer to a GModule*
4646 * src/testpixbuf.c (main): Change type of pixbuf_loader to
4649 1999-10-27 Havoc Pennington <hp@pobox.com>
4651 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_finalize):
4652 Fix typo that prevented compilation
4653 (gdk_pixbuf_loader_destroy): ditto
4655 1999-10-27 Federico Mena Quintero <federico@redhat.com>
4657 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_new): Return a
4658 GdkPixbufLoader, not a GtkObject.
4659 (gtk_marshal_NONE__INT_INT_INT_INT): Made static.
4660 (gdk_pixbuf_loader_get_type): Documented.
4661 (gdk_pixbuf_loader_class_init): Initialize the parent class
4663 (gdk_pixbuf_loader_destroy): Added sanity checks. Call the parent
4664 class destroy function.
4665 (gdk_pixbuf_loader_new): Documented.
4666 (gdk_pixbuf_loader_finalize): Call the parent class finalize
4668 (gdk_pixbuf_loader_write): Use size_t for count.
4670 1999-10-27 Michael Fulbright <drmike@redhat.com>
4672 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_destroy): Fixed
4673 logic so we only try to close loader if it wasn't previously closed.
4675 1999-10-27 Michael Fulbright <drmike@redhat.com>
4677 * src/gdk-pixbuf-loader.c: Made sure image_loader struct member of
4678 pixbuf_loader properly initialized.
4680 * src/testpixbuf.c: Made sure we cleanup pixbuf_loader properly
4683 1999-10-26 Jonathan Blandford <jrb@redhat.com>
4685 * src/gdk-pixbuf-io.c (image_handler_load): load the vtable fully.
4687 * src/gdk-pixbuf-loader.c: Finished initial cut at the object.
4689 1999-10-26 Havoc Pennington <hp@pobox.com>
4691 * src/gdk-pixbuf-loader.h: fix signals
4693 * src/gdk-pixbuf-io.h: add new vtable fields
4696 1999-10-26 Jonathan Blandford <jrb@redhat.com>
4698 * src/gdk-pixbuf-loader.h: New Class. Beginning of progrssive
4701 1999-10-25 Federico Mena Quintero <federico@redhat.com>
4703 * configure.in (CFLAGS): Patch from Uwe Koloska
4704 <koloska@Rcs1.urz.tu-dresden.de> to fix a stupid typo of mine.
4706 1999-10-22 Havoc Pennington <hp@pobox.com>
4708 * src/io-xpm.c (mem_buffer): Clean up stupid
4709 increment-inside-array-dereference thing
4711 * src/testpixbuf.c: Add XPM data tests.
4713 * src/io-xpm.c: Make the XPM data buffer const, fix const
4714 correctness throughout the code.
4716 1999-10-22 Havoc Pennington <hp@pobox.com>
4718 * src/gdk-pixbuf.h: Export gdk_pixbuf_new_from_xpm_data()
4720 1999-10-22 Havoc Pennington <hp@pobox.com>
4722 * src/io-xpm.c (image_load_xpm_data): Export this symbol for
4723 loading an XPM from memory.
4725 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): New
4726 function, loads pixbuf from xpm data
4727 (image_handler_load): Add g_return_if_fail() to ensure the same
4728 module isn't loaded twice. Add g_module_symbol() to scan for XPM
4731 1999-10-22 Federico Mena Quintero <federico@redhat.com>
4733 * src/io-png.c (image_load): Patch from Kristian Hogsberg
4734 Kristensen <hogsberg@daimi.au.dk> to avoid allocating extra row
4735 buffers; the rows can be read in directly into the main pixel
4738 1999-10-20 Federico Mena Quintero <federico@redhat.com>
4740 * src/gdk-pixbuf-io.c (image_handler_load): Free path.
4742 1999-10-20 Federico Mena Quintero <federico@redhat.com>
4744 * configure.in: Bumped version number to 0.3.
4746 * src/Makefile.am (lbgdk_pixbuf_la_LDFLAGS): Added a libtool
4747 version number for the library.
4749 1999-10-20 Federico Mena Quintero <federico@redhat.com>
4751 * src/gdk-pixbuf.h (GdkPixbuf): Removed the unref_fn field. Now
4752 all memory management of the buffer is done by libart.
4754 * src/gdk-pixbuf.c (gdk_pixbuf_unref): Do destruction here.
4755 Removed gdk_pixbuf_destroy, gdk_pixbuf_duplicate.
4757 * src/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Implemented in
4758 terms of the libart functions. Removed the old code.
4760 * src/gdk-pixbuf-io.c (image_handler_load): Removed the save
4761 symbols. Saving will not be implemented in GdkPixbuf.
4763 * src/io-gif.c: Removed the saving stub.
4764 (image_load): Fixed memory management to fail gracefully if we run
4765 out of memory while loading the image. Close the gif file when we
4766 are done. This still needs more error handling for the DGif
4769 * src/io-jpeg.c (image_load): Some robustness fixes.
4771 * src/io-png.c: Removed the saving stuff.
4772 (image_load): Some memory management fixes.
4774 * src/io-tiff.c (image_load): Ditto.
4776 * src/io-xpm.c (pixbuf_create_from_xpm): Ditto.
4778 1999-10-18 Havoc Pennington <hp@pobox.com>
4780 * subautogen.sh: New name for macros/autogen.sh
4782 * autogen.sh: use subautogen.sh
4784 1999-10-18 Federico Mena Quintero <federico@redhat.com>
4786 * src/*: Reindented to use the GNOME Indentation. Renamed
4787 GdkPixBuf to GdkPixbuf, for consistency with the function names
4788 (and it is also easier to type) :-)
4790 1999-10-18 Havoc Pennington <hp@pobox.com>
4792 * configure.in: Use AM_PATH_GLIB instead of glib-config directly
4794 * src/Makefile.am: Re-enable testpixbuf with GTK_CFLAGS/GTK_LIBS
4796 1999-10-18 Havoc Pennington <hp@pobox.com>
4798 * Makefile.am (SUBDIRS): Remove "macros"
4800 * configure.in: Don't use GNOME_INIT, handle case where we are
4801 inside gnome-libs. AM_PATH_GTK for the GIF test
4803 * src/Makefile.am: Change flags to work without libgnomeui,
4804 comment out testpixbuf for now
4806 1999-10-18 Federico Mena Quintero <federico@redhat.com>
4808 * configure.in: Use $GTK_LIBS as the extra libs when checking for
4809 libgif/libungif, as they need the X libraries. Fixes bug #2472.
4811 1999-10-10 Cody Russell <bratsche@dfw.net>
4812 * src/gdk-pixbuf-drawable.c: core function now determines whether
4813 the requested geometry is on screen or not, and if some is not
4814 then the request is clamped to geometry that is on the screen.
4816 Changed 'pixbuf' to 'art_pixbuf' in core function.
4818 1999-10-08 Michael Fulbright <drmike@redhat.com>
4820 * src/gdk-pixbuf-data.c: Added to load rgb data from const data.
4822 * src/testpifbuf: Changed test program to display cdrom from rgb data
4823 if no filename given to test program.
4825 1999-10-07 Cody Russell <bratsche@dfw.net>
4826 * src/gdk-pixbuf-drawable.[ch]: Added. (Actually, Miguel committed
4827 them, but I wrote them).
4829 * src/gdk-pixbuf-drawable.h: Added a missing ; so things will now
4832 * src/Makefile.am: Added gdk-pixbuf-drawable.[ch] to
4833 libgdk_pixbuf_la_SOURCES and libgdk_pixbufinclude_HEADERS.
4835 * src/gdk-pixbuf-drawable.c: Added #include "gdk-pixbuf-drawable.h"
4838 * src/gdk-pixbuf-drawable.[ch]: Changed functions to return
4839 GdkPixBuf* instead of ArtPixBuf*.
4841 1999-09-22 Michael Meeks <michael@nuclecu.unam.mx>
4843 * src/gdk-pixbuf.c (gdk_pixbuf_new): created.
4844 (gdk_pixbuf_scale): use gdk_pixbuf_new + return a new scaled image.
4846 * src/gdk-pixbuf.h (struct _GdkPixBuf): Re-organise struct, + add
4847 GdkPixBufUnrefFunc + gdk_pixbuf_new.
4849 * src/io-jpeg.c (image_load): clean to use gdk_pixbuf_new.
4851 * src/io-xpm.c (_pixbuf_create_from_xpm): ditto.
4853 * src/io-tiff.c (image_load): ditto + fix leak
4855 * src/io-png.c (image_load): ditto + add more exit points; monitor.png
4856 crashes this module ( add warning :-)
4858 * src/io-bmp.c (image_load): ditto.
4860 * src/io-gif.c (image_load): ditto.
4862 1999-09-18 Michael Meeks <michael@nuclecu.unam.mx>
4864 * src/gdk-pixbuf.c (gdk_pixbuf_scale): Hack rgba support in so
4865 it doesn't crash scaling with alpha.
4867 1999-09-17 Federico Mena Quintero <federico@redhat.com>
4869 * src/io-bmp.c (image_load): Set the initial ref_count to 1.
4871 * src/io-gif.c (image_load): Likewise.
4873 * src/io-jpeg.c (image_load): Likewise.
4875 * src/io-png.c (image_load): Likewise.
4877 * src/io-tiff.c (image_load): Likewise.
4879 * src/io-xpm.c (_pixbuf_create_from_xpm): Likewise.
4881 * src/gdk-pixbuf-io.c (gdk_pixbuf_load_image): Added an assertion
4882 for the ref_count to be != 0.
4884 * src/gdk-pixbuf.c (gdk_pixbuf_ref): Be more paranoid with sanity
4886 (gdk_pixbuf_unref): Fix incorrect sanity check and comparison.
4888 1999-08-09 Federico Mena Quintero <federico@nuclecu.unam.mx>
4890 * src/io-png.c (image_save): Fixed compiler warnings. Fixed write
4891 to unallocated memory (row_ptr), and fixed its type as well. Take
4892 into account the ArtPixbuf's rowstride when assigning the row
4895 * src/gdk-pixbuf.c: Fixup includes.
4897 * src/gdk-pixbuf-io.c: Likewise.
4899 Sat Jul 31 19:19:47 CEST 1999
4901 * src/gdk-pixbuf-io.c:
4902 * src/io-png.c: Fixed two obvious C syntax bugs
4904 1999-07-29 Mark Crichton <crichton@gimp.org>
4906 * src/io-png.c (image_save): Added PNG saving function
4908 * src/gdk-pixbuf-io.c: Changed image_save function format. Now it's
4909 image_save(GdkPixBuf *p, FILE *f, ...)
4912 1999-07-26 Michael Zucchi <mzucchi@denr.sa.gov.au>
4914 * src/Makefile.am (*_LIB): Only build the relevant loaders which
4915 require extra libraries if we actually have those libraries.
4917 1999-07-23 Richard Hestilow <hestgray@ionet.net>
4919 * src/gdk-pixbuf.h: Include glib.h as it uses g* datatypes
4920 * gdk_pixbufConf.sh.in: Added for gnome-config
4922 * configure.in: Modified to generate gdk_pixbufConf.sh
4924 1999-07-20 Mark Crichton <crichton@gimp.org>
4926 * src/gdk-pixbuf.c (gdk_pixbuf_rotate): Fixed rotation. Now a bbox
4927 calculation needs to be done.
4929 1999-07-18 Larry Ewing <lewing@gimp.org>
4934 * src/io-jpeg.c: Fix a few memory leaks in the, most of them in
4935 error cases but one or two in the common case. There are probably
4936 a few small ones left.
4938 1999-07-18 Mark Crichton <crichton@gimp.org>
4940 * configure.in: removed version.h.
4942 * src/gdk-pixbuf-io.c (pixbuf_check_tiff): Minor readability
4945 1999-07-17 Mark Crichton <crichton@gimp.org>
4947 * src/gdk-pixbuf.c: Removed gdk_pixbuf_free, redundant code.
4948 (gdk_pixbuf_rotate): Added pixbuf rotation code.
4949 (gdk_pixbuf_scale): Changed // comments to /* */
4951 * src/gdk-pixbuf.h (gdk_pixbuf_destroy): Added gdk_pixbuf_destroy
4954 1999-07-16 Larry Ewing <lewing@gimp.org>
4956 * src/testpixbuf.c (expose_func): reverted the expose everything
4957 changes, I'm not sure why these went in.
4958 (config_func): bring this up to date with the new pixbuf_scale
4961 * src/gdk-pixbuf-io.c: added a couple of warnings to the module
4962 loading code so that poeple can diagnose problems better.
4964 * src/gdk-pixbuf.c (gdk_pixbux_scale): fix the borkedness, also it
4965 no longer allocates a new pixbuf, which make things nicer for the
4966 rest of the code. Unfortunately there is still a problem with
4967 scaling rgba images.
4969 1999-07-16 Mark Crichton <crichton@gimp.org>
4971 * src/testpixbuf.c (config_func): ConfigureEvent handler. This
4972 calls gdk_pixbuf_scale. However, something is not working.
4973 N.B.: current pixmap is now stored in user_data with a key of
4976 * src/gdk-pixbuf.c (gdk_pixbuf_scale): Implemented scaling function.
4977 Something is still borked, however.
4979 1999-07-15 Larry Ewing <lewing@gimp.org>
4981 * src/io-jpeg.c (image_load): add raph@gimp.org's fix to the jpeg
4984 * src/testpixbuf.c (main): fix up the file routines a little so
4985 that you can load multiple files given the file names
4987 1999-07-14 Larry Ewing <lewing@gimp.org>
4989 * src/testpixbuf.c (expose_func): added an almost proper expose
4990 handler for testpixbuf
4992 1999-07-13 Mark Crichton <crichton@gimp.org>
4994 * configure.in: Fixed GIF check. Replaced " with '
4995 * src/gdk-pixbuf.c: More (minor) work on gdk_pixbuf_scale
4997 1999-07-13 Mark Crichton <crichton@gimp.org>
4999 * configure.in: I am a bonehead. Added gif-lib check.