Ryujinx-GtkSharp/doc/en/Gnome/Canvas.xml
Mike Kestner a42761c758 assembly version updates and new API stubs
svn path=/trunk/gtk-sharp/; revision=97046
2008-03-01 01:46:57 +00:00

993 lines
43 KiB
XML

<Type Name="Canvas" FullName="Gnome.Canvas">
<TypeSignature Language="C#" Maintainer="duncan" Value="public class Canvas : Gtk.Layout" />
<AssemblyInfo>
<AssemblyName>gnome-sharp</AssemblyName>
<AssemblyPublicKey>
</AssemblyPublicKey>
<AssemblyVersion>2.20.0.0</AssemblyVersion>
</AssemblyInfo>
<ThreadSafetyStatement>Gtk# is thread aware, but not thread safe; See the <link location="node:gtk-sharp/programming/threads">Gtk# Thread Programming</link> for details.</ThreadSafetyStatement>
<Docs>
<summary>Main canvas widget</summary>
<remarks>
<para>
The <see cref="T:Gnome.Canvas" /> is an engine for structured graphics that
offers a rich imaging model, high performance rendering, and a
powerful, high level API. It offers a choice of two rendering
back-ends, one based on Xlib for extremely fast display, and
another based on Libart, a sophisticated, antialiased,
alpha-compositing engine. This widget can be used for flexible
display of graphics and for creating interactive user
interface elements.
</para>
<para>
To create a new GnomeCanvas widget call
<see cref="C:Gnome.Canvas" /> or
<see cref="M:Gnome.Canvas.NewAa" /> for an anti-aliased mode canvas.
</para>
<para>
A <see cref="T:Gnome.Canvas" /> widget contains one or more
<see cref="T:Gnome.CanvasItem" />
objects. Items consist of graphing elements like lines,
ellipses, polygons, images, text, and curves. These items are
organized using <see cref="T:Gnome.CanvasGroup" /> objects, which are themselves
derived from <see cref="T:Gnome.CanvasItem" />. Since a group is an item it can
be contained within other groups, forming a tree of canvas
items. Certain operations, like translating and scaling, can
be performed on all items in a group.
</para>
<para>
There is a special root group created by a GnomeCanvas. This
is the top level group under which all items in a canvas are
contained. To get the root group from a canvas, use
<see cref="P:Gnome.Canvas.Root" /> property.
</para>
<para>
There are several different coordinate systems used by
<see cref="T:Gnome.Canvas" /> widgets. The primary system is a logical, abstract
coordinate space called world coordinates. World coordinates
are expressed as unbounded double floating point numbers. When
it comes to rendering to a screen the canvas pixel coordinate
system (also referred to as just canvas coordinates) is
used. This system uses integers to specify screen pixel
positions. A user defined scaling factor and offset are used
to convert between world coordinates and canvas
coordinates. Each item in a canvas has its own coordinate
system called item coordinates. This system is specified in
world coordinates but they are relative to an item (0.0, 0.0
would be the top left corner of the item). The final
coordinate system of interest is window coordinates. These are
like canvas coordinates but are offsets from within a window a
canvas is displayed in. This last system is rarely used, but
is useful when manually handling GDK events (such as drag and
drop) which are specified in window coordinates (the events
processed by the canvas are already converted for you).
</para>
<para>
Along with different coordinate systems comes functions
to convert between them. <see cref="M:Gnome.Canvas.W2c" /> converts world to
canvas pixel coordinates and <see cref="M:Gnome.Canvas.C2w" /> from
canvas to world. <see cref="M:Gnome.Canvas.W2cD" /> is like
<see cref="M:Gnome.Canvas.W2c" /> but returns the pixel coordinates as
doubles which is useful to avoid precision loss from integer
rounding. To get the affine transform matrix for converting
from world coordinates to canvas coordinates call
<see cref="M:Gnome.Canvas.W2cAffine" />.
<see cref="M:Gnome.Canvas.WindowToWorld" />
converts from window to world coordinates and
<see cref="M:Gnome.Canvas.WorldToWindow" /> converts in the other
direction. There are no functions for converting between
canvas and window coordinates, since this is just a matter of
subtracting the canvas scrolling offset. To convert to/from
item coordinates use the functions defined for
<see cref="T:Gnome.CanvasItem" /> objects.
</para>
<para>
To set the canvas zoom factor (canvas pixels per world unit,
the scaling factor) use the <see cref="P:Gnome.Canvas.PixelsPerUnit" />
property, setting this to 1.0 will cause the two coordinate systems to
correspond (e.g., [5, 6] in pixel units would be [5.0, 6.0] in
world units).
</para>
<para>
Defining the scrollable area of a canvas widget is done by
calling <see cref="M:Gnome.Canvas.SetScrollRegion" /> and to get the
current region <see cref="M:Gnome.Canvas.GetScrollRegion" /> can be
used. If the window is larger than the canvas scrolling region
it can optionally be centered in the window. Use the
<see cref="P:Gnome.Canvas.CenterScrollRegion" /> property to enable or disable
this behavior. To scroll to a particular canvas pixel
coordinate use <see cref="M:Gnome.Canvas.ScrollTo" /> (typically not used
since scrollbars are usually set up to handle the scrolling),
and to get the current canvas pixel scroll offset call
<see cref="M:Gnome.Canvas.GetScrollOffsets" />.
</para>
</remarks>
</Docs>
<Base>
<BaseTypeName>Gtk.Layout</BaseTypeName>
</Base>
<Interfaces>
</Interfaces>
<Members>
<Member MemberName="UpdateBbox">
<MemberSignature Language="C#" Value="public static void UpdateBbox (Gnome.CanvasItem item, int x1, int y1, int x2, int y2);" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="item" Type="Gnome.CanvasItem" />
<Parameter Name="x1" Type="System.Int32" />
<Parameter Name="y1" Type="System.Int32" />
<Parameter Name="x2" Type="System.Int32" />
<Parameter Name="y2" Type="System.Int32" />
</Parameters>
<Docs>
<summary>Sets the bounding box to the new value, requesting full repaint.</summary>
<param name="item">The canvas item needing update</param>
<param name="x1">Left coordinate of the new bounding box</param>
<param name="y1">Top coordinate of the new bounding box</param>
<param name="x2">Right coordinate of the new bounding box</param>
<param name="y2">Bottom coordinate of the new bounding box</param>
<remarks>
</remarks>
</Docs>
</Member>
<Member MemberName="GetButtPoints">
<MemberSignature Language="C#" Value="public static void GetButtPoints (double x1, double y1, double x2, double y2, double width, int project, out double bx1, out double by1, out double bx2, out double by2);" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="x1" Type="System.Double" />
<Parameter Name="y1" Type="System.Double" />
<Parameter Name="x2" Type="System.Double" />
<Parameter Name="y2" Type="System.Double" />
<Parameter Name="width" Type="System.Double" />
<Parameter Name="project" Type="System.Int32" />
<Parameter Name="bx1" Type="System.Double&amp;" RefType="out" />
<Parameter Name="by1" Type="System.Double&amp;" RefType="out" />
<Parameter Name="bx2" Type="System.Double&amp;" RefType="out" />
<Parameter Name="by2" Type="System.Double&amp;" RefType="out" />
</Parameters>
<Docs>
<summary>Computes the butt points of a line segment.</summary>
<param name="x1">X coordinate of first point in the line</param>
<param name="y1">Y cooordinate of first point in the line</param>
<param name="x2">X coordinate of second point (endpoint) of the line</param>
<param name="y2">Y coordinate of second point (endpoint) of the line</param>
<param name="width">Width of the line</param>
<param name="project"> Whether the butt points should project out by width/2 distance</param>
<param name="bx1">Return value of the X coordinate of first butt point</param>
<param name="by1">Return value of the Y coordinate of first butt point</param>
<param name="bx2">Return value of the X coordinate of second butt point</param>
<param name="by2">Return value of the Y coordinate of second butt point</param>
<remarks>
</remarks>
</Docs>
</Member>
<Member MemberName="GetMiterPoints">
<MemberSignature Language="C#" Value="public static bool GetMiterPoints (double x1, double y1, double x2, double y2, double x3, double y3, double width, out double mx1, out double my1, out double mx2, out double my2);" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="x1" Type="System.Double" />
<Parameter Name="y1" Type="System.Double" />
<Parameter Name="x2" Type="System.Double" />
<Parameter Name="y2" Type="System.Double" />
<Parameter Name="x3" Type="System.Double" />
<Parameter Name="y3" Type="System.Double" />
<Parameter Name="width" Type="System.Double" />
<Parameter Name="mx1" Type="System.Double&amp;" RefType="out" />
<Parameter Name="my1" Type="System.Double&amp;" RefType="out" />
<Parameter Name="mx2" Type="System.Double&amp;" RefType="out" />
<Parameter Name="my2" Type="System.Double&amp;" RefType="out" />
</Parameters>
<Docs>
<summary>
Given three points forming an angle, computes the
coordinates of the inside and outside points of the mitered
corner formed by a line of a given width at that
angle.
</summary>
<param name="x1">X coordinate of the first point</param>
<param name="y1">Y coordinate of the first point</param>
<param name="x2">X coordinate of the second (angle) point</param>
<param name="y2">Y coordinate of the second (angle) point</param>
<param name="x3">X coordinate of the third point</param>
<param name="y3">Y coordinate of the third point</param>
<param name="width"> Width of the line</param>
<param name="mx1"> The return value of the X coordinate of the first miter point</param>
<param name="my1"> The return value of the Y coordinate of the first miter point</param>
<param name="mx2"> The return value of the X coordinate of the second miter point</param>
<param name="my2"> The return value of the Y coordinate of the second miter point</param>
<returns>
<see langword="false" /> if the angle is less than 11
degrees (this is the same threshold as X uses. If this
occurs, the return points are not modified. Otherwise,
returns <see langword="true" />.
</returns>
<remarks>
</remarks>
</Docs>
</Member>
<Member MemberName="JoinGdkToArt">
<MemberSignature Language="C#" Value="public static Art.PathStrokeJoinType JoinGdkToArt (Gdk.JoinStyle gdk_join);" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>Art.PathStrokeJoinType</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="gdk_join" Type="Gdk.JoinStyle" />
</Parameters>
<Docs>
<summary>Convert from GDK line join specifier to libart.</summary>
<param name="gdk_join">a join type, represented in GDK format</param>
<returns>The line join specifier in libart format.</returns>
<remarks>
</remarks>
</Docs>
</Member>
<Member MemberName="RenderSvp">
<MemberSignature Language="C#" Value="public static void RenderSvp (Gnome.CanvasBuf buf, Art.SVP svp, uint rgba);" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="buf" Type="Gnome.CanvasBuf" />
<Parameter Name="svp" Type="Art.SVP" />
<Parameter Name="rgba" Type="System.UInt32" />
</Parameters>
<Docs>
<summary>
Render the <paramref name="svp" /> over the <paramref name="buf" />.
</summary>
<param name="buf">the canvas buffer to render over</param>
<param name="svp">the vector path to render</param>
<param name="rgba">the rgba color to render</param>
<remarks>
</remarks>
</Docs>
</Member>
<Member MemberName="CapGdkToArt">
<MemberSignature Language="C#" Value="public static Art.PathStrokeCapType CapGdkToArt (Gdk.CapStyle gdk_cap);" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>Art.PathStrokeCapType</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="gdk_cap" Type="Gdk.CapStyle" />
</Parameters>
<Docs>
<summary>Convert from GDK line cap specifier to the libart format.</summary>
<param name="gdk_cap">a cap type, represented in GDK format</param>
<returns>The line cap specifier in libart format.</returns>
<remarks>
</remarks>
</Docs>
</Member>
<Member MemberName="NewAa">
<MemberSignature Language="C#" Value="public static Gnome.Canvas NewAa ();" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>Gnome.Canvas</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>
Creates a new empty canvas in antialiased mode. You should
push the <see cref="T:Gdk.RGB" /> visual and colormap before calling this
functions, and they can be popped afterwards.
</summary>
<returns>A newly-created antialiased canvas.</returns>
<remarks>
</remarks>
</Docs>
</Member>
<Member MemberName="GetColor">
<MemberSignature Language="C#" Value="public bool GetColor (string spec, out Gdk.Color color);" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="spec" Type="System.String" />
<Parameter Name="color" Type="Gdk.Color&amp;" RefType="out" />
</Parameters>
<Docs>
<summary>Allocates a color based on the specified X color specification.</summary>
<param name="spec">
X color specification, or <see langword="null" />
for"transparent".
</param>
<param name="color">
Return value the allocated color.
</param>
<returns>
<see langword="true" /> if spec is non-NULL and the color is
allocated. If spec is <see langword="null" />, then returns
<see langword="false" />.
</returns>
<remarks>To be added</remarks>
</Docs>
</Member>
<Member MemberName="UpdateSvp">
<MemberSignature Language="C#" Value="public void UpdateSvp (Art.SVP p_svp, Art.SVP new_svp);" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="p_svp" Type="Art.SVP" />
<Parameter Name="new_svp" Type="Art.SVP" />
</Parameters>
<Docs>
<summary>Sets the svp to the new value, requesting repaint on what has changed.</summary>
<param name="p_svp">The existing svp</param>
<param name="new_svp">The new svp</param>
<remarks>
</remarks>
</Docs>
</Member>
<Member MemberName="GetItemAt">
<MemberSignature Language="C#" Value="public Gnome.CanvasItem GetItemAt (double x, double y);" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>Gnome.CanvasItem</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="x" Type="System.Double" />
<Parameter Name="y" Type="System.Double" />
</Parameters>
<Docs>
<summary>Looks for the item that is under the specified position.</summary>
<param name="x">X position in world coordinates.</param>
<param name="y">Y position in world coordinates.</param>
<returns>The requested item, or <see langword="null" /> if no item is at the specified coordinates.</returns>
<remarks>
</remarks>
</Docs>
</Member>
<Member MemberName="Root">
<MemberSignature Language="C#" Value="public Gnome.CanvasGroup Root ();" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>Gnome.CanvasGroup</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Queries the root group of a canvas.</summary>
<returns>The root group of the specified canvas.</returns>
<remarks>
</remarks>
</Docs>
</Member>
<Member MemberName="UpdateSvpClip">
<MemberSignature Language="C#" Value="public void UpdateSvpClip (Art.SVP p_svp, Art.SVP new_svp, Art.SVP clip_svp);" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="p_svp" Type="Art.SVP" />
<Parameter Name="new_svp" Type="Art.SVP" />
<Parameter Name="clip_svp" Type="Art.SVP" />
</Parameters>
<Docs>
<summary>
Sets the svp to the new value, clipping if necessary, and
requesting repaint on what has changed.
</summary>
<param name="p_svp">the existing svp</param>
<param name="new_svp">the new svp</param>
<param name="clip_svp">a clip path</param>
<remarks>
</remarks>
</Docs>
</Member>
<Member MemberName="RequestRedraw">
<MemberSignature Language="C#" Value="public void RequestRedraw (int x1, int y1, int x2, int y2);" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="x1" Type="System.Int32" />
<Parameter Name="y1" Type="System.Int32" />
<Parameter Name="x2" Type="System.Int32" />
<Parameter Name="y2" Type="System.Int32" />
</Parameters>
<Docs>
<summary>Convenience function that informs a canvas that the specified rectangle needs to be repainted.</summary>
<param name="x1">Leftmost coordinate of the rectangle to be redrawn.</param>
<param name="y1">Upper coordinate of the rectangle to be redrawn.</param>
<param name="x2">Rightmost coordinate of the rectangle to be redrawn, plus 1.</param>
<param name="y2">Lower coordinate of the rectangle to be redrawn, plus 1.</param>
<remarks>
<para>
Convenience function that informs a canvas that the
specified rectangle needs to be repainted. This function
converts the rectangle to a microtile array and feeds it
to <see cref="M:Gnome.Canvas.RequestRedrawUta" />. The rectangle
includes <paramref name="x1" /> and <paramref name="y1" />,
but not <paramref name="x2" /> and <paramref name="y2" />. To be used only by
item implementations.
</para>
</remarks>
</Docs>
</Member>
<Member MemberName="GetScrollOffsets">
<MemberSignature Language="C#" Value="public void GetScrollOffsets (out int cx, out int cy);" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="cx" Type="System.Int32&amp;" RefType="out" />
<Parameter Name="cy" Type="System.Int32&amp;" RefType="out" />
</Parameters>
<Docs>
<summary>Queries the scrolling offsets of a canvas. The values are returned in canvas pixel units.</summary>
<param name="cx">Return value for the horizontal scrolling offset</param>
<param name="cy">Return value for the vertical scrolling offset</param>
<remarks>
</remarks>
</Docs>
</Member>
<Member MemberName="UpdateNow">
<MemberSignature Language="C#" Value="public void UpdateNow ();" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Forces an immediate update and redraw of a canvas.</summary>
<remarks>
<para>
Forces an immediate update and redraw of a canvas. If the
canvas does not have any pending update or redraw
requests, then no action is taken. This is typically only
used by applications that need explicit control of when
the display is updated, like games. It is not needed by
normal applications.
</para>
</remarks>
</Docs>
</Member>
<Member MemberName="W2cD">
<MemberSignature Language="C#" Value="public void W2cD (double wx, double wy, out double cx, out double cy);" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="wx" Type="System.Double" />
<Parameter Name="wy" Type="System.Double" />
<Parameter Name="cx" Type="System.Double&amp;" RefType="out" />
<Parameter Name="cy" Type="System.Double&amp;" RefType="out" />
</Parameters>
<Docs>
<summary>
Converts world coordinates into canvas pixel
coordinates. This version returns coordinates in floating
point coordinates, for greater precision.
</summary>
<param name="wx">World X coordinate.</param>
<param name="wy">World Y coordinate.</param>
<param name="cx">Return value for the X pixel coordinate</param>
<param name="cy">Return value for the Y pixel coordinate</param>
<remarks>
</remarks>
</Docs>
</Member>
<Member MemberName="SetScrollRegion">
<MemberSignature Language="C#" Value="public void SetScrollRegion (double x1, double y1, double x2, double y2);" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="x1" Type="System.Double" />
<Parameter Name="y1" Type="System.Double" />
<Parameter Name="x2" Type="System.Double" />
<Parameter Name="y2" Type="System.Double" />
</Parameters>
<Docs>
<summary>Sets the scrolling region of a canvas to the specified rectangle.</summary>
<param name="x1">Leftmost limit of the scrolling region.</param>
<param name="y1">Upper limit of the scrolling region.</param>
<param name="x2">Rightmost limit of the scrolling region.</param>
<param name="y2">Lower limit of the scrolling region.</param>
<remarks>To be added</remarks>
</Docs>
</Member>
<Member MemberName="RequestRedrawUta">
<MemberSignature Language="C#" Value="public void RequestRedrawUta (Art.Uta uta);" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="uta" Type="Art.Uta" />
</Parameters>
<Docs>
<summary>
Informs a canvas that the specified area, given as a
microtile array, needs to be repainted. To be used only by
item implementations.
</summary>
<param name="uta">Microtile array that specifies the area to be redrawn.</param>
<remarks>
</remarks>
</Docs>
</Member>
<Member MemberName="WindowToWorld">
<MemberSignature Language="C#" Value="public void WindowToWorld (double winx, double winy, out double worldx, out double worldy);" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="winx" Type="System.Double" />
<Parameter Name="winy" Type="System.Double" />
<Parameter Name="worldx" Type="System.Double&amp;" RefType="out" />
<Parameter Name="worldy" Type="System.Double&amp;" RefType="out" />
</Parameters>
<Docs>
<summary>Converts world coordinates into window-relative coordinates.</summary>
<param name="winx">World X coordinate.</param>
<param name="winy">World Y coordinate.</param>
<param name="worldx">Return value for the X window-relative coordinate.</param>
<param name="worldy">Return value for the Y window-relative coordinate.</param>
<remarks>
</remarks>
</Docs>
</Member>
<Member MemberName="W2c">
<MemberSignature Language="C#" Value="public void W2c (double wx, double wy, out int cx, out int cy);" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="wx" Type="System.Double" />
<Parameter Name="wy" Type="System.Double" />
<Parameter Name="cx" Type="System.Int32&amp;" RefType="out" />
<Parameter Name="cy" Type="System.Int32&amp;" RefType="out" />
</Parameters>
<Docs>
<summary>Converts world coordinates into canvas pixel coordinates.</summary>
<param name="wx">World X coordinate.</param>
<param name="wy">World Y coordinate.</param>
<param name="cx">Return value for the X pixel coordinate</param>
<param name="cy">Return value for the Y pixel coordinate</param>
<remarks>
</remarks>
</Docs>
</Member>
<Member MemberName="ScrollTo">
<MemberSignature Language="C#" Value="public void ScrollTo (int cx, int cy);" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="cx" Type="System.Int32" />
<Parameter Name="cy" Type="System.Int32" />
</Parameters>
<Docs>
<summary>Makes a canvas scroll to the specified offsets, given in canvas pixel units.</summary>
<param name="cx">Horizontal scrolling offset in canvas pixel units.</param>
<param name="cy">Vertical scrolling offset in canvas pixel units.</param>
<remarks>
<para>
Makes a canvas scroll to the specified offsets, given in
canvas pixel units. The canvas will adjust the view so
that it is not outside the scrolling region. This function
is typically not used, as it is better to hook scrollbars
to the canvas layout's scrolling adjusments.
</para>
</remarks>
</Docs>
</Member>
<Member MemberName="GetColorPixel">
<MemberSignature Language="C#" Value="public ulong GetColorPixel (uint rgba);" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.UInt64</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="rgba" Type="System.UInt32" />
</Parameters>
<Docs>
<summary>Allocates a color from the RGBA value passed into this function.</summary>
<param name="rgba">RGBA color specification.</param>
<returns>Allocated pixel value corresponding to the specified color.</returns>
<remarks>
<para>
Allocates a color from <paramref name="rgba" />, the RGBA
value passed into this function. The alpha opacity value
is discarded, since normal X colors do not support it.
</para>
</remarks>
</Docs>
</Member>
<Member MemberName="C2w">
<MemberSignature Language="C#" Value="public void C2w (int cx, int cy, out double wx, out double wy);" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="cx" Type="System.Int32" />
<Parameter Name="cy" Type="System.Int32" />
<Parameter Name="wx" Type="System.Double&amp;" RefType="out" />
<Parameter Name="wy" Type="System.Double&amp;" RefType="out" />
</Parameters>
<Docs>
<summary>Converts canvas pixel coordinates to world coordinates.</summary>
<param name="cx">Canvas pixel X coordinate.</param>
<param name="cy">Canvas pixel Y coordinate.</param>
<param name="wx">Return value for the X world coordinate</param>
<param name="wy">Return value for the Y world coordinate</param>
<remarks>
</remarks>
</Docs>
</Member>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public Canvas (IntPtr raw);" />
<MemberType>Constructor</MemberType>
<ReturnValue />
<Parameters>
<Parameter Name="raw" Type="System.IntPtr" />
</Parameters>
<Docs>
<summary>Internal constructor</summary>
<param name="raw">Pointer to the C object.</param>
<remarks>
<para>This is an internal constructor, and should not be used by user code.</para>
</remarks>
</Docs>
</Member>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public Canvas ();" />
<MemberType>Constructor</MemberType>
<ReturnValue />
<Parameters />
<Docs>
<summary>Creates a new empty canvas in non-antialiased mode.</summary>
<remarks>
<para>
Creates a new empty canvas in non-antialiased mode. If you
wish to use the <see cref="T:Gnome.CanvasImage" /> item inside this canvas,
then you must push the gdk_imlib visual and colormap
before calling this function, and they can be popped
afterwards.
</para>
</remarks>
</Docs>
</Member>
<Member MemberName="Dither">
<MemberSignature Language="C#" Value="public Gdk.RgbDither Dither { set; get; };" />
<MemberType>Property</MemberType>
<ReturnValue>
<ReturnType>Gdk.RgbDither</ReturnType>
</ReturnValue>
<Parameters>
</Parameters>
<Docs>
<summary>The type of dithering used to render an antialiased canvas.</summary>
<value>The type of dithering used to render an antialiased canvas.</value>
<remarks>
</remarks>
</Docs>
</Member>
<Member MemberName="CenterScrollRegion">
<MemberSignature Language="C#" Value="public bool CenterScrollRegion { set; get; };" />
<MemberType>Property</MemberType>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Parameters>
</Parameters>
<Docs>
<summary>
Whether the canvas is set to center the scrolling region in
the window if the former is smaller than the canvas'
allocation.
</summary>
<value>Whether the scroll region is being centered in the canvas window.</value>
<remarks>
<para>
When the scrolling region of the canvas is smaller than
the canvas window, e.g. the allocation of the canvas, it
can be either centered on the window or simply made to be
on the upper-left corner on the window.
</para>
</remarks>
</Docs>
</Member>
<Member MemberName="StippleOrigin">
<MemberSignature Language="C#" Value="public Gdk.GC StippleOrigin { set; };" />
<MemberType>Property</MemberType>
<ReturnValue>
<ReturnType>Gdk.GC</ReturnType>
</ReturnValue>
<Parameters>
</Parameters>
<Docs>
<summary>
Sets the stipple origin of the specified GC as is
appropriate for the canvas, so that it will be aligned with
other stipple patterns used by canvas items.
</summary>
<remarks>
<para>This is typically only needed by item implementations.</para>
</remarks>
<value>To be added.</value>
</Docs>
</Member>
<Member MemberName="Aa">
<MemberSignature Language="C#" Value="public bool Aa { get; };" />
<MemberType>Property</MemberType>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Docs>
<summary>Whether to enable anti-aliasing mode</summary>
<value>
<see langword="true" /> to enable anti-aliasing</value>
<remarks>
<para>
Note that this parameter can only be set at the time of
object construction. The same effect can be achieved by
calling <see cref="C:Gnome.Canvas" /> to create new non-aa canvas or
<see cref="M:Gnome.Canvas.NewAa" /> for an anti-aliased canvas.
</para>
</remarks>
</Docs>
<Attributes>
<Attribute>
<AttributeName>GLib.Property("aa")</AttributeName>
</Attribute>
</Attributes>
</Member>
<Member MemberName="DrawBackground">
<MemberSignature Language="C#" Value="public event Gnome.DrawBackgroundHandler DrawBackground;" />
<MemberType>Event</MemberType>
<ReturnValue>
<ReturnType>Gnome.DrawBackgroundHandler</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>
Emitted to draw the background for non-antialiased mode
canvas widgets. The default method uses the canvas widget's
style to draw the background.
</summary>
<remarks>
</remarks>
</Docs>
<Attributes>
<Attribute>
<AttributeName>GLib.Signal("draw_background")</AttributeName>
</Attribute>
</Attributes>
</Member>
<Member MemberName="RenderBackground">
<MemberSignature Language="C#" Value="public event Gnome.RenderBackgroundHandler RenderBackground;" />
<MemberType>Event</MemberType>
<ReturnValue>
<ReturnType>Gnome.RenderBackgroundHandler</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>
This signal is emitted for antialiased mode canvas widgets
to render the background. The buf data structure contains
both a pointer to a packed 24-bit RGB array and the
coordinates.
</summary>
<remarks>
</remarks>
</Docs>
<Attributes>
<Attribute>
<AttributeName>GLib.Signal("render_background")</AttributeName>
</Attribute>
</Attributes>
</Member>
<Member MemberName="GetScrollRegion">
<MemberSignature Language="C#" Value="public void GetScrollRegion (out double x1, out double y1, out double x2, out double y2);" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="x1" Type="System.Double&amp;" RefType="out" />
<Parameter Name="y1" Type="System.Double&amp;" RefType="out" />
<Parameter Name="x2" Type="System.Double&amp;" RefType="out" />
<Parameter Name="y2" Type="System.Double&amp;" RefType="out" />
</Parameters>
<Docs>
<summary>Queries the scrolling region of a canvas.</summary>
<param name="x1">Return value for the leftmost limit of the scrolling region</param>
<param name="y1">Return value for the upper limit of the scrolling region</param>
<param name="x2">Return value for the rightmost limit of the scrolling region</param>
<param name="y2">Return value for the lower limit of the scrolling region</param>
<remarks>
</remarks>
</Docs>
</Member>
<Member MemberName="WorldToWindow">
<MemberSignature Language="C#" Value="public void WorldToWindow (double worldx, double worldy, out double winx, out double winy);" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="worldx" Type="System.Double" />
<Parameter Name="worldy" Type="System.Double" />
<Parameter Name="winx" Type="System.Double&amp;" RefType="out" />
<Parameter Name="winy" Type="System.Double&amp;" RefType="out" />
</Parameters>
<Docs>
<summary>Converts world coordinates into window-relative coordinates.</summary>
<param name="worldx">World X coordinate.</param>
<param name="worldy">World Y coordinate.</param>
<param name="winx">Return value for the X window-relative coordinate.</param>
<param name="winy">Return value for the Y window-relative coordinate.</param>
<remarks>
</remarks>
</Docs>
</Member>
<Member MemberName="GType">
<MemberSignature Language="C#" Value="public static GLib.GType GType { get; };" />
<MemberType>Property</MemberType>
<ReturnValue>
<ReturnType>GLib.GType</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>GType Property.</summary>
<value>a <see cref="T:GLib.GType" /></value>
<remarks>Returns the native <see cref="T:GLib.GType" /> value for <see cref="T:Gnome.Canvas" />.</remarks>
</Docs>
</Member>
<Member MemberName="OnDrawBackground">
<MemberSignature Language="C#" Value="protected virtual void OnDrawBackground (Gdk.Drawable drawable, int x, int y, int width, int height);" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="drawable" Type="Gdk.Drawable" />
<Parameter Name="x" Type="System.Int32" />
<Parameter Name="y" Type="System.Int32" />
<Parameter Name="width" Type="System.Int32" />
<Parameter Name="height" Type="System.Int32" />
</Parameters>
<Docs>
<summary>Default handler for the <see cref="M:Gnome.Canvas.DrawBackground" /> event.</summary>
<param name="drawable">a <see cref="T:Gdk.Drawable" /></param>
<param name="x">a <see cref="T:System.Int32" /></param>
<param name="y">a <see cref="T:System.Int32" /></param>
<param name="width">a <see cref="T:System.Int32" /></param>
<param name="height">a <see cref="T:System.Int32" /></param>
<remarks>Override this method in a subclass to provide a default handler for the <see cref="M:Gnome.Canvas.DrawBackground" /> event.</remarks>
</Docs>
</Member>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="protected Canvas (GLib.GType gtype);" />
<MemberType>Constructor</MemberType>
<ReturnValue />
<Parameters>
<Parameter Name="gtype" Type="GLib.GType" />
</Parameters>
<Docs>
<summary>Protected Constructor.</summary>
<param name="gtype">a <see cref="T:GLib.GType" /></param>
<remarks>Chain to this constructor if you have manually registered a native <see cref="T:GLib.GType" /> value for your subclass.</remarks>
</Docs>
<Attributes>
<Attribute>
<AttributeName>System.Obsolete</AttributeName>
</Attribute>
</Attributes>
</Member>
<Member MemberName="PixelsPerUnit">
<MemberSignature Language="C#" Value="public double PixelsPerUnit { set; get; };" />
<MemberType>Property</MemberType>
<ReturnValue>
<ReturnType>System.Double</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Gets or Sets the number of pixels that correspond to one canvas unit.</summary>
<value>a <see cref="T:System.Double" /></value>
<remarks>
<para>
The anchor point for zooming, i.e. the point that stays
fixed and all others zoom inwards or outwards from it,
depends on whether the canvas is set to center the
scrolling region or not. You can control this using the
<see cref="P:Gnome.CanvasCenterScrollRegion" /> function. If the
canvas is set to center the scroll region, then the center
of the canvas window is used as the anchor point for
zooming. Otherwise, the upper-left corner of the canvas
window is used as the anchor point.
</para>
</remarks>
</Docs>
</Member>
<Member MemberName="W2cAffine">
<MemberSignature Language="C#" Value="public void W2cAffine (out double[] affine);" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="affine" Type="System.Double[]&amp;" RefType="out" />
</Parameters>
<Docs>
<param name="affine">To be added.</param>
<summary>To be added.</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="OnRenderBackground">
<MemberSignature Language="C#" Value="protected virtual void OnRenderBackground (Gnome.CanvasBuf buf);" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="buf" Type="Gnome.CanvasBuf" />
</Parameters>
<Docs>
<param name="buf">To be added.</param>
<summary>Default handler for the <see cref="M:Gnome.Canvas.RenderBackground" /> event.</summary>
<remarks>Override this method in a subclass to provide a default handler for the <see cref="M:Gnome.Canvas.RenderBackground" /> event.</remarks>
</Docs>
</Member>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public Canvas (bool is_aa);" />
<MemberType>Constructor</MemberType>
<Parameters>
<Parameter Name="is_aa" Type="System.Boolean" />
</Parameters>
<Docs>
<param name="is_aa">
<see langword="true" /> if an antialiased canvas should be created.</param>
<summary>Constructs a canvas with or without antialiasing.</summary>
<remarks />
<since version="Gtk# 2.4" />
</Docs>
</Member>
<Member MemberName="FocusedItem">
<MemberSignature Language="C#" Value="public Gnome.CanvasItem FocusedItem { set; get; };" />
<MemberType>Property</MemberType>
<Attributes>
<Attribute>
<AttributeName>GLib.Property("focused_item")</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>Gnome.CanvasItem</ReturnType>
</ReturnValue>
<Docs>
<summary>To be added.</summary>
<value>To be added.</value>
<remarks>To be added.</remarks>
<since version="Gnome# 2.20" />
</Docs>
</Member>
</Members>
</Type>