<Type Name="TreeIter" FullName="Gtk.TreeIter">
  <TypeSignature Language="C#" Maintainer="auto" Value="public struct TreeIter" />
  <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>The <see cref="T:Gtk.TreeIter" /> is the primary structure for accessing a tree row.</summary>
    <remarks>Models are expected to put a unique integer in the <see cref="F:Gtk.TreeIter.Stamp" /> field, and put model-specific data in the three <see cref="F:Gtk.TreeIter.user_data" /> fields.</remarks>
  </Docs>
  <Base>
    <BaseTypeName>System.ValueType</BaseTypeName>
  </Base>
  <Interfaces />
  <Members>
    <Member MemberName="Zero">
      <MemberSignature Language="C#" Value="public static Gtk.TreeIter Zero;" />
      <MemberType>Field</MemberType>
      <ReturnValue>
        <ReturnType>Gtk.TreeIter</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Makes a new TreeIter with empty/default values.</summary>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="New">
      <MemberSignature Language="C#" Value="public static Gtk.TreeIter New (IntPtr raw);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>Gtk.TreeIter</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="raw" Type="System.IntPtr" />
      </Parameters>
      <Docs>
        <summary>Creates a new <see cref="T:Gtk.TreeIter" /> object.</summary>
        <param name="raw">an object of type <see cref="T:System.IntPtr" />, a pointer to the underlying C object.</param>
        <returns>an object of type <see cref="T:Gtk.TreeIter" /></returns>
        <remarks>This is usually called indirectly by other methods. Not for use by application developers.</remarks>
      </Docs>
    </Member>
    <Member MemberName="Copy">
      <MemberSignature Language="C#" Value="public Gtk.TreeIter Copy ();" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>Gtk.TreeIter</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Copy the TreeIter by value.</summary>
        <returns>the copy of the <see cref="T:Gtk.TreeIter" /></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>
        <value>a <see cref="T:GLib.GType" /></value>
        <remarks>Returns the native <see cref="T:GLib.GType" /> value for <see cref="T:Gtk.TreeIter" />.</remarks>
      </Docs>
    </Member>
    <Member MemberName="Stamp">
      <MemberSignature Language="C#" Value="public int Stamp;" />
      <MemberType>Field</MemberType>
      <ReturnValue>
        <ReturnType>System.Int32</ReturnType>
      </ReturnValue>
      <Parameters>
      </Parameters>
      <Docs>
        <summary>A unique stamp to catch invalid iterators.</summary>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="op_Explicit">
      <MemberSignature Language="C#" Value="public static GLib.Value op_Explicit (Gtk.TreeIter boxed);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>GLib.Value</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="boxed" Type="Gtk.TreeIter" />
      </Parameters>
      <Docs>
        <param name="boxed">To be added.</param>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="op_Explicit">
      <MemberSignature Language="C#" Value="public static Gtk.TreeIter op_Explicit (GLib.Value val);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>Gtk.TreeIter</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="val" Type="GLib.Value" />
      </Parameters>
      <Docs>
        <param name="val">To be added.</param>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="UserData">
      <MemberSignature Language="C#" Value="public IntPtr UserData { set; get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.IntPtr</ReturnType>
      </ReturnValue>
      <Docs>
        <summary>UserData property.</summary>
        <value>Pointer value representing iter contents.</value>
        <remarks>Useful to <see cref="T:Gtk.TreeModelImplementor" /> implementors to set and retrieve content values for the iterator.  Not generally useful for <see cref="T:Gtk.TreeView" /> users.</remarks>
      </Docs>
    </Member>
  </Members>
</Type>
