~ubuntu-branches/ubuntu/breezy/libgnomecanvas/breezy

« back to all changes in this revision

Viewing changes to docs/reference/html/GnomeCanvas.html

  • Committer: Bazaar Package Importer
  • Author(s): Sebastien Bacher
  • Date: 2004-09-13 22:40:39 UTC
  • Revision ID: james.westby@ubuntu.com-20040913224039-giftt9jhvyoorcuv
Tags: upstream-2.8.0
Import upstream version 2.8.0

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>GnomeCanvas</title><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="index.html" title="GNOME Canvas Library Reference Manual"><link rel="up" href="ch02.html" title="GNOME Canvas Library (libgnomecanvas)"><link rel="previous" href="ch02.html" title="GNOME Canvas Library (libgnomecanvas)"><link rel="next" href="GnomeCanvasBpath.html" title="GnomeCanvasBpath"><link rel="chapter" href="ch01.html" title="Object Hierarchy"><link rel="chapter" href="ch02.html" title="GNOME Canvas Library (libgnomecanvas)"><link rel="refentry" href="GnomeCanvas.html" title="GnomeCanvas"><link rel="refentry" href="GnomeCanvasBpath.html" title="GnomeCanvasBpath"><link rel="refentry" href="GnomeCanvasClipgroup.html" title="GnomeCanvasClipgroup"><link rel="refentry" href="GnomeCanvasEllipse.html" title="GnomeCanvasEllipse"><link rel="refentry" href="GnomeCanvasGroup.html" title="GnomeCanvasGroup"><link rel="refentry" href="GnomeCanvasItem.html" title="GnomeCanvasItem"><link rel="refentry" href="GnomeCanvasLine.html" title="GnomeCanvasLine"><link rel="refentry" href="GnomeCanvasPixbuf.html" title="GnomeCanvasPixbuf"><link rel="refentry" href="GnomeCanvasPolygon.html" title="GnomeCanvasPolygon"><link rel="refentry" href="GnomeCanvasRE.html" title="GnomeCanvasRE"><link rel="refentry" href="GnomeCanvasRect.html" title="GnomeCanvasRect"><link rel="refentry" href="GnomeCanvasRichText.html" title="GnomeCanvasRichText"><link rel="refentry" href="GnomeCanvasShape.html" title="GnomeCanvasShape"><link rel="refentry" href="GnomeCanvasText.html" title="GnomeCanvasText"><link rel="refentry" href="GnomeCanvasWidget.html" title="GnomeCanvasWidget"><link rel="refentry" href="libgnomecanvas-gnome-canvas-path-def.html" title="gnome-canvas-path-def"><link rel="refentry" href="libgnomecanvas-gnome-canvas-util.html" title="gnome-canvas-util"><link rel="section" href="GnomeCanvas.html#id2971479" title="Object Hierarchy"><link rel="section" href="GnomeCanvas.html#id2971528" title="Implemented Interfaces"><link rel="section" href="GnomeCanvas.html#id2971547" title="Properties"><link rel="section" href="GnomeCanvas.html#id2971576" title="Signal Prototypes"><link rel="section" href="GnomeCanvas.html#id2971700" title="Description"><link rel="section" href="GnomeCanvas.html#id2972047" title="Details"><link rel="section" href="GnomeCanvas.html#id2975089" title="Properties"><link rel="section" href="GnomeCanvas.html#id2975161" title="Signals"><meta name="generator" content="GTK-Doc V1.2 (XML mode)"><link rel="stylesheet" href="style.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="ch02.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td><td><a accesskey="u" href="ch02.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td><td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td><th width="100%" align="center">GNOME Canvas Library Reference Manual</th><td><a accesskey="n" href="GnomeCanvasBpath.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td></tr></table><div class="refentry" lang="en"><a name="GnomeCanvas"></a><div class="titlepage"><div></div><div></div></div><div class="refnamediv"><h2><span class="refentrytitle">GnomeCanvas</span></h2><p>GnomeCanvas &#8212; Main canvas widget</p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><pre class="synopsis">
 
2
 
 
3
#include &lt;libgnomecanvas/libgnomecanvas.h&gt;
 
4
 
 
5
 
 
6
struct      <a href="GnomeCanvas.html#GnomeCanvas-struct">GnomeCanvas</a>;
 
7
#define     <a href="GnomeCanvas.html#GNOME-CANVAS-EPSILON-CAPS">GNOME_CANVAS_EPSILON</a>
 
8
#define     <a href="GnomeCanvas.html#GNOME-CANVAS-COLOR-CAPS">GNOME_CANVAS_COLOR</a>              (r, g, b)
 
9
#define     <a href="GnomeCanvas.html#GNOME-CANVAS-COLOR-A-CAPS">GNOME_CANVAS_COLOR_A</a>            (r, g, b, a)
 
10
struct      <a href="GnomeCanvas.html#GnomeCanvasBuf">GnomeCanvasBuf</a>;
 
11
GtkWidget*  <a href="GnomeCanvas.html#gnome-canvas-new">gnome_canvas_new</a>                (void);
 
12
GtkWidget*  <a href="GnomeCanvas.html#gnome-canvas-new-aa">gnome_canvas_new_aa</a>             (void);
 
13
<a href="GnomeCanvasGroup.html" title="GnomeCanvasGroup">GnomeCanvasGroup</a>* <a href="GnomeCanvas.html#gnome-canvas-root">gnome_canvas_root</a>         (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas);
 
14
void        <a href="GnomeCanvas.html#gnome-canvas-set-scroll-region">gnome_canvas_set_scroll_region</a>  (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas,
 
15
                                             double x1,
 
16
                                             double y1,
 
17
                                             double x2,
 
18
                                             double y2);
 
19
void        <a href="GnomeCanvas.html#gnome-canvas-get-scroll-region">gnome_canvas_get_scroll_region</a>  (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas,
 
20
                                             double *x1,
 
21
                                             double *y1,
 
22
                                             double *x2,
 
23
                                             double *y2);
 
24
void        <a href="GnomeCanvas.html#gnome-canvas-set-center-scroll-region">gnome_canvas_set_center_scroll_region</a>
 
25
                                            (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas,
 
26
                                             gboolean center_scroll_region);
 
27
gboolean    <a href="GnomeCanvas.html#gnome-canvas-get-center-scroll-region">gnome_canvas_get_center_scroll_region</a>
 
28
                                            (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas);
 
29
void        <a href="GnomeCanvas.html#gnome-canvas-set-pixels-per-unit">gnome_canvas_set_pixels_per_unit</a>
 
