<Type Name="Viewport" FullName="Gtk.Viewport">
  <TypeSignature Language="C#" Value="public class Viewport : Gtk.Bin, Implementor, IWrapper, 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 <see cref="T:Gtk.Container" /> that allows a scrollable view of its child when added to a <see cref="T:Gtk.ScrolledWindow" />.</summary>
    <remarks>
      <para>To scroll correctly, a <see cref="T:Gtk.ScrolledWindow" /> ordinarily requires explicit support from the <see cref="T:Gtk.Widget" /> that will be scrolled. However, a Viewport adds scrolling capabilities to an arbitrary child widget. For example, you can add a collection of widgets to a <see cref="T:Gtk.Table" /> container. By simply placing the <see cref="T:Gtk.Table" /> in a Viewport, you need only add the Viewport to a <see cref="T:Gtk.ScrolledWindow" /> to visually scroll the contents of your Table.</para>
      <para>The "model" of this widget consists of horizontal and vertical <see cref="T:Gtk.Adjustment" /> objects. These do not need to be explicitly set to use the Viewport. Packing a child widget as demonstrated in the example, below, is all that is required.</para>
      <para>The appearance of the Viewport can be adjusted using the <see cref="P:Gtk.Viewport.ShadowType" /> property.</para>
      <para>The following example creates a <see cref="T:Gtk.Table" /> in a Viewport. When placed in a small <see cref="T:Gtk.Window" />, the widgets can be scrolled.
      
      <example>
          <code lang="C#">
public ScrolledWindow CreateViewport()
{
    ScrolledWindow scroller = new ScrolledWindow();
    Viewport viewer = new Viewport();

    // Create a table with text entries in it
    Table widgets = new Table(1, 2, false);
    widgets.Attach(new Entry("This is example Entry 1"), 0, 1, 0, 1);
    widgets.Attach(new Entry("This is example Entry 2"), 1, 2, 0, 1);

    // Place the widgets in a Viewport, and the Viewport in a ScrolledWindow
    viewer.Add(widgets);
    scroller.Add(viewer);
    return scroller;
}
      </code>
        </example></para>
      <para>Complete example: <code lang="C#" source="Viewport1.cs" /></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="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 Viewport (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 Viewport, 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 Viewport (Gtk.Adjustment hadjustment, Gtk.Adjustment vadjustment);" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters>
        <Parameter Name="hadjustment" Type="Gtk.Adjustment" />
        <Parameter Name="vadjustment" Type="Gtk.Adjustment" />
      </Parameters>
      <Docs>
        <summary>Creates a new Viewport with the specified horizontal and vertical Adjustments.</summary>
        <param name="hadjustment">An <see cref="T:Gtk.Adjustment" /> to model horizontal viewing.</param>
        <param name="vadjustment">An <see cref="T:Gtk.Adjustment" /> to model vertical viewing.</param>
        <returns>A new Viewport</returns>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="Hadjustment">
      <MemberSignature Language="C#" Value="public Gtk.Adjustment Hadjustment { set; get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>Gtk.Adjustment</ReturnType>
      </ReturnValue>
      <Parameters>
      </Parameters>
      <Docs>
        <summary>Manage the horizontal model.</summary>
        <param name="value">A new <see cref="T:Gtk.Adjustment" /> for horizontal scrolling.</param>
        <returns>The current state of the horizontal model</returns>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="Vadjustment">
      <MemberSignature Language="C#" Value="public Gtk.Adjustment Vadjustment { set; get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>Gtk.Adjustment</ReturnType>
      </ReturnValue>
      <Parameters>
      </Parameters>
      <Docs>
        <summary>Manage the vertical model.</summary>
        <param name="value">A new <see cref="T:Gtk.Adjustment" /> for vertical scrolling.</param>
        <returns>The current state of the vertical model.</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>
      </Parameters>
      <Docs>
        <summary>Manage the shadow style surrounding the Viewport contents.</summary>
        <param name="value">A new shadow style.</param>
        <returns>The current shadow style surrounding the child widget.</returns>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="ScrollAdjustmentsSet">
      <MemberSignature Language="C#" Value="public event Gtk.ScrollAdjustmentsSetHandler ScrollAdjustmentsSet;" />
      <MemberType>Event</MemberType>
      <ReturnValue>
        <ReturnType>Gtk.ScrollAdjustmentsSetHandler</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>This event is fired when the <see cref="P:Gtk.Viewport.VAdjustment" /> or <see cref="P:Gtk.Viewport.HAdjustment" /> properties are set.</summary>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="public Viewport ();" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters />
      <Docs>
        <summary>The main way to create a Viewport.</summary>
        <returns>A new Viewport.</returns>
        <remarks>
          <para>Horizontal and vertical <see cref="T:Gtk.Adjustment" /> objects are automatically created.</para>
        </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>To be added</summary>
        <returns>a <see cref="T:GLib.GType" /></returns>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
    <Member MemberName="OverrideScrollAdjustmentsSet">
      <MemberSignature Language="C#" Value="protected static void OverrideScrollAdjustmentsSet (GLib.GType gtype);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="gtype" Type="GLib.GType" />
      </Parameters>
      <Docs>
        <summary>To be added</summary>
        <param name="gtype">a <see cref="T:GLib.GType" /></param>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
    <Member MemberName="OnScrollAdjustmentsSet">
      <MemberSignature Language="C#" Value="protected virtual void OnScrollAdjustmentsSet (Gtk.Adjustment hadjustment, Gtk.Adjustment vadjustment);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="hadjustment" Type="Gtk.Adjustment" />
        <Parameter Name="vadjustment" Type="Gtk.Adjustment" />
      </Parameters>
      <Docs>
        <summary>To be added</summary>
        <param name="hadjustment">a <see cref="T:Gtk.Adjustment" /></param>
        <param name="vadjustment">a <see cref="T:Gtk.Adjustment" /></param>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="protected Viewport (GLib.GType gtype);" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters>
        <Parameter Name="gtype" Type="GLib.GType" />
      </Parameters>
      <Docs>
        <summary>To be added</summary>
        <param name="gtype">a <see cref="T:GLib.GType" /></param>
        <returns>a <see cref="T:Gtk.Viewport" /></returns>
        <remarks>To be added</remarks>
      </Docs>
    </Member>
  </Members>
</Type>