<Type Name="Paned" FullName="Gtk.Paned">
  <TypeSignature Language="C#" Value="public class Paned : Gtk.Container, Implementor, IWrapper, IWrapper, IDisposable" Maintainer="Lee Mallabone" />
  <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>Base class for containers that have two children separated by an adjustable pane.</summary>
    <remarks><para>This class provides methods for manipulating a panel with 2 child widgets, separated by a splitter. The concrete widgets that extend from this class are <see cref="T:Gtk.VPaned"/> for a vertical splitter, and <see cref="T:Gtk.HPaned"/> for a horizontal splitter.</para>
    <para>A paned widget draws a separator between the two child widgets that the user can drag to adjust the division.</para>
    <para>Each child widget has two options that can be set, <paramref name="resize"/> and <paramref name="shrink"/>, (set with the <see cref="M:Gtk.Paned.Pack1"/> and <see cref="M:Gtk.Paned.Pack2"/> methods). If resize is <see langword="true"/>, then when the Paned is resized, the respective child will expand or shrink along with the paned widget. If shrink is <see langword="true"/>, then the respective child can be made smaller than it's requisition by the user. Setting shrink to <see langword="false"/> allows the application to set a minimum size. If resize is <see langword="false"/> for both children, then this exhibits exactly the same behaviour as if resize is <see langword="true"/> for both children.</para>
    <para>The application can set the position of the slider as if it were set by the user with the <see cref="P:Gtk.Paned.Position"/> property.</para>
    <para><example><code lang="C#">
