Ryujinx-GtkSharp/doc/en/Gtk/Table.xml
Dan Winship 9d04b4dd06 Redo child property handling; now we generate classes to hold
the
        child properties for a given widget in a container, and generate
        the child properties as properties on those classes.
        
        * parser/gapi2xml.pl (addPropElem): don't prepend "child_" to
        child prop names any more

        * generator/ClassBase.cs (ClassBase): keep childprops separate
        from properties
        (GenChildProperties): create a subclass of Gtk.ContainerChild
        containing the container type's child properties, and override
the
        Container indexer to return that type.

        * generator/ObjectGen.cs (Generate): call GenChildProperties

        * generator/Property.cs:
        * generator/ChildProperty.cs: Simplify these a bunch, since
        * child
        properties are now represented as C# properties as well. Also
add
        [GLib.Property(cname)] and [Gtk.ChildProperty(cname)]
attributes.

        * glib/Makefile.am (sources): add PropertyAttribute.cs

        * glib/PropertyAttribute.cs: attribute used to label
        GObject properties

        * gtk/Makefile.am (sources): add ChildPropertyAttribute.cs

        * gtk/gtk-api.raw: regenerate for parser changes (remove
        "Child"/"child_" from child property names).

        * gtk/ChildPropertyAttribute.cs: attribute used to label
        GtkContainer child properties

        * gtk/Container.custom: define the ContainerChild class, and an
        indexer to return instances of it.

        * doc/en/Gtk/: update for container child property change

svn path=/trunk/gtk-sharp/; revision=36284
2004-11-18 20:31:22 +00:00

365 lines
16 KiB
XML

