2001-02-12 17:50:13 +00:00
|
|
|
<!-- ##### SECTION ./tmpl/from-drawables.sgml:Long_Description ##### -->
|
2000-04-13 01:18:41 +00:00
|
|
|
<para>
|
2001-02-12 17:50:13 +00:00
|
|
|
The functions in this section allow you to take the image data
|
|
|
|
from a GDK drawable and dump it into a #GdkPixbuf. This can be
|
|
|
|
used for screenshots and other special effects. Note that these
|
|
|
|
operations can be expensive, since the image data has to be
|
|
|
|
transferred from the X server to the client program and converted.
|
2000-04-13 01:18:41 +00:00
|
|
|
</para>
|
|
|
|
|
|
|
|
|
2001-02-12 17:50:13 +00:00
|
|
|
<!-- ##### SECTION ./tmpl/from-drawables.sgml:See_Also ##### -->
|
|
|
|
<para>
|
|
|
|
gdk_image_get().
|
|
|
|
</para>
|
urg, removed implementation of gtk_marshal_VOID__INT_INT_INT_INT. if
Wed Oct 25 20:47:41 2000 Tim Janik <timj@gtk.org>
* gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
couldn't they at least give it a non-standard name?
* gtk/gtktextlayout.c: arg! yet another implementation of
gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
* gtk/gtktextbuffer.c: gotcha! captured a vagabonding
gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
home. now i know this _is_ a conspiracy.
* gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
::state-changed.
* gtk/gtkaccelgroup.c (gtk_accel_group_create_remove):
(gtk_accel_group_create_add): marshaller signature fixups.
* gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
* gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
anymore.
Tue Oct 24 23:59:21 2000 Tim Janik <timj@gtk.org>
* docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
due to the signal system changes, it wouldn't build currently. to
be fixed soon.
* docs/Changes-2.0.txt: GtkSignal/GSignal updates.
* gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
so it needs gtk_marshal_VOID__ENUM() instead of
gtk_marshal_NONE__UINT().
* gdk/gdk*.c: adapted type registration functions.
* gtk/gtkbindings.c:
* gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
gone.
* gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
* gtk/gtkobject.c:
(gtk_object_destroy):
(gtk_object_shutdown): fixed recursion guards. basically we have to
catch the case where any of GObject.shutdown() or gtk_object_destroy()
is called during ::destroy, and avoid recursion there.
* gtk/gtktypeutils.c:
* gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
boxed_copy/boxed_free. this needs a more general solution based on a
publically installed code-generator utility.
* gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
glib's gobject has support for that now.
define GtkSignalMarshaller in terms of GSignalCMarshaller.
Mon Oct 23 09:36:42 2000 Tim Janik <timj@gtk.org>
* gtk/gtksignal.[hc]:
* gtk/gtkmarshal.[hc]:
* gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
care of that.
* *.c: marshaller name fixups.
* gtk/gtkmarshal.list: added a comment briefing the format.
Sun Oct 22 23:14:39 2000 Tim Janik <timj@gtk.org>
* gtk/gtksignal.[hc]: nuked old implementation. we mostly have
compatibility macros here now. more specifically, most of
the API is preserved (yes, _most_, nonwithstanding the
following exceptions listed, the API is stil lHUGE ;)
things that got removed completely:
GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
gtk_signal_remove_emission_hook().
non-functional functions variants:
gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
the GtkCallbackMarshal argument to gtk_signal_connect_full() is
not supported anymore.
(gtk_signal_compat_matched): new internal function to aid
implementation of the compatibility macros, it provides
functionality to block/unblock/disconnect handlers based
on func/data.
* gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
* *.c: adaptions to new type registration API signatures.
Fri Oct 20 15:26:33 2000 Tim Janik <timj@gtk.org>
* gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
2000-10-25 22:34:14 +00:00
|
|
|
|
2000-04-13 01:18:41 +00:00
|
|
|
|
2001-02-12 17:50:13 +00:00
|
|
|
<!-- ##### SECTION ./tmpl/from-drawables.sgml:Short_Description ##### -->
|
|
|
|
Getting parts of a drawable's image data into a pixbuf.
|
2000-04-13 01:18:41 +00:00
|
|
|
|
|
|
|
|
2001-02-12 17:50:13 +00:00
|
|
|
<!-- ##### SECTION ./tmpl/from-drawables.sgml:Title ##### -->
|
|
|
|
Drawables to Pixbufs
|
2000-04-13 01:18:41 +00:00
|
|
|
|
|
|
|
|
2001-02-12 17:50:13 +00:00
|
|
|
<!-- ##### SECTION ./tmpl/gnome-canvas-pixbuf.sgml:Long_Description ##### -->
|
2000-01-22 21:18:17 +00:00
|
|
|
<para>
|
2001-02-12 17:50:13 +00:00
|
|
|
This canvas item displays #GdkPixbuf images. It handles full
|
|
|
|
affine transformations in both GDK and antialiased modes, and also
|
|
|
|
supports the <ulink url="http://www.w3.org">W3C</ulink>'s <ulink
|
|
|
|
url="http://www.w3.org/Graphics/SVG/">SVG</ulink>-like scaling and
|
|
|
|
translation semantics for absolute pixel values.
|
2000-01-22 21:18:17 +00:00
|
|
|
</para>
|
|
|
|
|
2001-02-12 17:50:13 +00:00
|
|
|
<para>
|
|
|
|
#GdkPixbuf structures may be shared among different pixbuf canvas
|
|
|
|
items; the pixbuf item uses #GdkPixbuf's reference counting
|
|
|
|
functions for this.
|
|
|
|
</para>
|
2000-10-29 08:03:34 +00:00
|
|
|
|
2001-02-12 17:50:13 +00:00
|
|
|
<refsect2>
|
|
|
|
<title>Custom Scaling and Translation</title>
|
2000-10-29 08:03:34 +00:00
|
|
|
|
2001-02-12 17:50:13 +00:00
|
|
|
<para>
|
|
|
|
In addition to the normal affine transformations supported by
|
|
|
|
canvas items, the #GnomeCanvasPixbuf item supports independent
|
|
|
|
object arguments for scaling and translation. This is useful
|
|
|
|
for explicitly setting a size to which the pixbuf's image will
|
|
|
|
be scaled, and for specifying translation offsets that take
|
|
|
|
place in the item's local coordinate system.
|
|
|
|
</para>
|
2000-12-04 23:04:17 +00:00
|
|
|
|
2001-02-12 17:50:13 +00:00
|
|
|
<para>
|
|
|
|
By default, the pixbuf canvas item will attain the size in units
|
|
|
|
of the #GdkPixbuf it contains. If a #GnomeCanvasPixbuf is
|
|
|
|
configured to use a #GdkPixbuf that has a size of 300 by 200
|
|
|
|
pixels, then the pixbuf item will automatically obtain a size of
|
|
|
|
300 by 200 units in the item's local coordinate system. If the
|
|
|
|
item is transformed with a scaling transformation of (0.5, 2.0),
|
|
|
|
then the final image size will be of 150 by 400 pixels.
|
|
|
|
</para>
|
2000-12-04 23:04:17 +00:00
|
|
|
|
2001-02-12 17:50:13 +00:00
|
|
|
<para>
|
|
|
|
To set custom width and height values, you must set the <link
|
|
|
|
linkend="GnomeCanvasPixbuf--width-set">width_set</link> or <link
|
|
|
|
linkend="GnomeCanvasPixbuf--height-set">height_set</link>
|
|
|
|
arguments to %TRUE, and then set the <link
|
|
|
|
linkend="GnomeCanvasPixbuf--width">width</link> or <link
|
|
|
|
linkend="GnomeCanvasPixbuf--height">height</link> arguments to
|
|
|
|
the desired values. The former two arguments control whether
|
|
|
|
the latter two are used when computing the final image's size;
|
|
|
|
they are both %FALSE by default so that the pixbuf item will
|
|
|
|
attain a size in units equal to the size in pixels of the
|
|
|
|
#GdkPixbuf that the item contains.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
The custom translation offsets are controlled by the <link
|
|
|
|
linkend="GnomeCanvasPixbuf--x">x</link> and <link
|
|
|
|
linkend="GnomeCanvasPixbuf--y">y</link> arguments. The logical
|
|
|
|
upper-left vertex of the image will be translated by the
|
|
|
|
specified distance, aligned with the item's local coordinate
|
|
|
|
system.
|
|
|
|
</para>
|
|
|
|
</refsect2>
|
|
|
|
|
|
|
|
<refsect2>
|
|
|
|
<title>Absolute Pixel Scaling and Translation</title>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
The <ulink url="http://www.w3.org/Graphics/SVG/">Scalable Vector
|
|
|
|
Graphics</ulink> specification (SVG) of the <ulink
|
|
|
|
url="http://www.w3.org">World Wide Web Consortium</ulink> also
|
|
|
|
allows images to be translated and scaled by absolute pixel
|
|
|
|
values that are independent of an item's normal affine
|
|
|
|
transformation.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
Normally, the pixbuf item's translation and scaling arguments
|
|
|
|
are interpreted in units, so they will be modified by the item's
|
|
|
|
affine transformation. The <link
|
|
|
|
linkend="GnomeCanvasPixbuf--width-in-pixels">width_in_pixels</link>,
|
|
|
|
<link
|
|
|
|
linkend="GnomeCanvasPixbuf--height-in-pixels">height_in_pixels</link>,
|
|
|
|
<link
|
|
|
|
linkend="GnomeCanvasPixbuf--x-in-pixels">x_in_pixels</link>, and
|
|
|
|
<link
|
|
|
|
linkend="GnomeCanvasPixbuf--y-in-pixels">y_in_pixels</link>
|
|
|
|
object arguments can be used to modify this behavior. If one of
|
|
|
|
these arguments is %TRUE, then the corresponding scaling or
|
|
|
|
translation value will not be affected lengthwise by the pixbuf
|
|
|
|
item's affine transformation.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
For example, consider a pixbuf item whose size is (300, 200).
|
|
|
|
If the item is modified with a scaling transformation of (0.5,
|
|
|
|
2.0) but the <link
|
|
|
|
linkend="GnomeCanvasPixbuf--width-in-pixels">width_in_pixels</link>
|
|
|
|
is set to %TRUE, then the item will appear to be (300, 400)
|
|
|
|
pixels in size. This means that in this case the item's affine
|
|
|
|
transformation only applies to the height value, while the width
|
|
|
|
value is kept in absolute pixels.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
Likewise, consider a pixbuf item whose (<link
|
|
|
|
linkend="GnomeCanvasPixbuf--x">x</link>, <link
|
|
|
|
linkend="GnomeCanvasPixbuf--y">y</link>) arguments are set to
|
|
|
|
(30, 40). If the item is then modified by the same scaling
|
|
|
|
transformation of (0.5, 2.0) but the <link
|
|
|
|
linkend="GnomeCanvasPixbuf--y-in-pixels">y_in_pixels</link>
|
|
|
|
argument is set to %TRUE, then the image's upper-left corner
|
|
|
|
will appear to be at position (15, 40). In this case, the
|
|
|
|
affine transformation is applied only to the x offset, while the
|
|
|
|
y offset is kept in absolute pixels.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
In short, these arguments control whether a particular dimension
|
|
|
|
of a pixbuf item is scaled or not in the normal way by the
|
|
|
|
item's affine transformation.
|
|
|
|
</para>
|
|
|
|
</refsect2>
|
|
|
|
|
|
|
|
<refsect2>
|
|
|
|
<title>Resource Management</title>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
When you set the #GdkPixbuf structure that a #GnomeCanvasPixbuf
|
|
|
|
item will use by setting the <link
|
|
|
|
linkend="GnomeCanvasPixbuf--pixbuf">pixbuf</link> argument, a
|
|
|
|
reference count will be added to that #GdkPixbuf structure.
|
|
|
|
When the pixbuf item no longer needs the #GdkPixbuf structure,
|
|
|
|
such as when the item is destroyed or when a new pixbuf
|
|
|
|
structure is passed to it, then the old #GdkPixbuf structure
|
|
|
|
will be automatically unreferenced.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
This means that if an application just needs to load a pixbuf
|
|
|
|
image and set it into a pixbuf canvas item, it can do the
|
|
|
|
following to ‘forget’ about the pixbuf structure:
|
|
|
|
|
|
|
|
<programlisting>
|
|
|
|
GdkPixbuf *pixbuf;
|
|
|
|
GnomeCanvasItem *item;
|
|
|
|
|
|
|
|
pixbuf = gdk_pixbuf_new_from_file ("foo.png");
|
|
|
|
g_assert (pixbuf != NULL);
|
|
|
|
|
|
|
|
item = gnome_canvas_item_new (gnome_canvas_root (my_canvas),
|
|
|
|
gnome_canvas_pixbuf_get_type (),
|
|
|
|
"pixbuf", pixbuf,
|
|
|
|
NULL);
|
|
|
|
gdk_pixbuf_unref (pixbuf);
|
|
|
|
</programlisting>
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
After this happens, the reference count of the pixbuf structure
|
|
|
|
will be 1: the gdk_pixbuf_new_from_file() function creates it
|
|
|
|
with a reference count of 1, then setting the <link
|
|
|
|
linkend="GnomeCanvasPixbuf--pixbuf">pixbuf</link> argument of
|
|
|
|
the #GnomeCanvasPixbuf item increases it to 2, and then it is
|
|
|
|
decremented to 1 by the call to gdk_pixbuf_unref(). When the
|
|
|
|
canvas item is destroyed, it will automatically unreference the
|
|
|
|
pixbuf structure again, causing its reference count to drop to
|
|
|
|
zero and thus be freed.
|
|
|
|
</para>
|
|
|
|
</refsect2>
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### SECTION ./tmpl/gnome-canvas-pixbuf.sgml:See_Also ##### -->
|
|
|
|
<para>
|
|
|
|
#GnomeCanvas, #GdkPixbuf
|
|
|
|
</para>
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### SECTION ./tmpl/gnome-canvas-pixbuf.sgml:Short_Description ##### -->
|
|
|
|
Canvas item to display #GdkPixbuf images.
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### SECTION ./tmpl/gnome-canvas-pixbuf.sgml:Title ##### -->
|
|
|
|
GnomeCanvasPixbuf
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### SECTION ./tmpl/rendering.sgml:Long_Description ##### -->
|
|
|
|
<para>
|
|
|
|
The &gdk-pixbuf; library provides several convenience functions to
|
|
|
|
render pixbufs to GDK drawables. It uses the GdkRGB to render the
|
|
|
|
image data.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
At this point there is not a standard alpha channel extension for
|
|
|
|
the X Window System, so it is not possible to use full opacity
|
|
|
|
information when painting images to arbitrary drawables. The
|
|
|
|
&gdk-pixbuf; convenience functions will threshold the opacity
|
|
|
|
information to create a bi-level clipping mask (black and white),
|
|
|
|
and use that to draw the image onto a drawable.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<important>
|
|
|
|
<para>
|
|
|
|
Since these functions use GdkRGB for rendering, you must
|
|
|
|
initialize GdkRGB before using any of them. You can do this by
|
|
|
|
calling gdk_rgb_init() near the beginning of your program.
|
|
|
|
</para>
|
|
|
|
</important>
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### SECTION ./tmpl/rendering.sgml:See_Also ##### -->
|
|
|
|
<para>
|
|
|
|
GdkRGB
|
|
|
|
</para>
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### SECTION ./tmpl/rendering.sgml:Short_Description ##### -->
|
|
|
|
Rendering a pixbuf to a GDK drawable.
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### SECTION ./tmpl/rendering.sgml:Title ##### -->
|
|
|
|
Rendering
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### SECTION ./tmpl/xlib-from-drawables.sgml:Long_Description ##### -->
|
|
|
|
<para>
|
|
|
|
The functions in this section allow you to take the image data
|
|
|
|
from an X drawable and dump it into a #GdkPixbuf. This can be
|
|
|
|
used for screenshots and other special effects. Note that these
|
|
|
|
operations can be expensive, since the image data has to be
|
|
|
|
transferred from the X server to the client program and converted.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
These functions are analogous to those for the Gdk version of
|
|
|
|
&gdk-pixbuf;.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### SECTION ./tmpl/xlib-from-drawables.sgml:See_Also ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### SECTION ./tmpl/xlib-from-drawables.sgml:Short_Description ##### -->
|
|
|
|
Getting parts of an X drawable's image data into a pixbuf.
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### SECTION ./tmpl/xlib-from-drawables.sgml:Title ##### -->
|
|
|
|
X Drawables to Pixbufs
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### SECTION ./tmpl/xlib-init.sgml:Long_Description ##### -->
|
|
|
|
<para>
|
|
|
|
In addition to the normal Gdk-specific functions, the &gdk-pixbuf;
|
|
|
|
package provides a small library that lets Xlib-only applications
|
|
|
|
use #GdkPixbuf structures and render them to X drawables. The
|
|
|
|
functions in this section are used to initialize the &gdk-pixbuf;
|
|
|
|
Xlib library. This library must be initialized near the beginning
|
|
|
|
or the program or before calling any of the other &gdk-pixbuf;
|
|
|
|
Xlib functions; it cannot be initialized automatically since
|
|
|
|
Xlib-only applications do not call gdk_rgb_init() like GNOME
|
|
|
|
applications do.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### SECTION ./tmpl/xlib-init.sgml:See_Also ##### -->
|
|
|
|
<para>
|
|
|
|
XlibRGB
|
|
|
|
</para>
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### SECTION ./tmpl/xlib-init.sgml:Short_Description ##### -->
|
|
|
|
Initializing the &gdk-pixbuf; Xlib library.
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### SECTION ./tmpl/xlib-init.sgml:Title ##### -->
|
|
|
|
&gdk-pixbuf; Xlib initialization
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### SECTION ./tmpl/xlib-rendering.sgml:Long_Description ##### -->
|
|
|
|
<para>
|
|
|
|
The &gdk-pixbuf; Xlib library provides several convenience
|
|
|
|
functions to render pixbufs to X drawables. It uses XlibRGB to
|
|
|
|
render the image data.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
These functions are analogous to those for the Gdk version of
|
|
|
|
&gdk-pixbuf;.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### SECTION ./tmpl/xlib-rendering.sgml:See_Also ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### SECTION ./tmpl/xlib-rendering.sgml:Short_Description ##### -->
|
|
|
|
Rendering a pixbuf to an X drawable.
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### SECTION ./tmpl/xlib-rendering.sgml:Title ##### -->
|
|
|
|
Xlib Rendering
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### SECTION ./tmpl/xlib-rgb.sgml:Long_Description ##### -->
|
|
|
|
<para>
|
|
|
|
The XlibRGB set of functions is a port of the GdkRGB library to
|
|
|
|
use plain Xlib and X drawables. You can use these functions to
|
|
|
|
render RGB buffers into drawables very quickly with high-quality
|
|
|
|
dithering.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### SECTION ./tmpl/xlib-rgb.sgml:See_Also ##### -->
|
|
|
|
<para>
|
|
|
|
GdkRGB
|
|
|
|
</para>
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### SECTION ./tmpl/xlib-rgb.sgml:Short_Description ##### -->
|
|
|
|
Functions for rendering RGB buffers to X drawables.
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### SECTION ./tmpl/xlib-rgb.sgml:Title ##### -->
|
|
|
|
XlibRGB
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### MACRO GDK_PIXBUF_LOADER ##### -->
|
|
|
|
<para>
|
|
|
|
Casts a #GtkObject to a #GdkPixbufLoader.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@obj: A GTK+ object.
|
|
|
|
|
|
|
|
<!-- ##### MACRO GNOME_CANVAS_PIXBUF ##### -->
|
doh, this was broken beyond believe.
Tue Dec 12 23:46:44 2000 Tim Janik <timj@gtk.org>
* gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
* gtk/gtkbox.c: change property types from (u)long to (u)int for
::position and ::padding.
* gtk/gtkcontainer.c: make ::border_width an INT property.
* gtk/gtkpacker.c: make ::position an INT property.
* gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
guard against NULL h/v scrollbars, since this is used at construction
time.
* gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
internal gtk_clist_constructor().
* gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
gtk_ctree_constructor().
* gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
* docs/reference/Makefile.am: fun stuff, disabled docs generation
again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
* gtk/gtkwidget.[hc]:
removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
and gtk_widget_get().
(gtk_widget_new): use g_object_new_valist().
(gtk_widget_set): use g_object_set_valist().
* gtk/gtkobject.[hc]:
removed gtk_object_arg_get_info(), gtk_object_getv(),
gtk_object_query_args(), gtk_object_newv(),
gtk_object_class_add_signals(),
gtk_object_class_user_signal_new(),
gtk_object_class_user_signal_newv(),
gtk_object_arg_set(), gtk_object_arg_get(),
gtk_object_args_collect(),
gtk_object_default_construct(),
gtk_object_constructed(),
GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
removed nsignals, signals and n_args members from GtkObjectClass.
(gtk_object_new): use g_object_new_valist().
(gtk_object_set): use g_object_set_valist().
(gtk_object_get): use g_object_get_valist().
* gtk/gtkcompat.h: define gtk_object_default_construct().
* gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
g_object_new().
* gtk/*.c: removed gtk_object_class_add_signals() from class_init()
fucntions, cleaned up method assignments (make sure your structures
are setup properly before calling out). removed all GTK_CONSTRUCTED
hacks ;)
2000-12-13 01:34:41 +00:00
|
|
|
<para>
|
2001-02-12 17:50:13 +00:00
|
|
|
Casts a #GtkOjbect to a #GnomeCanvasPixbuf.
|
doh, this was broken beyond believe.
Tue Dec 12 23:46:44 2000 Tim Janik <timj@gtk.org>
* gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
* gtk/gtkbox.c: change property types from (u)long to (u)int for
::position and ::padding.
* gtk/gtkcontainer.c: make ::border_width an INT property.
* gtk/gtkpacker.c: make ::position an INT property.
* gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
guard against NULL h/v scrollbars, since this is used at construction
time.
* gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
internal gtk_clist_constructor().
* gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
gtk_ctree_constructor().
* gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
* docs/reference/Makefile.am: fun stuff, disabled docs generation
again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
* gtk/gtkwidget.[hc]:
removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
and gtk_widget_get().
(gtk_widget_new): use g_object_new_valist().
(gtk_widget_set): use g_object_set_valist().
* gtk/gtkobject.[hc]:
removed gtk_object_arg_get_info(), gtk_object_getv(),
gtk_object_query_args(), gtk_object_newv(),
gtk_object_class_add_signals(),
gtk_object_class_user_signal_new(),
gtk_object_class_user_signal_newv(),
gtk_object_arg_set(), gtk_object_arg_get(),
gtk_object_args_collect(),
gtk_object_default_construct(),
gtk_object_constructed(),
GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
removed nsignals, signals and n_args members from GtkObjectClass.
(gtk_object_new): use g_object_new_valist().
(gtk_object_set): use g_object_set_valist().
(gtk_object_get): use g_object_get_valist().
* gtk/gtkcompat.h: define gtk_object_default_construct().
* gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
g_object_new().
* gtk/*.c: removed gtk_object_class_add_signals() from class_init()
fucntions, cleaned up method assignments (make sure your structures
are setup properly before calling out). removed all GTK_CONSTRUCTED
hacks ;)
2000-12-13 01:34:41 +00:00
|
|
|
</para>
|
2000-10-29 08:03:34 +00:00
|
|
|
|
2001-02-12 17:50:13 +00:00
|
|
|
@obj: A GTK+ object.
|
2000-10-29 08:03:34 +00:00
|
|
|
|
2001-02-12 17:50:13 +00:00
|
|
|
<!-- ##### USER_FUNCTION GdkPixbufLastUnref ##### -->
|
2000-10-09 17:22:20 +00:00
|
|
|
<para>
|
2001-02-12 17:50:13 +00:00
|
|
|
A function of this type can be used to override the default
|
|
|
|
operation when a pixbuf loses its last reference, i.e. when
|
|
|
|
gdk_pixbuf_unref() is called on a #GdkPixbuf structure that has a
|
|
|
|
reference count of 1. This function should determine whether to
|
|
|
|
finalize the pixbuf by calling gdk_pixbuf_finalize(), or whether
|
|
|
|
to just resume normal execution. The last unref handler for a
|
|
|
|
#GdkPixbuf can be set using the
|
|
|
|
gdk_pixbuf_set_last_unref_handler() function. By default, pixbufs
|
|
|
|
will be finalized automatically if no last unref handler has been
|
|
|
|
defined.
|
2000-10-09 17:22:20 +00:00
|
|
|
</para>
|
|
|
|
|
2001-02-12 17:50:13 +00:00
|
|
|
@pixbuf: The pixbuf that is losing its last reference.
|
|
|
|
@data: User closure data.
|
2000-10-09 17:22:20 +00:00
|
|
|
|
2001-02-12 17:50:13 +00:00
|
|
|
<!-- ##### ARG GnomeCanvasPixbuf:height ##### -->
|
|
|
|
<para>
|
|
|
|
Indicates the height the pixbuf will be scaled to. This argument
|
|
|
|
will only be used if the <link
|
|
|
|
linkend="GnomeCanvasPixbuf--height-set">height_set</link> argument
|
|
|
|
is %TRUE. Works in the same way as the <link
|
|
|
|
linkend="GnomeCanvasPixbuf--width">width</link> argument.
|
|
|
|
</para>
|
2000-10-29 08:03:34 +00:00
|
|
|
|
2001-01-09 16:41:17 +00:00
|
|
|
|
2001-02-12 17:50:13 +00:00
|
|
|
<!-- ##### ARG GnomeCanvasPixbuf:height-in-pixels ##### -->
|
|
|
|
<para>
|
|
|
|
Works in the same way as the <link
|
|
|
|
linkend="GnomeCanvasPixbuf--width-in-pixels">width_in_pixels</link>
|
|
|
|
argument. The default is %FALSE.
|
|
|
|
</para>
|
2001-01-09 16:41:17 +00:00
|
|
|
|
|
|
|
|
2001-02-12 17:50:13 +00:00
|
|
|
<!-- ##### ARG GnomeCanvasPixbuf:height-pixels ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
2001-01-09 16:41:17 +00:00
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### ARG GnomeCanvasPixbuf:height-set ##### -->
|
doh, this was broken beyond believe.
Tue Dec 12 23:46:44 2000 Tim Janik <timj@gtk.org>
* gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
* gtk/gtkbox.c: change property types from (u)long to (u)int for
::position and ::padding.
* gtk/gtkcontainer.c: make ::border_width an INT property.
* gtk/gtkpacker.c: make ::position an INT property.
* gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
guard against NULL h/v scrollbars, since this is used at construction
time.
* gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
internal gtk_clist_constructor().
* gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
gtk_ctree_constructor().
* gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
* docs/reference/Makefile.am: fun stuff, disabled docs generation
again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
* gtk/gtkwidget.[hc]:
removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
and gtk_widget_get().
(gtk_widget_new): use g_object_new_valist().
(gtk_widget_set): use g_object_set_valist().
* gtk/gtkobject.[hc]:
removed gtk_object_arg_get_info(), gtk_object_getv(),
gtk_object_query_args(), gtk_object_newv(),
gtk_object_class_add_signals(),
gtk_object_class_user_signal_new(),
gtk_object_class_user_signal_newv(),
gtk_object_arg_set(), gtk_object_arg_get(),
gtk_object_args_collect(),
gtk_object_default_construct(),
gtk_object_constructed(),
GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
removed nsignals, signals and n_args members from GtkObjectClass.
(gtk_object_new): use g_object_new_valist().
(gtk_object_set): use g_object_set_valist().
(gtk_object_get): use g_object_get_valist().
* gtk/gtkcompat.h: define gtk_object_default_construct().
* gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
g_object_new().
* gtk/*.c: removed gtk_object_class_add_signals() from class_init()
fucntions, cleaned up method assignments (make sure your structures
are setup properly before calling out). removed all GTK_CONSTRUCTED
hacks ;)
2000-12-13 01:34:41 +00:00
|
|
|
<para>
|
2001-01-09 16:41:17 +00:00
|
|
|
Determines whether the <link
|
|
|
|
linkend="GnomeCanvasPixbuf--height">height</link> argument is
|
|
|
|
taken into account when scaling the pixbuf item. Works in the
|
|
|
|
same way as the <link
|
|
|
|
linkend="GnomeCanvasPixbuf--width-set">width_set</link> argument.
|
|
|
|
The default is %FALSE.
|
doh, this was broken beyond believe.
Tue Dec 12 23:46:44 2000 Tim Janik <timj@gtk.org>
* gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
* gtk/gtkbox.c: change property types from (u)long to (u)int for
::position and ::padding.
* gtk/gtkcontainer.c: make ::border_width an INT property.
* gtk/gtkpacker.c: make ::position an INT property.
* gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
guard against NULL h/v scrollbars, since this is used at construction
time.
* gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
internal gtk_clist_constructor().
* gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
gtk_ctree_constructor().
* gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
* docs/reference/Makefile.am: fun stuff, disabled docs generation
again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
* gtk/gtkwidget.[hc]:
removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
and gtk_widget_get().
(gtk_widget_new): use g_object_new_valist().
(gtk_widget_set): use g_object_set_valist().
* gtk/gtkobject.[hc]:
removed gtk_object_arg_get_info(), gtk_object_getv(),
gtk_object_query_args(), gtk_object_newv(),
gtk_object_class_add_signals(),
gtk_object_class_user_signal_new(),
gtk_object_class_user_signal_newv(),
gtk_object_arg_set(), gtk_object_arg_get(),
gtk_object_args_collect(),
gtk_object_default_construct(),
gtk_object_constructed(),
GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
removed nsignals, signals and n_args members from GtkObjectClass.
(gtk_object_new): use g_object_new_valist().
(gtk_object_set): use g_object_set_valist().
(gtk_object_get): use g_object_get_valist().
* gtk/gtkcompat.h: define gtk_object_default_construct().
* gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
g_object_new().
* gtk/*.c: removed gtk_object_class_add_signals() from class_init()
fucntions, cleaned up method assignments (make sure your structures
are setup properly before calling out). removed all GTK_CONSTRUCTED
hacks ;)
2000-12-13 01:34:41 +00:00
|
|
|
</para>
|
|
|
|
|
|
|
|
|
2001-02-12 17:50:13 +00:00
|
|
|
<!-- ##### ARG GnomeCanvasPixbuf:pixbuf ##### -->
|
|
|
|
<para>
|
|
|
|
Contains a pointer to a #GdkPixbuf structure that will be used by
|
|
|
|
the pixbuf canvas item as an image source. When a pixbuf is set
|
|
|
|
its reference count is incremented; if the pixbuf item kept a
|
|
|
|
pointer to another #GdkPixbuf structure, the reference count of
|
|
|
|
this structure will be decremented. Also, the GdkPixbuf's
|
|
|
|
reference count will automatically be decremented when the
|
|
|
|
#GnomeCanvasPixbuf item is destroyed. When a pixbuf is queried, a
|
|
|
|
reference count will not be added to the return value; you must do
|
|
|
|
this yourself if you intend to keep the pixbuf structure around.
|
|
|
|
</para>
|
2000-10-29 08:03:34 +00:00
|
|
|
|
|
|
|
|
2001-02-12 17:50:13 +00:00
|
|
|
<!-- ##### ARG GnomeCanvasPixbuf:width ##### -->
|
|
|
|
<para>
|
|
|
|
Indicates the width the pixbuf will be scaled to. This argument
|
|
|
|
will only be used if the <link
|
|
|
|
linkend="GnomeCanvasPixbuf--width-set">width_set</link> argument
|
|
|
|
is %TRUE. If the <link
|
|
|
|
linkend="GnomeCanvasPixbuf--width-in-pixels">width_in_pixels</link>
|
|
|
|
argument is %FALSE, the width will be taken to be in canvas units,
|
|
|
|
and thus will be scaled along with the canvas item's affine
|
|
|
|
transformation. If width_in_pixels is %TRUE, the width will be
|
|
|
|
taken to be in pixels, and will visually remain a constant size
|
|
|
|
even if the item's affine transformation changes.
|
|
|
|
</para>
|
2000-10-29 08:03:34 +00:00
|
|
|
|
2001-01-09 16:41:17 +00:00
|
|
|
|
|
|
|
<!-- ##### ARG GnomeCanvasPixbuf:width-in-pixels ##### -->
|
|
|
|
<para>
|
|
|
|
If this argument is %TRUE, then the width of the pixbuf will be
|
|
|
|
considered to be in pixels, that is, it will not be visually
|
|
|
|
scaled even if the item's affine transformation changes. If this
|
|
|
|
is %FALSE, then the width of the pixbuf will be considered to be
|
|
|
|
in canvas units, and so will be scaled normally by affine
|
|
|
|
transformations. The default is %FALSE.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
|
2001-02-12 17:50:13 +00:00
|
|
|
<!-- ##### ARG GnomeCanvasPixbuf:width-pixels ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### ARG GnomeCanvasPixbuf:width-set ##### -->
|
2001-01-09 16:41:17 +00:00
|
|
|
<para>
|
2001-02-12 17:50:13 +00:00
|
|
|
Determines whether the <link
|
|
|
|
linkend="GnomeCanvasPixbuf--width">width</link> argument is taken
|
|
|
|
into account when scaling the pixbuf item. If this argument is
|
|
|
|
%FALSE, then the width value of the pixbuf will be used instead.
|
|
|
|
This argument is %FALSE by default.
|
2001-01-09 16:41:17 +00:00
|
|
|
</para>
|
|
|
|
|
|
|
|
|
2001-02-12 17:50:13 +00:00
|
|
|
<!-- ##### ARG GnomeCanvasPixbuf:x ##### -->
|
2001-01-09 16:41:17 +00:00
|
|
|
<para>
|
2001-02-12 17:50:13 +00:00
|
|
|
Indicates the horizontal translation offset of the pixbuf item's
|
|
|
|
image. This offset may not actually appear horizontal, since it
|
|
|
|
will be affected by the item's affine transformation. The default
|
|
|
|
is 0.0.
|
2001-01-09 16:41:17 +00:00
|
|
|
</para>
|
|
|
|
|
|
|
|
|
2001-02-12 17:50:13 +00:00
|
|
|
<!-- ##### ARG GnomeCanvasPixbuf:x-in-pixels ##### -->
|
2001-01-09 16:41:17 +00:00
|
|
|
<para>
|
2001-02-12 17:50:13 +00:00
|
|
|
If this argument is %TRUE, the pixbuf's translation with respect
|
|
|
|
to its logical origin in item-relative coordinates will be in
|
|
|
|
pixels, that is, the visible offset will not change even if the
|
|
|
|
item's affine transformation changes. If it is %FALSE, the
|
|
|
|
pixbuf's translation will be taken to be in canvas units, and thus
|
|
|
|
will change along with the item's affine transformation. The
|
|
|
|
default is %FALSE.
|
2001-01-09 16:41:17 +00:00
|
|
|
</para>
|
|
|
|
|
|
|
|
|
2001-02-12 17:50:13 +00:00
|
|
|
<!-- ##### ARG GnomeCanvasPixbuf:x-pixels ##### -->
|
2000-10-29 08:03:34 +00:00
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
|
2001-02-12 17:50:13 +00:00
|
|
|
<!-- ##### ARG GnomeCanvasPixbuf:x-set ##### -->
|
|
|
|
<para>
|
|
|
|
Determines whether the <link
|
|
|
|
linkend="GnomeCanvasPixbuf--x">x</link> argument is used to
|
|
|
|
translate the pixbuf from its logical origin in item-relative
|
|
|
|
coordinates.
|
|
|
|
</para>
|
doh, this was broken beyond believe.
Tue Dec 12 23:46:44 2000 Tim Janik <timj@gtk.org>
* gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
* gtk/gtkbox.c: change property types from (u)long to (u)int for
::position and ::padding.
* gtk/gtkcontainer.c: make ::border_width an INT property.
* gtk/gtkpacker.c: make ::position an INT property.
* gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
guard against NULL h/v scrollbars, since this is used at construction
time.
* gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
internal gtk_clist_constructor().
* gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
gtk_ctree_constructor().
* gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
* docs/reference/Makefile.am: fun stuff, disabled docs generation
again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
* gtk/gtkwidget.[hc]:
removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
and gtk_widget_get().
(gtk_widget_new): use g_object_new_valist().
(gtk_widget_set): use g_object_set_valist().
* gtk/gtkobject.[hc]:
removed gtk_object_arg_get_info(), gtk_object_getv(),
gtk_object_query_args(), gtk_object_newv(),
gtk_object_class_add_signals(),
gtk_object_class_user_signal_new(),
gtk_object_class_user_signal_newv(),
gtk_object_arg_set(), gtk_object_arg_get(),
gtk_object_args_collect(),
gtk_object_default_construct(),
gtk_object_constructed(),
GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
removed nsignals, signals and n_args members from GtkObjectClass.
(gtk_object_new): use g_object_new_valist().
(gtk_object_set): use g_object_set_valist().
(gtk_object_get): use g_object_get_valist().
* gtk/gtkcompat.h: define gtk_object_default_construct().
* gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
g_object_new().
* gtk/*.c: removed gtk_object_class_add_signals() from class_init()
fucntions, cleaned up method assignments (make sure your structures
are setup properly before calling out). removed all GTK_CONSTRUCTED
hacks ;)
2000-12-13 01:34:41 +00:00
|
|
|
|
|
|
|
|
2001-02-12 17:50:13 +00:00
|
|
|
<!-- ##### ARG GnomeCanvasPixbuf:y ##### -->
|
|
|
|
<para>
|
|
|
|
Indicates the vertical translation offset of the pixbuf item's
|
|
|
|
image. Works in the same way as the <link
|
|
|
|
linkend="GnomeCanvasPixbuf--x">x</link> argument. The default is
|
|
|
|
0.0.
|
|
|
|
</para>
|
2000-10-29 08:03:34 +00:00
|
|
|
|
2001-01-09 16:41:17 +00:00
|
|
|
|
2001-02-12 17:50:13 +00:00
|
|
|
<!-- ##### ARG GnomeCanvasPixbuf:y-in-pixels ##### -->
|
|
|
|
<para>
|
|
|
|
Works in the same way as the <link
|
|
|
|
linkend="GnomeCanvasPixbuf--x-in-pixels">x_in_pixels</link>
|
|
|
|
argument, but controls whether the <link
|
|
|
|
linkend="GnomeCanvasPixbuf--y">y</link> translation offset is
|
|
|
|
scaled or not. The default is %FALSE.
|
|
|
|
</para>
|
2001-01-09 16:41:17 +00:00
|
|
|
|
2001-02-12 17:50:13 +00:00
|
|
|
<!--
|
|
|
|
Local variables:
|
|
|
|
mode: sgml
|
|
|
|
sgml-parent-document: ("../gdk-pixbuf.sgml" "book" "refsect2" "")
|
|
|
|
End:
|
|
|
|
-->
|
2001-01-09 16:41:17 +00:00
|
|
|
|
|
|
|
|
2001-02-12 17:50:13 +00:00
|
|
|
<!-- ##### ARG GnomeCanvasPixbuf:y-pixels ##### -->
|
|
|
|
<para>
|
2000-10-29 08:03:34 +00:00
|
|
|
|
2001-02-12 17:50:13 +00:00
|
|
|
</para>
|
2000-10-29 08:03:34 +00:00
|
|
|
|
|
|
|
|
2001-02-12 17:50:13 +00:00
|
|
|
<!-- ##### ARG GnomeCanvasPixbuf:y-set ##### -->
|
2001-01-09 16:41:17 +00:00
|
|
|
<para>
|
2001-02-12 17:50:13 +00:00
|
|
|
Determines whether the <link
|
|
|
|
linkend="GnomeCanvasPixbuf--y">y</link> argument is used to
|
|
|
|
translate the pixbuf from its logical origin in item-relative
|
|
|
|
coordinates. Works in the same way as the <link
|
|
|
|
linkend="GnomeCanvasPixbuf--x-set">x_set</link> argument. The
|
|
|
|
default is %FALSE.
|
2001-01-09 16:41:17 +00:00
|
|
|
</para>
|
2000-10-29 08:03:34 +00:00
|
|
|
|
2000-10-09 17:22:20 +00:00
|
|
|
|