<Type Name="Alignment" FullName="Gtk.Alignment">
  <TypeSignature Language="C#" Value="public class Alignment : Gtk.Bin, Implementor, 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>A container that controls the alignment and size of its child.</summary>
    <remarks>
      <para>An Alignment widget controls the alignment and size of its child widget. It has four settings: <see cref="P:Gtk.Alignment.Xscale" />, <see cref="P:Gtk.Alignment.Yscale" />, <see cref="P:Gtk.Alignment.Xalign" />, and <see cref="P:Gtk.Alignment.Yalign" />.</para>
      <para>The scale settings are used to specify how much the child widget should expand to fill the space allocated to the Alignment. The values can range from 0 (meaning the child doesn't expand at all) to 1 (meaning the child expands to fill all of the available space).</para>
      <para>The alignment settings are used to position the child widget within the available area. The values range from 0 (top or left) to 1 (bottom or right). If the scale settings are both set to 1, (making the child expand), the alignment settings have no effect.</para>
      <para>To add a child to an Alignment, use the <see cref="M:Gtk.Container.Add" /> method from the <see cref="T:Gtk.Container" /> class.</para>
    </remarks>
  </Docs>
  <Base>
    <BaseTypeName>Gtk.Bin</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="Set">
      <MemberSignature Language="C#" Value="public void Set (float xalign, float yalign, float xscale, float yscale);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="xalign" Type="System.Single" />
        <Parameter Name="yalign" Type="System.Single" />
        <Parameter Name="xscale" Type="System.Single" />
        <Parameter Name="yscale" Type="System.Single" />
      </Parameters>
      <Docs>
        <summary>Adjusts all the alignment and scale properties.</summary>
        <param name="xalign">The horizontal alignment of the child widget, from 0 (left) to 1 (right).</param>
        <param name="yalign">The vertical alignment of the child widget, from 0 (top) to 1 (bottom).</param>
        <param name="xscale">The amount that the child widget expands horizontally to fill up unused space, from 0 to 1.</param>
        <param name="yscale">The amount that the child widget expands vertically to fill up unused space, from 0 to 1.</param>
        <remarks>
          <para>For the scale parameters, a value of 0 indicates that the child widget should never expand. A value of 1 indicates that the child widget will expand to fill all of the space allocated for the Alignment.</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 Alignment (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 Alignment, 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 Alignment (float xalign, float yalign, float xscale, float yscale);" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters>
        <Parameter Name="xalign" Type="System.Single" />
        <Parameter Name="yalign" Type="System.Single" />
        <Parameter Name="xscale" Type="System.Single" />
        <Parameter Name="yscale" Type="System.Single" />
      </Parameters>
      <Docs>
        <summary>Creates a new Alignment with the specified alignment and spacing.</summary>
        <param name="xalign">The horizontal alignment of the child widget, from 0 (left) to 1 (right).</param>
        <param name="yalign">The vertical alignment of the child widget, from 0 (top) to 1 (bottom).</param>
        <param name="xscale">The amount that the child widget expands horizontally to fill up unused space, from 0 to 1.</param>
        <param name="yscale">The amount that the child widget expands vertically to fill up unused space, from 0 to 1.</param>
        <returns>A new Alignment.</returns>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="protected Alignment ();" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters />
      <Docs>
        <summary>Internal constructor</summary>
        <returns />
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="GType">
      <MemberSignature Language="C#" Value="public static uint GType { get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.UInt32</ReturnType>
      </ReturnValue>
      <Docs>
        <summary>The GLib Type for Gtk.Alignment</summary>
        <returns>The GLib Type for the Gtk.Alignment class.</returns>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="Yalign">
      <MemberSignature Language="C#" Value="public float Yalign { set; get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Single</ReturnType>
      </ReturnValue>
      <Parameters></Parameters>
      <Docs>
        <summary>Manage the vertical alignment of the child widget.</summary>
        <param name="value">A new vertical alignment for the child widget.</param>
        <returns>The child widget's current vertical alignment.</returns>
        <remarks>
          <para>This property is a value between 0 and 1 where 0 indicates alignment at the top of the container, and 1 indicates alignment at the bottom of the container.</para>
        </remarks>
      </Docs>
    </Member>
    <Member MemberName="Xalign">
      <MemberSignature Language="C#" Value="public float Xalign { set; get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Single</ReturnType>
      </ReturnValue>
      <Parameters></Parameters>
      <Docs>
        <summary>Manage the horizontal alignment of the child widget.</summary>
        <param name="value">A new horizontal alignment for the child widget.</param>
        <returns>The child widget's current horizontal alignment.</returns>
        <remarks>
          <para>This property is a value between 0 and 1, where 0 indicates no child expansion, and 1 indicates the child expands to fill the Alignment's allocated horizontal size.</para>
        </remarks>
      </Docs>
    </Member>
    <Member MemberName="Xscale">
      <MemberSignature Language="C#" Value="public float Xscale { set; get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Single</ReturnType>
      </ReturnValue>
      <Parameters></Parameters>
      <Docs>
        <summary>Manage the horizontal expansion of the child widget.</summary>
        <param name="value">The proportion that the child widget should expand horizontally.</param>
        <returns>The current horizontal expansion of the child widget.</returns>
        <remarks>
          <para>This property is a value between 0 and 1, where 0 indicates no child expansion, and 1 indicates the child expands to fill the Alignment's allocated horizontal size.</para>
        </remarks>
      </Docs>
    </Member>
    <Member MemberName="Yscale">
      <MemberSignature Language="C#" Value="public float Yscale { set; get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Single</ReturnType>
      </ReturnValue>
      <Parameters></Parameters>
      <Docs>
        <summary>Manage the vertical expansion of the child widget.</summary>
        <param name="value">The proportion that the child widget should expand vertically.</param>
        <returns>The current vertical expansion of the child widget.</returns>
        <remarks>
          <para>This property is a value between 0 and 1, where 0 indicates no child expansion, and 1 indicates the child expands to fill the Alignment's allocated vertical size.</para>
        </remarks>
      </Docs>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="protected Alignment (GLib.Type gtype);" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters>
        <Parameter Name="gtype" Type="GLib.Type" />
      </Parameters>
      <Docs>
        <summary>Internal constructor</summary>
        <param name="gtype">GLib type for the type</param>
        <returns>Creates a new instance of Alignment, using the GLib-provided type</returns>
        <remarks>
          <para>This is a constructor used by derivative types of <see cref="T:Gtk.Alignment" /> that would have their own GLib type assigned to it.  This is not typically used by C# code.</para>
        </remarks>
      </Docs>
    </Member>
  </Members>
</Type>