30
                                            (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas,
 
31
                                             double n);
 
32
void        <a href="GnomeCanvas.html#gnome-canvas-scroll-to">gnome_canvas_scroll_to</a>          (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas,
 
33
                                             int cx,
 
34
                                             int cy);
 
35
void        <a href="GnomeCanvas.html#gnome-canvas-get-scroll-offsets">gnome_canvas_get_scroll_offsets</a> (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas,
 
36
                                             int *cx,
 
37
                                             int *cy);
 
38
void        <a href="GnomeCanvas.html#gnome-canvas-update-now">gnome_canvas_update_now</a>         (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas);
 
39
<a href="GnomeCanvasItem.html" title="GnomeCanvasItem">GnomeCanvasItem</a>* <a href="GnomeCanvas.html#gnome-canvas-get-item-at">gnome_canvas_get_item_at</a>   (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas,
 
40
                                             double x,
 
41
                                             double y);
 
42
void        <a href="GnomeCanvas.html#gnome-canvas-request-redraw-uta">gnome_canvas_request_redraw_uta</a> (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas,
 
43
                                             ArtUta *uta);
 
44
void        <a href="GnomeCanvas.html#gnome-canvas-request-redraw">gnome_canvas_request_redraw</a>     (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas,
 
45
                                             int x1,
 
46
                                             int y1,
 
47
                                             int x2,
 
48
                                             int y2);
 
49
void        <a href="GnomeCanvas.html#gnome-canvas-w2c-affine">gnome_canvas_w2c_affine</a>         (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas,
 
50
                                             double affine[6]);
 
51
void        <a href="GnomeCanvas.html#gnome-canvas-w2c">gnome_canvas_w2c</a>                (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas,
 
52
                                             double wx,
 
53
                                             double wy,
 
54
                                             int *cx,
 
55
                                             int *cy);
 
56
void        <a href="GnomeCanvas.html#gnome-canvas-w2c-d">gnome_canvas_w2c_d</a>              (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas,
 
57
                                             double wx,
 
58
                                             double wy,
 
59
                                             double *cx,
 
60
                                             double *cy);
 
61
void        <a href="GnomeCanvas.html#gnome-canvas-c2w">gnome_canvas_c2w</a>                (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas,
 
62
                                             int cx,
 
63
                                             int cy,
 
64
                                             double *wx,
 
65
                                             double *wy);
 
66
void        <a href="GnomeCanvas.html#gnome-canvas-window-to-world">gnome_canvas_window_to_world</a>    (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas,
 
67
                                             double winx,
 
68
                                             double winy,
 
69
                                             double *worldx,
 
70
                                             double *worldy);
 
71
void        <a href="GnomeCanvas.html#gnome-canvas-world-to-window">gnome_canvas_world_to_window</a>    (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas,
 
72
                                             double worldx,
 
73
                                             double worldy,
 
74
                                             double *winx,
 
75
                                             double *winy);
 
76
int         <a href="GnomeCanvas.html#gnome-canvas-get-color">gnome_canvas_get_color</a>          (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas,
 
77
                                             const char *spec,
 
78
                                             GdkColor *color);
 
79
gulong      <a href="GnomeCanvas.html#gnome-canvas-get-color-pixel">gnome_canvas_get_color_pixel</a>    (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas,
 
80
                                             guint rgba);
 
81
void        <a href="GnomeCanvas.html#gnome-canvas-set-stipple-origin">gnome_canvas_set_stipple_origin</a> (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas,
 
82
                                             GdkGC *gc);
 
83
void        <a href="GnomeCanvas.html#gnome-canvas-set-dither">gnome_canvas_set_dither</a>         (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas,
 
84
                                             GdkRgbDither dither);
 
85
GdkRgbDither <a href="GnomeCanvas.html#gnome-canvas-get-dither">gnome_canvas_get_dither</a>        (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas);
 
86
 
 
87
</pre></div><div class="refsect1" lang="en"><a name="id2971479"></a><h2>Object Hierarchy</h2><pre class="synopsis">
 
88
 
 
89
  GObject
 
90
   +----GtkObject
 
91
         +----GtkWidget
 
92
               +----GtkContainer
 
93
                     +----GtkLayout
 
94
                           +----GnomeCanvas
 
95
</pre></div><div class="refsect1" lang="en"><a name="id2971528"></a><h2>Implemented Interfaces</h2><p>
 
96
GnomeCanvas implements
 
97
 AtkImplementorIface.</p></div><div class="refsect1" lang="en"><a name="id2971547"></a><h2>Properties</h2><pre class="synopsis">
 
98
 
 
99
  "<a href="GnomeCanvas.html#GnomeCanvas--aa">aa</a>"                   gboolean              : Read / Write / Construct Only
 
100
</pre></div><div class="refsect1" lang="en"><a name="id2971576"></a><h2>Signal Prototypes</h2><pre class="synopsis">
 
101
 
 
102
"<a href="GnomeCanvas.html#GnomeCanvas-draw-background">draw-background</a>"
 
103
            void        user_function      (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas,
 
104
                                            GdkDrawable *arg1,
 
105
                                            gint arg2,
 
106
                                            gint arg3,
 
107
                                            gint arg4,
 
108
                                            gint arg5,
 
109
                                            gpointer user_data);
 
110
"<a href="GnomeCanvas.html#GnomeCanvas-render-background">render-background</a>"
 
111
            void        user_function      (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas,
 
112
                                            gpointer arg1,
 
113
                                            gpointer user_data);
 
114
</pre></div><div class="refsect1" lang="en"><a name="id2971700"></a><h2>Description</h2><p>
 
115
The <a href="GnomeCanvas.html" title="GnomeCanvas"><span class="type">GnomeCanvas</span></a> is an engine for structured graphics that offers a
 
116
rich imaging model, high performance rendering, and a powerful,
 
117
high level API. It offers a choice of two rendering back-ends,
 
118
one based on Xlib for extremely fast display, and another based on
 
119
Libart, a sophisticated, antialiased, alpha-compositing engine.
 
120
This widget can be used for flexible display of graphics and for
 
121
creating interactive user interface elements.
 
122
</p><p>
 
123
To create a new <a href="GnomeCanvas.html" title="GnomeCanvas"><span class="type">GnomeCanvas</span></a> widget call <a href="GnomeCanvas.html#gnome-canvas-new"><tt class="function">gnome_canvas_new()</tt></a> or
 