<Type Name="Table" FullName="Gtk.Table">
<TypeSignature Language="C#" Value="public class Table : Gtk.Container, Implementor, IWrapper, IWrapper, IDisposable" Maintainer="Lee Mallabone" />
<AssemblyInfo>
<AssemblyName>gtk-sharp</AssemblyName>
<AssemblyPublicKey>
</AssemblyPublicKey>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
<AssemblyCulture>neutral</AssemblyCulture>
<Attributes />
</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>Pack widgets in grid/table patterns.</summary>
<remarks>
<para>The Table widget allows a programmer to arrange widgets in rows and columns, making it easy to align many widgets adjacent to each other, horizontally and vertically.</para>
<para>Tables are created with a specific size - the number of rows and columns. This can be changed dynamically with the <see cref="M:Gtk.Table.Resize" /> method. Widgets are packed into the table with <see cref="M:Gtk.Table.Attach" /> methods.</para>
<para>The layout of a table can be altered by setting the spacing between rows and columns. This is done with the <see cref="P:Gtk.Table.ColumnSpacing" /> and <see cref="P:Gtk.Table.RowSpacing" /> properties, respectively. The spacing of individual cells can be adjusted with <see cref="M:Gtk.Table.SetColSpacing" />.</para>
<para>The following shows how to create a table with three widgets:
<example>
<code lang="C#">
public Widget MakeTableTester()
{
// Create a table with 2 rows and 1 column
Table tableLayout = new Table(2, 1, false);
Label longLabel = new Label("This is a label that spans at least two Entry widgets");
// Attach the label over the entire first row
tableLayout.Attach(longLabel, 0, 2, 0, 1);
// Attach an entry to each cell in the second row
tableLayout.Attach(new Entry(), 0, 1, 1, 2);
tableLayout.Attach(new Entry(), 1, 2, 1, 2);
tableLayout.ShowAll();
return tableLayout;
}
</code>
</example></para>
</remarks>
</Docs>
<Base>
<BaseTypeName>Gtk.Container</BaseTypeName>
</Base>
<Interfaces>
<Interface>
<InterfaceName>Atk.Implementor</InterfaceName>
</Interface>
<Interface>
<InterfaceName>GLib.IWrapper</InterfaceName>
</Interface>
<Interface>
<InterfaceName>GLib.IWrapper</InterfaceName>
</Interface>
<Interface>
<InterfaceName>System.IDisposable</InterfaceName>
</Interface>
</Interfaces>
<Attributes />
<Members>
<Member MemberName="SetColSpacing">
<MemberSignature Language="C#" Value="public void SetColSpacing (uint column, uint spacing);" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="column" Type="System.UInt32" />
<Parameter Name="spacing" Type="System.UInt32" />
</Parameters>
<Docs>
<summary>Sets the spacing around a specified column.</summary>
<param name="column">A zero-indexed column number to adjust the spacing of.</param>
<param name="spacing">The number of pixels on each side of the <paramref name="column" />.</param>
<remarks>
<para>To adjust the spacing between all columns, use the <see cref="P:Gtk.Table.ColumnSpacing" /> property.</para>
</remarks>
</Docs>
</Member>
<Member MemberName="GetColSpacing">
<MemberSignature Language="C#" Value="public uint GetColSpacing (uint column);" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.UInt32</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="column" Type="System.UInt32" />
</Parameters>
<Docs>
<summary>The spacing currently set for a given column.</summary>
<param name="column">A zero-indexed column number to retrieve spacing information from.</param>
<returns>The number of pixels of spacing assigned to the specified <paramref name="column" />.</returns>
<remarks />
</Docs>
</Member>
<Member MemberName="Resize">
<MemberSignature Language="C#" Value="public void Resize (uint rows, uint columns);" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="rows" Type="System.UInt32" />
<Parameter Name="columns" Type="System.UInt32" />
</Parameters>
<Docs>
<summary>Resizes the table so that the specified number of <paramref name="rows" /> and <paramref name="columns" /> are available for widget packing.</summary>
<param name="rows">The new number of rows this table should allow.</param>
<param name="columns">The new number of columns this table should allow.</param>
<remarks />
</Docs>
</Member>
<Member MemberName="Attach">
<MemberSignature Language="C#" Value="public void Attach (Gtk.Widget child, uint left_attach, uint right_attach, uint top_attach, uint bottom_attach, Gtk.AttachOptions xoptions, Gtk.AttachOptions yoptions, uint xpadding, uint ypadding);" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="child" Type="Gtk.Widget" />
<Parameter Name="left_attach" Type="System.UInt32" />
<Parameter Name="right_attach" Type="System.UInt32" />
<Parameter Name="top_attach" Type="System.UInt32" />
<Parameter Name="bottom_attach" Type="System.UInt32" />
<Parameter Name="xoptions" Type="Gtk.AttachOptions" />
<Parameter Name="yoptions" Type="Gtk.AttachOptions" />
<Parameter Name="xpadding" Type="System.UInt32" />
<Parameter Name="ypadding" Type="System.UInt32" />
</Parameters>
<Docs>
<summary>Packs a widget into the table.</summary>
<param name="child">The <see cref="T:Gtk.Widget" /> to add.</param>
<param name="left_attach">The column number to attach the left side of <paramref name="child" /> to.</param>
<param name="right_attach">The column number to attach the right side of <paramref name="child" /> to.</param>
<param name="top_attach">The row number to attach the top of <paramref name="child" /> to.</param>
<param name="bottom_attach">The row number to attach the bottom of <paramref name="child" /> to.</param>
<param name="xoptions">The horizontal packing options for this <paramref name="child" />.</param>
<param name="yoptions">The vertical packing options for this <paramref name="child" />.</param>
<param name="xpadding">The number of pixels of padding to add to the left and right of <paramref name="child" />.</param>
<param name="ypadding">The number of pixels of padding to add to the top and bottom of <paramref name="child" />.</param>
<remarks>
<para>You can pack widgets into the Table using default packing and padding with the <see cref="M:Gtk.Table.Attach(Gtk.Widget,uint,uint,uint,uint)" /> convenience method.</para>
<para>Child widgets can span as many table cells as they wish, allowing the programmer to create complex grids of Widgets.</para>
</remarks>
</Docs>
</Member>
<Member MemberName="Attach">
<MemberSignature Language="C#" Value="public void Attach (Gtk.Widget widget, uint left_attach, uint right_attach, uint top_attach, uint bottom_attach);" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="widget" Type="Gtk.Widget" />
<Parameter Name="left_attach" Type="System.UInt32" />
<Parameter Name="right_attach" Type="System.UInt32" />
<Parameter Name="top_attach" Type="System.UInt32" />
<Parameter Name="bottom_attach" Type="System.UInt32" />
</Parameters>
<Docs>
<summary>Packs a widget into the table with default packing options.</summary>
<param name="child">The <see cref="T:Gtk.Widget" /> to add.</param>
<param name="left_attach">The column number to attach the left side of <paramref name="child" /> to.</param>
<param name="right_attach">The column number to attach the right side of <paramref name="child" /> to.</param>
<param name="top_attach">The row number to attach the top of <paramref name="child" /> to.</param>
<param name="bottom_attach">The row number to attach the bottom of <paramref name="child" /> to.</param>
<remarks>
<para>To pack widgets into the table with more control over size and padding, use the alternative <see cref="M:Gtk.Table.Attach(Gtk.Widget,uint,uint,uint,uint,Gtk.AttachOptions,Gtk.AttachOptions,uint,uint)" /> method.</para>
</remarks>
</Docs>
</Member>
<Member MemberName="Finalize">
<MemberSignature Language="C#" Value="protected override void Finalize ();" />
<MemberType>Method</MemberType>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Disposes the resources associated with the object.</summary>
<remarks />
</Docs>
</Member>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public Table (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>
<returns>An instance of Table, wrapping the C object.</returns>
<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 Table (uint rows, uint columns, bool homogeneous);" />
<MemberType>Constructor</MemberType>
<ReturnValue />
<Parameters>
<Parameter Name="rows" Type="System.UInt32" />
<Parameter Name="columns" Type="System.UInt32" />
<Parameter Name="homogeneous" Type="System.Boolean" />
</Parameters>
<Docs>
<summary>Creates a new Table widget.</summary>
<param name="rows">The number of rows in this table.</param>
<param name="columns">The number of columns in this table.</param>
<param name="homogeneous">Whether all table cells are forced to be the same size.</param>
<returns>A new Table.</returns>
<remarks>
<para>The size of the table can be altered after its creation using the <see cref="M:Gtk.able.Resize" /> method.</para>
</remarks>
</Docs>
</Member>
<Member MemberName="DefaultRowSpacing">
<MemberSignature Language="C#" Value="public uint DefaultRowSpacing { get; };" />
<MemberType>Property</MemberType>
<ReturnValue>
<ReturnType>System.UInt32</ReturnType>
</ReturnValue>
<Docs>
<summary>Retrieve the spacing that gets placed between newly added rows by default.</summary>
<returns>Spacing between rows that will be added, in pixels.</returns>
<remarks />
</Docs>
</Member>
<Member MemberName="DefaultColSpacing">
<MemberSignature Language="C#" Value="public uint DefaultColSpacing { get; };" />
<MemberType>Property</MemberType>
<ReturnValue>
<ReturnType>System.UInt32</ReturnType>
</ReturnValue>
<Docs>
<summary>The default number of pixels between columns.</summary>
<returns>A <see cref="T:System.UInt32" />.</returns>
<remarks />
</Docs>
</Member>
<Member MemberName="ColumnSpacing">
<MemberSignature Language="C#" Value="public uint ColumnSpacing { set; get; };" />
<MemberType>Property</MemberType>
<ReturnValue>
<ReturnType>System.UInt32</ReturnType>
</ReturnValue>
<Parameters>
</Parameters>
<Docs>
<summary>The number of pixels between columns if it isn't the default value.</summary>
<param name="value">
<see cref="T:System.UInt32" />.</param>
<returns>A <see cref="T:System.UInt32" />.</returns>
<remarks />
</Docs>
</Member>
<Member MemberName="NColumns">
<MemberSignature Language="C#" Value="public uint NColumns { set; get; };" />
<MemberType>Property</MemberType>
<ReturnValue>
<ReturnType>System.UInt32</ReturnType>
</ReturnValue>
<Parameters>
</Parameters>
<Docs>
<summary>Manage the number of columns in this Table.</summary>
<param name="value">The number of columns that this table should have.</param>
<returns>The number of columns this table currently has.</returns>
<remarks />
</Docs>
</Member>
<Member MemberName="Homogeneous">
<MemberSignature Language="C#" Value="public bool Homogeneous { set; get; };" />
<MemberType>Property</MemberType>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Parameters>
</Parameters>
<Docs>
<summary>Manage whether all cells must be of equal size.</summary>
<param name="value">
<see langword="true" /> to set all cells to an equal size, <see langword="false" /> otherwise.</param>
<returns>
<see langword="true" /> if all cells are currently equally sized, <see langword="false" /> otherwise.</returns>
<remarks />
</Docs>
</Member>
<Member MemberName="RowSpacing">
<MemberSignature Language="C#" Value="public uint RowSpacing { set; get; };" />
<MemberType>Property</MemberType>
<ReturnValue>
<ReturnType>System.UInt32</ReturnType>
</ReturnValue>
<Parameters>
</Parameters>
<Docs>
<summary>The space between table rows.</summary>
<param name="value">A <see cref="T:System.UInt32" />.</param>
<returns>
<see cref="T:System.UInt32" />.</returns>
<remarks />
</Docs>
</Member>
<Member MemberName="NRows">
<MemberSignature Language="C#" Value="public uint NRows { set; get; };" />
<MemberType>Property</MemberType>
<ReturnValue>
<ReturnType>System.UInt32</ReturnType>
</ReturnValue>
<Parameters>
</Parameters>
<Docs>
<summary>Manage the number of rows in this Table.</summary>
<param name="value">The number of rows that this table should have.</param>
<returns>The number of rows this table currently has.</returns>
<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>
<returns>a <see cref="T:GLib.GType" /></returns>
<remarks>Returns the native <see cref="T:GLib.GType" /> value for <see cref="T:Gtk.Table" />.</remarks>
</Docs>
</Member>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="protected Table (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>
<returns>a <see cref="T:Gtk.Table" /></returns>
<remarks>Chain to this constructor if you have manually registered a native <see cref="T:GLib.GType" /> value for your subclass.</remarks>
</Docs>
</Member>
<Member MemberName="Item">
<MemberSignature Language="C#" Value="public override Gtk.Container+ContainerChild Item { get; };" />
<MemberType>Property</MemberType>
<ReturnValue>
<ReturnType>Gtk.Container+ContainerChild</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="child" Type="Gtk.Widget" />
</Parameters>
<Docs>
<summary>Accessor for child property items</summary>
<param name="child">a child of this table</param>
<returns>a <see cref="T:Gtk.Container+ContainerChild" /></returns>
<remarks>You can cast the returned object to <see cref="T:Gtk.Table+TableChild" /> to access its child properties.</remarks>
</Docs>
</Member>
</Members>
</Type>