Commit Graph

491 Commits

Author SHA1 Message Date
Matthias Clasen
e5d0f500c6 Clarify misleading explanation of rowstride. (#119000)
2003-08-03  Matthias Clasen  <maclas@gmx.de>

	* gdk-pixbuf.c (gdk_pixbuf_get_rowstride):
	* gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Clarify misleading explanation of
	rowstride.  (#119000)
2003-08-03 21:51:24 +00:00
Matthias Clasen
b8118e6507 Preserve the aspect ratio. (#118145, Owen Taylor)
2003-07-24  Matthias Clasen  <maclas@gmx.de>

	* gdk-pixbuf-io.c (gdk_pixbuf_new_from_file_at_size): Preserve the aspect ratio.  (#118145,
	Owen Taylor)
2003-07-23 22:55:34 +00:00
Matthias Clasen
a19781c504 Close loader before unref'ing it. (#118146, Owen Taylor)
2003-07-23  Matthias Clasen  <maclas@gmx.de>

	* gdk-pixbuf-io.c (gdk_pixbuf_new_from_file_at_size): Close loader before unref'ing
	it.  (#118146, Owen Taylor)
2003-07-23 21:39:11 +00:00
Hans Breuer
4689575d1c updated
2003-03-01  Hans Breuer  <hans@breuer.org>

	* makefile.msc : updated

	* gdk_pixbuf.def : export a bunch of new functions
2003-07-20 15:43:41 +00:00
Matthias Clasen
a6a10ee028 Split correction into multiple pieces if no single weight is large enough
2003-07-18  Matthias Clasen  <maclas@gmx.de>

	* pixops/pixops.c (correct_total): Split correction into multiple pieces if no single weight is large
	enough to apply the unsplit correction.  (#117431, problem reported by Tomas Ögren)
2003-07-17 22:47:10 +00:00
Matthias Clasen
b9db8ea3ea New function to load an image from a file at a specified size. (#105326,
2003-07-13  Matthias Clasen  <maclas@gmx.de>

	* gdk-pixbuf.h:
	* gdk-pixbuf-io.c (gdk_pixbuf_new_from_file_at_size): New function to load an image from a file at a
	specified size.  (#105326, Dom Lachowicz)
2003-07-13 19:43:09 +00:00
Matthias Clasen
aa013939bf Use g_strfreev() to free mime_types. (#117219, Steve Chaplin)
2003-07-11  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkicontheme.c (pixbuf_supports_svg): Use g_strfreev() to free mime_types.
	(#117219, Steve Chaplin)

	* queryloaders.c (query_module): Handle absolute filenames properly. (#117170, Jens Elkner)

	* gdk-pixbuf-io.c: Mention that NULL-terminated arrays returned by
	gdk_pixbuf_format_get_mime_types() and gdk_pixbuf_format_get_extensions() must be
	freed with g_strfreev().
2003-07-11 20:36:25 +00:00
Matthias Clasen
44f044e6cd Support saving ICOs and CURs. 2003-07-03 23:37:34 +00:00
Matthias Clasen
4d3c01795c Stop discriminating against 32bpp ICOs a): Use the byte size of the image
2003-06-28  Matthias Clasen  <maclas@gmx.de>

	* io-ico.c (DecodeHeader): Stop discriminating against 32bpp ICOs a): Use the byte
	size of the image as a heuristic when selecting the bitmap  to load - this lets us
	select 32bpp bitmaps which come after a 8bpp bitmap.
	(OneLineTransp): Stop discriminating against 32bpp ICOs b): Don't overwrite the
	alpha channel of 32bpp ICOs.
	(gdk_pixbuf__ico_image_load_increment): Stop decoding the header unnecessarily.
2003-06-28 20:04:18 +00:00
Soeren Sandmann
8597f10089 Make it compile with C89 compilers.
Fri Jun 27 03:56:59 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* io-gif-animation.c (gdk_pixbuf_gif_anim_frame_composite): Make
	it compile with C89 compilers.

Thu Jun 26 21:41:16 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktreeviewcolumn.c
	(gtk_tree_view_column_cell_set_cell_data): only set "is_expander"
	and "is_expanded" if the new value is different fromt he old one.
2003-06-27 02:38:44 +00:00
Matthias Clasen
3806847935 Remove the pointless refusal to load images with dubious disposal mode on
2003-06-23  Matthias Clasen  <maclas@gmx.de>

	* io-gif.c (gif_get_frame_info): Remove the pointless refusal to load images with dubious
	disposal mode on the first frame. Just ignore it, as everybody else does.
2003-06-23 20:20:15 +00:00
Matthias Clasen
de07fd2a7e Add gdk_pixbuf_loader_new_with_mime_type.
2003-06-22  Matthias Clasen  <matthias@localhost.localdomain>

	* gdk-pixbuf/gdk-pixbuf-sections.txt: Add gdk_pixbuf_loader_new_with_mime_type.
2003-06-22 19:08:12 +00:00
Matthias Clasen
a378391aaa Reset block_count to 0 for all application extensions, otherwise the data
2003-06-22  Matthias Clasen  <matthias@localhost.localdomain>

	* io-gif.c (gif_get_extension): Reset block_count to 0 for all application extensions, otherwise the data blocks
	of unknown extensions are not propertly skipped.

	Second half of the fix for #106962, handle frames extending beyond the logical screen:

	* io-gif.c (clip_frame): New helper function to clip a rectangle to the logical screen size of the gif.
	(maybe_update): New helper function to call update_func only if the rectangle is not completely off-bounds.
	(gif_get_lzw): Read frames extending outside the logical screen size, but be careful clip to the logical screen size
	when operating on the composite pixbuf and when calling update_func.
	(gif_init): Set the animation size to the logical screen size.
	(gif_get_frame_info): Don't refuse to load images with frames extending beyond the logical screen size.

	* io-gif-animation.c (gdk_pixbuf_gif_anim_frame_composite): Be careful to clip all rectangles to the logical screen
	size, also handle the fact that frames may be completely off-bounds.
2003-06-22 18:08:33 +00:00
Matthias Clasen
d77e5a3341 Merge from 2.2 2003-06-21 00:46:49 +00:00
Matthias Clasen
375a6f4836 Document data_length == -1, add an example. (#97290)
2003-06-03  Matthias Clasen  <maclas@gmx.de>

	* gdk-pixdata.c (gdk_pixbuf_new_from_inline): Document
	data_length == -1, add an example.  (#97290)
2003-06-02 22:46:28 +00:00
Matthias Clasen
5d15f30279 Fix misleading documentation of rowstride. (#113924, Noah Levitt)
2003-06-01  Matthias Clasen  <maclas@gmx.de>

	* gdk-pixdata.h (struct _GdkPixdata): Fix misleading documentation
	of rowstride.  (#113924, Noah Levitt)
2003-05-31 23:52:49 +00:00
Matthias Clasen
83c626bbe0 Remove dubious bitfields of unspecified signedness. (#112919, Morten
2003-05-27  Matthias Clasen  <maclas@gmx.de>

	* io-wbmp.c: Remove dubious bitfields of
	unspecified signedness.  (#112919, Morten Welinder)gdk-p

	* gdk-pixdata.c (gdk_pixdata_to_csource): Replace all occurances
	of g_string_new ("") by g_string_new (NULL). (#106975, Morten Welinder)

	* gtk/gtkwindow-decorate.c:
	* gtk/gtktreeprivate.h:
	* gtk/gtkdnd.c:
	* gdk/win32/gdkwindow-win32.h:
	* gdk/linux-fb/gdkprivate-fb.h:
	* gdk/linux-fb/gdkkeyboard-fb.c: Remove dubious bitfields of
	unspecified signedness.  (#112919, Morten Welinder)

	* gtk/queryimmodules.c (escape_string):
	* gtk/gtktextbtree.c (_gtk_text_btree_get_text):
	* gtk/gtksettings.c (_gtk_settings_parse_convert):
	* gtk/gtkrc.c (gtk_rc_parse_assignment):
	* gtk/gtkinputdialog.c (gtk_input_dialog_set_key):
	* gdk/x11/gdkdisplay-x11.c (escape_for_xmessage): Replace all
	occurances of g_string_new ("") by g_string_new (NULL). (#106975,
	Morten Welinder)
2003-05-27 21:21:00 +00:00
Matthias Clasen
b5adee991a A loader for PCX files. (#113035, Josh Beam)
2003-05-21  Matthias Clasen  <maclas@gmx.de>

	* pixbufloader_pcx.def:
	* io-pcx.c: A loader for PCX files.  (#113035, Josh Beam)

	* gdk-pixbuf-io.c:
	* Makefile.am: Add PCX loader.
2003-05-21 20:20:07 +00:00
Matthias Clasen
ed1ac0e2c6 Improve progressive loading from slow sources: (#107368)
2003-05-19  Matthias Clasen  <maclas@gmx.de>

	Improve progressive loading from slow sources:  (#107368)

	* io-gif-animation.c (gdk_pixbuf_gif_anim_get_iter): Initialize
	first_loop_slowness.
	(gdk_pixbuf_gif_anim_iter_advance): Don't wrap during loading if
	the datasource falls behind the speed of the display.

	* io-gif-animation.h: Add a loading flag to GdkPixbufGifAnim and
	first_loop_slowness to GdkPixbufGifAnimIter.
2003-05-19 21:44:03 +00:00
Owen Taylor
a410bfa04e Add a (gint32 *) => (guint32 *) cast. (#108615, Rick Jones)
Wed May 14 18:24:50 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk-pixdata.c (gdk_pixdata_deserialize): Add a
        (gint32 *) => (guint32 *) cast. (#108615, Rick Jones)
2003-05-14 22:26:41 +00:00
Matthias Clasen
691a5fd50a Add sanity checks for GError handling. (#108345) 2003-04-24 18:51:07 +00:00
Owen Taylor
192167b0f8 Exploit the fact that all our filters are separable to simplify the
Tue Apr  1 15:33:51 2003  Owen Taylor  <otaylor@redhat.com>

        * pixops/pixops.c (make_weights): Exploit the fact that all
        our filters are separable to simplify the calculation of
        the weight tables. (Based on a patch from Brian Cameron.)

        * pixops/Makefile.am pixbuf-transform-math.ltx:
        Add a short article describing how the math in pixops.c
        works.
2003-04-01 20:57:25 +00:00
Matthias Clasen
250fd7cc43 Add missing static. (#108614)
2003-03-21  Matthias Clasen  <maclas@gmx.de>

	* gdk-pixbuf-animation.c (gdk_pixbuf_non_anim_get_type): Add
	missing static.  (#108614)
2003-03-21 00:35:15 +00:00
Matthias Clasen
b6d19fe207 Add missing static qualifiers apparently causing problems on some
2003-03-21  Matthias Clasen  <maclas@gmx.de>

	* io-jpeg.c (gdk_pixbuf__jpeg_image_begin_load):
	* io-ico.c (gdk_pixbuf__ico_image_stop_load): Add missing static
	qualifiers apparently causing problems on some platforms. (#108617)
2003-03-21 00:13:17 +00:00
Matthias Clasen
746d1cd9d4 Calculate LineWidth for 16bpp from width, like for the other depths.
2003-03-11  Matthias Clasen  <maclas@gmx.de>

	* io-ico.c (DecodeHeader): Calculate LineWidth for 16bpp from
	width, like for the other depths.  (noticed by Marijn Ros)
2003-03-11 23:02:39 +00:00
Matthias Clasen
d03b2741ad Trivial cleanups (bug #107664) 2003-03-08 20:49:00 +00:00
Matthias Clasen
285a25da03 Return gboolean, not gint. (#107664, Morten Welinder)
2003-03-06  Matthias Clasen  <maclas@gmx.de>

	* gdk/gdkrgb.c (gdk_rgb_try_colormap): Return gboolean, not gint.
	(#107664, Morten Welinder)

	* gdk/x11/gdkwindow-x11.c (gdk_window_get_deskrelative_origin):
	* gdk/x11/gdkfont-x11.c (gdk_font_equal):
	* gdk/x11/gdkdnd-x11.c (gdk_drag_get_protocol_for_display):
	Fix TRUE/1 and FALSE/0 confusion.  (#107664, Morten Welinder)

	* io-gif.c (gif_read): Fix 0/FALSE confusion (#107664, Morten Welinder)
2003-03-06 20:19:11 +00:00
Matthias Clasen
db0dfee6de Always clear the initial frame and "disposed" areas with transparent
2003-02-20  Matthias Clasen  <maclas@gmx.de>

	* io-gif-animation.c (gdk_pixbuf_gif_anim_frame_composite):
	Always clear the initial frame and "disposed" areas with
	transparent pixels, no matter whether the frame has transparency
	or not.  (#55502)
2003-02-19 23:02:03 +00:00
Matthias Clasen
588a0dd2b9 Auxiliary functions used to implement support for arbitrary origins.
2003-02-18  Matthias Clasen  <maclas@gmx.de>

	* io-tga.c (pixbuf_flip_row):
	(pixbuf_flip_vertically): Auxiliary functions used to implement
	support for arbitrary origins.
	(parse_data_for_row_pseudocolor):
	(parse_data_for_row_truecolor):
	(parse_data_for_row_grayscale):
	(parse_data_for_row):
	(fill_in_context): Remove the check for upper-left origin.
	(parse_rle_data): Support arbitrary origins. (#105912)

	* io-tga.c (fread_check):
	(fseek_check):
	(get_header_from_file):
	(get_colormap_from_file):
	(get_image_pseudocolor):
	(swap_channels_pixbuf):
	(get_image_truecolor):
	(get_image_grayscale):
	(gdk_pixbuf__tga_load): Remove the non-incremental load
	implementation, since we have generic_image_load () now.

	(gdk_pixbuf__tga_stop_load): Fix a potential crash discovered by
	pixbuf-lowmem.
2003-02-18 20:12:08 +00:00
Matthias Clasen
64e32006e0 Actually reject images with origin not in the upper-left corner. (#105912)
2003-02-14  Matthias Clasen  <maclas@gmx.de>

	* io-tga.c (try_preload):
	(gdk_pixbuf__tga_load): Actually reject images with origin
	not in the upper-left corner.  (#105912)
2003-02-13 23:50:41 +00:00
Owen Taylor
6c616fa842 Rewrite to run on the .la files rather than looking for .so files.
Mon Jan 27 17:10:30 2003  Owen Taylor  <otaylor@redhat.com>

        * Makefile.am (gdk-pixbuf.loaders): Rewrite to run
        on the .la files rather than looking for .so files.
        (#102142, Martin Gansser)

        * Makefile.am: Don't build gdk-pixbuf.loaders when
        cross-compiling.
2003-01-27 23:17:51 +00:00
Tor Lillqvist
0973b993f2 Use correct DLL and import library names, with GTK_API_VERSION in name,
2003-01-05  Tor Lillqvist  <tml@iki.fi>

	* gtk-zip.sh.in: Use correct DLL and import library names, with
	GTK_API_VERSION in name, not GTK_MAJOR_VERSION.GTK_MINOR_VERSION.
	(DEVZIP): Add gdk-pixbuf-query-loaders.exe.

	* configure.in: Improve check for dimm.h.

	* configure.in: Set SOEXT to 'so' on Unix, 'dll' on Win32. Used in
	gdk-pixbuf/Makefile.am.

	* gdk-pixbuf/makefile.mingw.in
	* gdk-pixbuf/pixops/makefile.mingw.in
	* gdk/makefile.mingw.in
	* gdk/win32/makefile.mingw.in
	* gtk/makefile.mingw.in: Remove. Not maintained anyway.

	* gdk-pixbuf/Makefile.am
	* gdk-pixbuf/pixops/Makefile.am
	* gdk/Makefile.am
	* gdk/win32/Makefile.am
	* gtk/Makefile.am
	* configure.in: Remove makefile.mingw{,.in} from here, too.

	* README.win32: Updates. Don't mention the now removed
	makefile.mingw files.

	* gdk/gdk.def
	* gtk/gtk.def: Add a couple of missing entries.

	* gdk/gdkkeynames.c: Include <string.h> for strcmp() and memcpy().

	* gdk/win32/gdkevents-win32.c: Move dimm.h header clash workaround
	earlier.

	* gdk/win32/rc/Makefile.am: Add hack to help
	build/win32/lt-compile-resource decide which kind of libtool
	object file to produce.
2003-01-05 02:24:15 +00:00
Matthias Clasen
12a0888500 Don't crash if gdk-pixbuf.loaders file is missing. (#102222)
2003-01-03  Matthias Clasen  <maclas@gmx.de>

	* gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): Don't crash if
	gdk-pixbuf.loaders file is missing.  (#102222)
2003-01-02 23:13:11 +00:00
Matthias Clasen
29969a9081 Add docs. 2002-12-08 00:18:13 +00:00
Owen Taylor
b707bb6c3b Make gdk-pixbuf.loaders also depend gdk-pixbuf-query-loaders. (#97096,
Sat Dec  7 10:14:05 2002  Owen Taylor  <otaylor@redhat.com>

        * Makefile.am (gdk-pixbuf.loaders): Make gdk-pixbuf.loaders
        also depend gdk-pixbuf-query-loaders. (#97096, Daniel Elstner)
2002-12-07 15:16:01 +00:00
Matthias Clasen
a84c7224c0 Remove leftover debug output. (#100357, Owen Taylor)
* io-ico.c: Remove leftover debug output.  (#100357, Owen Taylor)
2002-12-05 21:37:37 +00:00
Bastien Nocera
55f1544e0a use G_BIG_ENDIAN instead of WORDS_BIGENDIAN which isn't set by
2002-12-04  Bastien Nocera  <hadess@hadess.net>

        * io-tiff.c: (tiff_image_parse): use G_BIG_ENDIAN instead of
	WORDS_BIGENDIAN which isn't set by configure.in
2002-12-04 21:07:30 +00:00
Matthias Clasen
f0b823e943 Add deprecation docs.
* gdk-pixbuf-animation.c:
	* gdk-pixbuf.c: Add deprecation docs.
2002-11-29 20:36:26 +00:00
Matthias Clasen
7cb3f99fc7 Document 2.2 API additions. 2002-11-28 00:33:17 +00:00
Owen Taylor
a1fae207be Make gdk-pixbuf.loaders file depend on the loaders (#97096, Jeff Waugh)
Fri Nov  8 19:06:07 2002  Owen Taylor  <otaylor@redhat.com>

        * Makefile.am (gdk-pixbuf.loaders): Make gdk-pixbuf.loaders
        file depend on the loaders (#97096, Jeff Waugh)
2002-11-09 00:10:42 +00:00
Owen Taylor
3f92a70e8b Fix trailing semicolon on macro, clean up a bit.
Wed Nov  6 15:19:53 2002  Owen Taylor  <otaylor@redhat.com>

        * io-gif.c (CHECK_LZW_SP): Fix trailing semicolon on macro,
        clean up a bit.
2002-11-06 20:26:27 +00:00
Matthias Clasen
11c530fe16 Forgotten ChangeLog 2002-11-05 23:57:26 +00:00
Owen Taylor
8942a3a2d5 Fix leaked pixbuf reference (#96823, Morten Welinder)
Tue Nov  5 14:16:17 2002  Owen Taylor  <otaylor@redhat.com>

        * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Fix
        leaked pixbuf reference (#96823, Morten Welinder)
2002-11-05 19:18:56 +00:00
Matthias Clasen
fbccc0848d Check for stack overflow throughout. (#91808, Elliot Lee)
* io-gif.c (lzw_read_byte): Check for stack overflow throughout.
	(#91808, Elliot Lee)
2002-10-22 22:41:58 +00:00
Matthias Clasen
817ad6d3f8 Support the Netscape application extension for gif animations (#95060): 2002-10-20 22:16:58 +00:00
Matthias Clasen
5591c434f8 Documentation updates. 2002-10-11 01:04:45 +00:00
jacob berkman
562e3caf49 make legal C
2002-10-04  jacob berkman  <jacob@ximian.com>

	* queryloaders.c (query_module): make legal C
2002-10-04 05:23:13 +00:00
Matthias Clasen
45f7541f42 Support for separately installed loaders. (#77486)
* Makefile.am gdk-pixbuf-animation.c gdk-pixbuf-data.c
	gdk-pixbuf-io.c gdk-pixbuf-io.h gdk-pixbuf-loader.c
	gdk-pixbuf-loader.h gdk-pixbuf-private.h gdk-pixbuf.h
	gdk-pixdata.c io-ani-animation.h io-ani.c io-bmp.c
	io-gif-animation.c io-gif-animation.h io-gif.c io-ico.c
	io-jpeg.c io-png.c io-pnm.c io-ras.c io-tga.c io-tiff.c
	io-wbmp.c io-xbm.c io-xpm.c pixbufloader_ani.def
	pixbufloader_bmp.def pixbufloader_gif.def pixbufloader_ico.def
	pixbufloader_jpeg.def pixbufloader_png.def
	pixbufloader_pnm.def pixbufloader_ras.def pixbufloader_tga.def
	pixbufloader_tiff.def pixbufloader_wbmp.def
	pixbufloader_xbm.def pixbufloader_xpm.def test-gdk-pixbuf.c
	gdk-pixbuf-animation.h queryloaders.c: Support for separately
	installed loaders.  (#77486)
2002-10-03 22:39:51 +00:00
Owen Taylor
71277f4075 Fix memory leak. (#94399)
Thu Oct  3 18:25:57 2002  Owen Taylor  <otaylor@redhat.com>

        * io-jpeg.c (gdk_pixbuf__jpeg_image_save):
        Fix memory leak. (#94399)
2002-10-03 22:32:39 +00:00
Owen Taylor
352b72d2f2 Patch from Andy Wingo to always escape ? to avoid accidentally generating
Tue Oct  1 17:35:43 2002  Owen Taylor  <otaylor@redhat.com>

        * gdkpixdata.c: Patch from Andy Wingo to always
        escape ? to avoid accidentally generating trigraphs
        in the output (#94631)
2002-10-01 21:42:36 +00:00