124
<a href="GnomeCanvas.html#gnome-canvas-new-aa"><tt class="function">gnome_canvas_new_aa()</tt></a> for an anti-aliased mode canvas.
 
125
</p><p>
 
126
A <a href="GnomeCanvas.html" title="GnomeCanvas"><span class="type">GnomeCanvas</span></a> widget contains one or more <a href="GnomeCanvasItem.html" title="GnomeCanvasItem"><span class="type">GnomeCanvasItem</span></a>
 
127
objects. Items consist of graphing elements like lines, ellipses,
 
128
polygons, images, text, and curves. These items are organized using
 
129
<a href="GnomeCanvasGroup.html" title="GnomeCanvasGroup"><span class="type">GnomeCanvasGroup</span></a> objects, which are themselves derived from
 
130
<a href="GnomeCanvasItem.html" title="GnomeCanvasItem"><span class="type">GnomeCanvasItem</span></a>. Since a group is an item it can be contained within
 
131
other groups, forming a tree of canvas items. Certain operations, like
 
132
translating and scaling, can be performed on all items in a group.
 
133
</p><p>
 
134
There is a special root group created by a <a href="GnomeCanvas.html" title="GnomeCanvas"><span class="type">GnomeCanvas</span></a>. This is the top
 
135
level group under which all items in a canvas are contained. To get the root
 
136
group from a canvas call <a href="GnomeCanvas.html#gnome-canvas-root"><tt class="function">gnome_canvas_root()</tt></a>.
 
137
</p><p>
 
138
There are several different coordinate systems used by <a href="GnomeCanvas.html" title="GnomeCanvas"><span class="type">GnomeCanvas</span></a>
 
139
widgets. The primary system is a logical, abstract coordinate space
 
140
called world coordinates. World coordinates are expressed as unbounded
 
141
double floating point numbers. When it comes to rendering to a screen
 
142
the canvas pixel coordinate system (also referred to as just canvas
 
143
coordinates) is used. This system uses integers to specify screen
 
144
pixel positions. A user defined scaling factor and offset are used to
 
145
convert between world coordinates and canvas coordinates. Each item in
 
146
a canvas has its own coordinate system called item coordinates. This
 
147
system is specified in world coordinates but they are relative to an
 
148
item (0.0, 0.0 would be the top left corner of the item). The final
 
149
coordinate system of interest is window coordinates. These are like
 
150
canvas coordinates but are offsets from within a window a canvas is
 
151
displayed in. This last system is rarely used, but is useful when
 
152
manually handling GDK events (such as drag and drop) which are 
 
153
specified in window coordinates (the events processed by the canvas
 
154
are already converted for you).
 
155
</p><p>
 
156
Along with different coordinate systems comes functions to convert
 
157
between them. <a href="GnomeCanvas.html#gnome-canvas-w2c"><tt class="function">gnome_canvas_w2c()</tt></a> converts world to canvas pixel
 
158
coordinates and <a href="GnomeCanvas.html#gnome-canvas-c2w"><tt class="function">gnome_canvas_c2w()</tt></a> converts from canvas to
 
159
world. <a href="GnomeCanvas.html#gnome-canvas-w2c-d"><tt class="function">gnome_canvas_w2c_d()</tt></a> is like <a href="GnomeCanvas.html#gnome-canvas-w2c"><tt class="function">gnome_canvas_w2c()</tt></a> but returns the
 
160
pixel coordinates as doubles which is useful to avoid precision loss
 
161
from integer rounding. To get the affine transform matrix for converting
 
162
from world coordinates to canvas coordinates call <a href="GnomeCanvas.html#gnome-canvas-w2c-affine"><tt class="function">gnome_canvas_w2c_affine()</tt></a>.
 
163
<a href="GnomeCanvas.html#gnome-canvas-window-to-world"><tt class="function">gnome_canvas_window_to_world()</tt></a> converts from window to world
 
164
coordinates and <a href="GnomeCanvas.html#gnome-canvas-world-to-window"><tt class="function">gnome_canvas_world_to_window()</tt></a> converts in the other
 
165
direction. There are no functions for converting between canvas and
 
166
window coordinates, since this is just a matter of subtracting the
 
167
canvas scrolling offset. To convert to/from item coordinates use the
 
168
functions defined for <a href="GnomeCanvasItem.html" title="GnomeCanvasItem"><span class="type">GnomeCanvasItem</span></a> objects.
 
169
</p><p>
 
170
To set the canvas zoom factor (canvas pixels per world unit, the
 
171
scaling factor) call <a href="GnomeCanvas.html#gnome-canvas-set-pixels-per-unit"><tt class="function">gnome_canvas_set_pixels_per_unit()</tt></a>, setting this
 
172
to 1.0 will cause the two coordinate systems to correspond (e.g., [5, 6]
 
173
in pixel units would be [5.0, 6.0] in world units).
 
174
</p><p>
 
175
Defining the scrollable area of a canvas widget is done by calling
 
176
<a href="GnomeCanvas.html#gnome-canvas-set-scroll-region"><tt class="function">gnome_canvas_set_scroll_region()</tt></a> and to get the current region
 
177
<a href="GnomeCanvas.html#gnome-canvas-get-scroll-region"><tt class="function">gnome_canvas_get_scroll_region()</tt></a> can be used. If the window is
 
178
larger than the canvas scrolling region it can optionally be centered
 
179
in the window.  Use <a href="GnomeCanvas.html#gnome-canvas-set-center-scroll-region"><tt class="function">gnome_canvas_set_center_scroll_region()</tt></a> to enable or
 
180
disable this behavior. To scroll to a particular canvas pixel coordinate
 
181
use <a href="GnomeCanvas.html#gnome-canvas-scroll-to"><tt class="function">gnome_canvas_scroll_to()</tt></a> (typically not used since scrollbars are
 
182
usually set up to handle the scrolling), and to get the current canvas pixel
 
183
scroll offset call <a href="GnomeCanvas.html#gnome-canvas-get-scroll-offsets"><tt class="function">gnome_canvas_get_scroll_offsets()</tt></a>.
 
184
</p></div><div class="refsect1" lang="en"><a name="id2972047"></a><h2>Details</h2><div class="refsect2" lang="en"><a name="id2972052"></a><h3><a name="GnomeCanvas-struct"></a>struct GnomeCanvas</h3><a class="indexterm" name="id2972063"></a><pre class="programlisting">struct GnomeCanvas;</pre><p>
 
185
This should not be accessed directly. Use the accessor functions as described
 
186
below.
 
