<Type Name="Arrow" FullName="Gtk.Arrow">
  <TypeSignature Language="C#" Value="public class Arrow : Gtk.Misc, Implementor, IWrapper, IWrapper, IDisposable" Maintainer="Kevin Breit" />
  <AssemblyInfo>
    <AssemblyName>gtk-sharp</AssemblyName>
    <AssemblyVersion>0.0.0.0</AssemblyVersion>
    <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>Produces an Arrow pointing in one of four cardinal directions.</summary>
    <remarks>
      <para>
	  Arrow should be used to draw simple arrows that need to
          point in one of the four cardinal directions ( <see
          cref="P:Gtk.ArrowType.Up"/>,  <see
          cref="P:Gtk.ArrowType.Down"/>,  <see
          cref="P:Gtk.ArrowType.Left"/>, or  <see
          cref="P:Gtk.ArrowType.Right"/>).
          The style of the arrow can
          be one of the following: <see cref="P:Gtk.ShadowType.None"/>,
          <see cref="P:Gtk.ShadowType.In"/>, <see
          cref="P:Gtk.ShadowType.Out"/>, <see
          cref="P:Gtk.ShadowType.EtchedIn"/> and <see
          cref="P:Gtk.ShadowType.EtchedOut"/>. Note that these directions and style types may be ammended in versions of Gtk to come.
	</para>
      <para>
	  Arrow will fill any space alloted to it, but since it is
	  inherited from <see cref="C:Gtk.Misc" />, it can be padded
	  and/or aligned, fill exactly the space the programmer
	  desires.
	</para>
      <para>
          The direction or style of an arrow can be changed after
          creation by using <see cref="P:Gtk.Arrow.ArrowType" />.
	</para>
    </remarks>
  </Docs>
  <Base>
    <BaseTypeName>Gtk.Misc</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="TypeGetType">
x      <MemberSignature Language="C#" Value="public static uint TypeGetType ();" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.UInt32</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>To be added</summary>
        <returns>To be added: an object of type 'uint'</returns>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="Finalize">
      <MemberSignature Language="C#" Value="protected virtual 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="protected Arrow (uint gtype);" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters>
        <Parameter Name="gtype" Type="System.UInt32" />
      </Parameters>
      <Docs>
        <summary>Internal constructor</summary>
        <param name="gtype">GLib type for the type</param>
        <returns>Creates a new instance of Arrow, using the GLib-provided type</returns>
        <remarks>
          <para>This is a constructor used by derivative types of <see cref="T:Gtk.Arrow" /> that would have their own GLib type assigned to it.  This is not typically used by C# code.</para>
        </remarks>
      </Docs>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="public Arrow (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 Arrow, 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 Arrow (Gtk.ArrowType arrow_type, Gtk.ShadowType shadow_type);" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters>
        <Parameter Name="arrow_type" Type="Gtk.ArrowType" />
        <Parameter Name="shadow_type" Type="Gtk.ShadowType" />
      </Parameters>
      <Docs>
        <summary>Constructor</summary>
        <param name="arrow_type">A valid ArrowType.</param>
        <param name="shadow_type">A valid ShadowType.</param>
        <returns>A new Arrow</returns>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="protected Arrow ();" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters />
      <Docs>
        <summary>Constructor</summary>
        <returns>A new Arrow</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.Arrow</summary>
        <returns>The GLib Type for the Gtk.Arrow class.</returns>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="ShadowType">
      <MemberSignature Language="C#" Value="public Gtk.ShadowType ShadowType { set; get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>Gtk.ShadowType</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="value" Type="Gtk.ShadowType" />
      </Parameters>
      <Docs>
        <summary>Used to change the appearance of an outline typically provided by a Frame.</summary>
        <param name="value">A valid Shadow type.</param>
        <returns>Returns a new ShadowType.</returns>
        <remarks>
          <para>
            Changes the appearance of an outline typically provided by a <see cref="T:Gtk.Frame" />.
        </para>
          <para>
          The shadow types are: <see cref="P:Gtk.ShadowType.None"/>,
          <see cref="P:Gtk.ShadowType.In"/>, 
          <see cref="P:Gtk.ShadowType.Out"/>, <see
          cref="P:Gtk.ShadowType.EtchedIn"/> and <see
          cref="P:Gtk.ShadowType.EtchedOut"/>.
        </para>
        </remarks>
      </Docs>
    </Member>
    <Member MemberName="ArrowType">
      <MemberSignature Language="C#" Value="public Gtk.ArrowType ArrowType { set; get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>Gtk.ArrowType</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="value" Type="Gtk.ArrowType" />
      </Parameters>
      <Docs>
        <summary>Used to change the direction of an Arrow.</summary>
        <param name="value">A valid ArrowType.</param>
        <returns>A new Arrow.</returns>
        <remarks>
          <para>
            Changes the direction of an Arrow.
          </para>
          <para>
            The cardinal directions are: <see
            cref="P:Gtk.ArrowType.Up"/>, <see
            cref="P:Gtk.ArrowType.Down"/>, <see
            cref="P:Gtk.ArrowType.Left"/> and <see cref="P:Gtk.ArrowType.Right"/>.
          </para>
        </remarks>
      </Docs>
    </Member>
  </Members>
</Type>