public Widget GetExampleFrame()
{
    HPaned splitter = new HPaned();
    Frame frame1 = new Frame("Example frame1");
    Frame frame2 = new Frame("Example frame2");

    splitter.Pack1(frame1, true, false);
    splitter.Pack2(frame2, false, false);
    splitter.ShowAll();
   
    return splitter;
}
    </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="Pack2">
      <MemberSignature Language="C#" Value="public void Pack2 (Gtk.Widget child, bool resize, bool shrink);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="child" Type="Gtk.Widget" />
        <Parameter Name="resize" Type="System.Boolean" />
        <Parameter Name="shrink" Type="System.Boolean" />
      </Parameters>
      <Docs>
        <summary>Packs a child widget into the second part of the Paned container, (the bottom or right panes).</summary>
        <param name="child">A widget for this container to manage.</param>
        <param name="resize">Whether this child should expand when the Paned widget is resized.</param>
        <param name="shrink">Whether this child can be made smaller than its default size by the user.</param>
        <remarks></remarks>
      </Docs>
    </Member>
    <Member MemberName="Pack1">
      <MemberSignature Language="C#" Value="public void Pack1 (Gtk.Widget child, bool resize, bool shrink);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="child" Type="Gtk.Widget" />
        <Parameter Name="resize" Type="System.Boolean" />
        <Parameter Name="shrink" Type="System.Boolean" />
      </Parameters>
      <Docs>
        <summary>Packs a child widget into the first part of the Paned container, (the top or left panes).</summary>
        <param name="child">A widget for this container to manage.</param>
        <param name="resize">Whether this child should expand when the Paned widget is resized.</param>
        <param name="shrink">Whether this child can be made smaller than its default size by the user.</param>
        <remarks></remarks>
              </Docs>
    </Member>
    <Member MemberName="Add2">
      <MemberSignature Language="C#" Value="public void Add2 (Gtk.Widget child);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="child" Type="Gtk.Widget" />
      </Parameters>
      <Docs>
        <summary>Adds a child widget into the second part of the Paned container, (the bottom or right panes), with default packing settings.</summary>
        <param name="child">A widget for this container to manage.</param>
        <remarks><para>This is the same as calling <see cref="M:Gtk.Paned.Pack2"/> with resize set to <see langword="false"/> and shrink set to <see langword="true"/>.</para></remarks>
      </Docs>
    </Member>
    <Member MemberName="Add1">
      <MemberSignature Language="C#" Value="public void Add1 (Gtk.Widget child);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="child" Type="Gtk.Widget" />
      </Parameters>
      <Docs>
        <summary>Adds a child widget into the first part of the Paned container, (the top or left panes), with default packing settings.</summary>
        <param name="child">A widget for this container to manage.</param>
        <remarks><para>This is the same as calling <see cref="M:Gtk.Paned.Pack1"/> with resize set to <see langword="false"/> and shrink set to <see langword="true"/>.</para></remarks>
      </Docs>
    </Member>
    <Member MemberName="ComputePosition">
      <MemberSignature Language="C#" Value="public void ComputePosition (int allocation, int child1_req, int child2_req);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="allocation" Type="System.Int32" />
        <Parameter Name="child1_req" Type="System.Int32" />
        <Parameter Name="child2_req" Type="System.Int32" />
      </Parameters>
      <Docs>
        <summary>To be added</summary>
        <param name="allocation">To be added: an object of type 'int'</param>
        <param name="child1_req">To be added: an object of type 'int'</param>
        <param name="child2_req">To be added: an object of type 'int'</param>
        <remarks>To be added</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 Paned (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 Paned, using the GLib-provided type</returns>
        <remarks>
          <para>This is a constructor used by derivative types of <see cref="T:Gtk.Paned" /> 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 Paned (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 Paned, 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="protected Paned ();" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters />
      <Docs>
        <summary>Internal constructor</summary>
        <returns></returns>
        <remarks><para>This class can not be instantiated directly - use <see cref="T:Gtk.HPaned"/> or <see cref="T:Gtk.VPaned"/>.</para></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.Paned</summary>
        <returns>The GLib TYpe for the Gtk.Paned class.</returns>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="Child2">
      <MemberSignature Language="C#" Value="public Gtk.Widget Child2 { get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>Gtk.Widget</ReturnType>
      </ReturnValue>
      <Docs>
        <summary>An accessor to the second child widget of this container</summary>
        <returns>The child widget added with <see cref="M:Gtk.Paned.Pack2"/> or <see cref="M:Gtk.Paned.Add2"/>.</returns>
        <remarks></remarks>
      </Docs>
    </Member>
    <Member MemberName="Child1">
      <MemberSignature Language="C#" Value="public Gtk.Widget Child1 { get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>Gtk.Widget</ReturnType>
      </ReturnValue>
      <Docs>
        <summary>An accessor to the first child widget of this container</summary>
        <returns>The child widget added with <see cref="M:Gtk.Paned.Pack1"/> or <see cref="M:Gtk.Paned.Add1"/>.</returns>
        <remarks></remarks>
      </Docs>
    </Member>
    <Member MemberName="Position">
      <MemberSignature Language="C#" Value="public int Position { set; get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Int32</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="value" Type="System.Int32" />
      </Parameters>
      <Docs>
        <summary>Manage the position of the splitter bar that separates the 2 child widgets.</summary>
        <param name="value">The number of pixels the splitter should appear from the left/top edge.</param>
        <returns>The current position ofh</returns>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
    <Member MemberName="PositionSet">
      <MemberSignature Language="C#" Value="public bool PositionSet { set; get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="value" Type="System.Boolean" />
      </Parameters>
      <Docs>
        <summary>To be added</summary>
        <param name="value">To be added: an object of type 'bool'</param>
        <returns>To be added: an object of type 'bool'</returns>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
    <Member MemberName="CycleHandleFocus">
      <MemberSignature Language="C#" Value="public event GtkSharp.CycleHandleFocusHandler CycleHandleFocus;" />
      <MemberType>Event</MemberType>
      <ReturnValue />
      <Parameters />
      <Docs>
        <summary>To be added</summary>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
    <Member MemberName="MoveHandle">
      <MemberSignature Language="C#" Value="public event GtkSharp.MoveHandleHandler MoveHandle;" />
      <MemberType>Event</MemberType>
      <ReturnValue />
      <Parameters />
      <Docs>
        <summary>To be added</summary>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
    <Member MemberName="CancelPosition">
      <MemberSignature Language="C#" Value="public event GtkSharp.CancelPositionHandler CancelPosition;" />
      <MemberType>Event</MemberType>
      <ReturnValue />
      <Parameters />
      <Docs>
        <summary>To be added</summary>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
    <Member MemberName="AcceptPosition">
      <MemberSignature Language="C#" Value="public event GtkSharp.AcceptPositionHandler AcceptPosition;" />
      <MemberType>Event</MemberType>
      <ReturnValue />
      <Parameters />
      <Docs>
        <summary>To be added</summary>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
    <Member MemberName="ToggleHandleFocus">
      <MemberSignature Language="C#" Value="public event GtkSharp.ToggleHandleFocusHandler ToggleHandleFocus;" />
      <MemberType>Event</MemberType>
      <ReturnValue />
      <Parameters />
      <Docs>
        <summary>To be added</summary>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
    <Member MemberName="CycleChildFocus">
      <MemberSignature Language="C#" Value="public event GtkSharp.CycleChildFocusHandler CycleChildFocus;" />
      <MemberType>Event</MemberType>
      <ReturnValue />
      <Parameters />
      <Docs>
        <summary>To be added</summary>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
  </Members>
</Type>