187
</p></div><hr><div class="refsect2" lang="en"><a name="id2972079"></a><h3><a name="GNOME-CANVAS-EPSILON-CAPS"></a>GNOME_CANVAS_EPSILON</h3><a class="indexterm" name="id2972090"></a><pre class="programlisting">#define GNOME_CANVAS_EPSILON 1e-10
 
188
</pre><p>
 
189
A tiny value used by internal canvas operations.
 
190
</p></div><hr><div class="refsect2" lang="en"><a name="id2972107"></a><h3><a name="GNOME-CANVAS-COLOR-CAPS"></a>GNOME_CANVAS_COLOR()</h3><a class="indexterm" name="id2972118"></a><pre class="programlisting">#define     GNOME_CANVAS_COLOR(r, g, b)</pre><p>
 
191
Macro for creating a canvas 32 bit RGBA color from red, green and blue
 
192
components.
 
193
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i class="parameter"><tt>r</tt></i>�:</span></td><td>Red value (0-255)
 
194
</td></tr><tr><td><span class="term"><i class="parameter"><tt>g</tt></i>�:</span></td><td>Green value (0-255)
 
195
</td></tr><tr><td><span class="term"><i class="parameter"><tt>b</tt></i>�:</span></td><td>Blue value (0-255)
 
196
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>A 32 bit integer of the format 0xRRGGBBAA with the alpha "AA"
 
197
component set to 0xFF (fully visible, no transparency) and the other bytes
 
198
set to the input parameters.
 
199
 
 
200
 
 
201
</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id2972199"></a><h3><a name="GNOME-CANVAS-COLOR-A-CAPS"></a>GNOME_CANVAS_COLOR_A()</h3><a class="indexterm" name="id2972210"></a><pre class="programlisting">#define     GNOME_CANVAS_COLOR_A(r, g, b, a)</pre><p>
 
202
Macro for creating a canvas 32 bit RGBA color from red, green, blue and
 
203
alpha components.
 
204
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i class="parameter"><tt>r</tt></i>�:</span></td><td>Red value (0-255)
 
205
</td></tr><tr><td><span class="term"><i class="parameter"><tt>g</tt></i>�:</span></td><td>Green value (0-255)
 
206
</td></tr><tr><td><span class="term"><i class="parameter"><tt>b</tt></i>�:</span></td><td>Blue value (0-255)
 
207
</td></tr><tr><td><span class="term"><i class="parameter"><tt>a</tt></i>�:</span></td><td>Alpha value (0-255, 0=completely transparent, 255=opaque)
 
208
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>A 32 bit integer of the format 0xRRGGBBAA created from the input
 
209
parameters.
 
210
 
 
211
 
 
212
</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id2972296"></a><h3><a name="GnomeCanvasBuf"></a>struct GnomeCanvasBuf</h3><a class="indexterm" name="id2972308"></a><pre class="programlisting">struct GnomeCanvasBuf {
 
213
 
 
214
        /* 24-bit RGB buffer for rendering */
 
215
        guchar *buf;
 
216
 
 
217
        /* Rectangle describing the rendering area */
 
218
        ArtIRect rect;
 
219
 
 
220
        /* Rowstride for the buffer */
 
221
        int buf_rowstride;
 
222
 
 
223
        /* Background color, given as 0xrrggbb */
 
224
        guint32 bg_color;
 
225
 
 
226
        /* Invariant: at least one of the following flags is true. */
 
227
 
 
228
        /* Set when the render rectangle area is the solid color bg_color */
 
229
        unsigned int is_bg : 1;
 
230
 
 
231
        /* Set when the render rectangle area is represented by the buf */
 
232
        unsigned int is_buf : 1;
 
233
};
 
234
</pre><p>
 
235
A buffer used for rendering for antialiased mode canvas widgets.
 
236
</p></div><hr><div class="refsect2" lang="en"><a name="id2972331"></a><h3><a name="gnome-canvas-new"></a>gnome_canvas_new ()</h3><a class="indexterm" name="id2972340"></a><pre class="programlisting">GtkWidget*  gnome_canvas_new                (void);</pre><p>
 
237
Creates a new empty canvas in non-antialiased mode.</p><p>
 
238
 
 
239
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td> A newly-created canvas.
 
240
</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id2972381"></a><h3><a name="gnome-canvas-new-aa"></a>gnome_canvas_new_aa ()</h3><a class="indexterm" name="id2972392"></a><pre class="programlisting">GtkWidget*  gnome_canvas_new_aa             (void);</pre><p>
 
241
Creates a new empty canvas in antialiased mode.</p><p>
 
242
 
 
243
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td> A newly-created antialiased canvas.
 
244
</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id2972432"></a><h3><a name="gnome-canvas-root"></a>gnome_canvas_root ()</h3><a class="indexterm" name="id2972443"></a><pre class="programlisting"><a href="GnomeCanvasGroup.html" title="GnomeCanvasGroup">GnomeCanvasGroup</a>* gnome_canvas_root         (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas);</pre><p>
 
245
Queries the root group of a canvas.</p><p>
 
246
 
 
247
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i class="parameter"><tt>canvas</tt></i>�:</span></td><td> A canvas.
 
248
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td> The root group of the specified canvas.
 
249
</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id2972503"></a><h3><a name="gnome-canvas-set-scroll-region"></a>gnome_canvas_set_scroll_region ()</h3><a class="indexterm" name="id2972515"></a><pre class="programlisting">void        gnome_canvas_set_scroll_region  (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas,
 
250
                                             double x1,
 
251
                                             double y1,
 
252
                                             double x2,
 
253
                                             double y2);</pre><p>
 
254
Sets the scrolling region of a canvas to the specified rectangle.  The canvas
 
255
will then be able to scroll only within this region.  The view of the canvas
 
256
is adjusted as appropriate to display as much of the new region as possible.</p><p>
 
257
 
 
258
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i class="parameter"><tt>canvas</tt></i>�:</span></td><td> A canvas.
 
259
</td></tr><tr><td><span class="term"><i class="parameter"><tt>x1</tt></i>�:</span></td><td> Leftmost limit of the scrolling region.
 
260
</td></tr><tr><td><span class="term"><i class="parameter"><tt>y1</tt></i>�:</span></td><td> Upper limit of the scrolling region.
 
261
</td></tr><tr><td><span class="term"><i class="parameter"><tt>x2</tt></i>�:</span></td><td> Rightmost limit of the scrolling region.
 
262
</td></tr><tr><td><span class="term"><i class="parameter"><tt>y2</tt></i>�:</span></td><td> Lower limit of the scrolling region.
 
