1 Fri Jul 9 15:38:06 2004 Manish Singh <yosh@gimp.org>
3 * gdk-pixbuf-io.c (gdk_pixbuf_format_set_disabled): function doesn't
4 return a value, so don't use g_return_val_if_fail()
6 * gdk-pixbuf-scale.c (gdk_pixbuf_rotate_simple): initialize dest in
7 the can't happen case, to quiet gcc.
9 * io-tiff.c (tifflibversion): enclose in #if TIFFLIB_VERSION >=
12 Wed Jul 7 23:53:58 2004 Matthias Clasen <maclas@gmx.de>
15 * gdk-pixbuf-io.c (gdk_pixbuf_format_is_disabled):
16 * gdk-pixbuf-io.c (gdk_pixbuf_format_set_disabled):
17 * gdk-pixbuf-io.c (gdk_pixbuf_format_get_license):
18 New functions to disable/enable individual loaders and to
19 obtain license information about loaders.
21 * gdk-pixbuf-io.h (GdkPixbufFormat): Add disabled and
24 * gdk-pixbuf-io.c (_gdk_pixbuf_get_module):
25 * gdk-pixbuf-io.c (_gdk_pixbuf_get_named_module): Skip
28 * io-*.c: Add license information in the fill_info
31 2004-07-07 Matthias Clasen <mclasen@redhat.com>
33 * gdk-pixbuf-features.h.in: Fix the build.
35 2004-07-06 Tor Lillqvist <tml@iki.fi>
37 * gdk-pixbuf-features.h.in
38 * gdk-pixbuf.c: Mark the version variables for proper import and
39 export from Windows DLLs. Thanks to Laurent Sansonetti for
40 reporting the problem.
42 Sat Jul 3 00:41:44 2004 Matthias Clasen <maclas@gmx.de>
44 * pixops/pixops.c (bilinear_box_make_weights): Correct the
45 math to calculate bilinear weights. (#112412, Brian Cameron)
47 Mon Jun 21 00:44:51 2004 Matthias Clasen <maclas@gmx.de>
49 * gdk-pixbuf-transform.h:
50 * gdk-pixbuf-scale.c (gdk_pixbuf_rotate_simple):
51 * gdk-pixbuf-scale.c (gdk_pixbuf_flip): New functions to
52 rotate pixbufs by multiples of 90 degrees and to flip them
53 horizontally or vertically.
55 Sun Jun 20 01:06:48 2004 Matthias Clasen <maclas@gmx.de>
57 Header reorganization. (#51999, Jeff Franks, reorganization
58 proposed by Havoc Pennington)
60 * gdk-pixbuf.h: This is now an include-only header, and the only
61 one which applications should directly use.
63 * gdk-pixbuf-animation.h: Add animation api from gdk-pixbuf.h.
64 * gdk-pixbuf-io.h: Add io api from gdk-pixbuf.h.
65 * gdk-pixbuf-loader.h: Add loader api from gdk-pixbuf.h.
66 * gdk-pixbuf-transform.h: New header.
67 * gdk-pixbuf-core.h: New header.
69 Sat Jun 19 01:44:12 2004 Matthias Clasen <maclas@gmx.de>
71 * gdk-pixbuf-scale.c (gdk_pixbuf_composite): Add a figure which
72 explains pixbuf compositing.
74 2004-06-16 Matthias Clasen <mclasen@redhat.com>
76 * io-tiff.c: Make the tiff loader work with both
77 libtiff 3.5.7 and libtiff 3.6.1. (#135541, Marco Ghirlanda)
79 Fri Jun 11 22:02:56 2004 Matthias Clasen <maclas@gmx.de>
81 * io-gif.c, io-pnm.c, io-tga.c, io-xpm.c: Don't use
82 contractions like "don't" or "isn't" in error messages.
83 It isn't nice to use them in log entries either...
84 (#137774, Morten Welinder, patch by Alexander Winston)
86 Sat Jun 5 00:59:12 2004 Matthias Clasen <maclas@gmx.de>
90 * gdk-pixbuf-animation.c:
91 * gdk-pixbuf-io.c: Convert filenames to UTF-8 when embedding
92 them in error messages. (#143654, Sven Neumann)
94 Sun May 16 22:53:47 2004 Matthias Clasen <maclas@gmx.de>
98 * io-pnm.c (pnm_read_next_value): Don't read integers
99 partially. (#142584, Kouichirou Hiratsuka)
101 2004-05-10 Matthias Clasen <mclasen@redhat.com>
105 * pixops/timescale.c:
108 * gdk-pixbuf-scale.c: _-prefix the nonstatic pixops_...
109 functions. (#142233, Morten Welinder)
111 Wed May 5 23:09:48 2004 Matthias Clasen <maclas@gmx.de>
113 * gdk-pixbuf-io.h (GdkPixbufFormatFlags): New format flag
114 GDK_PIXBUF_FORMAT_SCALABLE to mark scalable formats.
117 * gdk-pixbuf-io.c (gdk_pixbuf_format_is_scalable): New function.
118 (#137995, Dom Lachowicz)
120 2004-04-30 Matthias Clasen <mclasen@redhat.com>
122 * === Released 2.4.1 ===
124 2004-04-13 Matthias Clasen <mclasen@redhat.com>
126 * io-ani.c (gdk_pixbuf__ani_image_load_animation):
127 * gdk-pixbuf-io.c (gdk_pixbuf_get_file_info)
128 (_gdk_pixbuf_generic_image_load)
129 (gdk_pixbuf_new_from_file_at_size): When calling fread()
130 in a loop, check for ferror() as well as for feof() to
131 avoid infinite loops on directories. (#137804, Alex Converse)
133 Mon Mar 15 15:01:59 2004 Owen Taylor <otaylor@redhat.com>
135 * === Released 2.4.0 ===
137 2004-03-15 Tor Lillqvist <tml@iki.fi>
139 * queryloaders.c (main): [Win32] Look up installation prefix at
140 run-time, replace prefix in PIXBUF_LIBDIR with that. (#106141)
142 Merges from stable branch that had been left out. (#136282, J. Ali
145 Changes for run-time lookup of installation location on Win32:
147 * Makefile.am (INCLUDES): Define GTK_PREFIX as $(prefix).
149 * gdk-pixbuf-io.c (get_sysconfdir): New function, look up
150 installation location at runtime and deduce GTK_SYSCONFDIR
152 (get_toplevel): Similar, for the top-level installation directory.
153 (correct_prefix): Replace compile-time prefix with run-time
155 (get_libdir): Remove, not used any longer.
156 (gdk_pixbuf_io_init): Call correct_prefix() on Win32.
158 * queryloaders.c (query_module): [Win32] Change backslahses into
161 Tue Mar 9 09:33:28 2004 Owen Taylor <otaylor@redhat.com>
163 * === Released 2.3.6 ===
165 2004-03-05 Tor Lillqvist <tml@iki.fi>
167 * gdk_pixbuf.def: Add missing entries. Thanks to J. Ali Harlow.
169 Fri Mar 5 22:22:25 2004 Matthias Clasen <maclas@gmx.de>
171 * io-bmp.c (OneLine32): Don't try to load an alpha channel
172 from the BMP, since there is no evidence that even 32bit
173 BMPs have an alpha channel. (#135502)
175 Mon Mar 1 19:47:48 2004 Owen Taylor <otaylor@redhat.com>
177 * === Released 2.3.5 ====
179 2004-02-28 Hans Breuer <hans@breuer.org>
181 * io-tiff.c : include <io.h> for lseek()
182 * io-xbm.c : use HAVE_UNISTD_H
184 Tue Feb 24 14:45:03 2004 Owen Taylor <otaylor@redhat.com>
186 * === Released 2.3.3 ===
188 Sun Feb 22 01:09:55 2004 Matthias Clasen <maclas@gmx.de>
190 * io-bmp.c (gdk_pixbuf__bmp_image_begin_load): Remove debugging
193 Fri Feb 20 22:25:32 2004 Matthias Clasen <maclas@gmx.de>
195 * io-bmp.c (DecodeHeader): Store and sanity-check the clrUsed field
196 from the header for use in DecodeColormap.
197 * io-bmp.c (DecodeColormap): Don't read more colormap entries than
198 the header says are there. (#134235, Kazuho Okui)
200 Sun Feb 8 01:07:20 2004 Manish Singh <yosh@gimp.org>
202 * gdk-pixbuf-io.c: removed unnecessary G_OBJECT() cast checks.
204 * io-jpeg.c: make the return type for to_callback_empty_output_buffer
205 "boolean", which should be defined by the jpeg headers. The right
206 return type for this function depends on how the jpeg library
207 was built (one wonders what happens if different compilers are used).
209 2004-01-28 Hans Breuer <hans@breuer.org>
211 * gdk_pixbuf.def : updated externals
213 Sat Jan 17 23:02:55 2004 Matthias Clasen <maclas@gmx.de>
215 The second part of the fix for #114351 (see also
218 * gdk-pixbuf-i18n.h (P_): Use translation domain gtk20-properties.
220 Sat Jan 17 00:01:51 2004 Matthias Clasen <maclas@gmx.de>
222 The first part of the fix for #114351 (see also
225 * gdk-pixbuf-i18n.h: Define P_() for property blurbs and nicks.
227 * gdk-pixbuf.c: Mark property blurbs and nicks with P_().
229 Thu Jan 8 22:01:14 2004 Matthias Clasen <maclas@gmx.de>
231 * queryloaders.c (loader_sanity_check): Don't use bitwise operators
232 on booleans. (#130923, reported by Telsa Gwynne, fix by Dave Jones)
234 2004-01-06 Federico Mena Quintero <federico@ximian.com>
236 * gdk-pixbuf-io.c (gdk_pixbuf_save): Escape an ampersand in the
237 documentation comment, and hack around an empty line in the code
238 example so that gtk-doc won't put a <para> due to it.
240 * gdk-pixbuf.c (gdk_pixbuf_get_pixels): Link to the documentation
241 section on image data.
243 2004-01-06 Federico Mena Quintero <federico@ximian.com>
245 * gdk-pixdata.c (gdk_pixbuf_new_from_inline): Fix example in
246 documentation comment. Fixes #130701.
248 Wed Jan 7 02:41:14 2004 Matthias Clasen <maclas@gmx.de>
250 * gdk-pixbuf-io.c (gdk_pixbuf_save_to_bufferv):
251 * gdk-pixbuf-io.c (gdk_pixbuf_save_to_buffer):
252 * gdk-pixbuf-io.c (gdk_pixbuf_save_to_callbackv):
253 * gdk-pixbuf-io.c (gdk_pixbuf_save_to_callback): New public API
254 to save pixbufs to non-file locations. (#82203, Tim Evans)
257 * gdk-pixbuf.def: Declare the new public API.
259 * gdk-pixbuf-io.h: Add save_to_callback to the module interface.
262 * io-png.c: Implement save_to_callback.
264 * gdk-pixbuf-io.c (gdk_pixbuf_savev):
265 * gdk-pixbuf-io.c (gdk_pixbuf_save): Update documentation.
267 * gdk-pixbuf-io.c (gdk_pixbuf_real_save): Support saving via
268 image_module->save_to_callback.
270 * gdk-pixbuf-io.c (gdk_pixbuf_real_save_to_callback): New generic
271 save_to_callback function which falls back to image_module->save
274 Wed Jan 7 01:17:36 2004 Matthias Clasen <maclas@gmx.de>
276 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_size_func):
277 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_set_size):
278 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_init): Make it possible
279 to call gdk_pixbuf_loader_set_size (loader, 0, 0) by changing
280 the initial values of priv->width/height to -1.
282 * io-tiff.c (tiff_image_parse):
283 * io-ras.c (RAS2State):
284 * io-pnm.c (gdk_pixbuf__pnm_image_load_increment):
285 * io-pcx.c (gdk_pixbuf__pcx_load_increment):
286 * io-jpeg.c (gdk_pixbuf__jpeg_image_load_increment):
287 * io-png.c (png_info_callback):
288 * io-ico.c (DecodeHeader):
289 * io-bmp.c (DecodeHeader): Call size_func once the size is known,
290 even if the module can't make use of the scaling information. If
291 size_func returns 0, don't allocate a pixbuf and return, if
292 necessary with an error.
295 * gdk-pixbuf-io.c (gdk_pixbuf_get_file_info): A new function
296 to determine the type and size of an image file without loading
297 it completely. (#53725)
299 Sun Jan 4 00:44:57 2004 Matthias Clasen <maclas@gmx.de>
301 * gdk-pixbuf.c (gdk_pixbuf_class_init): Turn the pixbuf
302 attributes into (construct-only, but always readable)
303 properties. (#130196)
305 * gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Set properties
308 Mon Dec 22 01:35:36 2003 Matthias Clasen <maclas@gmx.de>
310 * Makefile.am (gdk-pixbuf.loaders): Fix building with
311 --disable-modules --with-included-loaders, create an
312 empty gdk-pixbuf.loaders file. (#124496, Arno Charlet, fix
313 proposed by Owen Taylor)
315 Thu Dec 11 01:57:05 2003 Matthias Clasen <maclas@gmx.de>
317 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): Move
318 the documentation for signals inline, to get proper parameter
319 documentation. (#128977)
321 Sat Nov 15 00:26:19 2003 Matthias Clasen <maclas@gmx.de>
323 * queryloaders.c (loader_sanity_check): Check that the mask
324 is NULL or a string of the same length consisting entirely of
325 ' ', '!', 'x', 'z', 'n'.
327 Mon Nov 10 00:17:52 2003 Matthias Clasen <maclas@gmx.de>
329 * Makefile.am (install-data-local): Typo fix in warning.
331 Sun Nov 9 23:07:05 2003 Matthias Clasen <maclas@gmx.de>
333 * gdk-pixbuf-io.c (_gdk_pixbuf_generic_image_load): If neither
334 load nor begin_load are available fall back to load_animation
335 and use gdk_pixbuf_animation_get_static_image() to obtain a
336 pixbuf. Inefficient, but at least doesn't crash.
338 Sun Nov 9 21:56:20 2003 Matthias Clasen <maclas@gmx.de>
340 * queryloaders.c (write_loader_info): New function to write
341 out the information for a single loader, factored out of
343 (loader_sanity_check): New function to perform
344 sanity checks on a loader.
345 (query_module): Use the new functions.
347 Thu Nov 6 00:27:27 2003 Matthias Clasen <maclas@gmx.de>
349 * io-pcx.c (gdk_pixbuf__pcx_load_increment): Fold two similar
350 strings into on. (#126204, Danilo Segan)
352 2003-09-19 Matthias Clasen <maclas@gmx.de>
354 * io-tga.c (try_preload): Remove a pointless check.
355 (#122710, Kjartan Maraas)
357 Mon Aug 18 10:25:29 2003 Owen Taylor <otaylor@redhat.com>
359 * gdk-pixdata.c (gdk_pixdata_to_csource): Add the correct
360 alignment magic for Sun compiler and for GCC to get
361 the strings aligned. (Patch from Brian Cameron, #117217)
363 2003-08-14 Matthias Clasen <maclas@gmx.de>
365 * gdk-pixdata.c (gdk_pixdata_to_csource): Improve doc comment
366 wording. (#119754, Doug Quale)
368 2003-08-03 Matthias Clasen <maclas@gmx.de>
370 * gdk-pixbuf.c (gdk_pixbuf_get_rowstride):
371 * gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Clarify misleading
372 explanation of rowstride. (#119000)
374 2003-07-24 Matthias Clasen <maclas@gmx.de>
376 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file_at_size): Preserve the
377 aspect ratio. (#118145, Owen Taylor)
379 2003-07-23 Matthias Clasen <maclas@gmx.de>
381 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file_at_size): Close loader
382 before unref'ing it. (#118146, Owen Taylor)
384 2003-03-01 Hans Breuer <hans@breuer.org>
386 * makefile.msc : updated
388 * gdk_pixbuf.def : export a bunch of new functions
390 2003-07-18 Matthias Clasen <maclas@gmx.de>
392 * pixops/pixops.c (correct_total): Split correction into multiple
393 pieces if no single weight is large enough to apply the unsplit
394 correction. (#117431, problem reported by Tomas Ögren)
396 2003-07-13 Matthias Clasen <maclas@gmx.de>
399 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file_at_size): New function
400 to load an image from a file at a specified size. (#105326, Dom
403 2003-07-11 Matthias Clasen <maclas@gmx.de>
405 * queryloaders.c (query_module): Handle absolute filenames
406 properly. (#117170, Jens Elkner)
408 * gdk-pixbuf-io.c: Mention that NULL-terminated arrays returned by
409 gdk_pixbuf_format_get_mime_types() and
410 gdk_pixbuf_format_get_extensions() must be freed with g_strfreev().
412 2003-07-04 Matthias Clasen <maclas@gmx.de>
414 * gdk-pixbuf-io.c: Document ICO save parameters.
416 * io-ico.c: Support saving of ICOs and CURs. Currently, only
417 single-image ICOs are produced, but the code for multi-image ICOs
418 is already in place. The saver understands the options "depth"
419 (can be "32", "24" or "16") and "x_hot"/"y_hot" for hotspot
422 2003-06-28 Matthias Clasen <maclas@gmx.de>
424 * io-ico.c (DecodeHeader): Stop discriminating against 32bpp ICOs
425 a): Use the byte size of the image as a heuristic when selecting
426 the bitmap to load - this lets us select 32bpp bitmaps which come
428 (OneLineTransp): Stop discriminating against 32bpp ICOs b): Don't
429 overwrite the alpha channel of 32bpp ICOs.
430 (gdk_pixbuf__ico_image_load_increment): Stop decoding the header
433 Fri Jun 27 03:56:59 2003 Soeren Sandmann <sandmann@daimi.au.dk>
435 * io-gif-animation.c (gdk_pixbuf_gif_anim_frame_composite): Make
436 it compile with C89 compilers.
438 2003-06-23 Matthias Clasen <maclas@gmx.de>
440 * io-gif.c (gif_get_frame_info): Remove the pointless refusal to
441 load images with dubious disposal mode on the first frame. Just
442 ignore it, as everybody else does.
444 2003-06-22 Matthias Clasen <maclas@gmx.de>
446 * gdk-pixbuf-loader.[hc] (gdk_pixbuf_loader_new_with_mime_type):
447 New function to obtain a loader for a specific mime type.
448 (#105324, Dom Lachowicz)
450 * io-gif.c (gif_get_extension): Reset block_count to 0 for all
451 application extensions, otherwise the data blocks of unknown
452 extensions are not propertly skipped.
454 Second half of the fix for #106962, handle frames extending beyond
457 * io-gif.c (clip_frame): New helper function to clip a rectangle
458 to the logical screen size of the gif.
459 (maybe_update): New helper function to call update_func only if
460 the rectangle is not completely off-bounds.
461 (gif_get_lzw): Read frames extending outside the logical screen
462 size, but be careful clip to the logical screen size
463 when operating on the composite pixbuf and when calling update_func.
464 (gif_init): Set the animation size to the logical screen size.
465 (gif_get_frame_info): Don't refuse to load images with frames
466 extending beyond the logical screen size.
468 * io-gif-animation.c (gdk_pixbuf_gif_anim_frame_composite): Be
469 careful to clip all rectangles to the logical screen size, also
470 handle the fact that frames may be completely off-bounds.
472 2003-06-21 Matthias Clasen <maclas@gmx.de>
474 * io-gif.c: Merge from 2.2: Fix update_func() arguments and accept
475 empty frames. (#106962)
477 2003-06-17 Matthias Clasen <maclas@gmx.de>
479 * Makefile.am (man_MANS): Removed, man pages are now installed
480 from docs/reference/gdk-pixbuf.
482 2003-06-03 Matthias Clasen <maclas@gmx.de>
484 * gdk-pixdata.c (gdk_pixbuf_new_from_inline): Document
485 data_length == -1, add an example. (#97290)
487 2003-06-01 Matthias Clasen <maclas@gmx.de>
489 * gdk-pixdata.h (struct _GdkPixdata): Fix misleading documentation
490 of rowstride. (#113924, Noah Levitt)
492 2003-05-27 Matthias Clasen <maclas@gmx.de>
494 * io-wbmp.c: Remove dubious bitfields of
495 unspecified signedness. (#112919, Morten Welinder)gdk-p
497 * gdk-pixdata.c (gdk_pixdata_to_csource): Replace all occurances
498 of g_string_new ("") by g_string_new (NULL). (#106975, Morten
501 2003-05-21 Matthias Clasen <maclas@gmx.de>
503 * pixbufloader_pcx.def:
504 * io-pcx.c: A loader for PCX files. (#113035, Josh Beam)
507 * Makefile.am: Add PCX loader.
509 2003-05-19 Matthias Clasen <maclas@gmx.de>
511 Improve progressive loading from slow sources: (#107368)
513 * io-gif-animation.c (gdk_pixbuf_gif_anim_get_iter): Initialize
515 (gdk_pixbuf_gif_anim_iter_advance): Don't wrap during loading if
516 the datasource falls behind the speed of the display.
518 * io-gif-animation.h: Add a loading flag to GdkPixbufGifAnim and
519 first_loop_slowness to GdkPixbufGifAnimIter.
521 Wed May 14 18:24:50 2003 Owen Taylor <otaylor@redhat.com>
523 * gdk-pixdata.c (gdk_pixdata_deserialize): Add a
524 (gint32 *) => (guint32 *) cast. (#108615, Rick Jones)
526 2003-04-24 Matthias Clasen <maclas@gmx.de>
528 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_write):
529 (gdk_pixbuf_loader_new_with_type):
530 (gdk_pixbuf_loader_close):
531 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file):
534 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file):
535 Add sanity checks for GError handling. (#108345)
537 Tue Apr 1 15:33:51 2003 Owen Taylor <otaylor@redhat.com>
539 * pixops/pixops.c (make_weights): Exploit the fact that all
540 our filters are separable to simplify the calculation of
541 the weight tables. (Based on a patch from Brian Cameron.)
543 * pixops/Makefile.am pixbuf-transform-math.ltx:
544 Add a short article describing how the math in pixops.c
547 2003-03-21 Matthias Clasen <maclas@gmx.de>
549 * gdk-pixbuf-animation.c (gdk_pixbuf_non_anim_get_type): Add
550 missing static. (#108614)
552 * io-jpeg.c (gdk_pixbuf__jpeg_image_begin_load):
553 * io-ico.c (gdk_pixbuf__ico_image_stop_load): Add missing static
554 qualifiers apparently causing problems on some platforms. (#108617)
556 2003-03-11 Matthias Clasen <maclas@gmx.de>
558 * io-ico.c (DecodeHeader): Calculate LineWidth for 16bpp from
559 width, like for the other depths. (noticed by Marijn Ros)
561 2003-03-08 Matthias Clasen <maclas@gmx.de>
563 Bug #107664 continued:
565 * io-xpm.c (find_color): Fix 0/FALSE confusion
566 * gdk-pixbuf.c (gdk_pixbuf_get_has_alpha): Fix -1/gboolean
569 2003-03-06 Matthias Clasen <maclas@gmx.de>
571 * io-gif.c (gif_read): Fix 0/FALSE confusion (#107664, Morten
574 2003-02-20 Matthias Clasen <maclas@gmx.de>
576 * io-gif-animation.c (gdk_pixbuf_gif_anim_frame_composite):
577 Always clear the initial frame and "disposed" areas with
578 transparent pixels, no matter whether the frame has transparency
581 2003-02-18 Matthias Clasen <maclas@gmx.de>
583 * io-tga.c (pixbuf_flip_row):
584 (pixbuf_flip_vertically): Auxiliary functions used to implement
585 support for arbitrary origins.
586 (parse_data_for_row_pseudocolor):
587 (parse_data_for_row_truecolor):
588 (parse_data_for_row_grayscale):
589 (parse_data_for_row):
590 (fill_in_context): Remove the check for upper-left origin.
591 (parse_rle_data): Support arbitrary origins. (#105912)
593 * io-tga.c (fread_check):
595 (get_header_from_file):
596 (get_colormap_from_file):
597 (get_image_pseudocolor):
598 (swap_channels_pixbuf):
599 (get_image_truecolor):
600 (get_image_grayscale):
601 (gdk_pixbuf__tga_load): Remove the non-incremental load
602 implementation, since we have generic_image_load () now.
604 (gdk_pixbuf__tga_stop_load): Fix a potential crash discovered by
607 2003-02-14 Matthias Clasen <maclas@gmx.de>
609 * io-tga.c (try_preload):
610 (gdk_pixbuf__tga_load): Actually reject images with origin
611 not in the upper-left corner. (#105912)
613 2003-02-06 Matthias Clasen <maclas@gmx.de>
615 * queryloaders.c (query_module): Better error message if
616 module_open() fails. (#105349, Tim Mooney)
618 Mon Jan 27 17:10:30 2003 Owen Taylor <otaylor@redhat.com>
620 * Makefile.am (gdk-pixbuf.loaders): Rewrite to run
621 on the .la files rather than looking for .so files.
622 (#102142, Martin Gansser)
624 * Makefile.am: Don't build gdk-pixbuf.loaders when
627 2003-01-05 Tor Lillqvist <tml@iki.fi>
629 * Makefile.am (gdk-pixbuf.loaders): Use @SOEXT@ in the find command.
631 * gdk_pixbuf.def: Add gdk_pixbuf_loader_set_size.
633 2003-01-03 Matthias Clasen <maclas@gmx.de>
635 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): Don't crash if
636 gdk-pixbuf.loaders file is missing. (#102222)
638 2002-12-08 Matthias Clasen <maclas@gmx.de>
640 * gdk-pixbuf-animation.h:
641 * gdk-pixbuf-io.h: Add /*< public|private >*/ markers.
643 Sat Dec 7 10:14:05 2002 Owen Taylor <otaylor@redhat.com>
645 * Makefile.am (gdk-pixbuf.loaders): Make gdk-pixbuf.loaders
646 also depend gdk-pixbuf-query-loaders. (#97096, Daniel Elstner)
648 2002-12-05 Matthias Clasen <maclas@gmx.de>
650 * io-ico.c: Remove leftover debug output. (#100357, Owen Taylor)
652 2002-12-04 Bastien Nocera <hadess@hadess.net>
654 * io-tiff.c: (tiff_image_parse): use G_BIG_ENDIAN instead of
655 WORDS_BIGENDIAN which isn't set by configure.in
657 2002-11-29 Matthias Clasen <maclas@gmx.de>
659 * gdk-pixbuf-animation.c:
660 * gdk-pixbuf.c: Add deprecation docs.
662 2002-11-28 Matthias Clasen <maclas@gmx.de>
664 * gdk-pixbuf/gdk-pixbuf-io.c:
665 * gdk-pixbuf/gdk-pixbuf-loader.c:
666 * gdk-pixbuf/gdk-pixbuf.c: Document 2.2 API additions. I'm not
667 going to list all individual functions here; if you want to see
668 the list, grep for "Since: 2.2".
670 Fri Nov 8 19:06:07 2002 Owen Taylor <otaylor@redhat.com>
672 * Makefile.am (gdk-pixbuf.loaders): Make gdk-pixbuf.loaders
673 file depend on the loaders (#97096, Jeff Waugh)
675 Wed Nov 6 15:19:53 2002 Owen Taylor <otaylor@redhat.com>
677 * io-gif.c (CHECK_LZW_SP): Fix trailing semicolon on macro,
680 2002-11-05 Matthias Clasen <maclas@gmx.de>
682 * gdk-pixbuf-loader.c: Reindent to follow the gdk-pixbuf indentation.
684 Tue Nov 5 14:16:17 2002 Owen Taylor <otaylor@redhat.com>
686 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Fix
687 leaked pixbuf reference (#96823, Morten Welinder)
689 2002-10-23 Matthias Clasen <maclas@gmx.de>
691 * io-gif.c (lzw_read_byte): Check for stack overflow throughout.
694 2002-10-21 Matthias Clasen <maclas@gmx.de>
696 Support the Netscape application extension for gif animations
699 * io-gif-animation.h:
700 * io-gif-animation.c (gdk_pixbuf_gif_anim_iter_advance):
701 Add loop count to GdkPixbufGifAnim and use it in the advance
702 method of GdkPixbufGifAnimIter.
704 * io-gif.c (gif_get_extension): Parse Netscape application
705 extension block and set the animation loop count.
707 2002-10-11 Matthias Clasen <maclas@gmx.de>
709 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_format): Remove
712 * gdk-pixbuf-io.h: Remove unused typedef
713 GdkPixbufModuleGetSignatureFunc.
715 2002-10-04 jacob berkman <jacob@ximian.com>
717 * queryloaders.c (query_module): make legal C
719 2002-10-04 Matthias Clasen <maclas@gmx.de>
721 * Makefile.am gdk-pixbuf-animation.c gdk-pixbuf-data.c
722 gdk-pixbuf-io.c gdk-pixbuf-io.h gdk-pixbuf-loader.c
723 gdk-pixbuf-loader.h gdk-pixbuf-private.h gdk-pixbuf.h
724 gdk-pixdata.c io-ani-animation.h io-ani.c io-bmp.c
725 io-gif-animation.c io-gif-animation.h io-gif.c io-ico.c
726 io-jpeg.c io-png.c io-pnm.c io-ras.c io-tga.c io-tiff.c
727 io-wbmp.c io-xbm.c io-xpm.c pixbufloader_ani.def
728 pixbufloader_bmp.def pixbufloader_gif.def pixbufloader_ico.def
729 pixbufloader_jpeg.def pixbufloader_png.def
730 pixbufloader_pnm.def pixbufloader_ras.def pixbufloader_tga.def
731 pixbufloader_tiff.def pixbufloader_wbmp.def
732 pixbufloader_xbm.def pixbufloader_xpm.def test-gdk-pixbuf.c
733 gdk-pixbuf-animation.h queryloaders.c: Support for separately
734 installed loaders. (#77486)
736 Thu Oct 3 18:25:57 2002 Owen Taylor <otaylor@redhat.com>
738 * io-jpeg.c (gdk_pixbuf__jpeg_image_save):
739 Fix memory leak. (#94399)
741 Tue Oct 1 17:35:43 2002 Owen Taylor <otaylor@redhat.com>
743 * gdkpixdata.c: Patch from Andy Wingo to always
744 escape ? to avoid accidentally generating trigraphs
745 in the output (#94631)
747 2002-09-28 Tor Lillqvist <tml@iki.fi>
749 * pixops/*.S: Don't use .type on Cygwin, either (#91597, Masahiro
752 2002-09-27 Federico Mena Quintero <federico@ximian.com>
754 * io-ico.c (gdk_pixbuf__ico_image_begin_load): Free the context if
755 we cannot allocate the HeaderBuf.
757 2002-09-27 Federico Mena Quintero <federico@ximian.com>
759 * io-bmp.c (OneLine): Fix the update region notification to handle
760 top-to-bottom and bottom-to-top BMPs correctly.
762 2002-09-19 Matthias Clasen <maclas@gmx.de>
764 * Revert the previous change; the symbols need to be exported
765 to be usable from dlopened modules.
767 2002-09-18 Matthias Clasen <maclas@gmx.de>
769 * io-xpm.c, io-xbm.c, io-ico.c, io-ani.c, io-png.c,
770 gdk-pixbuf.c, gdk-pixbuf-animation.c, gdk-pixbuf-loader.c,
771 gdk-pixbuf-private.h: _-prefix gdk_pixbuf_non_anim_new and
772 gdk_pixbuf_set_option. Adjust all callers.
774 2002-09-14 Hans Breuer <hans@breuer.org>
776 * pixops/Makefile.am : added makefile.msc to EXTRA_DIST
778 2002-09-12 Matthias Clasen <maclas@gmx.de>
780 * io-gif-animation.h:
781 * gdk-pixbuf.h: Move GdkPixbufFrame from the public header to
782 the gif-animation-specific private header. (#91929)
784 2002-09-12 Federico Mena Quintero <federico@ximian.com>
786 * io-jpeg.c (gdk_pixbuf__jpeg_image_load): Unref the pixbuf if we
787 hit an unsupported colorspace.
789 2002-09-06 Matthias Clasen <maclas@gmx.de>
791 * io-ani.c, io-ani-animation.h, io-ani-animation.c,
792 pixbufloader_ani.def, Makefile.am, gdk-pixbuf-io.c: New loader,
795 * io-xpm.c (pixbuf_create_from_xpm):
796 * io-xbm.c (gdk_pixbuf__xbm_image_load_real):
797 * io-ico.c (DecodeHeader): Attach hotspot coordinates to the
798 pixbuf as options "x_hot" and "y_hot".
800 2002-09-04 Matthias Clasen <maclas@gmx.de>
802 * io-tga.c (io_buffer_append):
803 * io-ico.c (DecodeHeader):
804 * io-bmp.c (grow_buffer): Don't leak memory if g_try_realloc fails.
806 * gdk-pixbuf-io.c (pixbuf_check_ico): Fix loading of .CUR files.
809 2002-08-25 Tor Lillqvist <tml@iki.fi>
811 * Makefile.am (libgdk_pixbuf_2_0_la_DEPENDENCIES): Add
812 gdk_pixbuf_win32res_lo. (#87101, J. Ali Harlow)
814 2002-08-22 Matthias Clasen <maclas@gmx.de>
817 gdk-pixbuf-io.c (_gdk_pixbuf_generic_image_load): No longer
818 static, thus _gdk_pixbuf-prefixed.
820 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file):
821 Keep this logic in sync with gdk_pixbuf_new_from_file(). (Based
822 on a patch by Anders Carlsson)
824 * io-png.c (gdk_pixbuf__png_image_save): Plug a memory
825 leak. (#91422, Sven Neumann)
827 2002-07-31 Sven Neumann <sven@gimp.org>
829 * gdk-pixdata.c (gdk_pixdata_to_csource): free the result of
830 gdk_pixdata_serialize() (bug #89411).
832 Mon Jul 29 23:06:10 2002 Owen Taylor <otaylor@redhat.com>
834 * gdk-pixbuf-scale.c: Fix some warnings by adding
835 casts to PixopsInterpType. (#85839, David L. Cooper, II.)
837 2002-07-16 Matthias Clasen <maclas@gmx.de>
839 * io-ras.c (DoCompressed): Avoid unnecessary casting.
841 2002-07-07 Matthias Clasen <maclas@gmx.de>
843 * gdk-pixbuf-io.c (generic_image_load): New function for loading
844 an image from a file either via module->load or incrementally.
845 (prepared_notify): ModulePreparedNotifyFunc for generic_image_load.
846 (gdk_pixbuf_new_from_file): Use generic_image_load.
847 * io-bmp.c, io-ico.c, io-ras.c, io-wbmp.c: Remove trivial
848 implementations of module->load. (#71266)
850 * io-ico.c (DecodeHeader): Correct computation of image height.
851 (OneLine): Correct update notification.
853 Load-at-size functionality (#53726):
855 * gdk-pixbuf-io.h (ModuleSizeFunc): New.
856 (_GdkPixbufModule): Prepend a ModuleSizeFunc to the
857 begin_load arguments. Adjust all modules.
858 * gdk-pixbuf-loader.c (struct GdkPixbufLoaderPrivate): Add
859 fields width, height, size_fixed, need_scale.
860 (gdk_pixbuf_loader_class_init): Add size_prepared signal.
861 (gdk_pixbuf_loader_set_size): New function.
862 (gdk_pixbuf_loader_size_func): ModuleSizeFunc which gets
863 passed to the module, emits size_prepared.
864 (gdk_pixbuf_loader_prepare): Call gdk_pixbuf_loader_size_func
865 if necessary, only emit area_prepared if no separate scaling
867 (gdk_pixbuf_loader_update): Only emit area_updated if no
868 separate scaling is required.
869 (gdk_pixbuf_loader_load_module): Add size_func as first argument.
870 (gdk_pixbuf_loader_close): If necessary scale the image
871 to the desired size and emit area_prepared and area_updated.
872 * gdk-pixbuf-loader.h (struct _GdkPixbufLoaderClass): Add
873 size_prepared signal.
874 (gdk_pixbuf_loader_set_size) New API.
875 * gdk-pixbuf-marshal.list: Add VOID:INT,INT.
876 * io-jpeg.c: User cinfo->output_width/height instead of
877 cinfo->image_width/height throughout when adressing the pixbuf.
878 (gdk_pixbuf__jpeg_image_load_increment): Call size_func, and
879 find the nearest possible output size which libjpeg can produce
880 that is still larger than the desired size.
882 2002-07-06 Matthias Clasen <maclas@gmx.de>
884 * io-tiff.c (tiff_set_error): Handle global_error == NULL
886 (tiff_image_parse): Don't trust TIFFRGBAImageBegin to set
887 the "put" routine. (Fixes #87384)
888 (gdk_pixbuf__tiff_image_stop_load): Don't call TIFFClose too
891 2002-07-02 Matthias Clasen <maclas@gmx.de>
893 Miscellaneous bmp loader fixes (#85448, #86286, #86287):
895 * io-bmp.c (grow_buffer): New function to avoid crashes
896 on unchecked reallocs.
897 (DecodeHeader, DecodeColormap, decode_bitmasks,
898 DoCompressed): Use grow_buffer instead of g_realloc
899 throughout. Change signatures where necessary to pass the
901 (OneLine16): Fix loading of 16bpp BI_RGB bmps.
902 (DoCompressed): Rewritten to properly support BI_RLE4 and
905 Support for compressed ras images (#84994):
907 * io-ras.c (RAS2State): Error on unsupported ras variations.
908 (OneLine8): Fix colormap indexing.
909 (OneLine): Call updated_func with proper region.
910 (DoCompressed): New function, handles compressed ras data.
911 (gdk_pixbuf__ras_image_load_increment): Handle compressed ras
914 Better colorspace support for the jpeg loader (#61211):
916 * io-jpeg.c (convert_cmyk_to_rgb): New function.
917 (gdk_pixbuf__jpeg_image_load,
918 gdk_pixbuf__jpeg_image_load_increment): Allocate a pixbuf with
919 alpha for 4-channel jpegs and call convert_cmyk_to_rgb for these.
921 All of this needs to be merged to GNOME 1.4 gdk-pixbuf.
923 2002-06-28 Sven Neumann <sven@gimp.org>
925 * gdk-pixbuf-csource.c (print_blurb): converted a Tab to spaces.
927 Thu Jun 13 18:11:11 2002 Owen Taylor <otaylor@redhat.com>
929 * pixops/pixops.c: Fix problem where when no alpha was
930 involved, we scaled rather than composited, but then
931 went ahead and composited anyways. (#76958, Patch
932 from Matthias Clasen). Needs to be merged to GNOME
935 2002-06-13 Matthias Clasen <maclas@gmx.de>
937 * io-jpeg.c: Use libjpeg in buffered-image mode in order to
938 incrementally display incrementally loaded progressive jpegs.
940 2002-06-07 Federico Mena Quintero <federico@ximian.com>
943 (lsb_16): New functions to fetch 32 or 16-bit little-endian values
944 starting at a specific memory location. We do this instead of
945 GINT32_FROM_LE() as the latter is simply dereferences a cast,
946 which doesn't work on platforms with alignment requirements.
949 2002-06-01 Matthias Clasen <maclas@gmx.de>
951 * gdk-pixbuf-io.c (pixbuf_check_xbm): Accept xbms starting
952 with a C comment - those seem to be not uncommon, e.g. the Gimp
953 produces them. (#82706)
955 * io-xbm.c (read_bitmap_file_data): Don't leak memory on certain
957 (gdk_pixbuf__xbm_image_load_real): Don't leak memory on valid inputs.
959 2002-05-22 Tor Lillqvist <tml@iki.fi>
961 * gdk-pixbuf-io.c (get_libdir): Use GTK_BINARY_VERSION (and not
962 GTK_VERSION) in the path to the loaders on Win32, too.
964 * Makefile.am: Pass GTK_BINARY_VERSION.
966 2002-05-22 Federico Mena Quintero <federico@ximian.com>
968 * io-xpm.c (pixbuf_create_from_xpm): Ahem, take the rowstride into
969 account!!! Fixes #82515.
971 [This bug is not present in the GNOME 1.4 branch as its XPM loader
972 does not use gdk_pixbuf_new(); rather it malloc()s a buffer with
973 no row padding and then uses gdk_pixbuf_new_from_data() on it.]
975 [IMPORTANT: The comment above is to make my life easier when
976 merging stuff across branches. If you make changes to gdk-pixbuf
977 in either branch, please include a comment in the ChangeLog that
978 indicates whether this should be merged into the other branch.
981 2002-05-18 Matthias Clasen <maclas@gmx.de>
983 * io-tiff.c (tiff_image_parse): fix packing order on bigendian
986 Thu May 16 15:17:30 2002 Owen Taylor <otaylor@redhat.com>
988 * pixops/pixops.c: Patch from Matthias Clasen to fix some typos
991 Thu May 16 15:02:46 2002 Owen Taylor <otaylor@redhat.com>
993 * gdk-pixdata.c (gdk_pixdata_to_csource): Fix 64-bit warning.
996 2002-05-07 Michael Natterer <mitch@gimp.org>
998 * gdk-pixbuf/Makefile.am: build the static pixbuf loaders
999 conditionally like the dynamic ones so --without-lib<foo> is
1000 honored when building with --disable-modules. (#66867)
1002 Sun May 5 02:27:01 2002 Soeren Sandmann <sandmann@daimi.au.dk>
1004 * Makefile.am (noinst_PROGRAMS): remove test-loaders (moved to
1006 * test-loaders.c, test-images.h: remove
1008 2002-04-24 Matthias Clasen <maclas@gmx.de>
1010 * gdk-pixbuf-io.c (gdk_pixbuf_save): Remove the ISO8859-1
1011 restriction from the description of png tEXt parameters.
1013 * io-png.c (png_text_to_pixbuf_option):
1014 (gdk_pixbuf__png_image_save): If libpng supports it,
1015 store and retrieve non-ISO8859-1 text as UTF-8. (#76172)
1017 2002-04-11 Matthias Clasen <maclas@gmx.de>
1019 More fixes for #77807:
1021 * io-tga.c (get_contiguous_pixbuf): Helper function to create
1022 a pixbuf with a contiguous pixel array while being careful about
1025 * io-tga.c (fill_in_context, get_image_pseudocolor,
1026 get_image_truecolor, get_image_grayscale): Use
1027 get_contiguous_pixbuf instead of manually allocating image
1030 * io-xpm.c (pixbuf_create_from_xpm):
1031 * io-pnm.c (gdk_pixbuf__pnm_image_load):
1032 * io-jpeg.c (gdk_pixbuf__jpeg_image_load): Use gdk_pixbuf_new
1033 instead of manually allocating image storage.
1035 2002-04-09 Matthias Clasen <maclas@gmx.de>
1037 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_load_module): Use
1038 priv->image_module->module_name instead of image_type which may
1041 2002-04-06 Matthias Clasen <maclas@gmx.de>
1043 * io-png.c (gdk_pixbuf__png_image_load): Restructured to use
1044 gdk_pixbuf_new instead of manually allocating image storage. This
1045 gives us a good rowstride and overflow checks. (#77807)
1047 2002-04-05 Matthias Clasen <maclas@gmx.de>
1049 * io-tiff.c (tiff_image_parse): Avoid allocating an extra copy of
1050 the image by using a TIFFRGBAImage{Begin,Get,End} with suitable
1051 put functions instead of TIFFRGBAImage. And check image dimensions
1054 2002-04-03 Matthias Clasen <maclas@gmx.de>
1056 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_type): Fix a doc typo.
1058 2002-03-29 Matthias Clasen <maclas@gmx.de>
1060 * io-png.c (png_simple_error_callback): libpng error handlers must
1061 not return to their callers, thus longjmp out. This prevents
1062 annoying stderr output from the default error handler.
1064 2002-03-27 Matthias Clasen <maclas@gmx.de>
1066 * io-png.c (gdk_pixbuf__png_image_stop_load): Don't leak info_ptr.
1068 * io-png.c (gdk_pixbuf__png_image_load): Get rid of unused
1069 end_info. Also call png_read_end to check proper ending of the png
1070 file and catch text chunks after the image data.
1072 2002-03-27 Matthias Clasen <maclas@gmx.de>
1074 * io-png.c (gdk_pixbuf__png_image_load,
1075 gdk_pixbuf__png_image_begin_load): Make libpng use g_malloc
1076 instead of system malloc.
1078 2002-03-26 Matthias Clasen <maclas@gmx.de>
1080 * io-tiff.c (tiff_image_parse): Don't leak pixbuf on error.
1082 * io-gif.c (gdk_pixbuf__gif_image_load_increment): Don't leak
1083 context->buf on error.
1085 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Make sure to call
1086 stop_load even for short images to prevent memleaks.
1088 2002-03-25 Matthias Clasen <maclas@gmx.de>
1090 * io-png.c (setup_png_transformations): Changed signature to
1091 return success and set a GError parameter, adjusted all callers.
1092 Also work around a possible FPE in libpng and always check that
1093 the new info is sane.
1095 2002-03-23 Matthias Clasen <maclas@gmx.de>
1097 * io-wbmp.c (gdk_pixbuf__wbmp_image_load_increment):
1098 context->updated_func is NULL during a nonincremental load.
1099 (gdk_pixbuf__wbmp_image_load): Stop reading after the first error.
1101 2002-03-18 Matthias Clasen <maclas@gmx.de>
1103 * io-tga.c: Fix assumptions on rowstride by manually allocating a
1104 contiguous pixel buffer. Catch buffer overruns in RLE-modi.
1105 Support grayscale + alpha (which can be written, but not read (!)
1108 2002-03-15 Matthias Clasen <maclas@gmx.de>
1110 * io-gif.c (gif_get_frame_info): Catch invalid frame dimensions.
1112 2002-03-13 Matthias Clasen <maclas@gmx.de>
1114 * test-images.h: Add valid_ras_test and invalid_bmp_1.
1116 * test-loaders.c (main): Add random tests for ras and pnm and an
1117 invalid bmp which was a crasher until my 2002-03-12 commit.
1119 * io-pnm.c (gdk_pixbuf__pnm_image_load_increment): Don't unref the
1122 * io-ras.c: Handle some errors.
1124 2002-03-12 Sven Neumann <sven@gimp.org>
1126 * gdk-pixbuf.c (gdk_pixbuf_fill): use sequential writes instead of
1127 calling memcpy(). Simpler and potentially faster. (#70332)
1129 2002-03-12 Matthias Clasen <maclas@gmx.de>
1131 * io-bmp.c (DecodeHeader): Replace a g_assert_not_reached ()
1132 which could actually be reached by a proper error status return.
1134 2002-03-05 Matthias Clasen <maclas@gmx.de>
1136 * test-loaders.c, test-images.h: More random tests.
1138 * io-bmp.c (DecodeHeader): Fail gracefully on OOM here.
1140 Tue Mar 5 10:39:03 2002 Owen Taylor <otaylor@redhat.com>
1142 * Makefile.am (loaderdir): Put the modules into the
1143 GTK_BINARY_VERSION directory for consistency with
1144 immodules and theme engines.
1146 Sat Mar 2 22:11:10 2002 Owen Taylor <otaylor@redhat.com>
1148 * gdk-pixbuf-io.c (_gdk_pixbuf_load_module): If we
1149 can't load the module using the g_module_build_path()
1150 filename, try loading it as a .la file.
1152 * test-loaders.c: Look for modules in current directory
1153 rather than .libs, so we find the right .la files.
1155 * test-loaders.c: Back out some accidental commits.
1157 Sat Mar 2 21:28:03 2002 Owen Taylor <otaylor@redhat.com>
1159 * gdk-pixbuf.c (gdk_pixbuf_new): Bullet-proof against integer
1162 2002-03-03 Tor Lillqvist <tml@iki.fi>
1164 * gtk-pixbuf.rc.in: Remove.
1166 * gdk_pixbuf.rc.in: Name like this instead (wrong name used by
1169 * makefile.msc: Corresponding changes.
1171 * Makefile.am: Use gdk_pixbuf.rc on Win32. Distribute it.
1173 2002-02-28 Matthias Clasen <maclas@gmx.de>
1175 * pixops/pixops.c (tile_make_weights): Move the call to
1176 correct_total() to the right spot. (#72732)
1178 Wed Feb 27 18:33:04 2002 Owen Taylor <otaylor@redhat.com>
1180 * gdk-pixdata.c (gdk_pixdata_to_csource): Use {} not
1181 () to group around string assigned to char[]. (#72767,
1184 2002-02-21 Havoc Pennington <hp@pobox.com>
1186 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_load_module): remove
1187 C++-commented debug spew, reported by David L. Cooper
1189 2002-02-15 Matthias Clasen <maclas@gmx.de>
1191 * pixops/pixops.c (correct_total): New function to make sure
1192 that the weights sum up to the correct total without introducing
1194 (tile_make_weights, bilinear_make_fast_weights,
1195 bilinear_make_weights): Use correct_total.
1197 2002-02-10 Matthias Clasen <maclas@gmx.de>
1199 * test-images.h (tiff1_test_3), test-loaders.c (main): Add a
1200 (#ifdef 0'ed) test provoking a segfault in TIFFReadDirectory().
1202 * io-ico.c (DecodeHeader): Check that pixbuf could be allocated.
1204 * test-images.h (ico_test_2), test-loaders.c (main): Test the
1207 * io-wbmp.c (gdk_pixbuf__wbmp_image_load_increment): Don't write
1208 beyond the end of buffer if width % 8 != 0.
1210 * io-tga.c (try_preload): Enforce that ctx->hdr->type is one of
1211 the supported types, otherwise parse_data_for_row () will not make
1212 any progress, leading to an infinite loop.
1214 Mon Feb 11 14:31:53 2002 Owen Taylor <otaylor@redhat.com>
1216 * pixops/pixops.c (bilinear_make_weights): Fix handing of
1219 2002-02-10 Matthias Clasen <maclas@gmx.de>
1221 * test-loaders.c (main): Enable some tests which should work
1224 * io-wbmp.c (gdk_pixbuf__wbmp_image_load_increment): Detect
1225 invalid image dimensions and insufficient memory.
1227 * io-tga.c (try_preload): Detect invalid image dimensions.
1228 (gdk_pixbuf__tga_stop_load): Don't try to unref NULL pointers.
1230 * io-ico.c (DecodeHeader): Detect some invalid headers and
1233 Fri Feb 8 23:11:15 2002 Owen Taylor <otaylor@redhat.com>
1235 * pixops/pixops.c: Force all weight arrays to sum exactly
1236 to 65535. (Fixes #70971, reported by Federico Mena Quintero)
1238 * Makefile.am (libgdk_pixbuf_1_3_la_DEPENDENCIES): Add
1241 2002-02-08 Federico Mena Quintero <federico@ximian.com>
1243 * pixops/pixops.h: Fix comment; PixopsInterpType -> GdkInterpType.
1245 2002-02-08 Darin Adler <darin@bentspoon.com>
1247 * io-xbm.c: (next_int): Wean this from <ctype.h>.
1249 2002-02-01 Matthias Clasen <matthiasc@poet.de>
1251 * Makefile.am: Build the tga loader as a static library. (#70157)
1253 * io-ico.c: Merge 16- and 32-bit ico support from the stable
1256 * io-gif.c: Recomposite all images if the animation size changes
1257 while loading. (#70055)
1259 * gdk-pixbuf.c (gdk-pixbuf-fill): Make it work for subpixbufs.
1262 Sat Jan 19 20:49:20 2002 Manish Singh <yosh@gimp.org>
1264 * io-jpeg.c, io-png.c: Made sure all the error cases involving
1265 jpeg or png load/saves clean themselves up properly. Marked some
1266 variables needed for cleanup volatile so they aren't clobbered by
1269 Fri Jan 11 18:05:07 2002 Owen Taylor <otaylor@redhat.com>
1271 * pixops/pixops.c: Fix integer overflow for the values
1272 passed to the pixel functions. (#55148, fix from Michael Hore)
1274 Fri Jan 11 17:53:58 2002 Owen Taylor <otaylor@redhat.com>
1276 * pixops/pixops.c (pixops_scale_nearest): Remove meaningless
1279 * pixops/pixops.c (pixops_process): Comment the computation
1280 of run_end_index and fix some edge cases.
1282 * pixops/{scale_line_22_33_mmx.S, composite_line_22_4a4_mmx.S:
1283 composite_line_color_22_4a4_mmx.S}: Handle the case where
1284 dest <= dest_end properly. (#52001, fix from Michael Hore)
1286 Thu Jan 10 16:48:30 2002 Owen Taylor <otaylor@redhat.com>
1288 * pixops/pixops.c: Replace some hardcoded values with the
1289 SUBSAMPLE constant used elsewhere. (#51033)
1291 Wed Jan 9 11:29:44 2002 Owen Taylor <otaylor@redhat.com>
1293 * Makefile.am (s-enum-types-h): Include glib-object.h,
1294 Add G_BEGIN_DECLS/END_DECLS to gdk-pixbuf-enum-types.h. (#68325,
1297 * *.h: G_BEGIN_DECLS cleanups.
1299 Tue Jan 8 10:58:04 2002 Owen Taylor <otaylor@redhat.com>
1301 * gdk-pixbuf-util.c (gdk_pixbuf_saturate_and_pixelate):
1302 - Massive cleanup, make actually legible.
1303 - Fix some clamp-to-range bugs found by Jim Cape (#68231).
1304 - Add a g_return_if_fail() if src and dest alpha don't match.
1305 - Allow for src_rowstride != dest_rowstride.
1307 2002-01-04 Hans Breuer <hans@breuer.org>
1309 * gdk_pixbuf.def : don't export functions prefixed
1312 * makefile.msc : use -FImsvc_recommende_pragmas.h
1314 Thu Jan 3 19:31:58 2002 Owen Taylor <otaylor@redhat.com>
1316 * pixops/pixops.c (scale_line_22_33): Fix and uncomment
1319 * pixops/pixops.c (pixops_composite_nearest): Remove a
1322 * pixops/pixops.c (pixops_composite): Add some docs
1323 about the parameters.
1325 * pixops/README: Add notes about the correct algorithms
1326 for alpha compositing and how to implement them quickly.
1328 2001-12-29 Tor Lillqvist <tml@iki.fi>
1330 * Makefile.am (EXTRA_DIST): Add makefile.msc.
1332 Sat Dec 22 15:31:20 2001 Owen Taylor <otaylor@redhat.com>
1334 * gdk-pixdata.h: Fix trailing "," in enumeration.
1336 2001-12-17 Matthias Clasen <matthiasc@poet.de>
1338 * gdk-pixbuf.c, gdk-pixbuf-io.c, gdk-pixbuf-animation.c,
1339 gdk-pixbuf-data.c, gdk-pixbuf-loader.c, gdk-pixbuf-scale.c,
1340 gdk-pixbuf-util.c, gdk-pixdata.c: Markup fixes.
1342 2001-12-16 Havoc Pennington <hp@pobox.com>
1344 * gdk-pixbuf-scale.c: docs enhancements
1346 2001-12-14 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1348 * io-xpm.c: Use g_ascii_strcasecmp() instead of g_strcasecmp().
1350 2001-12-13 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1352 * gdk-pixbuf-animation.c, gdk-pixbuf-loader.c, gdk-pixpuf.c,
1353 io-gif-animation.c, io-gif.c, io-tiff.c, test-loaders.c: Remove
1354 assorted G_OBJECT casts where unnecessary.
1356 * gdk-pixbuf-loader.c: Call g_object_ref and g_object_unref
1357 instead of gdk_pixbuf_animation_ref and gdk_pixbuf_animation_unref
1360 * gdk-pixbuf-csource.c, io-bmp.c, io-gif-animation.c, io-ico.c,
1361 io-jpeg.c, io-png.c, io-pnm.c, io-ras.c, io-tga.c, io-wbmp.c,
1362 io-xbm.c, io-xpm.c, test-gdk-pixbuf.c: Dito for gdk_pixbuf_ref and
1365 * Makefile.am, pixops/Makefile.am: Compile everything with
1366 -DG_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED
1368 * gdk-pixdata.c: Use g_ascii_strup() instead of g_strup().
1370 * io-xpm.c: Use g_ascii_strcasecmp() instead of g_strcasecmp().
1372 2001-12-12 Matthias Clasen <matthiasc@poet.de>
1374 * gdk-pixbuf-io.c: Markup fixes.
1376 2001-12-12 Matthias Clasen <matthiasc@poet.de>
1378 * Makefile.am (INCLUDES): Define G_LOG_DOMAIN. (#66412)
1380 * gdk-pixbuf-loader.c, gdk-pixbuf-util.c: Markup fixes.
1382 2001-12-11 Michael Natterer <mitch@gimp.org>
1384 * io-png.c: gdk_pixbuf__png_image_save: removed wrong endian
1385 conversion stuff; don't copy RGB pixbufs' lines around before
1388 2001-12-05 Matthias Clasen <matthiasc@poet.de>
1390 * gdk-pixbuf.h (gdk_pixbuf_ref, gdk_pixbuf_unref,
1391 gdk_pixbuf_animation_ref, gdk_pixbuf_animation_unref):
1394 Tue Dec 4 11:45:45 2001 Owen Taylor <otaylor@redhat.com>
1396 * io-xpm.c (pixbuf_create_from_xpm): Fill in color
1397 fields to black for transparent colors since we'll
1398 later initialize pixels from them. (Fixes purify
1399 errors, #66093, HideToshi Tajima)
1401 2001-11-30 Tor Lillqvist <tml@iki.fi>
1403 * gdk_pixbuf.def: Add gdk_pixbuf_get_option.
1405 Fri Nov 30 15:55:34 2001 Owen Taylor <otaylor@redhat.com>
1407 * gdk-pixdata.c (gdk_pixdata_deserialize): Fix
1408 alignment problem in deserialization, (#65785,
1409 reported by Hidetoshi Tajima)
1411 2001-11-28 Manish Singh <yosh@gimp.org>
1413 * gdk-pixbuf/io-bmp.c (gdk_pixbuf__bmp_image_load_increment): Fill
1414 in missing error parameters to DecodeHeader and DecodeColormap.
1416 2001-11-21 Federico Mena Quintero <federico@ximian.com>
1418 Fix Ximian bug #12125; merged from gdk-pixbuf stable.
1420 * gdk-pixbuf/io-bmp.c (gdk_pixbuf__bmp_image_load_increment): Use
1421 a simple state machine instead of a scary if/else chain.
1422 (DecodeHeader): Set the reading state.
1423 (DecodeColormap): Set the reading state.
1424 (decode_bitmasks): New function, decodes the bitmasks for
1425 BI_BITFIELDS coding.
1426 (OneLine32): Handle BI_BITFIELDS coding.
1427 (OneLine16): Likewise.
1429 2001-11-18 Hans Breuer <hans@breuer.org>
1431 * io-xpm.c : use g_strcasecmp(), some poor platforms
1432 don't have strcasecmp()
1434 * makefile.msc : do INCLUDE_png etc. definition here to avoid
1435 my temporary 'gdk-pixbuf-io-include.h' hack
1437 Sun Nov 18 07:54:22 2001 Owen Taylor <otaylor@redhat.com>
1439 * gdk-pixbuf-loader.c: Remove include of gobject/signal.h.
1441 2001-11-03 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1443 * gdk-pixbuf-loader.c, gdk-pixbuf-scale.c: Documentation fixes.
1445 2001-10-29 Tor Lillqvist <tml@iki.fi>
1447 * Makefile.am: Use -no-undefined on Win32. Make
1448 libgdk_pixbuf_1_3_la_OBJECTS depend on
1449 gdk-pixbuf-marshal.c. Install import libraries.
1451 * gdk_pixbuf.def: Update.
1453 * gdk-pixbuf-io.c: (Win32) Use G_WIN32_DLLMAIN_FOR_DLL_NAME, saves
1454 the actual DLL name of libgdk_pixbuf.
1455 (get_libdir): Use it instead of guessing.
1457 * io-xbm.c (gdk_pixbuf__xbm_image_begin_load): Use
1458 g_file_open_tmp() insread of mkstemp().
1460 2001-10-18 Matthias Clasen <matthiasc@poet.de>
1462 * io-xbm.c (gdk_pixbuf__xbm_image_load_real): Don't dereference
1463 context when it may be NULL. (#62344)
1465 2001-10-16 Matthias Clasen <matthiasc@poet.de>
1467 * gdk-pixdata.c, gdk-pixdata.h: Documentation.
1469 * gdk-pixbuf-csource.1: Spelling fixes.
1471 Wed Oct 10 11:52:17 2001 Owen Taylor <otaylor@redhat.com>
1473 * gdk-pixdata.c gdk-pixbuf.h: Get rid of
1474 GDK_PIXBUF_ERROR_HEADER/PIXEL_CORRUPT and use CORRUPT_IMAGE.
1475 Get rid fo GD_PIXBUF_ERROR_UNKNOWN_FORMAT and use the
1476 existing UKNOWN_TYPE error. (#58308)
1478 * gdk-pixbuf.h, gdk-pixdata.c: Rename gdk_pixbuf_new_from_stream()
1479 back to gdk_pixbuf_new_from_inline(). Rework docs to try
1480 and be helpful for the common case. (#58308)
1482 2001-10-05 Sven Neumann <sven@gimp.org>
1484 * gdk-pixbuf/gdk-pixbuf-io.c
1485 * gdk-pixbuf/gdk-pixbuf-private.h
1486 * gdk-pixbuf/gdk-pixbuf.c
1487 * gdk-pixbuf/gdk-pixbuf.h
1488 * gdk-pixbuf/io-jpeg.c
1489 * gdk-pixbuf/io-png.c: changed GDK_PIXBUF_ERROR_BAD_OPTION_VALUE to
1490 GDK_PIXBUF_ERROR_BAD_OPTION to we can use it for bad keys too. Added
1491 new public API gdk_pixbuf_get_option() to retrieve key/value pairs
1492 set by an image loader. Added support for saving and reading PNG tEXt
1493 chunks in PNG images.
1495 Tue Oct 2 11:29:50 2001 Owen Taylor <otaylor@redhat.com>
1497 * gdk-pixdata.c (gdk_pixdata_to_csource): Fix indentation
1498 use a macro to make code a bit more readable.
1500 2001-10-02 Sven Neumann <sven@gimp.org>
1502 * gdk-pixdata.c: g_string_printfa => g_string_append_printf.
1504 Wed Sep 26 18:08:19 2001 Owen Taylor <otaylor@redhat.com>
1506 * Makefile.am (s-enum-types-h): Fix a typo in the include
1507 guards. (#61254, Skip Montaro)
1509 2001-09-21 Matthias Clasen <matthiasc@poet.de>
1511 * io-xpm.c (xpm_extract_color): Rewritten to handle
1512 xpm colormap entries more thoroughly. (#59939)
1514 2001-09-21 Hans Breuer <hans@breuer.org>
1516 * gdk-pixbuf.def : updated externals
1518 * makefile.msc : generate gdk-pixbuf-enum-types.[hc]
1520 Thu Sep 20 17:22:48 2001 Owen Taylor <otaylor@redhat.com>
1522 * io-tiff.c (gdk_pixbuf__tiff_image_load): On OSF, apparently fseek()
1523 works in some on-demand way, so the fseek
1524 gdk_pixbuf_new_from_file() doesn't work here since we are using
1525 the raw file descriptor. So, we call lseek() on the fileno(f)
1526 before using it. (#60840).
1528 2001-09-20 James Henstridge <james@daa.com.au>
1530 * Makefile.am (gdk-pixbuf-enum-types.c): same change as in pango,
1531 so that flags types are registered as flags rather than enums (not
1532 that there are any flags here at the moment).
1534 Wed Sep 19 00:28:24 2001 Owen Taylor <otaylor@redhat.com>
1536 * Makefile.am (gdk_pixbuf_headers): Don't include
1537 gkd-pixbuf-features.h here since is in builddir
1538 and confuses autogen rules.
1540 * Makefile.am: Don't += variables before they have values,
1541 automake-1.5 doesn't like it.
1543 * Makefile.am: Fix srcdir != builddir for gdk-pixbuf-enum-types.c.
1545 * Makefile.am: The whitespace strikes back.
1547 2001-09-17 Matt Wilson <msw@redhat.com>
1549 * Makefile.am (libpixbufloader_xbm_la_LDFLAGS): removed duplicate
1550 LDFLAGS definition, use the -avoid-version one.
1551 (libpixbufloader_tga_la_LDFLAGS): likewise
1553 Mon Sep 17 11:49:02 2001 Owen Taylor <otaylor@redhat.com>
1555 * pixops/*: Mirror GdkInterpType to PixopsInterpType
1556 to avoid including gdk-pixbuf headers.
1558 2001-09-16 James Henstridge <james@daa.com.au>
1560 * .cvsignore: add generated files to ignore list.
1562 * gdk-pixbuf.h: include gdk-pixbuf-enum-types.h
1564 * Makefile.am: add rules to build gdk-pixbuf-enum-types.[ch]
1566 Fri Sep 14 23:22:12 2001 Matthias Clasen <matthiasc@poet.de>
1568 * io-pnm.c (pnm_read_header): Use GDK_PIXBUF_ERROR_CORRUPT_IMAGE,
1569 not GDK_PIXBUF_ERROR_HEADER_CORRUPT. (#58308)
1571 Fri Sep 14 22:53:45 2001 Matthias Clasen <matthiasc@poet.de>
1573 * io-jpeg.c (gdk_pixbuf__jpeg_image_begin_load): Handle
1574 out-of-memory situation better.
1576 * io-pnm.c: Robustness fixes for pnm loader
1578 * io-gif.c: Make gif loader survive TEST_RANDOMLY_MODIFY
1580 * io-xpm.c (parse_color): detect very long color strings
1582 All of the above from Matthias Clasen <matthiasc@poet.de>,
1583 the remaining from Soeren Sandmann <sandmann@daimi.au.dk>.
1585 * test-images.h: add tests:
1586 - four valid ppm's, eight invalid (matthiasc@poet.de)
1587 - one invalid xpm (matthiasc@poet.de)
1588 - one valid tga, one invalid (sandmann@daimi.au.dk)
1589 - one invalid tiff (sandmann@daimi.au.dk
1591 * test-loaders.c: enable tests for ppm, png, gif, tga, tiff, xpm
1593 * io-tiff.c (gdk_pixbuf__tiff_image_stop_load): TIFFClientOpen can
1594 fail - detect it when it happens
1596 * io-tga.c (gdk_pixbuf__tga_load_increment): Fail if there is too
1599 * gdk-pixbuf-io.c: moved wbmb check after ico check to avoid false
1602 Fri Sep 14 00:30:48 2001 Tim Janik <timj@gtk.org>
1604 * Makefile.am: don't used BUILT_SOURCES to build marshal
1605 files, as in conjunction with stamp files, this can
1606 lead to endless rebuilding loops.
1608 Tue Sep 4 00:22:07 2001 Owen Taylor <otaylor@redhat.com>
1610 * Makefile.am: Fix EXTRA_DIST for gdk-pixbuf-csource.1
1612 Tue Sep 4 03:09:52 2001 Tim Janik <timj@gtk.org>
1614 * gdk-pixbuf-csource.1: new file, manual page for
1615 the publically installed gdk-pixbuf-csource utility.
1617 Thu Aug 30 08:30:03 2001 Matthias Clasen <matthiasc@poet.de>
1619 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Propagate
1620 errors from gdk_pixbuf_loader_load_module.
1622 Thu Aug 30 08:27:37 2001 Matthias Clasen <matthiasc@poet.de>
1624 * io-png.c (png_row_callback): Check that row_num is valid.
1626 Tue Aug 28 21:05:26 2001 Matthias Clasen <matthiasc@poet.de>
1628 * io-bmp.c (OneLine): Emit area_updated signal with proper
1629 area information. (#52002)
1631 Tue Aug 28 20:03:43 2001 Matthias Clasen <matthiasc@poet.de>
1633 * test-loaders.c (test_loader): Catch errors at close time.
1634 * test-loaders.c (main): Remove C++ comments.
1636 2001-08-21 Matthias Clasen <matthiasc@poet.de>
1638 * Makefile.am, gdk-pixbuf-io.c, pixbufloader_tga.def,
1639 io-tga.c: Add tga loader, patch by Nicola Girardi. (#56067)
1641 2001-08-20 Matthias Clasen <matthiasc@poet.de>
1643 * test-images.h, test-loaders.c: Add ico and wbmp tests.
1644 * io-jpeg.c (gdk_pixbuf__jpeg_image_save): Fail with a suitable
1645 error if buffer allocation fails.
1646 * io-ico.c: Make .ICO loader more robust.
1647 All of these are due to sandmann@daimi.au.dk (#50187)
1649 2001-08-19 Sven Neumann <sven@gimp.org>
1651 * pixops/pixops.c: applied some simple but effective optimizations
1652 to pixops_composite_nearest() and pixops_composite_color_nearest().
1654 2001-08-07 Sven Neumann <sven@gimp.org>
1656 * gdk-pixbuf.c (gdk_pixbuf_fill): a comment asked to optimize this
1657 function, so that's what I did.
1659 2001-08-06 Kjartan Maraas <kmaraas@gnome.org>
1661 * gdk-pixdata.c: Fix a typo.
1663 2001-07-30 Hans Breuer <hans@breuer.org>
1665 * pixops/makefile.msc : new file
1666 * makefile.msc : use it to complete the build
1668 2001-07-20 Hans Breuer <hans@breuer.org>
1670 * gdk-pixdata.c : don't 'g_tohl (*istream++)', but move
1671 pointer increment out of the macro, because at least one
1672 compiler (msvc 5.0) gets confused otherwise (applies the
1675 * gdk_pixbuf.def : updated exports
1677 * makefile.msc : reflect gdk-pixbuf-csource changes
1679 2001-07-17 Darin Adler <darin@bentspoon.com>
1681 * gdk-pixbuf-csource.c: Add missing <stdlib.h> include.
1682 * io-png.c: (setup_png_transformations): Add ifdef so we compile
1683 without warnings with G_DISABLE_CHECKS on.
1684 * io-pnm.c: (gdk_pixbuf__pnm_image_load_increment): Add a missing
1686 * io-wbmp.c: (getin), (get_mbi): Add a missing const.
1687 * io-xbm.c: (gdk_pixbuf__xbm_image_load_real): Get rid of some
1688 unused locals and add an initial value to quiet the compiler's
1689 unintialized variable warning.
1690 * pixops/pixops.c: Put an ifdef around some dead code.
1692 Thu Jul 5 10:17:15 2001 Owen Taylor <otaylor@redhat.com>
1694 * pixops/Makefile.am (noinst_LTLIBRARIES): Switch
1695 over to the new include flags AC_SUBST(). (Problem
1696 pointed out by Mikael Hermansson.)
1698 2001-06-29 Havoc Pennington <hp@redhat.com>
1700 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): fix for
1703 Thu Jun 28 21:54:19 2001 Owen Taylor <otaylor@redhat.com>
1705 * make-inline-pixbuf.c test-gdk-pixbuf.c test-loaders.c
1706 gdk-pixbuf-csource.c: Fix args to g_type_init ().
1708 2001-06-28 Havoc Pennington <hp@pobox.com>
1710 * gdk-pixdata.c: <string.h>
1712 * gdk-pixbuf-io.c (get_libdir): fix typo in dll name (aren't we
1713 also leaking memory here from g_strdup_printf?)
1715 Tue Jun 26 09:48:02 2001 Tim Janik <timj@gtk.org>
1717 * Makefile.am (noinst_PROGRAMS): get rid of make-inline-pixbuf
1719 * gdk-pixbuf-data.[hc]: provide gdk_pixbuf_new_from_stream()
1720 instead from gdk_pixbuf_new_from_inline().
1722 * gdk-pixdata.[hc]: auxillary GdkPixdata structure, public
1723 installed API for applications that need to serialize/deserialize
1724 on their own (gimp, BEAST).
1726 * gdk-pixbuf/gdk-pixbuf-csource.c: provide publically installed
1727 program that can dump images in CSource format and Pixbuf
1728 stream format. supports RLE encoding, MACRO formatting etc...
1731 Mon Jun 25 00:28:11 2001 Owen Taylor <otaylor@redhat.com>
1733 * Makefile.am: Actually update timestamps, so rules don't
1736 2001-06-11 Havoc Pennington <hp@redhat.com>
1738 * Makefile.am (stamp-gdk-pixbuf-marshal.c): glib_genmarshal
1739 already includes top_builddir
1741 2001-06-08 Havoc Pennington <hp@redhat.com>
1743 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_load_module): remove
1744 bogus g_return_if_fail
1746 * io-gif.c (gif_get_lzw): if delay time is 0 or smaller than
1747 likely timeout resolution, set it to an arbitrarily-chosen short
1749 Fixes bug #55953 from warmenhoven@yahoo.com
1751 2001-06-07 Havoc Pennington <hp@redhat.com>
1753 * Makefile.am: use Owen's new way of doing stampfiles/generated
1756 2001-06-07 Havoc Pennington <hp@redhat.com>
1758 * Makefile.am (gdk-pixbuf-marshal.c): fix up the glib-genmarshal path
1760 2001-06-05 Havoc Pennington <hp@redhat.com>
1762 * test-loaders.c (main): use putenv not setenv, reported by
1765 2001-05-08 Havoc Pennington <hp@redhat.com>
1767 * gdk-pixbuf-util.c (gdk_pixbuf_add_alpha): docs fixup,
1768 and fix behavior to still subst color if the original image
1771 2001-06-04 Havoc Pennington <hp@redhat.com>
1773 * io-pnm.c (pnm_skip_whitespace): patch from Szekeres Istvan,
1776 2001-06-01 Havoc Pennington <hp@redhat.com>
1778 Apply patch from sandmann@daimi.au.dk, with some tweaks.
1779 Makes things a bit more robust, and adds test-loaders.c
1780 which is good for finding further robustness bugs to fix.
1782 * io-tiff.c: Try to work around libtiff suckiness a bit;
1783 put a giant thread lock on the whole loader,
1784 paranoically check both whether error handlers were called and
1785 also whether functions return false. Handle case where width or
1786 height is 0. Various cleanups.
1788 * io-png.c (gdk_pixbuf__png_image_stop_load): only unref pixbuf
1790 (png_error_callback): apparently libpng expects you to longjmp out
1793 * io-gif.c (struct _GifContext): remove unused "pixbuf" field
1794 (lzw_read_byte): change "Mail jrb if this fails" g_warning
1796 (gif_get_lzw): check for out-of-memory
1797 (gif_prepare_lzw): catch/report an error
1798 (new_context): use try_malloc, since GifContext is nearly 70K
1799 (gdk_pixbuf__gif_image_load_increment): set context->buf to NULL
1800 so we don't crash later.
1802 * Makefile.am: Add test-loaders
1804 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): handle context ==
1807 2001-05-29 Darin Adler <darin@eazel.com>
1809 * gdk-pixbuf.h: Fix prototype to use "(void)" instead of "()".
1811 Mon May 28 14:21:35 2001 Jonathan Blandford <jrb@redhat.com>
1813 * io-bmp.c: Patch from Helmethead <hoshem@mel.comcen.com.au> to
1814 fix up bmp decoder to:
1815 - adds 16 bpp bmp support (bug #53884)
1816 - adds OS/2 1.x format bmp support (bug #54964)
1817 - adds 4 bpp RLE compressed bmp support
1818 - adds 1 bpp colormap support
1819 - fixes negative height (top down) bmp support
1821 2001-05-25 Hans Breuer <hans@breuer.org>
1823 * gdk_pixbuf.def : reflect Havoc's recent api change
1825 Sun May 20 12:53:49 2001 Owen Taylor <otaylor@redhat.com>
1827 * Makefile.am (libgdk_pixbuf_1_3_la_LDFLAGS): Remove an
1828 excess $(GLIB_LIBS).
1830 Sun May 13 11:59:11 2001 Owen Taylor <otaylor@redhat.com>
1832 * Makefile.am: Make modules depend on libgdk_pixbuf.la.
1834 2001-05-04 Havoc Pennington <hp@redhat.com>
1836 * pixops/pixops.c (pixops_process): merge fix from stable: Patch
1837 from hoshem@mel.comcen.com.au to fix nonzero X offsets. Fixes
1840 * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest): merge
1841 from stable: Patch from OKADA Mitsuru <m-okada@fjb.co.jp> to fix
1842 confusion of using "src" instead of "p".
1843 (pixops_composite_color_nearest): Use a more accurate (and
1844 correct, to begin with) compositing method. This cures checks
1845 showing through on images with no alpha.
1847 * gdk-pixbuf.c (gdk_pixbuf_fill): fix bug that left some trailing
1850 * gdk-pixbuf-io.h: fix UpdatedNotifyFunc to use signed ints
1852 * gdk-pixbuf-loader.h (struct _GdkPixbufLoaderClass): Change
1853 area_updated signal to use signed ints. Removed animation-related
1856 * io-gif.c, io-gif-animation.h, io-gif-animation.c: Massive
1859 * gdk-pixbuf-animation.c: Add GdkPixbufAnimationIter to abstract
1860 all the pesky details. Remove old frame-based API. Make
1861 GdkPixbufAnimation an abstract base class, derived by the loaders.
1863 Sun Apr 22 15:51:32 2001 Owen Taylor <otaylor@redhat.com>
1865 * Makefile.am (LDADDS): Add $(MATH_LIB).
1867 2001-04-18 Havoc Pennington <hp@redhat.com>
1869 * gdk-pixbuf.c (gdk_pixbuf_fill): Function to fill pixbuf with a
1872 Wed Apr 4 01:41:02 2001 Tim Janik <timj@gtk.org>
1874 * pixops/Makefile.am (noinst_LTLIBRARIES): include $top_srcdir
1875 so we don't try to get <gtk/gtkobject.h> from standard search
1878 * Makefile.am (gdk-pixbuf-marshal.c): use deps from srcdir.
1879 add gdk-pixbuf-marshal.list to EXTRA_DIST.
1880 take gdk-pixbuf-marshal.h out of _la sources.
1882 2001-03-19 Tor Lillqvist <tml@iki.fi>
1884 * makefile.mingw.in: Handle gdk-pixbuf-marshal.c.
1886 * gdk_pixbuf.def: Update.
1888 * pixbufloader_*.def: Just export the fill_vtable functions now.
1890 2001-03-18 Mike Kestner <mkestner@ameritech.net>
1892 * make-inline-pixbuf.c (main): Added logic to remove output when
1895 2001-03-14 Havoc Pennington <hp@redhat.com>
1897 * Makefile.am (gdk-pixbuf-marshal.c): Use different temporary file
1898 from gdk-pixbuf-marshal.h, fixes parallel makes.
1900 Thu Mar 1 04:01:57 2001 Tim Janik <timj@gtk.org>
1902 * test-gdk-pixbuf.c: fixed includes.
1904 2001-02-18 Havoc Pennington <hp@pobox.com>
1906 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): prepend underscore
1907 (gdk_pixbuf_get_named_module): prepend underscore
1908 (gdk_pixbuf_get_module): prepend underscore
1910 2001-02-19 Havoc Pennington <hp@redhat.com>
1912 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): const fix
1914 2001-02-17 Havoc Pennington <hp@pobox.com>
1916 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_new_with_type): docs
1918 2001-02-07 Alexander Larsson <alexl@redhat.com>
1920 * io-xpm.c (free_buffer):
1921 Use g_free, since the buffer is allocated with g_try_alloc().
1923 2001-02-06 Christophe Merlet <redfox@eikonex.org>
1925 * gdk-pixbuf-data.c: Fixes a minor typo.
1927 Sun Feb 4 07:59:57 2001 Tim Janik <timj@gtk.org>
1929 * gdk-pixbuf.h: DOH! don't include glib/gobject.h but glib-object.h,
1930 we finally need the gobject->gruntime rename.
1932 * *.c: scratched calls to g_type_init(), there's simply no point in
1933 doing that, use gtk_init().
1935 2001-02-01 Havoc Pennington <hp@pobox.com>
1937 * gdk-pixbuf-loader.c, gdk-pixbuf-loader.h: rename "private" field
1938 in struct to "priv" for C++
1940 2001-01-31 Havoc Pennington <hp@pobox.com>
1942 * gdk-pixbuf.c: include glib-object.h instead of gvaluetypes.h
1944 2001-01-26 Havoc Pennington <hp@redhat.com>
1946 * gdk-pixbuf-io.c (mname): fix included modules case.
1948 2001-01-22 Havoc Pennington <hp@redhat.com>
1950 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): check errors
1951 from gdk_pixbuf_load_module
1953 2001-01-22 Havoc Pennington <hp@redhat.com>
1955 * Makefile.am: Add built marshaller files to support
1956 GdkPixbufLoader signals
1958 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): have
1959 GDK_PIXBUF_MODULEDIR unconditionally replace the compiled-in
1960 module location, rather than acting as a fallback, because we are
1961 using GDK_PIXBUF_MODULEDIR to use gdk-pixbuf before installing it.
1963 * gdk-pixbuf.h: include gdk-pixbuf-loader.h
1965 * gdk-pixbuf-loader.h, gdk-pixbuf-loader.c: Move back over here
1966 from gtk, and add error to close(), because stop_load may do
1967 parsing of the image.
1969 * pixops/have_mmx.S (_pixops_have_mmx): add newline at end of file
1971 * io-*.c: make individual operations static, and add fill_vtable
1972 functions which are exported. Fix the collection of type warnings
1973 that surfaced, including a number of functions that didn't
1974 properly take a GError and some that weren't
1975 const-correct. Involved adding error handling for a few loaders.
1977 * gdk-pixbuf-io.h: Add error reporting to stop_load function
1979 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): change to just look up
1980 a function that fills in the GdkPixbufModule vtable, instead of
1981 looking up all the image functions individually; this means we
1982 can get type safety within modules for the loader functions.
1983 Also it means you don't have to keep the statically compiled and
1984 GModule versions in sync.
1986 * test-gdk-pixbuf.c (main): remove gdk_pixbuf_init()
1988 * make-inline-pixbuf.c (main): remove call to gdk_pixbuf_init()
1990 * gdk-pixbuf.h: nuke gdk_pixbuf_init()
1992 * gdk-pixbuf-animation.c (gdk_pixbuf_frame_get_type): g_type_init
1995 * gdk-pixbuf.c (gdk_pixbuf_get_type): g_type_init () here
1997 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_get_type):
2000 2001-01-20 John Harper <jsh@eazel.com>
2002 * io-xbm.c: new pixbuf loader, for X bitmap files. Basically a
2003 collision between Xlib's RdBitF.c and io-tiff.c
2005 * gdk-pixbuf-io.c, Makefile.am, pixbufloader_xbm.def: added
2008 [ merged from stable gdk-pixbuf module. Untested, but it
2009 compiles, and works fine in the stable module ]
2011 2001-01-18 Tor Lillqvist <tml@iki.fi>
2013 * gdk-pixbuf-io.c (get_libdir): (Win32) Use the new
2014 g_win32_get_package_installation_subdirectory() function. No need
2015 to include windows.h.
2016 (gtk_win32_get_installation_directory): Remove this then.
2018 2001-01-01 Havoc Pennington <hp@redhat.com>
2020 * Makefile.am (libgdk_pixbuf_1_3_la_LDFLAGS): add
2021 @LIBTOOL_EXPORT_OPTIONS@
2023 2000-12-30 Tor Lillqvist <tml@iki.fi>
2025 * gdk_pixbuf.def: Update.
2027 2000-12-16 Havoc Pennington <hp@pobox.com>
2029 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file): ref
2030 the pixbuf in the frame, so we can use gdk_pixbuf_frame_free
2031 (gdk_pixbuf_frame_copy): new function
2032 (gdk_pixbuf_frame_free): new function
2033 (gdk_pixbuf_frame_get_type): new function
2034 (GDK_TYPE_PIXBUF_FRAME): macro to get type for GdkPixbufFrame
2036 Tue Nov 14 11:51:26 2000 Owen Taylor <otaylor@redhat.com>
2038 * Makefile.am: Add -avoid-version for all modules.
2040 2000-11-13 Havoc Pennington <hp@redhat.com>
2042 * io-png.c (png_simple_error_callback): fix error message to not
2043 say "save" since it's used for loading
2045 2000-11-11 Hans Breuer <Hans@Breuer.Org>
2047 * gdk-pixbuf-io.c : Fix all function prototype macros for self
2048 contained image handlers (!USE_G_MODULE). Files to save should
2049 be opened in binary mode, fopen(s, "wb").
2051 * io-xpm.c : added HAVE_UNISTD_H condition
2053 2000-11-11 Tor Lillqvist <tml@iki.fi>
2055 * gdk_pixbuf.def: Add gdk_pixbuf_new_subpixbuf.
2057 * io-tiff.c (gdk_pixbuf__tiff_image_begin_load): Use
2058 g_file_open_tmp() (just added to GLib) instead of mkstemp() (or
2059 mktemp() and open()).
2061 * io-xpm.c (gdk_pixbuf__xpm_image_begin_load): Ditto.
2063 2000-11-01 Havoc Pennington <hp@pobox.com>
2065 * gdk-pixbuf.c (gdk_pixbuf_new_subpixbuf): New function to create
2066 a pixbuf pointing to a subregion of another pixbuf.
2068 2000-10-16 Tor Lillqvist <tml@iki.fi>
2070 * gdk-pixbuf-io.c: Define also m_save (for the non-gmodule case).
2072 2000-10-16 Havoc Pennington <hp@redhat.com>
2074 * gdk-pixbuf-io.c (gdk_pixbuf_get_module)
2075 (gdk_pixbuf_get_named_module) (gdk_pixbuf_load_module):
2076 add error reporting here also
2078 * make-inline-pixbuf.c (main): use GError
2080 * io-xpm.c: include unistd.h
2082 * gdk-pixbuf-util.c: include string.h
2084 * io-*.c: add error reporting
2086 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file): add
2089 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file): Add error reporting
2091 * gdk-pixbuf-io.h: Add GError** to load_increment and load
2094 * gdk-pixbuf-io.c (gdk_pixbuf_save) (gdk_pixbuf_savev): return
2095 a G_FILE_ERROR if we fail to write or close the file.
2097 * gdk-pixbuf.h: remove GDK_PIXBUF_ERROR_IO, instead we'll use
2098 G_FILE_ERROR_*. Rename enum to GdkPixbufError, properly following
2099 the GError naming rules. Add GError** to load functions.
2101 2000-10-06 Havoc Pennington <hp@redhat.com>
2103 * gdk-pixbuf.h: add GdkPixbufAlphaMode
2105 2000-10-06 Havoc Pennington <hp@redhat.com>
2107 This entry is a summary of the merged-in changes from 1.0.
2108 Relevant original ChangeLog entries are spliced in after
2109 this entry; the files they refer to are from the 1.0
2112 * pixops/pixops.c (pixops_composite_nearest): sync a small fix
2115 * io-xpm.c (xpm_seek_string): add fscanf error check from 1.0
2116 Add progressive loader from 1.0
2118 * io-tiff.c (gdk_pixbuf__tiff_image_begin_load): mem leak fixes
2121 * io-pnm.c: new version from 1.0 tree
2123 * io-jpeg.c (gdk_pixbuf__jpeg_image_load): sync from 1.0, use
2126 * io-gif.c (lzw_read_byte): sync from 1.0, change a g_error to
2128 (gif_get_next_step): return 0 here, sync from 1.0
2130 * gdk-pixbuf-util.c: sync email address change for Cody
2133 2000-09-11 Jeffrey Stedfast <fejj@helixcode.com>
2135 * gdk-pixbuf/io-pnm.c: Pretty much totally rewrote again because
2136 last nights code was still "broken". Should now properly handle
2137 all error conditions gracefully.
2139 2000-09-10 Jeffrey Stedfast <fejj@helixcode.com>
2141 * gdk-pixbuf/io-pnm.c: Rewrote.
2143 2000-09-09 Federico Mena Quintero <federico@helixcode.com>
2145 * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest): Compute
2146 the correct dest offset.
2148 2000-08-25 Federico Mena Quintero <federico@helixcode.com>
2150 * gdk-pixbuf/io-xpm.c: #include <unistd.h>
2152 2000-08-05 Larry Ewing <lewing@helixcode.com>
2154 * gdk-pixbuf/io-tiff.c: stop leaking context->tempname.
2156 * gdk-pixbuf/io-xpm.c: same as above.
2158 2000-07-26 Michael Meeks <michael@helixcode.com>
2160 * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_load): make
2163 2000-07-21 Larry Ewing <lewing@helixcode.com>
2165 * gdk-pixbuf/io-xpm.c: add a fake progressive loader so that
2166 xpm at least supports the progressive interface like the one in
2167 io-tiff.c. This should be reimplemented as an actual progressive
2170 2000-07-19 Jonathan Blandford <jrb@redhat.com>
2172 * demo/pixbuf-demo.c (update_timeout): changed scaling level to
2173 make it look better.
2174 * gdk-pixbuf/testpixbuf.c (update_timeout): Patch from michael
2175 meeks to handle errors better.
2177 2000-10-07 Tor Lillqvist <tml@iki.fi>
2180 * pixbufloader_jpeg.def
2181 * pixbufloader_png.def: Add new entry points.
2183 * makefile.mingw.in: Use libintl.
2185 2000-10-06 Havoc Pennington <hp@redhat.com>
2187 * gdk-pixbuf-io.c (gdk_pixbuf_save): s/format/type/g to be
2188 consistent with gdk_pixbuf_loader_new_with_type().
2189 Return runtime error if a module is missing.
2191 * gdk-pixbuf.h: add GDK_PIXBUF_ERROR_UNKNOWN_TYPE
2193 2000-10-05 Havoc Pennington <hp@redhat.com>
2195 Pixbuf saving, patch from David Welton.
2197 * Makefile.am (GDK_PIXBUF_LIBS): add INTLLIBS
2198 (libgdk_pixbuf_1_3_la_SOURCES): add gdk-pixbuf-i18n.h
2200 * gdk-pixbuf-i18n.h: Add _() to gdk-pixbuf
2202 * io-png.c (gdk_pixbuf__png_image_save): PNG save routine.
2204 * io-jpeg.c (gdk_pixbuf__jpeg_image_save): JPEG save routine.
2206 * gdk-pixbuf-io.c (gdk_pixbuf_save):
2207 (gdk_pixbuf_savev): Implement pixbuf saving routines
2209 * gdk-pixbuf.c (gdk_pixbuf_error_quark): pixbuf error quark
2212 * gdk-pixbuf.h: Add public save routines; add pixbuf error
2215 * gdk-pixbuf-io.h: Add save function to GdkPixbufModule
2217 2000-10-05 Dan Winship <danw@helixcode.com>
2219 * io-png.c, io-tiff.c, io-xpm.c: Fix comments to not claim that
2220 all three of these files are the JPEG image loader. (From
2223 2000-10-03 Tor Lillqvist <tml@iki.fi>
2225 * makefile.mingw.in: Add rule for make-inline-pixbuf. Use
2226 gdk-pixbuf's version number in the rule for makefile.mingw itself.
2228 * gdk_pixbuf.def: Add new entry points.
2230 2000-09-26 Havoc Pennington <hp@redhat.com>
2232 * gdk-pixbuf-util.c (gdk_pixbuf_saturate_and_pixelate): Add this
2233 function here, instead of putting it in a private GTK+ file.
2235 * gdk-pixbuf-private.h (GdkPixbufInlineFormat): include an
2236 enum here for the known formats of inlined pixbufs.
2237 Also, #define our file magic here.
2239 2000-06-23 Havoc Pennington <hp@redhat.com>
2241 * make-inline-pixbuf.c: Small program that creates C variable
2242 declarations of inline pixbuf data. This can be read
2243 by gdk_pixbuf_new_from_inline.
2245 * gdk-pixbuf.h (gdk_pixbuf_new_from_inline): New function to read
2246 inline pixbuf data and create a pixbuf from it.
2248 * gdk-pixbuf-data.c (gdk_pixbuf_new_from_inline): implement here
2250 2000-09-07 Tor Lillqvist <tml@iki.fi>
2252 * makefile.mingw.in: Use own version number for gdk-pixbuf DLLs,
2255 2000-08-12 Tor Lillqvist <tml@iki.fi>
2257 * gdk_pixbuf.def: Add missing entry point.
2259 2000-08-10 Havoc Pennington <hp@redhat.com>
2261 * Makefile.am (EXTRA_DIST): The *.def files had the wrong names
2262 (s/pixbuf_/pixbufloader_)
2264 2000-08-02 Tor Lillqvist <tml@iki.fi>
2270 * io-wbmp.c: Conditionalise inclusion of <unistd.h>.
2272 * makefile.mingw.in: List loaders alphabetically. Add the wbmp
2273 one. Fix names of DLLs to have '-' instead of '_'.
2275 2000-07-31 Elliot Lee <sopwith@redhat.com>
2276 * io-wbmp.c: Some bug fixes - now tested to work.
2278 2000-07-27 Elliot Lee <sopwith@redhat.com>
2280 * gdk-pixbuf-io.h, gdk-pixbuf-io.c: Add
2281 gdk_pixbuf_get_named_module() function to facilitate above change
2282 * io-wbmp.c, pixbufloader_wbmp.defs, gdk-pixbuf-io.c, Makefile:
2283 Implement loader for WBMP format.
2284 * io-bmp.c: Don't malloc a temporary buffer - use stack instead.
2286 2000-07-23 Tor Lillqvist <tml@iki.fi>
2291 * pixops/makefile.mingw.in
2292 * pixbuf_*.def: New files.
2295 * pixops/Makefile.am: Add them. Add rule to generate makefile.mingw.
2297 * gdk-pixbuf-io.c (gtk_win32_get_installation_directory):
2298 New function, to get the GTK+ installation directory from
2299 the Windows Registry, where the installation program
2300 for whatever software includes GTK+ has stored it.
2302 Used to avoid having hardcoding the directory where to look for
2303 loaders. This function is needed by gtk, too, so it should
2304 really be just in one place. Maybe a small static library
2305 one level up from here?
2307 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file)
2308 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file):
2309 Open file in binary mode. This *is* standard C. (No-op on Unix,
2312 * io-jpeg.c: If we don't HAVE_SIGSETJMP, use normal setjmp().
2314 * io-tiff.c: Use g_get_tmp_dir(). If we don't HAVE_MKSTEMP, use
2315 mktemp() and open().
2316 (gdk_pixbuf__tiff_image_stop_load): g_free() also the tempname.
2318 * pixops/*.S: The Gas from mingw32 doesn't like the .type
2319 pseudo-op. Conditionalise on __MINGW32__, but probably
2320 should conditionalise on Gas version instead? Or could we
2321 do without .type on all systems?
2323 * pixops/timescale.c: Use g_get_current_time()
2324 instead of gettimeofday().
2326 Sat Jul 22 10:57:22 2000 Owen Taylor <otaylor@redhat.com>
2328 * Makefile.am (test_gdk_pixbuf_LDADD): Remove -lgmodule
2330 Tue Jul 11 11:26:42 2000 Owen Taylor <otaylor@redhat.com>
2332 * gdk-pixbuf.c: Add <string.h> include.
2334 Tue Jul 11 06:20:14 2000 Tim Janik <timj@gtk.org>
2336 * io-gif.c (gdk_pixbuf__gif_image_load_animation):
2337 * gdk-pixbuf-data.c (gdk_pixbuf_new_from_data):
2338 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file):
2339 use g_object_new() instead of g_type_create_instance() which
2340 is a private function for fundamental type implementations.
2342 Thu Jul 6 11:49:47 2000 Owen Taylor <otaylor@redhat.com>
2344 * Makefile.am (libgdk_pixbuf_la_LDFLAGS): Use GTK+ version
2345 soname scheme for gdk-pixbuf.
2347 2000-06-21 Havoc Pennington <hp@pobox.com>
2349 * gdk-pixbuf.c: Convert GdkPixbuf to GObject, leaving it opaque
2350 (i.e. derivation is not allowed, and there are no virtual methods
2352 (gdk_pixbuf_preinit): Call g_type_init() here.
2353 (gdk_pixbuf_init): Add a user-friendly init function, for users
2354 of standalone gdk-pixbuf
2356 * gdk-pixbuf-animation.c: Convert to GObject, in the same
2357 way GdkPixbufAnimation was done.
2359 * gdk-pixbuf.h: Remove gdk_pixbuf_set_unref_handler() and
2360 gdk_pixbuf_finalize() from API, since these are broken and don't
2361 make sense with new GObject stuff.
2363 Wed Jun 21 16:02:48 2000 Owen Taylor <otaylor@redhat.com>
2365 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): Add feature to
2366 support a GDK_PIXBUF_MODULEDIR env variable as a secondary
2369 2000-06-10 Federico Mena Quintero <federico@helixcode.com>
2371 * demo/pixbuf-demo.c: It was cold and rainy this Saturday morning,
2372 so I needed something to warm my thighs. Running plain infinite
2373 loops on your laptop to make it hot is not very much fun. A demo
2374 of the gdk-pixbuf scaling functions is way better, and looks
2377 * configure.in (AC_OUTPUT): Added the demo Makefile.
2379 * Makefile.am (SUBDIRS): Added the demo directory.
2381 2000-06-09 Larry Ewing <lewing@helixcode.com>
2383 * gdk-pixbuf/io-png.c (gdk_pixbuf__png_image_load_increment):
2384 setjmp for the png error handler. It seems setting the error
2385 handling functions does not avoid the jump, and so not calling
2386 setjmp was causing the incremental loader to jump into lala land.
2387 (gdk_pixbuf__png_image_begin_load): setjmp for error handling, I'm
2388 not sure this one is actually required but the docs say it must be
2389 set for every call to a png_* function.
2390 Also changed the comment to reflect the fact that setting the
2391 error handlers does _not_ avoid the longjmp.
2393 2000-06-06 Larry Ewing <lewing@helixcode.com>
2395 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
2396 take frame offest into account when trying to calculate the
2397 animation bbox. Also set the width to the width not the height.
2398 (gdk_pixbuf_loader_animation_done): cycle over the frames to
2399 calculate bbox because now we finally have all the offset
2400 information for each frame.
2402 2000-06-05 Mathieu Lacage <mathieu@gnome.org>
2404 * configure.in: add some gtk parameters to the
2405 GDK_PIXBUF_LIBÃ�²S and GDK_PIXBUG_INCLUDEDIR vars. One more
2406 fight in my crusade for strange prefix compile...
2408 2000-05-30 Not Zed <NotZed@HelixCode.com>
2410 * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_begin_load):
2411 Initialise the error handler exit routine to our own. Note this
2412 means that every function that accesses the jpeg lib on this
2413 object MUST do a setjmp.
2414 (gdk_pixbuf__jpeg_image_stop_load): setjmp before accessing jpeg
2415 lib for handling fatal error.
2416 (gdk_pixbuf__jpeg_image_load_increment): And here too. So now
2417 your applications dont quit if there's a jpeg error!
2419 2000-05-30 Federico Mena Quintero <federico@helixcode.com>
2421 * gdk-pixbuf.spec.in: Include all the loader libraries. Patch
2422 from Frank de Lange <frank@unternet.org>.
2424 2000-05-09 Darin Adler <darin@eazel.com>
2426 * gdk-pixbuf/test-gdk-pixbuf.c:
2427 Fixed includes to get rid of accidental GNOME dependency.
2429 2000-05-26 Cody Russell <car0969@gamma2.uta.edu>
2430 * Makefile.am: Added gdk-pixbuf.spec to EXTRA_DIST
2432 2000-05-22 Federico Mena Quintero <federico@helixcode.com>
2434 * configure.in: Bumped version number to 0.8.0.
2436 * doc/Makefile.am (content_files): The toplevel gdk-pixbuf.sgml
2437 file was not being distributed.
2439 * gdk-pixbuf/pixops/Makefile.am (EXTRA_DIST): Added DETAILS.
2441 2000-05-09 Darin Adler <darin@eazel.com>
2443 * gdk-pixbuf/gdk-pixbuf-drawable.c: (rgb565lsb), (rgb565msb),
2444 (rgb565alsb), (rgb565amsb), (rgb555lsb), (rgb555msb), (rgb555alsb),
2445 (rgb555amsb), (convert_real_slow): Change all conversion from 16-bit
2446 formats to 32-bit formats to re-use the high bits of the color values
2447 so that white maps to full white.
2449 Fri May 5 12:16:32 2000 Owen Taylor <otaylor@redhat.com>
2451 * gdk-pixbuf/pixops/DETAILS: Add beginnings of file with
2452 detailed information about the structure and algorithms
2453 of pixops so people can fix it instead of breaking it.
2455 2000-05-04 Darin Adler <darin@eazel.com>
2457 * gdk-pixbuf/pixops/pixops.c: (pixops_composite_nearest),
2458 (composite_pixel), (composite_line):
2459 * gdk-pixbuf/test-gdk-pixbuf.c: (simple_composite_test_one_type):
2460 Now that Owen explained the algorithm, I think I implemented it
2461 right for the cases where the destination pixbuf is not opaque.
2462 The test does seem to confirm it.
2464 2000-05-04 Darin Adler <darin@eazel.com>
2466 * gdk-pixbuf/.cvsignore:
2467 * gdk-pixbuf/Makefile.am:
2468 * gdk-pixbuf/test-gdk-pixbuf.c (store_pixel), (fill_with_pixel),
2469 (load_pixel), (simple_composite_test_one),
2470 (simple_composite_test_one_type), (simple_composite_test), (main):
2471 Added some tests of composite to highlight problems in the old
2472 implementation. These tests run without any user interaction.
2473 Just do "make check".
2475 * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest),
2476 (composite_pixel), (composite_line): Fix composite to do a textbook
2477 "A over B" composite. This was clearly the intent, and it was easy
2478 to fix the code to do it. (Note to those that read my earlier tries
2479 at a patch; this version fixes typos that were present in all
2480 my patch attempts. I checked the final version by adding more tests.)
2482 2000-04-22 05:27:43 2000 Owen Taylor <otaylor@redhat.com>
2484 * gdk-pixbuf/pixops/pixops.c (pixops_scale_nearest): Properly
2485 offset y coordinate accordining to render_y0.
2487 * gdk-pixbuf/gdk-pixbuf-scale.c: Properly handle nonzero
2490 2000-04-22 James Henstridge <james@daa.com.au>
2492 * gdk-pixbuf.spec.in (%files): moved %{prefix}/bin/* from the main
2493 package to the devel package. The only file installed in bin is
2494 gdk-pixbuf-config, which belongs in -devel. This should allow having
2495 multiple versions of the main gdk-pixbuf package installed.
2497 2000-04-17 Karl Eichwalder <ke@suse.de>
2499 * gdk-pixbuf/Makefile.am (INCLUDES): Add $(GNOME_CFLAGS).
2500 Reported by Jens Finke.
2502 2000-04-14 Tomasz KÃ�³opczko <kloczek@pld.org.pl>
2504 * gdk-pixbuf/pixops/makefile.am: $(LIBART_CFLAGS) replaced by
2505 $(GTK_CFLAGS) - now gdk-pixbuf compiles correctly.
2507 2000-04-13 James Henstridge <james@daa.com.au>
2509 * configure.in: when performing the configure check to see if
2510 gmodule works, set CFLAGS to GLIB_CFLAGS and LIBS to GLIB_LIBS,
2511 rather than the other way round. Also, call AC_MSG_RESULT in the
2512 even that dynamic modules were not supported.
2514 2000-04-12 Federico Mena Quintero <federico@helixcode.com>
2516 This comes from an excellent idea by Tim Janik (timj@gtk.org) to
2517 hook to the last unref operation.
2519 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_set_last_unref_handler): New
2520 function to set the last unref handler for a pixbuf.
2521 (gdk_pixbuf_finalize): New function to actually finalize a pixbuf.
2522 It calls the pixbuf's destroy notification function and frees the
2523 GdkPixbuf structure itself.
2524 (gdk_pixbuf_unref): Use the last unref function of the pixbuf if
2527 * gdk-pixbuf/gdk-pixbuf-private.h (struct _GdkPixbuf): New fields
2528 for the last unref handler and its user data.
2530 * gdk-pixbuf/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Use
2531 g_new0() to allocate the pixbuf.
2533 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
2534 Fixed the call to gtk_signal_new() for the "frame_done" signal; it
2535 was not specifying the `frame' argument.
2537 * gdk-pixbuf/gdk-pixbuf-animation.c
2538 (gdk_pixbuf_animation_get_width): Fixed docstring.
2539 (gdk_pixbuf_animation_get_height): Likewise.
2540 (gdk_pixbuf_animation_get_num_frames): Likewise.
2541 (gdk_pixbuf_animation_get_frames): Likewise.
2543 * doc/gdk-pixbuf-sections.txt: Updated with the new functions and
2546 * doc/tmpl/gdk-pixbuf.sgml: Added the description for GdkColorspace.
2548 * doc/tmpl/scaling.sgml: Added the description for GdkInterpType.
2550 * doc/tmpl/refcounting.sgml: Updated with the information about
2551 the last unref handler.
2553 * doc/tmpl/*.sgml: Markup tweaks.
2555 * gdk-pixbuf/Makefile.am (libgnomecanvaspixbuf_la_LDFLAGS): Sigh,
2556 update the libtool version number for libgnomecanvaspixbuf as
2558 (libpixbufloader_*_la_LDFLAGS): The loaders need to be versioned
2559 as well, or the old ones won't work with the new stuff. Also,
2560 renamed the modules as follows.
2562 * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_load_module): Now the
2563 modules are called "libpixbufloader-<format>.so" instead of
2564 "libpixbuf-<format>.so". They needed renaming so that the new
2565 loaders won't overwrite the old ones; even with the versioning
2566 stuff, the new .so symlink to the .so.1.0.0 would overwrite the
2569 2000-04-12 Paolo Molaro <lupus@debian.org>
2571 * .cvsignore, src/.cvsignore: shut up cvs.
2573 2000-04-11 Federico Mena Quintero <federico@helixcode.com>
2575 Most of this patch is based on a patch by Havoc Pennington
2576 (hp@redhat.com) to make GdkPixbuf's structures opaque and to
2577 remove the libart dependency.
2579 * gdk-pixbuf/gdk-pixbuf.h: Removed the public structures.
2580 (GdkColorspace): New enum that for now only contains
2582 (GdkPixbufDestroyNotify): New type for the pixbuf's pixels destroy
2583 notification function.
2584 (GdkInterpType): New num with interpolation types.
2586 * *.[ch]: Replace the libart stuff with our own stuff.
2588 * pixops/*.[ch]: Likewise.
2590 * gdk-pixbuf/gdk-pixbuf-private.h: New file with the private
2591 declarations of the GdkPixbuf structures.
2593 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_new_from_art_pixbuf):
2595 (gdk_pixbuf_get_format): Constify.
2596 (gdk_pixbuf_get_n_channels): Constify.
2597 (gdk_pixbuf_get_has_alpha): Constify.
2598 (gdk_pixbuf_get_bits_per_sample): Constify.
2599 (gdk_pixbuf_get_pixels): Constify.
2600 (gdk_pixbuf_get_width): Constify.
2601 (gdk_pixbuf_get_height): Constify.
2602 (gdk_pixbuf_get_rowstride): Constify.
2604 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_copy): New function to copy
2607 * gdk-pixbuf/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Added a
2608 bits_per_sample argument; currently only 8 bits per sample are
2611 * gdk-pixbuf/gdk-pixbuf-animation.c (gdk_pixbuf_frame_get_pixbuf):
2613 (gdk_pixbuf_frame_get_x_offset): New accessor.
2614 (gdk_pixbuf_frame_get_y_offset): New accessor.
2615 (gdk_pixbuf_frame_get_delay_time): New accessor.
2616 (gdk_pixbuf_frame_get_action): New accessor.
2618 * gdk-pixbuf/gdk-pixbuf-render.c
2619 (gdk_pixbuf_render_pixmap_and_mask): Instead of returning a solid
2620 mask rectangle for pixbufs without an alpha channel, set the
2621 *mask_return to NULL.
2623 * gdk-pixbuf/gdk-pixbuf-util.c (gdk_pixbuf_add_alpha): Constify.
2625 * gdk-pixbuf/gdk-pixbuf-scale.c: Fix includes.
2627 * gdk-pixbuf/gdk-pixbuf-scale.c (gdk_pixbuf_scale): Added some
2628 preconditions. Maybe we should also check for the colorspace,
2629 bits per pixel, and such.
2630 (gdk_pixbuf_composite): Likewise.
2631 (gdk_pixbuf_composite_color): Likewise.
2632 (gdk_pixbuf_scale_simple): Likewise, and fail gracefully if we
2633 cannot allocate the new pixbuf.
2634 (gdk_pixbuf_composite_color_simple): Likewise.
2636 * gdk-pixbuf/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_render):
2637 Use art_rgb_rgba_affine() or art_rgb_affine() since we no longer
2640 * gdk-pixbuf/io-bmp.c: Fix includes.
2642 * gdk-pixbuf/pixops/pixops.c (pixops_scale_nearest): Fixed cast in
2647 * configure.in: Removed checks for libart.
2649 * gdk-pixbuf/Makefile.am: Removed references to libart.
2650 (noinst_HEADERS): Added gdk-pixbuf-private.h.
2652 * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_LDFLAGS): Incremented
2653 the version number of the libtool library to indicate that this
2654 definitely is not compatible with the old usage. I know you love
2657 * configure.in: Bumped version number to 0.7.0.
2661 * gdk-pixbuf-config.in (--libs): We no longer require libart.
2663 * DEPENDS.libgdk_pixbuf: We no longer depend on libart.
2665 * gdk-pixbuf.spec.in: Updated, but I don't guarantee anything.
2667 2000-04-06 Jonathan Blandford <jrb@redhat.com>
2669 * gdk-pixbuf/testanimation.c (main): add more info to the
2670 testanimation frames.
2672 2000-04-04 Ettore Perazzoli <ettore@helixcode.com>
2674 * gdk-pixbuf/gdk-pixbuf-animation.c
2675 (gdk_pixbuf_animation_get_width): New accessor function.
2676 (gdk_pixbuf_animation_get_height): New accessor function.
2677 (gdk_pixbuf_animation_get_num_frames): New accessor function.
2678 (gdk_pixbuf_animation_get_frames): New accessor function.
2680 2000-04-01 Federico Mena Quintero <federico@helixcode.com>
2682 * gdk-pixbuf/gdk-pixbuf.c: Reverted Mark's change. The refcount
2683 is private information, and the art_pixbuf will go away soon.
2685 2000-03-31 Mark Crichton <crichton@gimp.org>
2687 * gdk-pixbuf/gdk-pixbuf.c: Added gdk_pixbuf_get_refcount
2688 and gdk_pixbuf_get_artpixbuf accessor functions.
2690 2000-03-29 Federico Mena Quintero <federico@helixcode.com>
2692 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_get_has_alpha): Return
2693 gboolean instead of int.
2695 2000-03-29 Radek Doulik <rodo@helixcode.com>
2697 * gdk-pixbuf/gdk-pixbuf-animation.c
2698 (gdk_pixbuf_animation_new_from_file): same as below
2700 * gdk-pixbuf/io-gif.c (gif_get_lzw): added update of width and
2701 height in GdkPixbufAnimation
2703 2000-03-28 Radek Doulik <rodo@helixcode.com>
2705 * gdk-pixbuf/io-gif.c (gif_get_lzw): test also for
2706 context->frame_done_func and context->anim_done_func to make
2707 progressive animation loading work
2709 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
2710 added priv->pixbuf = NULL as pixbuf is now in frame (and to make
2711 gdk_pixbuf_loader_prepare happy)
2712 (gdk_pixbuf_loader_frame_done): update animation bbox
2714 * gdk-pixbuf/gdk-pixbuf.h: added bbox size (width, height) to
2717 2000-03-27 Radek Doulik <rodo@helixcode.com>
2719 * gdk-pixbuf/io-gif.c (gif_get_lzw): use frame_len and frame_width
2720 instead of width and height
2722 2000-03-27 Owen Taylor <otaylor@redhat.com>
2724 * gdk-pixbuf/pixops/pixops.c: Fix problem with
2725 precendence of >> and & which was keeping composite_color
2726 from working with non-gray images.
2728 2000-03-08 Jonathan Blandford <jrb@redhat.com>
2730 * gdk-pixbuf/io-gif.c (gdk_pixbuf__gif_image_load): free the context.
2731 (gdk_pixbuf__gif_image_load_animation): free the context.
2733 2000-03-06 Arjan van de Ven <arjan@fenrus.demon.nl>
2735 * gdk-pixbuf/io-bmp.c: Fixed to pointer-bugs and a
2736 mis-interpretation of the Microsoft documentation. Now
2737 it can load .BMP files that are not generated by The Gimp
2740 2000-03-01 Mark Crichton <crichton@gimp.org>
2742 * configure.in: Added BUILD_CANVAS_ITEM stuff to (finally)
2743 fix the last auto* build bug (where we have libart, but no
2746 * gdk-pixbuf/Makefile.am: Same.
2748 2000-02-28 Matt Wilson <msw@redhat.com>
2750 * gdk-pixbuf/gdk-pixbuf-drawable.c: s/unsigned long/guint32/g,
2751 s/unsigned short/guint16/g, s/unsigned char/guint8/g
2753 2000-02-26 Federico Mena Quintero <federico@helixcode.com>
2755 * README: We don't require libgif/ungif nor libXpm.
2757 * NEWS: This was outdated, so updated it.
2759 2000-02-25 Federico Mena Quintero <federico@helixcode.com>
2761 * gdk-pixbuf.m4: Use the correct name for
2762 gdk-pixbuf/gdk-pixbuf.h. Thanks to Jacob Berkman for pointing
2765 2000-02-21 Federico Mena Quintero <federico@helixcode.com>
2767 * configure.in (GDK_PIXBUF_MINOR): Bumped version number to 0.6.0.
2769 * doc/compiling.sgml: New appendix documenting the gdk-pixbuf
2770 library's particular options to configure.in.
2772 * doc/gdk-pixbuf.sgml: Include compiling.sgml appendix via an
2775 * doc/Makefile.am (gdk-pixbuf.html): Added compiling.sgml.
2777 * gdk-pixbuf/io-ico.c (gdk_pixbuf__ico_image_load_increment):
2778 Fixed typo in prototype name.
2780 * configure.in: Changed duplicated AC_MSG_CHECKING message to
2781 something more meaningful; now it is "checking whether dynamic
2784 * gdk-pixbuf/pixops/Makefile.am (noinst_PROGRAMS): Do not install
2785 the timescale program.
2787 Integrated Miguel de Icaza's <miguel@gnu.org> patch for optionally
2788 creating a single static library with all the image format modules
2791 2000-02-20 Miguel de Icaza <miguel@gnu.org>
2793 * gdk-pixbuf/io-xpm.c (gdk_pixbuf__xpm_image_load): Add prefix.
2794 (gdk_pixbuf__xpm_image_load_xpm_data): Add prefix.
2796 * gdk-pixbuf/io-tiff.c (gdk_pixbuf__tiff_image_load_real): Add prefix.
2797 (gdk_pixbuf__tiff_image_stop_load): Add prefix.
2798 (gdk_pixbuf__tiff_image_load_increment): Add prefix.
2799 (gdk_pixbuf__tiff_image_load): Add prefix.
2800 (gdk_pixbuf__tiff_image_stop_load): Update invocation.
2801 (gdk_pixbuf__tiff_image_begin_load): Add prefix.
2803 * gdk-pixbuf/io-ras.c (gdk_pixbuf__ras_image_load): Add prefix.
2804 (gdk_pixbuf__ras_image_load): Updated invocation.
2805 (gdk_pixbuf__ras_image_begin_load): Add prefix.
2806 (gdk_pixbuf__ras_image_stop_load): Add prefix.
2807 (gdk_pixbuf__ras_image_load_increment): Add prefix.
2809 * gdk-pixbuf/io-pnm.c (gdk_pixbuf__pnm_image_begin_load): Add prefix.
2810 (gdk_pixbuf__pnm_image_stop_load): Add prefix.
2811 (gdk_pixbuf__pnm_image_load_increment): Add prefix
2812 (gdk_pixbuf__pnm_image_load): Add prefix.
2814 * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_load): Add prefix.
2815 (gdk_pixbuf__jpeg_image_load_increment): Add prefix.
2816 (gdk_pixbuf__jpeg_image_begin_load): Add prefix.
2817 (gdk_pixbuf__jpeg_image_stop_load): Add prefix.
2819 * gdk-pixbuf/io-ico.c (gdk_pixbuf__ico_image_load): Add prefix.
2820 (gdk_pixbuf__ico_image_load): update invocation.
2821 (gdk_pixbuf__ico_image_load_increment): Add prefix.
2822 (gdk_pixbuf__ico_image_load): update invocation.
2823 (gdk_pixbuf__ico_image_begin_load): Add prefix.
2824 (gdk_pixbuf__ico_image_load): update invocation.
2825 (gdk_pixbuf__ico_image_stop_load): Add prefix.
2827 * gdk-pixbuf/io-gif.c (gdk_pixbuf__gif_image_load_animation): Add prefix.
2828 (gdk_pixbuf__gif_image_load): Add prefix.
2829 (gdk_pixbuf__gif_image_begin_load): Add prefix.
2830 (gdk_pixbuf__gif_image_load_increment): Add prefix.
2831 (gdk_pixbuf__gif_image_load_animation): Add prefix.
2832 (gdk_pixbuf__gif_image_stop_load): Add prefix.
2834 * gdk-pixbuf/io-bmp.c (gdk_pixbuf__bmp_image_load): Add prefix.
2835 (gdk_pixbuf__bmp_image_load): Rename function called.
2836 (gdk_pixbuf__bmp_image_load_increment): Add prefix
2838 * gdk-pixbuf/io-png.c (gdk_pixbuf__png_image_load): Add prefix.
2839 (gdk_pixbuf__png_image_begin_load): Add prefix.
2840 (gdk_pixbuf__png_image_stop_load): Add prefix.
2841 (gdk_pixbuf__png_image_load_increment): Add prefix.
2843 * gdk-pixbuf/gdk-pixbuf-io.c (file_formats): Make this static.
2844 (gdk_pixbuf_load_module): Load the shared library entry points
2845 using a "gdk_pixbuf__$module_name" prefix.
2846 (pixbuf_module_symbol): Wrapper routine that uses the module
2847 prefix for the modules to load the information.
2849 * configure.in (GDK_PIXBUF_VERSION): New option --disable-modules
2850 lets the user specify that gdk-pixbuf should link all image loader
2851 code into the library instaed of creating shared library modules.
2853 (dynworks): Renamed the automake conditional DYNAMIC_MODULES_WORK
2854 to BUILD_DYNAMIC_MODULES.
2856 2000-02-19 Jonathan Blandford <jrb@redhat.com>
2858 * gdk-pixbuf/io-gif.c (new_context): fix case where initial
2859 colormap entry is Transparent.
2861 2000-02-19 Owen Taylor <otaylor@redhat.com>
2863 * gdk-pixbuf/pixops/pixops.c (scale_pixel): Fix error in
2864 scale factors for non-alpha case.
2866 2000-02-14 Mark Crichton <crichton@gimp.org>
2868 * gdk-pixbuf/io-xpm.c (xpm_extract_color): Added check for "g"
2869 color type. Imlib/libXpm handle this, but we didn't.
2871 2000-02-14 Darin Adler <darin@eazel.com>
2873 * gdk-pixbuf/testpixbuf.c: Remove now-unnecessary cast.
2874 * .cvsignore: gdk-pixbuf/.cvsignore: More to ignore.
2876 2000-02-14 Elliot Lee <sopwith@redhat.com>
2877 * gdk-pixbuf/gdk-pixbuf.h, gdk-pixbuf/gdk-pixbuf-data.c: Make
2878 passed-in argument 'const'.
2880 2000-02-04 Michael Meeks <mmeeks@gnu.org>
2882 * gdk-pixbuf/io-gif.c (struct _GifContext): add x,y_offset.
2883 (gif_get_frame_info): put the offsets on the context.
2884 (gif_get_lzw): copy them off into the frame.
2885 (new_context): no change required; will 0 offsets by default.
2887 2000-01-28 Michael Meeks <michael@mejm2.dow.cam.ac.uk>
2889 * gdk-pixbuf/pixops/pixops.c (pixops_process): const + nasty
2892 * gdk-pixbuf/pixops/pixops.h: const.
2894 * gdk-pixbuf/gdk-pixbuf-util.c: const.
2896 * gdk-pixbuf/gdk-pixbuf-scale.c: const.
2898 * gdk-pixbuf/gdk-pixbuf.h: constify lots of things.
2900 2000-02-03 Federico Mena Quintero <federico@helixcode.com>
2902 * gdk-pixbuf/gdk-pixbuf-render.c
2903 (gdk_pixbuf_render_threshold_alpha): Added sanity check for width
2904 and height being >= 0. Also, do nothing if either of them is
2905 zero. Thanks to Ettore for pointing this out.
2906 (gdk_pixbuf_render_to_drawable): Likewise.
2907 (gdk_pixbuf_render_to_drawable_alpha): Likewise.
2909 2000-02-02 Federico Mena Quintero <federico@helixcode.com>
2911 * gdk-pixbuf/io-gif.c (gif_get_lzw): Removed debugging g_print.
2912 Thanks to John Sullivan <sullivan@eazel.com> for the patch.
2914 * gdk-pixbuf/testpixbuf-drawable.c (configure_cb): Get a new area
2915 of the screen when the window is resized. Thanks to David
2916 N. Welton <davidw@linuxcare.com> for pointing this out.
2917 Misc. cleanups to the rest of the file.
2919 2000-02-01 Federico Mena Quintero <federico@helixcode.com>
2921 * doc/tmpl/rendering.sgml: gnome_init() does not call
2922 gdk_rgb_init(), so don't mention that it does in the
2923 documentation. Thanks to Alexander Kruuse <kruuse@home.se> for
2926 2000-01-31 Havoc Pennington <hp@redhat.com>
2928 * gdk-pixbuf/Makefile.am (noinst_PROGRAMS): no testpixbuf-foo target
2930 Mon Jan 31 12:38:50 2000 Owen Taylor <otaylor@redhat.com>
2932 * gdk-pixbuf/pixops/pixops.c (scale_line): Fix from Peter
2933 Wainwright to fix 4a => 4a scaling.
2935 2000-01-29 Mark Crichton <crichton@gimp.org>
2937 * gdk-pixbuf-config: Oh dear, we weren't Telsa/Alan proof...
2938 put `libart-config --libs` in instead of -lart_lgpl.
2940 2000-01-22 Federico Mena Quintero <federico@helixcode.com>
2942 * gdk-pixbuf/io-pnm.c (pnm_read_raw_scanline): Return an error on
2944 (pnm_read_ascii_scanline): Initialize data and mask.
2946 * gdk-pixbuf/io-xpm.c (pixbuf_create_from_xpm): Initialize
2947 fallbackcolor to keep gcc happy.
2949 * configure.in: Bumped version number to 0.5.0.
2951 * gdk-pixbuf/pixops/timescale.c (dump_array): Removed unused variable.
2954 * gdk-pixbuf/pixops/pixops.c (pixops_composite_color_nearest): Put
2955 parentheses around + in a shift to remove a compiler warning.
2956 (pixops_process): Likewise.
2958 Patch from Ross Golder <rossigee@bigfoot.com> to create an RPM
2961 * configure.in: Added gdk-pixbuf.spec to AC_OUTPUT.
2963 * Makefile.am (EXTRA_DIST): Added gdk-pixbuf.spec.in
2965 2000-01-22 Federico Mena Quintero <federico@helixcode.com>
2967 * gdk-pixbuf/gnome-canvas-pixbuf.c (PixbufPrivate): Removed the
2968 x_set and y_set arguments. Now they are always on and start with
2969 defaults of 0.0 in units.
2970 (gnome_canvas_pixbuf_class_init): Likewise.
2971 (gnome_canvas_pixbuf_set_arg): Likewise.
2972 (gnome_canvas_pixbuf_get_arg): Likewise.
2973 (compute_viewport_affine): Likewise; always use the priv->x and
2976 * doc/tmpl/gnome-canvas-pixbuf.sgml: Modified to reflect the
2977 removal of the x_set/y_set arguments.
2979 2000-01-21 Federico Mena Quintero <federico@helixcode.com>
2981 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_ref): Return the same pixbuf
2982 as the input parameter.
2984 * gdk-pixbuf/gdk-pixbuf-animation.c (gdk_pixbuf_animation_ref):
2985 Return the same animation as the input parameter.
2987 2000-01-16 Elliot Lee <sopwith@redhat.com>
2989 * gdk-pixbuf/Makefile.am: Don't link against libgnomecanvaspixbuf.la
2991 2000-01-16 Federico Mena Quintero <federico@helixcode.com>
2993 * configure.in: Removed the broken --enable-canvas-pixbuf option.
2994 Added the stuff necessary to substitute the variables in
2995 gnomecanvaspixbufConf.sh.in.
2997 * gnomecanvaspixbufConf.sh.in: New gnome-config handler for the
2998 tiny gnomecanvaspixbuf library.
3000 * Makefile.am: Build gnomecanvaspixbufConf.sh.
3002 * gdk-pixbuf/Makefile.am: Create a libgnomecanvaspixbuf and only
3003 build it if gdk-pixbuf is being built outside of gnome-libs.
3005 * doc/gdk-pixbuf-sections.txt: Added gdk_pixbuf_render_pixmap_and_mask().
3007 * gdk-pixbuf/gdk-pixbuf-render.c
3008 (gdk_pixbuf_render_pixmap_and_mask): Renamed from
3009 gdk_pixbuf_render_pixmap(). Do not create the mask if it is not
3010 needed, and do not use a clipping mask when rendering the pixmap.
3011 Tweaked documentation a little.
3013 * HACKING: New file with hacking policies for the gdk-pixbuf
3016 * doc/Makefile.am (tmpl_sources): Added missing backslash.
3018 * doc/Makefile.am: Use gnomecanvaspixbuf in gnome-config when
3019 scanning for docstrings.
3021 * gdk-pixbuf/gdk-pixbuf-util.c (gdk_pixbuf_copy_area): Made sanity
3022 checks more stringent. Removed "gint" abominations. Made
3023 documentation consistent with the rest of the functions.
3025 * doc/gdk-pixbuf-sections.txt: Added gdk_pixbuf_copy_area() to the
3028 2000-01-14 Jonathan Blandford <jrb@redhat.com>
3030 * gdk-pixbuf/gdk-pixbuf-render.c (gdk_pixbuf_render_pixmap): new
3031 function to let you create a gdk_pixmap from a gdk_pixbuf.
3033 2000-01-11 Jacob Berkman <jacob@helixcode.com>
3035 * gdk-pixbuf/pixops/Makefile.am (INCLUDES): added
3036 $LIBART_CFLAGS to $INCLUDES
3038 2000-01-10 Elliot Lee <sopwith@redhat.com>
3040 * configure.in, gdk-pixbuf/Makefile.am: Build a libcanvas_pixbuf.
3042 * configure.in: Define version macros. Generate
3043 gdk-pixbuf/gdk-pixbuf-features.h. Always INSIDE_GNOME.
3045 * gdk-pixbuf/Makefile.am: Add gdk-pixbuf-features.h
3047 * gdk-pixbuf/gdk-pixbuf.c: Add definitions of
3048 gdk-pixbuf-features.h declarations, plus some initialization
3051 2000-01-05 Owen Taylor <otaylor@redhat.com>
3053 * gdk-pixbuf/pixops/pixops.c: Fixed src_channels/dest_channels
3054 confusion. (Again caught by Tomas Ogren's Purify)
3056 2000-01-07 Jonathan Blandford <jrb@redhat.com>
3058 * gdk-pixbuf/gdk-pixbuf-xform.c (gdk_pixbuf_rotate): comment out
3061 * gdk-pixbuf/gdk-pixbuf-io.c: Added progressive animation loading.
3062 * gdk-pixbuf/gdk-pixbuf-io.h: Added progressive animation loading.
3063 * gdk-pixbuf/gdk-pixbuf-loader.c: Added progressive animation
3065 * gdk-pixbuf/gdk-pixbuf-loader.h: Added progressive animation
3067 * gdk-pixbuf/io-gif.c (image_load_increment): I think the
3068 ref-counting mess is finally fixed. Added progressive animation
3070 (gif_get_lzw): remove memory_leak
3072 * doc/tmpl/gdk-pixbuf-loader.sgml: much longer long description
3075 2000-01-05 Owen Taylor <otaylor@redhat.com>
3077 * gdk-pixbuf/pixops/pixops.c (pixops_process): Fix computation of
3080 * gdk-pixbuf/pixops/pixops.c: Fix double increments when
3081 dest_channels == 4. (Pointed out by Tomas Ogren)
3083 2000-01-05 Mark Crichton <crichton@gimp.org>
3085 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_eat_header_write):
3086 Return 0 if gdk_pixbuf_load_loader_module returns FALSE.
3088 2000-01-05 Elliot Lee <sopwith@redhat.com>
3090 * gdk-pixbuf/pixops/Makefile.am: Link with -lm (to get 'ceil' function)
3092 2000-01-05 Owen Taylor <otaylor@redhat.com>
3094 * doc/Makefile.am doc/gdk-pixbuf-sections.txt
3095 doc/gdk-pixbuf.sgml doc/tmpl/scaling.sgml:
3096 Added scaling functions into gtk-doc framework.
3098 * gdk-pixbuf/gdk-pixbuf-scale.c: Documentation fixes.
3100 * gdk-pixbuf/testpixbuf-scale.c (expose_cb): Simplify a bit.
3102 * gdk-pixbuf/pixops/pixops.c (pixops_composite_color): Return
3103 immediately if scale_x or scale_y is 0.
3105 2000-01-05 Owen Taylor <otaylor@redhat.com>
3107 * gdk-pixbuf/pixops/timescale.c: quick fix for initializing
3108 arrays in benchmark.
3110 2000-01-05 Jonathan Blandford <jrb@redhat.com>
3112 * gdk-pixbuf/gdk-pixbuf-io.h: Change the order of the update func
3113 to make it more compatible with the rest of GTK. Added animation
3114 framework for progressive loading.
3116 * gdk-pixbuf/io-bmp.c (image_begin_load): Modified to handle new
3118 * gdk-pixbuf/io-ico.c (image_begin_load): ditto
3119 * gdk-pixbuf/io-png.c (image_begin_load): ditto
3120 * gdk-pixbuf/io-ras.c (image_begin_load): ditto
3121 * gdk-pixbuf/io-jpeg.c (image_begin_load): ditto
3122 * gdk-pixbuf/io-pnm.c (image_begin_load): ditto
3123 * gdk-pixbuf/io-tiff.c (image_begin_load): ditto
3124 * gdk-pixbuf/io-gif.c (image_begin_load): ditto
3126 2000-01-05 Owen Taylor <otaylor@redhat.com>
3128 * gdk-pixbuf/pixops/README: Added a README with a TODO
3129 and some explainations of the algorithms.
3131 * gdk-pixbuf/testpixbuf-scale.c: Set a background pixmap of None
3132 to reduce flashing when resizing.
3134 2000-01-05 Owen Taylor <otaylor@redhat.com>
3136 * gdk-pixbuf/pixops/: Directory full of pixel data scaling
3137 code that will eventually migrate into libart.
3139 * configure.in acconfig.h: Add checks for MMX compiler support
3141 * gdk-pixbuf/gdk-pixbuf.h gdk-pixbuf/gdk-pixbuf-scale.c:
3142 Nice wrapper routines for the code in pixops that operate
3143 on pixbufs instead of raw data.
3145 * gdk-pixbuf/testpixbuf-scale: Test program for scaling
3148 2000-01-05 Jonathan Blandford <jrb@redhat.com>
3150 * doc/tmpl/animation.sgml: Documentation changes.
3152 2000-01-01 Federico Mena Quintero <federico@helixcode.com>
3154 * gdk-pixbuf/gdk-pixbuf.h (GdkPixbufAnimation): Added reference
3155 counting to animations. A web browser may want to share a single
3156 copy of an animated GIF if it appears multiple times in a web
3159 * gdk-pixbuf/gdk-pixbuf-animation.c: New file. Moved the
3160 animation functions here.
3161 (gdk_pixbuf_animation_new_from_file): Prettified. Return a NULL
3162 animation if the loader does not support multiframe loading and
3163 the single-frame load returned NULL. Check that the filename is
3164 not NULL. Updated inline documentation.
3165 (gdk_pixbuf_animation_ref): New function.
3166 (gdk_pixbuf_animation_unref): New function.
3167 Removed gdk_pixbuf_animation_destroy() in favor of reference
3170 * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_new_from_file):
3171 Prettified. Made ref_count assertion more paranoid. Check that
3172 the filename is not NULL.
3173 (gdk_pixbuf_get_module): Use guchar * and guint for buffer and
3175 (gdk_pixbuf_new_from_xpm_data): Changed the "data" argument to
3178 * gdk-pixbuf/io-gif.c (image_load_animation): Create the animation
3179 with a reference count of 1.
3181 * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_SOURCES): Added
3182 gdk-pixbuf-animation.c.
3184 * doc/tmpl/animation.sgml: Populated. It is still missing a
3185 description of the overlay modes.
3187 * doc/gdk-pixbuf-sections.txt: Added the animation section. Moved
3188 the canvas item section to the end, as it will be moved later to
3191 * doc/gdk-pixbuf.sgml: Added the animation section.
3193 * doc/Makefile.am (tmpl_sources): Added tmpl/animation.sgml.
3195 1999-12-26 Peter Teichman <pat@gnu.org>
3197 * gdk-pixbuf/Makefile.am (libpixbuf_tiff_la_LIBADD): add
3198 $(LIBTIFF) to libpixbuf_tiff_la_LIBADD, proxying for mmarker.
3199 This closes bug #4676.
3201 1999-12-23 Havoc Pennington <hp@pobox.com>
3203 * gdk-pixbuf/io-gif.c (image_load): Stuff that should have been
3204 set to NULL here (specifically context->animation) was not being
3205 set to NULL. use g_new0() to alloc the struct.
3207 1999-12-20 Jonathan Blandford <jrb@redhat.com>
3209 * gdk-pixbuf/io-gif.c: finished work to make animated gifs load
3210 correctly. Progressive loading needs some work, but that all
3211 needs doing from the gdk-pixbuf-loader end, not here.
3213 1999-12-17 Jonathan Blandford <jrb@redhat.com>
3215 * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_animation_new_from_file):
3216 moved the file here. It seems natural to put this function here,
3217 as that's where the gdk_pixbuf_new_from_file function is, but it's
3218 still a little convoluted. The source files might be played with
3221 1999-12-14 Jonathan Blandford <jrb@redhat.com>
3223 * gdk-pixbuf/gdk-pixbuf-loader.c
3224 (gdk_pixbuf_loader_get_animation): Gets the animation from the
3227 1999-12-16 Federico Mena Quintero <federico@redhat.com>
3229 * doc/tmpl/rendering.sgml: Added notice about initializing GdkRGB
3230 before using the GdkPixbuf rendering functions. Thanks to Joe
3231 Shaw <joe@off.net> for pointing this out.
3233 1999-12-13 Federico Mena Quintero <federico@redhat.com>
3235 * gdk-pixbuf/gnome-canvas-pixbuf.c
3236 (gnome_canvas_pixbuf_class_init): Renamed arguments to
3237 width_in_pixels, height_in_pixels, x_in_pixels, y_in_pixels, for
3238 consistency with the new canvas.
3239 (PixbufPrivate): Do the same renaming in the structure fields, for
3242 * doc/tmpl/gnome-canvas-pixbuf.sgml: Updated for new argument names.
3244 1999-12-12 Federico Mena Quintero <federico@redhat.com>
3246 * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_LDFLAGS): Use a
3247 conditional to see whether to link $(GNOME_LIBS) or not.
3249 1999-12-10 Jonathan Blandford <jrb@redhat.com>
3251 * gdk-pixbuf/gdk-pixbuf-io.h: thinking about the new loading API.
3253 * gdk-pixbuf/gdk-pixbuf-drawable.c (gdk_pixbuf_get_from_drawable):
3254 make a warning go away.
3256 * gdk-pixbuf/gdk-pixbuf.h: added new prototypes for animations.
3258 * gdk-pixbuf/gdk-pixbuf-loader.h: added new prototypes for
3261 1999-12-09 Michael Zucchi <zucchi@zedzone.mmc.com.au>
3263 * gdk-pixbuf/gdk-pixbuf.h: Enable gdk_pixbuf_get_from_drawable()
3266 * gdk-pixbuf/gdk-pixbuf-drawable.c (gdk_pixbuf_get_from_drawable):
3267 Filled in body of function.
3268 (rgbconvert): Added GdkColormap parameter, and to all conversion
3270 (convert_real_slow): New function - should convert ANY visual/data
3271 format properly, but it aint fast. Used as a fallback when an
3272 optimised routine wont match.
3273 (rgbconvert): Do very specific tests on the data format to verify
3274 properly if the optimised version will do, otherwise use the
3275 fallback function for all other data formats.
3277 * gdk-pixbuf/Makefile.am: Re-enabled building of
3278 textpixbuf-drawable.
3280 * gdk-pixbuf/testpixbuf-drawable.c (main): Changed to use
3281 gdk_pixbuf_get_from_drawable().
3283 1999-12-08 Arjan van de Ven <arjan@fenrus.demon.nl>
3285 * gdk-pixbuf/gdk-pixbuf-drawable.c : Fixed the red/green/red
3286 bug on two occasions.
3287 * gdk-pixbuf/io-ras.c: Changed from the custom be32_to_cpu
3288 function to the generic glib one.
3290 1999-12-08 Federico Mena Quintero <federico@redhat.com>
3292 * gdk-pixbuf/gdk-pixbuf-drawable.c: Fix includes.
3293 (gdk_pixbuf_get_from_drawable): Implemented the zillion sanity
3294 checks and API definition. The body needs filling in and it needs
3295 to do the Right Thing(tm) for pixmaps plus the given colormap and
3296 windows and their own colormaps.
3298 * gdk-pixbuf/gdk-pixbuf.h: Added prototype for
3299 gdk_pixbuf_get_from_drawable(). Killed gdk-pixbuf-drawable.h.
3301 * gdk-pixbuf/Makefile.am: Re-added the gdk-pixbuf-drawable sources.
3303 * doc/tmpl/from-drawables.sgml: Populated.
3305 * doc/gdk-pixbuf.sgml: Added the from-drawables section.
3307 * doc/Makefile.am (tmpl_sources): Added tmpl/from-drawables.sgml.
3309 * doc/gdk-pixbuf-sections.txt: Added a section for getting pixbufs
3312 1999-12-07 Federico Mena Quintero <federico@redhat.com>
3314 * doc/tmpl/gnome-canvas-pixbuf.sgml: Added clarification about
3315 reference counting for GdkPixbuf structures.
3317 1999-12-07 Martin Baulig <martin@home-of-linux.org>
3319 * gdk-pixbuf/Makefile.am (testpixbuf_LDADD): Conditionally
3320 include $(GNOME_LIBS) here.
3322 1999-12-05 Arjan van de Ven <arjan@fenrus.demon.nl>
3324 Added missing "include <string.h>" to:
3325 * gdk-pixbuf/io-ras.c
3326 * gdk-pixbuf/io-bmp.c
3327 * gdk-pixbuf/io-ico.c
3329 1999-12-06 Federico Mena Quintero <federico@redhat.com>
3331 * gdk-pixbuf/gdk-pixbuf-io.c (file_formats): Patch from Arjan to
3334 1999-12-05 Federico Mena Quintero <federico@redhat.com>
3336 * gdk-pixbuf/Makefile.am (testpixbuf_LDADD): Add back
3337 $(GNOME_LIBS). This must compile outside of gnome-libs. If you
3338 want, send me a patch to do the conditional stuff properly.
3339 Otherwise, please read the GNOME Programming Guidelines,
3340 especially the "CVS policies" section.
3342 1999-12-05 Jaka Mocnik <jaka.mocnik@kiss.uni-lj.si>
3344 * gdk-pixbuf/Makefile.am: removed GNOME_LIBS from testpixbuf_LDADD.
3346 1999-12-05 Arjan van de Ven <arjan@fenrus.demon.nl>
3348 * gdk-pixbuf/io-ico.c: Bug in palet-size
3351 1999-12-04 Arjan van de Ven <arjan@fenrus.demon.nl>
3353 * gdk-pixbuf/io-bmp.c: Major cleanup, added support for
3354 32 bpp and 4 bpp (uncompressed) images, fixed 1bpp.
3356 * gdk-pixbuf/io-ras.c: Minor cleanup, ran through lclint
3358 * gdk-pixbuf/io-ico.c: Minor cleanup, fixed 1bpp icons,
3361 * gdk-pixbuf/gdk-pixbuf-io.c: Added detection of .CUR files
3362 (Windows Cursor files). These are identical to .ICO files,
3363 except for the signature and 2 extra fields for the hotspot.
3365 1999-12-03 Federico Mena Quintero <federico@redhat.com>
3367 * gdk-pixbuf/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_get_arg):
3368 Removed unused variable `item'.
3370 1999-12-03 Jonathan Blandford <jrb@redhat.com>
3372 * gdk-pixbuf/io-gif.c (gif_fill_in_lines): added a comment to
3373 explain this function better.
3375 1999-12-02 Federico Mena Quintero <federico@redhat.com>
3377 Source files moved from src/ to gdk-pixbuf/, to be consistent with
3380 * doc/Makefile.am: Modified for the new source directory.
3382 * configure.in: Likewise.
3384 * Makefile.am: Likewise.
3386 * autogen.sh: Likewise.
3388 * gdk-pixbuf/Makefile.am: Likewise.
3390 1999-12-02 Federico Mena Quintero <federico@redhat.com>
3392 * src/testpixbuf.c: #include <config.h>, and fix includes.
3394 * src/testpixbuf-drawable.c: #include <config.h>, and fix includes.
3396 * src/io-xpm.c: Fix includes.
3398 * src/io-tiff.c: Fix includes.
3400 * src/io-ras.c: Fix includes, and do not include more stuff than needed.
3402 * src/io-pnm.c: Fix inlcudes, and do not include more stuff than needed.
3404 * src/io-png.c: Fix includes.
3406 * src/io-ico.c: Fix includes, and do not include more stuff than needed.
3408 * src/io-gif.c: Fix includes, and do not include more stuff than needed.
3410 * src/io-bmp.c: Fix includes, and do not include more stuff than needed.
3412 * src/gnome-canvas-pixbuf.c: Fix includes.
3414 * src/gdk-pixbuf.c: Fix includes.
3416 * src/gdk-pixbuf-util.c: Fix includes.
3418 * src/gdk-pixbuf-render.c: Fix includes.
3420 * src/gdk-pixbuf-io.h: Fix includes.
3422 * src/gdk-pixbuf-drawable.c: Fix includes.
3424 * src/gdk-pixbuf-drawable.h: Use angle brackets for the gdk-pixbuf
3427 * src/gdk-pixbuf-data.c: Fix includes.
3429 * src/gdk-pixbuf-loader.c: #include <config.h>
3431 * src/gdk-pixbuf-loader.h: Use angle brackets for the gdk-pixbuf
3434 * src/Makefile.am: Commented out the gdk-pixbuf-drawable stuff,
3435 since it is not finished.
3437 * src/gdk-pixbuf.h: Removed unused transformation prototypes.
3439 * src/gdk-pixbuf-util.c: New file with utility and convenience
3440 functions for pixbufs.
3442 * src/Makefile.am (libgdk_pixbuf_la_SOURCES): Added gdk-pixbuf-util.c.
3444 * doc/gdk-pixbuf-sections.txt: Added section for utility functions.
3446 * doc/Makefile.am (tmpl_sources): Added tmpl/util.sgml.
3448 * doc/gdk-pixbuf.sgml: Added the utilities section.
3450 * doc/tmpl/util.sgml: Documentation for the utility functions.
3452 1999-11-29 Owen Taylor <otaylor@redhat.com>
3454 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
3455 Keep the mask around until after we draw ... since
3456 the GC changes aren't flushed to the X server until we
3457 draw, destroying it before that may result in BadPixmap
3460 1999-11-30 Havoc Pennington <hp@pobox.com>
3462 * configure.in: Add AM_CONDITIONAL for inside gnome-libs
3464 * src/Makefile.am: conditionalize GnomeCanvasPixbuf
3466 1999-11-29 Federico Mena Quintero <federico@redhat.com>
3468 * src/Makefile.am: Uncomment the GnomeCanvasPixbuf sources. This
3469 should be made conditional, not blindly commented out.
3471 1999-11-29 Jonathan Blandford <jrb@redhat.com>
3473 * src/Makefile.am (ICO_LIB): Added another loader from Arjan to
3474 handle .ico files. Cool.
3476 1999-11-24 Jonathan Blandford <jrb@redhat.com>
3478 * src/io-bmp.c (OneLine24): new patch from Arjan to handle
3481 1999-11-24 James Henstridge <james@daa.com.au>
3483 * configure.in (AC_OUTPUT): altered hack to place the symlink in the
3484 top builddir rather than src. This still builds fine, and does not
3485 get gtk-doc into an infinite loop when trying to find all the source
3488 1999-11-23 Jonathan Blandford <jrb@redhat.com>
3490 * Removed #PRAGMA } from headers. Also, make compile if you don't
3491 have it installed, already.
3493 1999-11-22 Federico Mena Quintero <federico@redhat.com>
3495 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_draw): Create the
3496 temporary buffer to the size of the interesction of the bounding
3497 box and the expose area, not the whole expose area. This speeds
3500 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_threshold_alpha): Do
3501 not paint black on the mask, since we already cleared it in a
3502 single gdk_draw_rectangle() operation.
3504 1999-11-22 Raja R Harinath <harinath@cs.umn.edu>
3506 * configure.in (GDK_PIXBUF_DIR): Fix for srcdir != builddir.
3508 1999-11-22 Havoc Pennington <hp@pobox.com>
3510 * src/Makefile.am (GDK_PIXBUF_LIBS): Patch from Paul Fisher
3511 <pnfisher@redhat.com> adds all -lgdk-pixbuf and all other
3512 dependencies to LIBADD variables for loadable modules. Necessary
3513 for a Java dynamic loading thing to be able to figure it out.
3515 1999-11-22 Havoc Pennington <hp@pobox.com>
3517 * src/io-png.c (image_load_increment): Call the update_area
3518 callback depending on the number of rows loaded in this increment.
3520 * src/testpixbuf.c (main): slow down the progressive load demo
3522 1999-11-16 Havoc Pennington <hp@pobox.com>
3524 * src/gdk-pixbuf-drawable.h: Get the quotes right on the #include
3526 1999-11-22 Jonathan Blandford <jrb@redhat.com>
3528 * configure.in (GDK_PIXBUF_DIR): make the symlink. Does not work
3529 for srcdir != buildir != . Beats me why; I can't figure it out.
3530 AC_OUTPUT_COMMANDS doesn't seem to let me substitute it correctly.
3532 1999-11-21 Jonathan Blandford <jrb@redhat.com>
3534 * src/gdk-pixbuf-io.c: added io-bmp from Arjan
3535 <arjan@fenrus.demon.nl>
3537 1999-11-20 Michael Zucchi <zucchi@zedzone.mmc.com.au>
3539 * src/gdk-pixbuf-drawable.c (gdk_pixbuf_from_drawable_core):
3540 Rework/reorder of the code. Each case has been separated into
3541 another function; its big but it should be quick.
3542 gdk_pixbuf_rgba_from_drawable() will now return a pixbuf with
3543 opaque alpha information. Not all depths/formats have been
3544 tested, but 8, 15/16 and 24 (alinged 32) should work ok.
3546 1999-11-17 Larry Ewing <lewing@gimp.org>
3548 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_bounds):
3549 implement the bounds method correctly.
3550 (compute_viewport_affine): compute the affine need to fit the
3551 image within the viewport given by the args.
3552 (compute_render_affine): call compute_viewport_affine.
3554 1999-11-16 Havoc Pennington <hp@pobox.com>
3556 * src/gdk-pixbuf-drawable.h: Use includes from the current
3557 directory, not the system directory.
3559 Mon Nov 15 17:18:28 1999 George Lebl <jirka@5z.com>
3561 * src/testpixbuf-drawable.c: use includes from the current directory
3562 rather then from the system include directory as gdk-pixbuf
3563 includes are not yet installed when this is compiled.
3565 1999-11-13 Cody Russell <bratsche@dfw.net>
3566 * src/testpixbuf-drawable.c: Added a test program for drawable
3569 * src/Makefile.am: Build testpixbuf-drawable.
3571 1999-11-12 Cody Russell <bratsche@dfw.net>
3573 * src/gdk-pixbuf-drawable.c: Merged in Michael Zucchi's changes.
3575 1999-11-10 Federico Mena Quintero <federico@redhat.com>
3577 * doc/tmpl/gdk-pixbuf-loader.sgml: Populated.
3579 * doc/gdk-pixbuf.signals: Put in the real names of signal
3582 * src/gdk-pixbuf-loader.c: Improved documentation comments.
3584 1999-11-10 Jonathan Blandford <jrb@redhat.com>
3586 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): emit the
3589 * src/io-ras.c (OneLineMapped_file): Now can handle indexing
3590 correctly. Patch from Arjan to do so.
3592 1999-11-10 Michael Fulbright <drmike@redhat.com>
3594 * src/io-pnm.c (pnm_ascii_read_scanline): Fixed loading of ASCII PNM
3597 * src/testpixbuf.c: Added final queued draw when done loading image.
3599 1999-11-10 Jonathan Blandford <jrb@redhat.com>
3601 * src/gdk-pixbuf-io.c (gdk_pixbuf_load_module): removed spurious
3604 1999-11-10 Federico Mena Quintero <federico@redhat.com>
3606 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): Added
3609 1999-11-09 Federico Mena Quintero <federico@redhat.com>
3611 * src/io-png.c: Fixed some incompatible pointer initializations.
3613 * src/io-jpeg.c (image_load_increment): Remove unused variable.
3615 1999-11-09 Michael Fulbright <drmike@redhat.com>
3617 * src/testpixbuf.c: Fixed it to use timeout to read from file
3618 for progressive loading. Set TBF_KBPS=n, where n is the number of
3619 kilobytes/second to simulate in downloading. n has to be an integer.
3621 * src/io-jpeg.c: Slight cosmetic cleanup.
3623 * src/io-pnm.c: Fixed raw PNM loading bug. Also discovered that ASCII
3624 PBM loading has a similar problem and will address tomorrow.
3626 1999-11-09 Havoc Pennington <hp@pobox.com>
3628 * src/Makefile.am (libgdk_pixbuf_la_SOURCES): build the
3629 gdk-pixbuf-drawable stuff.
3631 1999-11-09 Federico Mena Quintero <federico@redhat.com>
3633 * configure.in: Bumped version number to 0.4.
3635 1999-11-09 Michael Fulbright <drmike@redhat.com>
3637 * src/io-pnm.c : Finished progressive PNM loading code. Should handle
3638 all types of PNM files now.
3640 * src/io-jpeg.c (image_load_increment): Figured out problem with
3641 loading Progressive JPEG's progressively (say that 10 times fast).
3642 Currently for Progressive JPEG's the entire image is loaded before
3643 it is displayed. libjpeg supports a fancier mechanism which I may
3646 With these changes all JPEG formats appear to load properly for me.
3648 1999-11-08 Jonathan Blandford <jrb@redhat.com>
3650 * src/io-ras.c (image_load_increment): Final patch from Arjan.
3651 Seems to do progressive loading.
3653 1999-11-08 Michael Fulbright <drmike@redhat.com>
3655 * src/io-pnm.c image_load (): Fixed so we do not create a separate
3656 pixel buffer when reading in image - we reuse the pixel data in
3657 the GdkPixbuf structure instead.
3659 1999-11-08 Michael Fulbright <drmike@redhat.com>
3661 * src/io-pnm.c pnm_read_ascii_scanline (): Added support for
3662 ASCII PNM files. Note I haven't tested loaded ASCII PBM files because
3663 I can't seem to find a utility to convert into this format.
3664 Next is to add progressive loading support for the PNM format.
3666 1999-11-07 Federico Mena Quintero <federico@redhat.com>
3668 * doc/tmpl/gnome-canvas-pixbuf.sgml: Finished detailed explanation
3669 of the width, height, x, and y setting and pixels arguments.
3671 1999-11-05 Jonathan Blandford <jrb@redhat.com>
3673 * src/io-ras.c (image_load): third patch. Now it seems to load.
3675 * src/gdk-pixbuf-io.c: second patch Arjan van de Ven
3676 <arjan@fenrus.demon.nl> to autodetect/load the sunras files.
3678 * src/io-ras.c (image_load): new file from Arjan van de Ven
3679 <arjan@fenrus.demon.nl> to begin the ras loader.
3681 1999-11-05 Federico Mena Quintero <federico@redhat.com>
3683 * doc/gdk-pixbuf-sections.txt: Removed gdk-pixbuf-io, since it is
3684 for internal use only.
3686 * doc/gdk-pixbuf.sgml: Likewise.
3688 * doc/tmpl/gnome-canvas-pixbuf.sgml: Finished docs.
3690 1999-11-05 Michael Fulbright <drmike@redhat.com>
3692 * src/io-pnm.c: Implemented support for reading raw PBM/PGM/PPM
3693 files from a file. Next step is support for ASCII files, and
3694 then incremental loading.
3696 1999-11-04 Federico Mena Quintero <federico@redhat.com>
3698 * Makefile.am: Added doc to SUBDIRS.
3700 1999-11-04 Michael Fulbright <drmike@redhat.com>
3702 * src/io-jpeg.c: Prettied up code slightly.
3703 * src/io-pnm.c: Start of pnm loader (from file and progressively).
3704 Doesn't do much yet (will finish tomorrow).
3705 * src/gdk-pixbuf-io.c: Added pnm to structure of known types.
3707 1999-11-04 Federico Mena Quintero <federico@redhat.com>
3709 * doc/tmpl/rendering.sgml: Populated.
3711 * doc/Makefile.am: Added the template files.
3713 1999-11-04 Havoc Pennington <hp@pobox.com>
3715 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable): In
3716 docs, explain what a dither offset is for.
3717 (gdk_pixbuf_render_to_drawable_alpha): Explain why you would use
3718 this function vs. gdk_pixbuf_render_to_drawable().
3720 1999-11-04 Havoc Pennington <hp@pobox.com>
3722 * configure.in: Use libart-config correctly; find gnome-config
3723 separately. Fix GNOME_LIBS to be correct in "no gnome installed
3726 * src/Makefile.am: Link to GNOME_LIBS instead of a hardcoded
3729 Patch untested in the inside-gnome-libs case, I need to commit
3730 then check out to the gnome-libs I'm using.
3732 1999-11-04 Michael Fulbright <drmike@redhat.com>
3734 * src/io-jpeg.c (image_begin_load): Add update_func callback.
3735 * src/io-jpeg.c (image_load_increment): Call updated callback when
3736 new graphic data decoded.
3738 1999-11-04 Jonathan Blandford <jrb@redhat.com>
3740 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_update): handle the
3742 * src/io-png.c (image_begin_load): add a update_func callback.
3743 * src/io-gif.c (image_begin_load): add a update_func callback.
3744 (gif_get_lzw): added the update_func ability
3746 * src/io-tiff.c (image_begin_load): add a update_func callback.
3748 1999-11-04 Federico Mena Quintero <federico@redhat.com>
3750 * doc/tmpl/gdk-pixbuf.sgml: Populated.
3752 * doc/tmpl/refcounting.sgml: Populated.
3754 * doc/tmpl/file-loading.sgml: Populated.
3756 * src/gdk-pixbuf.c: Added documentation comments.
3758 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_file): Added
3759 documentation comments.
3761 * doc/: Finished integrating the documentation framework.
3763 1999-11-03 Federico Mena Quintero <federico@redhat.com>
3765 * configure.in: Removed libgif stuff now that we do not depend on it.
3766 Added the necessary cruft for gtk-doc.
3768 * src/Makefile.am: Unconditionally build the GIF loader.
3770 1999-11-03 Jonathan Blandford <jrb@redhat.com>
3772 * src/io-gif.c (gif_read): renamed ReadOK to gif_read.
3773 Added a lot of comments to the file.
3775 * src/Makefile.am (libpixbuf_gif_la_LIBADD): Remove dependency on
3778 1999-11-03 Michael Fulbright <drmike@redhat.com>
3780 * src/io-jpeg.c (image_load_increment): Further removal of
3781 bugginess in local buffering code. Handles grayscale jpegs
3784 * src/io-jpeg.c (image_load_stop): Was freeing local context
3785 for jpeg library before calling jpeg_decompres_finish ().
3787 1999-11-03 Jonathan Blandford <jrb@redhat.com>
3789 * src/io-gif.c (image_load_increment): now handle arbitrary buffer
3791 (gif_get_lzw): set the transparency to the right val.
3793 1999-11-03 Federico Mena Quintero <federico@redhat.com>
3795 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_init):
3796 Initiailize the x and y fields.
3797 (gnome_canvas_pixbuf_destroy): Queue a redraw upon destruction.
3798 (PixbufPrivate): Renamed need_size_update to need_xform_update.
3799 (recompute_bounding_box): Do not use temporary values.
3801 1999-11-03 Jonathan Blandford <jrb@redhat.com>
3803 * src/io-gif.c (set_gif_lzw_clear_code): new state. Fixes
3806 * src/gnome-canvas-pixbuf.c (recompute_bounding_box): remove
3807 unneeded x,y,h,w vars.
3809 1999-11-03 Larry Ewing <lewing@gimp.org>
3811 * src/gnome-canvas-pixbuf.c (compute_render_affine): adjust
3812 render_affine calculation for x,y offsets.
3813 (gnome_canvas_pixbuf_set_arg): add x,y args.
3814 (gnome_canvas_pixbuf_get_arg): add x,y args.
3815 (recompute_bounding_box): simply code using ArtDrect and the
3816 render_affine. Removed compute_xform_vectors as it was no longer
3819 1999-11-03 Federico Mena Quintero <federico@redhat.com>
3821 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_point): I'm a
3822 doofus. Return a distance, not a boolean, for opaque images.
3824 * src/gnome-canvas-pixbuf.c (recompute_bounding_box): Do proper
3825 rounding of bounding box coordinates.
3826 (gnome_canvas_pixbuf_bounds): Implemented the ::bounds() method.
3827 (gnome_canvas_pixbuf_draw): Use the correct alpha threshold value.
3829 1999-11-03 Jonathan Blandford <jrb@redhat.com>
3831 * src/io-gif.c (gif_prepare_lzw): s/lwz/lzw/g
3833 1999-11-03 Michael Fulbright <drmike@redhat.com>
3835 * src/io-jpg.c (image_load_increment): Fixed code which moved
3836 buffer around as new data comes in to work properly. JPEG progressive
3837 loading should be working now except for grayscale JPEG's, which I
3838 will look into next.
3840 1999-11-03 <sopwith@redhat.com>
3841 * src/testpixbuf.c: A GtkFunction needs to return a value for
3842 deterministic behaviour. Also put dot printing back in.
3844 1999-11-03 <jrb@redhat.com>
3846 * src/io-gif.c (gif_get_extension): Read 'til the next empty block
3849 1999-11-02 Cody Russell <bratsche@dfw.net>
3850 * src/gdk-pixbuf-drawable.c: Changed the behavior to return NULL
3851 if part of the requested image is offscreen, rather than clipping
3854 1999-11-02 Jonathan Blandford <jrb@redhat.com>
3856 * src/io-gif.c (gif_fill_in_lines): Fill in the gif's blank areas
3857 for interlacing and progressive loading.
3859 1999-11-02 Cody Russell <bratsche@dfw.net>
3860 * src/gdk-pixbuf-drawable.c (gdk_pixbuf_from_drawable_core): Now
3861 calls gdk_pixbuf_new_from_art_pixbuf() instead of gdk_pixbuf_new().
3863 1999-11-02 Jonathan Blandford <jrb@redhat.com>
3865 * src/io-gif.c (gif_main_loop): Now progressive gif loading works!
3866 It's a little slow though. )-:
3868 1999-11-02 Elliot Lee <sopwith@redhat.com>
3869 * src/gdk-pixbuf-loader.[ch], src/gdk-pixbuf-io.h: Make the
3870 arguments to the write/load_increment operations const-correct.
3872 1999-11-02 Federico Mena Quintero <federico@redhat.com>
3874 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_point):
3875 Implemented the ::point() method. We do a simple containment test
3876 instead of a full distance calculation since the canvas is going
3877 to change to that scheme, anyways.
3879 1999-11-02 Elliot Lee <sopwith@redhat.com>
3881 * src/testpixbuf.c: Allow using $TBF_READLEN to specify the size
3882 of the chunks that are read from the input file.
3884 1999-11-02 Larry Ewing <lewing@gimp.org>
3886 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_render): add aa
3888 (gnome_canvas_pixbuf_class_init): add gnome_canvas_pixbuf_render
3891 1999-11-02 Federico Mena Quintero <federico@redhat.com>
3893 * src/gnome-canvas-pixbuf.c (compute_render_affine): Moved the
3894 affine computation code from ::draw() to here, since it is needed
3895 by ::point() as well.
3897 1999-11-02 Elliot Lee <sopwith@redhat.com>
3899 * src/gdk-pixbuf-loader.c: Reorganize gdk_pixbuf_loader_write into
3900 three functions, and eliminate duplication of code from write()
3901 and close(). Also fix bug where the 128-byte header was being
3904 1999-11-01 Federico Mena Quintero <federico@redhat.com>
3905 * src/gnome-canvas-pixbuf.c (recompute_bounding_box): Fixed
3906 bounding box computation.
3908 1999-11-01 Federico Mena Quintero <federico@redhat.com>
3910 * src/gnome-canvas-pixbuf.c: Start of the pixbuf canvas item.
3911 Drawing affines seem to work. Bounding box is fubared. ::point()
3912 is not implemented. This is a work in progress.
3914 * src/Makefile.am: Added gnome-canvas-pixbuf.[ch] to the list of
3917 * configure.in: Sigh. We need to link in libgnomeui for the
3918 canvas stuff. This mess will disappear when gdk-pixbuf gets
3919 folded into gnome-libs.
3921 1999-10-30 Jonathan Blandford <jrb@redhat.com>
3923 * src/io-gif.c: Some more work. Now it generates a gdk_pixbuf of
3924 the right size, at a minimum, even if the image is squished and
3926 (ReadImage): lets get the offset right. This will let transparent
3929 1999-10-29 Michael Fulbright <drmike@redhat.com>
3931 * src/io-jpeg.c: image_load_increment(): Fixed bug when
3932 image width was not a multiple of 4 - always use the
3933 gdk_pixbuf rowstride to increment pointers!
3935 1999-10-29 Michael Fulbright <drmike@redhat.com>
3937 * src/io-jpeg.c: Added first cut at progressive jpeg loading.
3938 Currently does not handle either progressive jpeg files (jpeg
3939 files with multiple scans at different quality settings), but
3940 I plan on adding this support soon. These are fairly rare in
3941 my experience, so it shouldn't slow people down too much.
3942 Grayscale jpegs also don't work but that should be easy to fix.
3944 1999-10-29 Michael Fulbright <drmike@redhat.com>
3946 * src/testpixbuf.c: Added title to windows so you can identify
3947 progressive and file windows.
3949 1999-10-29 Michael Fulbright <drmike@redhat.com>
3951 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): Actually
3952 load the image handler when we determine the image type.
3954 * src/gdk-pixbuf-io.[ch] (gdk_pixbuf_load_module): Changed the
3955 previously static function load_image_handler () to
3956 a public function gdk_pixbuf_load_module (). It is needed in
3957 gdk-pixbuf-loader.c to load image handler modules. This function
3958 is different from gdk_pixbuf_get_module (), which only returns
3959 a reference to the required handler, because it actually loads
3960 the handler into memory. Both actions should possibly be combined
3961 in a convenience function since one w/o the other doesn't seem to
3964 1999-10-28 Jonathan Blandford <jrb@redhat.com>
3966 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): don't send a
3969 1999-10-28 Federico Mena Quintero <federico@redhat.com>
3971 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable): New
3972 function to render a portion of a pixbuf to a drawable. Ignores
3973 alpha information and takes in a GC.
3974 (gdk_pixbuf_render_to_drawable_alpha): New function to render a
3975 portion of a pixbuf to a drawable. It automatically creates a GC
3976 and a clipping mask for alpha pixbufs.
3978 1999-10-28 Jonathan Blandford <jrb@redhat.com>
3980 * src/gdk-pixbuf.h: turned convenience macros into convenience
3981 functions so some error checking could be added.
3983 * src/io-tiff.c (image_load_increment): started work on the tiff
3984 non-incremental loader.
3985 (image_begin_load): Finished the incremental loader.
3987 * src/io-gif.c (image_load_increment): started work on the gif
3990 * src/gdk-pixbuf-io.h: Changed ModuleType to GdkPixbufModule.
3992 1999-10-27 Federico Mena Quintero <federico@redhat.com>
3994 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_threshold_alpha): New
3995 function to threshold a pixbuf's alpha channel into a bitmap.
3997 * src/gdk-pixbuf.c (gdk_pixbuf_new): Fixed so that it will
3998 contemplate future extensions to ArtPixBuf's formats.
4000 * src/io-png.c (png_info_callback): Use the new API of gdk_pixbuf_new().
4002 * src/gdk-pixbuf.h (gdk_pixbuf_get_height): Added some convenience
4003 macros to fetch the ArtPixBuf's fields.
4005 1999-10-27 Havoc Pennington <hp@pobox.com>
4007 * src/testpixbuf.c (main): Display the progressive load
4009 * src/io-png.c (setup_png_transformations): Break transformation
4010 code into separate function
4011 (png_info_callback): Use setup_png_transformations
4013 1999-10-27 Havoc Pennington <hp@pobox.com>
4015 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): Check
4016 properly whether the XPM module has already been loaded
4017 (gdk_pixbuf_new_from_file): Check properly if loader module
4018 was already loaded (was checking if load symbol was present
4019 in order to decide whether to re-load; should check module !=
4020 NULL, then load != NULL)
4021 (image_handler_load): Check in present working directory,
4022 makes it easier to debug for now
4023 (file_formats): This array initializer was seriously on crack,
4024 was assigning a function pointer to a GModule*
4026 * src/testpixbuf.c (main): Change type of pixbuf_loader to
4029 1999-10-27 Havoc Pennington <hp@pobox.com>
4031 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_finalize):
4032 Fix typo that prevented compilation
4033 (gdk_pixbuf_loader_destroy): ditto
4035 1999-10-27 Federico Mena Quintero <federico@redhat.com>
4037 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_new): Return a
4038 GdkPixbufLoader, not a GtkObject.
4039 (gtk_marshal_NONE__INT_INT_INT_INT): Made static.
4040 (gdk_pixbuf_loader_get_type): Documented.
4041 (gdk_pixbuf_loader_class_init): Initialize the parent class
4043 (gdk_pixbuf_loader_destroy): Added sanity checks. Call the parent
4044 class destroy function.
4045 (gdk_pixbuf_loader_new): Documented.
4046 (gdk_pixbuf_loader_finalize): Call the parent class finalize
4048 (gdk_pixbuf_loader_write): Use size_t for count.
4050 1999-10-27 Michael Fulbright <drmike@redhat.com>
4052 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_destroy): Fixed
4053 logic so we only try to close loader if it wasn't previously closed.
4055 1999-10-27 Michael Fulbright <drmike@redhat.com>
4057 * src/gdk-pixbuf-loader.c: Made sure image_loader struct member of
4058 pixbuf_loader properly initialized.
4060 * src/testpixbuf.c: Made sure we cleanup pixbuf_loader properly
4063 1999-10-26 Jonathan Blandford <jrb@redhat.com>
4065 * src/gdk-pixbuf-io.c (image_handler_load): load the vtable fully.
4067 * src/gdk-pixbuf-loader.c: Finished initial cut at the object.
4069 1999-10-26 Havoc Pennington <hp@pobox.com>
4071 * src/gdk-pixbuf-loader.h: fix signals
4073 * src/gdk-pixbuf-io.h: add new vtable fields
4076 1999-10-26 Jonathan Blandford <jrb@redhat.com>
4078 * src/gdk-pixbuf-loader.h: New Class. Beginning of progrssive
4081 1999-10-25 Federico Mena Quintero <federico@redhat.com>
4083 * configure.in (CFLAGS): Patch from Uwe Koloska
4084 <koloska@Rcs1.urz.tu-dresden.de> to fix a stupid typo of mine.
4086 1999-10-22 Havoc Pennington <hp@pobox.com>
4088 * src/io-xpm.c (mem_buffer): Clean up stupid
4089 increment-inside-array-dereference thing
4091 * src/testpixbuf.c: Add XPM data tests.
4093 * src/io-xpm.c: Make the XPM data buffer const, fix const
4094 correctness throughout the code.
4096 1999-10-22 Havoc Pennington <hp@pobox.com>
4098 * src/gdk-pixbuf.h: Export gdk_pixbuf_new_from_xpm_data()
4100 1999-10-22 Havoc Pennington <hp@pobox.com>
4102 * src/io-xpm.c (image_load_xpm_data): Export this symbol for
4103 loading an XPM from memory.
4105 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): New
4106 function, loads pixbuf from xpm data
4107 (image_handler_load): Add g_return_if_fail() to ensure the same
4108 module isn't loaded twice. Add g_module_symbol() to scan for XPM
4111 1999-10-22 Federico Mena Quintero <federico@redhat.com>
4113 * src/io-png.c (image_load): Patch from Kristian Hogsberg
4114 Kristensen <hogsberg@daimi.au.dk> to avoid allocating extra row
4115 buffers; the rows can be read in directly into the main pixel
4118 1999-10-20 Federico Mena Quintero <federico@redhat.com>
4120 * src/gdk-pixbuf-io.c (image_handler_load): Free path.
4122 1999-10-20 Federico Mena Quintero <federico@redhat.com>
4124 * configure.in: Bumped version number to 0.3.
4126 * src/Makefile.am (lbgdk_pixbuf_la_LDFLAGS): Added a libtool
4127 version number for the library.
4129 1999-10-20 Federico Mena Quintero <federico@redhat.com>
4131 * src/gdk-pixbuf.h (GdkPixbuf): Removed the unref_fn field. Now
4132 all memory management of the buffer is done by libart.
4134 * src/gdk-pixbuf.c (gdk_pixbuf_unref): Do destruction here.
4135 Removed gdk_pixbuf_destroy, gdk_pixbuf_duplicate.
4137 * src/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Implemented in
4138 terms of the libart functions. Removed the old code.
4140 * src/gdk-pixbuf-io.c (image_handler_load): Removed the save
4141 symbols. Saving will not be implemented in GdkPixbuf.
4143 * src/io-gif.c: Removed the saving stub.
4144 (image_load): Fixed memory management to fail gracefully if we run
4145 out of memory while loading the image. Close the gif file when we
4146 are done. This still needs more error handling for the DGif
4149 * src/io-jpeg.c (image_load): Some robustness fixes.
4151 * src/io-png.c: Removed the saving stuff.
4152 (image_load): Some memory management fixes.
4154 * src/io-tiff.c (image_load): Ditto.
4156 * src/io-xpm.c (pixbuf_create_from_xpm): Ditto.
4158 1999-10-18 Havoc Pennington <hp@pobox.com>
4160 * subautogen.sh: New name for macros/autogen.sh
4162 * autogen.sh: use subautogen.sh
4164 1999-10-18 Federico Mena Quintero <federico@redhat.com>
4166 * src/*: Reindented to use the GNOME Indentation. Renamed
4167 GdkPixBuf to GdkPixbuf, for consistency with the function names
4168 (and it is also easier to type) :-)
4170 1999-10-18 Havoc Pennington <hp@pobox.com>
4172 * configure.in: Use AM_PATH_GLIB instead of glib-config directly
4174 * src/Makefile.am: Re-enable testpixbuf with GTK_CFLAGS/GTK_LIBS
4176 1999-10-18 Havoc Pennington <hp@pobox.com>
4178 * Makefile.am (SUBDIRS): Remove "macros"
4180 * configure.in: Don't use GNOME_INIT, handle case where we are
4181 inside gnome-libs. AM_PATH_GTK for the GIF test
4183 * src/Makefile.am: Change flags to work without libgnomeui,
4184 comment out testpixbuf for now
4186 1999-10-18 Federico Mena Quintero <federico@redhat.com>
4188 * configure.in: Use $GTK_LIBS as the extra libs when checking for
4189 libgif/libungif, as they need the X libraries. Fixes bug #2472.
4191 1999-10-10 Cody Russell <bratsche@dfw.net>
4192 * src/gdk-pixbuf-drawable.c: core function now determines whether
4193 the requested geometry is on screen or not, and if some is not
4194 then the request is clamped to geometry that is on the screen.
4196 Changed 'pixbuf' to 'art_pixbuf' in core function.
4198 1999-10-08 Michael Fulbright <drmike@redhat.com>
4200 * src/gdk-pixbuf-data.c: Added to load rgb data from const data.
4202 * src/testpifbuf: Changed test program to display cdrom from rgb data
4203 if no filename given to test program.
4205 1999-10-07 Cody Russell <bratsche@dfw.net>
4206 * src/gdk-pixbuf-drawable.[ch]: Added. (Actually, Miguel committed
4207 them, but I wrote them).
4209 * src/gdk-pixbuf-drawable.h: Added a missing ; so things will now
4212 * src/Makefile.am: Added gdk-pixbuf-drawable.[ch] to
4213 libgdk_pixbuf_la_SOURCES and libgdk_pixbufinclude_HEADERS.
4215 * src/gdk-pixbuf-drawable.c: Added #include "gdk-pixbuf-drawable.h"
4218 * src/gdk-pixbuf-drawable.[ch]: Changed functions to return
4219 GdkPixBuf* instead of ArtPixBuf*.
4221 1999-09-22 Michael Meeks <michael@nuclecu.unam.mx>
4223 * src/gdk-pixbuf.c (gdk_pixbuf_new): created.
4224 (gdk_pixbuf_scale): use gdk_pixbuf_new + return a new scaled image.
4226 * src/gdk-pixbuf.h (struct _GdkPixBuf): Re-organise struct, + add
4227 GdkPixBufUnrefFunc + gdk_pixbuf_new.
4229 * src/io-jpeg.c (image_load): clean to use gdk_pixbuf_new.
4231 * src/io-xpm.c (_pixbuf_create_from_xpm): ditto.
4233 * src/io-tiff.c (image_load): ditto + fix leak
4235 * src/io-png.c (image_load): ditto + add more exit points; monitor.png
4236 crashes this module ( add warning :-)
4238 * src/io-bmp.c (image_load): ditto.
4240 * src/io-gif.c (image_load): ditto.
4242 1999-09-18 Michael Meeks <michael@nuclecu.unam.mx>
4244 * src/gdk-pixbuf.c (gdk_pixbuf_scale): Hack rgba support in so
4245 it doesn't crash scaling with alpha.
4247 1999-09-17 Federico Mena Quintero <federico@redhat.com>
4249 * src/io-bmp.c (image_load): Set the initial ref_count to 1.
4251 * src/io-gif.c (image_load): Likewise.
4253 * src/io-jpeg.c (image_load): Likewise.
4255 * src/io-png.c (image_load): Likewise.
4257 * src/io-tiff.c (image_load): Likewise.
4259 * src/io-xpm.c (_pixbuf_create_from_xpm): Likewise.
4261 * src/gdk-pixbuf-io.c (gdk_pixbuf_load_image): Added an assertion
4262 for the ref_count to be != 0.
4264 * src/gdk-pixbuf.c (gdk_pixbuf_ref): Be more paranoid with sanity
4266 (gdk_pixbuf_unref): Fix incorrect sanity check and comparison.
4268 1999-08-09 Federico Mena Quintero <federico@nuclecu.unam.mx>
4270 * src/io-png.c (image_save): Fixed compiler warnings. Fixed write
4271 to unallocated memory (row_ptr), and fixed its type as well. Take
4272 into account the ArtPixbuf's rowstride when assigning the row
4275 * src/gdk-pixbuf.c: Fixup includes.
4277 * src/gdk-pixbuf-io.c: Likewise.
4279 Sat Jul 31 19:19:47 CEST 1999
4281 * src/gdk-pixbuf-io.c:
4282 * src/io-png.c: Fixed two obvious C syntax bugs
4284 1999-07-29 Mark Crichton <crichton@gimp.org>
4286 * src/io-png.c (image_save): Added PNG saving function
4288 * src/gdk-pixbuf-io.c: Changed image_save function format. Now it's
4289 image_save(GdkPixBuf *p, FILE *f, ...)
4292 1999-07-26 Michael Zucchi <mzucchi@denr.sa.gov.au>
4294 * src/Makefile.am (*_LIB): Only build the relevant loaders which
4295 require extra libraries if we actually have those libraries.
4297 1999-07-23 Richard Hestilow <hestgray@ionet.net>
4299 * src/gdk-pixbuf.h: Include glib.h as it uses g* datatypes
4300 * gdk_pixbufConf.sh.in: Added for gnome-config
4302 * configure.in: Modified to generate gdk_pixbufConf.sh
4304 1999-07-20 Mark Crichton <crichton@gimp.org>
4306 * src/gdk-pixbuf.c (gdk_pixbuf_rotate): Fixed rotation. Now a bbox
4307 calculation needs to be done.
4309 1999-07-18 Larry Ewing <lewing@gimp.org>
4314 * src/io-jpeg.c: Fix a few memory leaks in the, most of them in
4315 error cases but one or two in the common case. There are probably
4316 a few small ones left.
4318 1999-07-18 Mark Crichton <crichton@gimp.org>
4320 * configure.in: removed version.h.
4322 * src/gdk-pixbuf-io.c (pixbuf_check_tiff): Minor readability
4325 1999-07-17 Mark Crichton <crichton@gimp.org>
4327 * src/gdk-pixbuf.c: Removed gdk_pixbuf_free, redundant code.
4328 (gdk_pixbuf_rotate): Added pixbuf rotation code.
4329 (gdk_pixbuf_scale): Changed // comments to /* */
4331 * src/gdk-pixbuf.h (gdk_pixbuf_destroy): Added gdk_pixbuf_destroy
4334 1999-07-16 Larry Ewing <lewing@gimp.org>
4336 * src/testpixbuf.c (expose_func): reverted the expose everything
4337 changes, I'm not sure why these went in.
4338 (config_func): bring this up to date with the new pixbuf_scale
4341 * src/gdk-pixbuf-io.c: added a couple of warnings to the module
4342 loading code so that poeple can diagnose problems better.
4344 * src/gdk-pixbuf.c (gdk_pixbux_scale): fix the borkedness, also it
4345 no longer allocates a new pixbuf, which make things nicer for the
4346 rest of the code. Unfortunately there is still a problem with
4347 scaling rgba images.
4349 1999-07-16 Mark Crichton <crichton@gimp.org>
4351 * src/testpixbuf.c (config_func): ConfigureEvent handler. This
4352 calls gdk_pixbuf_scale. However, something is not working.
4353 N.B.: current pixmap is now stored in user_data with a key of
4356 * src/gdk-pixbuf.c (gdk_pixbuf_scale): Implemented scaling function.
4357 Something is still borked, however.
4359 1999-07-15 Larry Ewing <lewing@gimp.org>
4361 * src/io-jpeg.c (image_load): add raph@gimp.org's fix to the jpeg
4364 * src/testpixbuf.c (main): fix up the file routines a little so
4365 that you can load multiple files given the file names
4367 1999-07-14 Larry Ewing <lewing@gimp.org>
4369 * src/testpixbuf.c (expose_func): added an almost proper expose
4370 handler for testpixbuf
4372 1999-07-13 Mark Crichton <crichton@gimp.org>
4374 * configure.in: Fixed GIF check. Replaced " with '
4375 * src/gdk-pixbuf.c: More (minor) work on gdk_pixbuf_scale
4377 1999-07-13 Mark Crichton <crichton@gimp.org>
4379 * configure.in: I am a bonehead. Added gif-lib check.