<Type Name="AspectFrame" FullName="Gtk.AspectFrame">
  <TypeSignature Language="C#" Maintainer="Lee Mallabone" Value="public class AspectFrame : Gtk.Frame" />
  <AssemblyInfo>
    <AssemblyName>gtk-sharp</AssemblyName>
    <AssemblyPublicKey>
    </AssemblyPublicKey>
    <AssemblyVersion>2.12.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>A frame that constrains its child to a particular aspect ratio.</summary>
    <remarks>
      <para>The AspectFrame is useful when you want pack a widget so that it can resize but always retains the same aspect ratio. For instance, one might be drawing a small preview of a larger image. AspectFrame derives from <see cref="T:Gtk.Frame" />, so it can draw a label and a frame around the child. The frame will be "shrink-wrapped" to the size of the child.</para>
    </remarks>
  </Docs>
  <Base>
    <BaseTypeName>Gtk.Frame</BaseTypeName>
  </Base>
  <Interfaces>
  </Interfaces>
  <Members>
    <Member MemberName="Set">
      <MemberSignature Language="C#" Value="public void Set (float xalign, float yalign, float ratio, bool obey_child);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="xalign" Type="System.Single" />
        <Parameter Name="yalign" Type="System.Single" />
        <Parameter Name="ratio" Type="System.Single" />
        <Parameter Name="obey_child" Type="System.Boolean" />
      </Parameters>
      <Docs>
        <summary>Set the size and alignment properties of this AspectFrame.</summary>
        <param name="xalign">Horizontal alignment of the child within the allocation of the AspectFrame.</param>
        <param name="yalign">Vertical alignment of the child within the allocation of the AspectFrame.</param>
        <param name="ratio">The desired aspect ratio.</param>
        <param name="obey_child">If <see langword="true" />, ratio is ignored, and the aspect ratio is taken from the requistion of the child.</param>
        <remarks>
          <para>Alignment values range from 0.0 (left/top aligned) to 1.0 (right/bottom aligned).</para>
        </remarks>
      </Docs>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="public AspectFrame (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 AspectFrame (string label, float xalign, float yalign, float ratio, bool obey_child);" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters>
        <Parameter Name="label" Type="System.String" />
        <Parameter Name="xalign" Type="System.Single" />
        <Parameter Name="yalign" Type="System.Single" />
        <Parameter Name="ratio" Type="System.Single" />
        <Parameter Name="obey_child" Type="System.Boolean" />
      </Parameters>
      <Docs>
        <summary>The main way to construct a new AspectFrame.</summary>
        <param name="label">A title for the frame, can be <see langword="null" />.</param>
        <param name="xalign">Horizontal alignment of the child within the allocation of the AspectFrame.</param>
        <param name="yalign">Vertical alignment of the child within the allocation of the AspectFrame.</param>
        <param name="ratio">The desired aspect ratio.</param>
        <param name="obey_child">If <see langword="true" />, ratio is ignored, and the aspect ratio is taken from the requistion of the child.</param>
        <remarks>
          <para>Alignment values range from 0.0 (left/top aligned) to 1.0 (right/bottom aligned).</para>
        </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>Vertical alignment of the child widget in the AspectFrame.</summary>
        <value>A value between 0.0 and 1.0.</value>
        <remarks />
      </Docs>
      <Attributes>
        <Attribute>
          <AttributeName>GLib.Property("yalign")</AttributeName>
        </Attribute>
      </Attributes>
    </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>Horiontal alignment of the child widget in the AspectFrame.</summary>
        <value>A value between 0.0 and 1.0.</value>
        <remarks />
      </Docs>
      <Attributes>
        <Attribute>
          <AttributeName>GLib.Property("xalign")</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="Ratio">
      <MemberSignature Language="C#" Value="public float Ratio { set; get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Single</ReturnType>
      </ReturnValue>
      <Parameters>
      </Parameters>
      <Docs>
        <summary>The aspect ratio of the child widget's size.</summary>
        <value>The aspect ratio between 0.0 and 1.0 representing the child's size constraints.</value>
        <remarks>
          <para>Setting this ratio is ignored if <see cref="P:Gtk.AspectFrame.ObeyChild" /> is set to <see langword="true" />.</para>
        </remarks>
      </Docs>
      <Attributes>
        <Attribute>
          <AttributeName>GLib.Property("ratio")</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="ObeyChild">
      <MemberSignature Language="C#" Value="public bool ObeyChild { set; get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
      </Parameters>
      <Docs>
        <summary>Allow the frame to use its child widget's aspect ratio.</summary>
        <value>The current size ratio of the child widget</value>
        <remarks />
      </Docs>
      <Attributes>
        <Attribute>
          <AttributeName>GLib.Property("obey-child")</AttributeName>
        </Attribute>
      </Attributes>
    </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:Gtk.AspectFrame" />.</remarks>
      </Docs>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="protected AspectFrame (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>
  </Members>
</Type>