263
</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id2972656"></a><h3><a name="gnome-canvas-get-scroll-region"></a>gnome_canvas_get_scroll_region ()</h3><a class="indexterm" name="id2972668"></a><pre class="programlisting">void        gnome_canvas_get_scroll_region  (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas,
 
264
                                             double *x1,
 
265
                                             double *y1,
 
266
                                             double *x2,
 
267
                                             double *y2);</pre><p>
 
268
Queries the scrolling region of a canvas.</p><p>
 
269
 
 
270
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i class="parameter"><tt>canvas</tt></i>�:</span></td><td> A canvas.
 
271
</td></tr><tr><td><span class="term"><i class="parameter"><tt>x1</tt></i>�:</span></td><td> Leftmost limit of the scrolling region (return value).
 
272
</td></tr><tr><td><span class="term"><i class="parameter"><tt>y1</tt></i>�:</span></td><td> Upper limit of the scrolling region (return value).
 
273
</td></tr><tr><td><span class="term"><i class="parameter"><tt>x2</tt></i>�:</span></td><td> Rightmost limit of the scrolling region (return value).
 
274
</td></tr><tr><td><span class="term"><i class="parameter"><tt>y2</tt></i>�:</span></td><td> Lower limit of the scrolling region (return value).
 
275
</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id2972806"></a><h3><a name="gnome-canvas-set-center-scroll-region"></a>gnome_canvas_set_center_scroll_region ()</h3><a class="indexterm" name="id2972818"></a><pre class="programlisting">void        gnome_canvas_set_center_scroll_region
 
276
                                            (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas,
 
277
                                             gboolean center_scroll_region);</pre><p>
 
278
When the scrolling region of the canvas is smaller than the canvas window,
 
279
e.g.  the allocation of the canvas, it can be either centered on the window
 
280
or simply made to be on the upper-left corner on the window.  This function
 
281
lets you configure this property.</p><p>
 
282
 
 
283
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i class="parameter"><tt>canvas</tt></i>�:</span></td><td> A canvas.
 
284
</td></tr><tr><td><span class="term"><i class="parameter"><tt>center_scroll_region</tt></i>�:</span></td><td> Whether to center the scrolling region in the canvas
 
285
window when it is smaller than the canvas' allocation.
 
286
</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id2972897"></a><h3><a name="gnome-canvas-get-center-scroll-region"></a>gnome_canvas_get_center_scroll_region ()</h3><a class="indexterm" name="id2972909"></a><pre class="programlisting">gboolean    gnome_canvas_get_center_scroll_region
 
287
                                            (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas);</pre><p>
 
288
Returns whether the canvas is set to center the scrolling region in the window
 
289
if the former is smaller than the canvas' allocation.</p><p>
 
290
 
 
291
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i class="parameter"><tt>canvas</tt></i>�:</span></td><td> A canvas.
 
292
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td> Whether the scroll region is being centered in the canvas window.
 
293
</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id2972973"></a><h3><a name="gnome-canvas-set-pixels-per-unit"></a>gnome_canvas_set_pixels_per_unit ()</h3><a class="indexterm" name="id2972984"></a><pre class="programlisting">void        gnome_canvas_set_pixels_per_unit
 
294
                                            (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas,
 
295
                                             double n);</pre><p>
 
296
Sets the zooming factor of a canvas by specifying the number of pixels that
 
297
correspond to one canvas unit.
 
298
</p><p>
 
299
The anchor point for zooming, i.e. the point that stays fixed and all others
 
300
zoom inwards or outwards from it, depends on whether the canvas is set to
 
301
center the scrolling region or not.  You can control this using the
 
302
<a href="GnomeCanvas.html#gnome-canvas-set-center-scroll-region"><tt class="function">gnome_canvas_set_center_scroll_region()</tt></a> function.  If the canvas is set to
 
303
center the scroll region, then the center of the canvas window is used as the
 
304
anchor point for zooming.  Otherwise, the upper-left corner of the canvas
 
305
window is used as the anchor point.</p><p>
 
306
 
 
307
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i class="parameter"><tt>canvas</tt></i>�:</span></td><td> A canvas.
 
308
</td></tr><tr><td><span class="term"><i class="parameter"><tt>n</tt></i>�:</span></td><td> The number of pixels that correspond to one canvas unit.
 
309
</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id2973081"></a><h3><a name="gnome-canvas-scroll-to"></a>gnome_canvas_scroll_to ()</h3><a class="indexterm" name="id2973092"></a><pre class="programlisting">void        gnome_canvas_scroll_to          (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas,
 
310
                                             int cx,
 
311
                                             int cy);</pre><p>
 
312
Makes a canvas scroll to the specified offsets, given in canvas pixel units.
 
313
The canvas will adjust the view so that it is not outside the scrolling
 
314
region.  This function is typically not used, as it is better to hook
 
315
scrollbars to the canvas layout's scrolling adjusments.</p><p>
 
316
 
 
317
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i class="parameter"><tt>canvas</tt></i>�:</span></td><td> A canvas.
 
318
</td></tr><tr><td><span class="term"><i class="parameter"><tt>cx</tt></i>�:</span></td><td> Horizontal scrolling offset in canvas pixel units.
 
319
</td></tr><tr><td><span class="term"><i class="parameter"><tt>cy</tt></i>�:</span></td><td> Vertical scrolling offset in canvas pixel units.
 
320
</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id2973189"></a><h3><a name="gnome-canvas-get-scroll-offsets"></a>gnome_canvas_get_scroll_offsets ()</h3><a class="indexterm" name="id2973201"></a><pre class="programlisting">void        gnome_canvas_get_scroll_offsets (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas,
 
321
                                             int *cx,
 
322
                                             int *cy);</pre><p>
 
323
Queries the scrolling offsets of a canvas.  The values are returned in canvas
 
324
pixel units.</p><p>
 
325
 
 
326
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i class="parameter"><tt>canvas</tt></i>�:</span></td><td> A canvas.
 
327
</td></tr><tr><td><span class="term"><i class="parameter"><tt>cx</tt></i>�:</span></td><td> Horizontal scrolling offset (return value).
 
328
</td></tr><tr><td><span class="term"><i class="parameter"><tt>cy</tt></i>�:</span></td><td> Vertical scrolling offset (return value).
 
329
</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id2973294"></a><h3><a name="gnome-canvas-update-now"></a>gnome_canvas_update_now ()</h3><a class="indexterm" name="id2973306"></a><pre class="programlisting">void        gnome_canvas_update_now         (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas);</pre><p>
 
330
Forces an immediate update and redraw of a canvas.  If the canvas does not
 
331
have any pending update or redraw requests, then no action is taken.  This is
 
332
typically only used by applications that need explicit control of when the
 
333
display is updated, like games.  It is not needed by normal applications.</p><p>
 
334
 
 
335
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i class="parameter"><tt>canvas</tt></i>�:</span></td><td> A canvas.
 
336
</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id2973361"></a><h3><a name="gnome-canvas-get-item-at"></a>gnome_canvas_get_item_at ()</h3><a class="indexterm" name="id2973372"></a><pre class="programlisting"><a href="GnomeCanvasItem.html" title="GnomeCanvasItem">GnomeCanvasItem</a>* gnome_canvas_get_item_at   (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas,
 
337
                                             double x,
 
338
                                             double y);</pre><p>
 
339
Looks for the item that is under the specified position, which must be
 
340
specified in world coordinates.</p><p>
 
341
 
 
342
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i class="parameter"><tt>canvas</tt></i>�:</span></td><td> A canvas.
 
343
</td></tr><tr><td><span class="term"><i class="parameter"><tt>x</tt></i>�:</span></td><td> X position in world coordinates.
 
344
</td></tr><tr><td><span class="term"><i class="parameter"><tt>y</tt></i>�:</span></td><td> Y position in world coordinates.
 
345
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td> The sought item, or NULL if no item is at the specified
 
346
coordinates.
 
347
</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id2973478"></a><h3><a name="gnome-canvas-request-redraw-uta"></a>gnome_canvas_request_redraw_uta ()</h3><a class="indexterm" name="id2973489"></a><pre class="programlisting">void        gnome_canvas_request_redraw_uta (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas,
 
348
                                             ArtUta *uta);</pre><p>
 
349
Informs a canvas that the specified area, given as a microtile array, needs
 
350
to be repainted.  To be used only by item implementations.</p><p>
 
351
 
 
352
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i class="parameter"><tt>canvas</tt></i>�:</span></td><td> A canvas.
 
353
</td></tr><tr><td><span class="term"><i class="parameter"><tt>uta</tt></i>�:</span></td><td> Microtile array that specifies the area to be redrawn.  It will
 
354
be freed by this function, so the argument you pass will be invalid
 
355
after you call this function.
 
356
</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id2973565"></a><h3><a name="gnome-canvas-request-redraw"></a>gnome_canvas_request_redraw ()</h3><a class="indexterm" name="id2973577"></a><pre class="programlisting">void        gnome_canvas_request_redraw     (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas,
 
357
                                             int x1,
 
358
                                             int y1,
 
359
                                             int x2,
 
360
                                             int y2);</pre><p>
 
361
Convenience function that informs a canvas that the specified rectangle needs
 
362
to be repainted.  This function converts the rectangle to a microtile array
 
363
and feeds it to <a href="GnomeCanvas.html#gnome-canvas-request-redraw-uta"><tt class="function">gnome_canvas_request_redraw_uta()</tt></a>.  The rectangle includes
 
364
<i class="parameter"><tt>x1</tt></i> and <i class="parameter"><tt>y1</tt></i>, but not <i class="parameter"><tt>x2</tt></i> and <i class="parameter"><tt>y2</tt></i>.  To be used only by item implementations.</p><p>
 
365
 
 
366
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i class="parameter"><tt>canvas</tt></i>�:</span></td><td> A canvas.
 
367
</td></tr><tr><td><span class="term"><i class="parameter"><tt>x1</tt></i>�:</span></td><td> Leftmost coordinate of the rectangle to be redrawn.
 
368
</td></tr><tr><td><span class="term"><i class="parameter"><tt>y1</tt></i>�:</span></td><td> Upper coordinate of the rectangle to be redrawn.
 
369
</td></tr><tr><td><span class="term"><i class="parameter"><tt>x2</tt></i>�:</span></td><td> Rightmost coordinate of the rectangle to be redrawn, plus 1.
 
370
</td></tr><tr><td><span class="term"><i class="parameter"><tt>y2</tt></i>�:</span></td><td> Lower coordinate of the rectangle to be redrawn, plus 1.
 
371
</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id2973750"></a><h3><a name="gnome-canvas-w2c-affine"></a>gnome_canvas_w2c_affine ()</h3><a class="indexterm" name="id2973761"></a><pre class="programlisting">void        gnome_canvas_w2c_affine         (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas,
 
372
                                             double affine[6]);</pre><p>
 
373
Gets the affine transform that converts from world coordinates to canvas
 
374
pixel coordinates.</p><p>
 
375
 
 
376
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i class="parameter"><tt>canvas</tt></i>�:</span></td><td> A canvas.
 
377
</td></tr><tr><td><span class="term"><i class="parameter"><tt>affine</tt></i>�:</span></td><td> An affine transformation matrix (return value).
 
378
</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id2973834"></a><h3><a name="gnome-canvas-w2c"></a>gnome_canvas_w2c ()</h3><a class="indexterm" name="id2973845"></a><pre class="programlisting">void        gnome_canvas_w2c                (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas,
 
379
                                             double wx,
 
380
                                             double wy,
 
381
                                             int *cx,
 
382
                                             int *cy);</pre><p>
 
383
Converts world coordinates into canvas pixel coordinates.</p><p>
 
384
 
 
385
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i class="parameter"><tt>canvas</tt></i>�:</span></td><td> A canvas.
 
386
</td></tr><tr><td><span class="term"><i class="parameter"><tt>wx</tt></i>�:</span></td><td> World X coordinate.
 
387
</td></tr><tr><td><span class="term"><i class="parameter"><tt>wy</tt></i>�:</span></td><td> World Y coordinate.
 
388
</td></tr><tr><td><span class="term"><i class="parameter"><tt>cx</tt></i>�:</span></td><td> X pixel coordinate (return value).
 
389
</td></tr><tr><td><span class="term"><i class="parameter"><tt>cy</tt></i>�:</span></td><td> Y pixel coordinate (return value).
 
390
</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id2973981"></a><h3><a name="gnome-canvas-w2c-d"></a>gnome_canvas_w2c_d ()</h3><a class="indexterm" name="id2973992"></a><pre class="programlisting">void        gnome_canvas_w2c_d              (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas,
 
391
                                             double wx,
 
392
                                             double wy,
 
393
                                             double *cx,
 
394
                                             double *cy);</pre><p>
 
395
Converts world coordinates into canvas pixel coordinates.  This
 
396
version returns coordinates in floating point coordinates, for
 
397
greater precision.</p><p>
 
398
 
 
399
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i class="parameter"><tt>canvas</tt></i>�:</span></td><td> A canvas.
 
400
</td></tr><tr><td><span class="term"><i class="parameter"><tt>wx</tt></i>�:</span></td><td> World X coordinate.
 
401
</td></tr><tr><td><span class="term"><i class="parameter"><tt>wy</tt></i>�:</span></td><td> World Y coordinate.
 
402
</td></tr><tr><td><span class="term"><i class="parameter"><tt>cx</tt></i>�:</span></td><td> X pixel coordinate (return value).
 
403
</td></tr><tr><td><span class="term"><i class="parameter"><tt>cy</tt></i>�:</span></td><td> Y pixel coordinate (return value).
 
404
</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id2974130"></a><h3><a name="gnome-canvas-c2w"></a>gnome_canvas_c2w ()</h3><a class="indexterm" name="id2974140"></a><pre class="programlisting">void        gnome_canvas_c2w                (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas,
 
405
                                             int cx,
 
406
                                             int cy,
 
407
                                             double *wx,
 
408
                                             double *wy);</pre><p>
 
409
Converts canvas pixel coordinates to world coordinates.</p><p>
 
410
 
 
411
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i class="parameter"><tt>canvas</tt></i>�:</span></td><td> A canvas.
 
412
</td></tr><tr><td><span class="term"><i class="parameter"><tt>cx</tt></i>�:</span></td><td> Canvas pixel X coordinate.
 
413
</td></tr><tr><td><span class="term"><i class="parameter"><tt>cy</tt></i>�:</span></td><td> Canvas pixel Y coordinate.
 
414
</td></tr><tr><td><span class="term"><i class="parameter"><tt>wx</tt></i>�:</span></td><td> X world coordinate (return value).
 
415
</td></tr><tr><td><span class="term"><i class="parameter"><tt>wy</tt></i>�:</span></td><td> Y world coordinate (return value).
 
416
</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id2974276"></a><h3><a name="gnome-canvas-window-to-world"></a>gnome_canvas_window_to_world ()</h3><a class="indexterm" name="id2974288"></a><pre class="programlisting">void        gnome_canvas_window_to_world    (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas,
 
417
                                             double winx,
 
418
                                             double winy,
 
419
                                             double *worldx,
 
420
                                             double *worldy);</pre><p>
 
421
Converts window-relative coordinates into world coordinates.  You can use
 
422
this when you need to convert mouse coordinates into world coordinates, for
 
423
example.</p><p>
 
424
 
 
425
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i class="parameter"><tt>canvas</tt></i>�:</span></td><td> A canvas.
 
426
</td></tr><tr><td><span class="term"><i class="parameter"><tt>winx</tt></i>�:</span></td><td> Window-relative X coordinate.
 
427
</td></tr><tr><td><span class="term"><i class="parameter"><tt>winy</tt></i>�:</span></td><td> Window-relative Y coordinate.
 
428
</td></tr><tr><td><span class="term"><i class="parameter"><tt>worldx</tt></i>�:</span></td><td> X world coordinate (return value).
 
429
</td></tr><tr><td><span class="term"><i class="parameter"><tt>worldy</tt></i>�:</span></td><td> Y world coordinate (return value).
 
430
</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id2974428"></a><h3><a name="gnome-canvas-world-to-window"></a>gnome_canvas_world_to_window ()</h3><a class="indexterm" name="id2974439"></a><pre class="programlisting">void        gnome_canvas_world_to_window    (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas,
 
431
                                             double worldx,
 
432
                                             double worldy,
 
433
                                             double *winx,
 
434
                                             double *winy);</pre><p>
 
435
Converts world coordinates into window-relative coordinates.</p><p>
 
436
 
 
437
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i class="parameter"><tt>canvas</tt></i>�:</span></td><td> A canvas.
 
438
</td></tr><tr><td><span class="term"><i class="parameter"><tt>worldx</tt></i>�:</span></td><td> World X coordinate.
 
439
</td></tr><tr><td><span class="term"><i class="parameter"><tt>worldy</tt></i>�:</span></td><td> World Y coordinate.
 
440
</td></tr><tr><td><span class="term"><i class="parameter"><tt>winx</tt></i>�:</span></td><td> X window-relative coordinate.
 
441
</td></tr><tr><td><span class="term"><i class="parameter"><tt>winy</tt></i>�:</span></td><td> Y window-relative coordinate.
 
442
</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id2974577"></a><h3><a name="gnome-canvas-get-color"></a>gnome_canvas_get_color ()</h3><a class="indexterm" name="id2974588"></a><pre class="programlisting">int         gnome_canvas_get_color          (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas,
 
443
                                             const char *spec,
 
444
                                             GdkColor *color);</pre><p>
 
445
Allocates a color based on the specified X color specification.  As a
 
446
convenience to item implementations, it returns TRUE if the color was
 
447
allocated, or FALSE if the specification was NULL.  A NULL color
 
448
specification is considered as "transparent" by the canvas.</p><p>
 
449
 
 
450
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i class="parameter"><tt>canvas</tt></i>�:</span></td><td> A canvas.
 
451
</td></tr><tr><td><span class="term"><i class="parameter"><tt>spec</tt></i>�:</span></td><td> X color specification, or NULL for "transparent".
 
452
</td></tr><tr><td><span class="term"><i class="parameter"><tt>color</tt></i>�:</span></td><td> Returns the allocated color.
 
453
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td> TRUE if <i class="parameter"><tt>spec</tt></i> is non-NULL and the color is allocated.  If <i class="parameter"><tt>spec</tt></i>
 
454
is NULL, then returns FALSE.
 
455
</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id2974709"></a><h3><a name="gnome-canvas-get-color-pixel"></a>gnome_canvas_get_color_pixel ()</h3><a class="indexterm" name="id2974721"></a><pre class="programlisting">gulong      gnome_canvas_get_color_pixel    (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas,
 
456
                                             guint rgba);</pre><p>
 
457
Allocates a color from the RGBA value passed into this function.  The alpha
 
458
opacity value is discarded, since normal X colors do not support it.</p><p>
 
459
 
 
460
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i class="parameter"><tt>canvas</tt></i>�:</span></td><td> A canvas.
 
461
</td></tr><tr><td><span class="term"><i class="parameter"><tt>rgba</tt></i>�:</span></td><td> RGBA color specification.
 
462
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td> Allocated pixel value corresponding to the specified color.
 
463
</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id2974806"></a><h3><a name="gnome-canvas-set-stipple-origin"></a>gnome_canvas_set_stipple_origin ()</h3><a class="indexterm" name="id2974817"></a><pre class="programlisting">void        gnome_canvas_set_stipple_origin (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas,
 
464
                                             GdkGC *gc);</pre><p>
 
465
Sets the stipple origin of the specified GC as is appropriate for the canvas,
 
466
so that it will be aligned with other stipple patterns used by canvas items.
 
467
This is typically only needed by item implementations.</p><p>
 
468
 
 
469
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i class="parameter"><tt>canvas</tt></i>�:</span></td><td> A canvas.
 
470
</td></tr><tr><td><span class="term"><i class="parameter"><tt>gc</tt></i>�:</span></td><td> GC on which to set the stipple origin.
 
471
</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id2974892"></a><h3><a name="gnome-canvas-set-dither"></a>gnome_canvas_set_dither ()</h3><a class="indexterm" name="id2974903"></a><pre class="programlisting">void        gnome_canvas_set_dither         (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas,
 
472
                                             GdkRgbDither dither);</pre><p>
 
473
Controls dithered rendering for antialiased canvases. The value of
 
474
dither should be <span class="type">GDK_RGB_DITHER_NONE</span>, <span class="type">GDK_RGB_DITHER_NORMAL</span>, or
 
475
<span class="type">GDK_RGB_DITHER_MAX</span>. The default canvas setting is
 
476
<span class="type">GDK_RGB_DITHER_NORMAL</span>.</p><p>
 
477
 
 
478
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i class="parameter"><tt>canvas</tt></i>�:</span></td><td> A canvas.
 
479
</td></tr><tr><td><span class="term"><i class="parameter"><tt>dither</tt></i>�:</span></td><td> Type of dithering used to render an antialiased canvas.
 
480
</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id2975015"></a><h3><a name="gnome-canvas-get-dither"></a>gnome_canvas_get_dither ()</h3><a class="indexterm" name="id2975026"></a><pre class="programlisting">GdkRgbDither gnome_canvas_get_dither        (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas);</pre><p>
 
481
Returns the type of dithering used to render an antialiased canvas.</p><p>
 
482
 
 
483
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i class="parameter"><tt>canvas</tt></i>�:</span></td><td> A canvas.
 
484
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td> The dither setting.
 
485
</td></tr></tbody></table></div></div></div><div class="refsect1" lang="en"><a name="id2975089"></a><h2>Properties</h2><div class="refsect2" lang="en"><a name="id2975094"></a><h3><a name="GnomeCanvas--aa"></a>The "<tt class="literal">aa</tt>" property</h3><pre class="programlisting">  "aa"                   gboolean              : Read / Write / Construct Only</pre><p>
 
486
Enable anti-aliasing mode?
 
487
</p><p>
 
488
Note that this parameter can only be set at the time of object
 
489
construction. The same effect can be achieved by calling
 
490
<a href="GnomeCanvas.html#gnome-canvas-new"><tt class="function">gnome_canvas_new()</tt></a> to create new non-aa canvas or
 
491
<a href="GnomeCanvas.html#gnome-canvas-new-aa"><tt class="function">gnome_canvas_new_aa()</tt></a> for an anti-aliased canvas.
 
492
</p><p>Default value: FALSE</p></div></div><div class="refsect1" lang="en"><a name="id2975161"></a><h2>Signals</h2><div class="refsect2" lang="en"><a name="id2975166"></a><h3><a name="GnomeCanvas-draw-background"></a>The "draw-background" signal</h3><pre class="programlisting">void        user_function                  (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas,
 
493
                                            GdkDrawable *arg1,
 
494
                                            gint arg2,
 
495
                                            gint arg3,
 
496
                                            gint arg4,
 
497
                                            gint arg5,
 
498
                                            gpointer user_data);</pre><p>
 
499
This signal is emitted to draw the background for non-antialiased mode
 
500
canvas widgets. The default method uses the canvas widget's style to
 
501
draw the background.
 
502
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i class="parameter"><tt>canvas</tt></i>�:</span></td><td>the object which received the signal.
 
503
</td></tr><tr><td><span class="term"><i class="parameter"><tt>arg1</tt></i>�:</span></td><td>GdkDrawable to draw to
 
504
</td></tr><tr><td><span class="term"><i class="parameter"><tt>arg2</tt></i>�:</span></td><td>Leftmost X coordinate of area to draw to
 
505
</td></tr><tr><td><span class="term"><i class="parameter"><tt>arg3</tt></i>�:</span></td><td>Top Y coordinate of area to draw to
 
506
</td></tr><tr><td><span class="term"><i class="parameter"><tt>arg4</tt></i>�:</span></td><td>Width of area
 
507
</td></tr><tr><td><span class="term"><i class="parameter"><tt>arg5</tt></i>�:</span></td><td>Height of area
 
508
 
 
509
</td></tr><tr><td><span class="term"><i class="parameter"><tt>user_data</tt></i>�:</span></td><td>user data set when the signal handler was connected.</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id2975350"></a><h3><a name="GnomeCanvas-render-background"></a>The "render-background" signal</h3><pre class="programlisting">void        user_function                  (<a href="GnomeCanvas.html" title="GnomeCanvas">GnomeCanvas</a> *canvas,
 
510
                                            gpointer arg1,
 
511
                                            gpointer user_data);</pre><p>
 
512
This signal is emitted for antialiased mode canvas widgets to render
 
513
the background. The buf data structure contains both a pointer to a
 
514
packed 24-bit RGB array and the coordinates.
 
515
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i class="parameter"><tt>canvas</tt></i>�:</span></td><td>the object which received the signal.
 
516
</td></tr><tr><td><span class="term"><i class="parameter"><tt>arg1</tt></i>�:</span></td><td><a href="GnomeCanvas.html#GnomeCanvasBuf"><span class="type">GnomeCanvasBuf</span></a> to render to
 
517
 
 
518
</td></tr><tr><td><span class="term"><i class="parameter"><tt>user_data</tt></i>�:</span></td><td>user data set when the signal handler was connected.</td></tr></tbody></table></div></div></div></div><table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="0"><tr valign="middle"><td align="left"><a accesskey="p" href="ch02.html"><b>&lt;&lt;�GNOME Canvas Library (libgnomecanvas)</b></a></td><td align="right"><a accesskey="n" href="GnomeCanvasBpath.html"><b>GnomeCanvasBpath�&gt;&gt;</b></a></td></tr></table></body></html>