<Type Name="TextView" FullName="Gtk.TextView">
  <TypeSignature Language="C#" Maintainer="duncan" Value="public class TextView : Gtk.Container" />
  <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>Widget that displays a <see cref="T:Gtk.TextBuffer" /></summary>
    <remarks>
      <example>
        <code lang="C#">
using System;
using Gtk;

class TextViewSample
{
	static void Main ()
	{
		new TextViewSample ();
	}

	TextViewSample ()
	{
		Application.Init ();
		Window win = new Window ("TextViewSample");
		win.DeleteEvent += new DeleteEventHandler (OnWinDelete);
		win.SetDefaultSize (600,400);
		
		Gtk.TextView view;
		Gtk.TextBuffer buffer;

		view = new Gtk.TextView ();
		buffer = view.Buffer;

		buffer.Text = "Hello, this is some text";

		win.Add (view);
		win.ShowAll ();

		Application.Run ();
	}

	void OnWinDelete (object obj, DeleteEventArgs args)
	{
		Application.Quit ();
	}
}
        </code>
        <para>
          Now you might put the view in a container and display it on
          the screen; when the user edits the text, events on the
          buffer will be emitted, such as <see cref="E:Gtk.TextView.Changed" />, <see cref="E:Gtk.TextView.InsertText" />,
          and so on.
        </para>
      </example>
    </remarks>
  </Docs>
  <Base>
    <BaseTypeName>Gtk.Container</BaseTypeName>
  </Base>
  <Interfaces>
  </Interfaces>
  <Members>
    <Member MemberName="BufferToWindowCoords">
      <MemberSignature Language="C#" Value="public void BufferToWindowCoords (Gtk.TextWindowType win, int buffer_x, int buffer_y, out int window_x, out int window_y);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="win" Type="Gtk.TextWindowType" />
        <Parameter Name="buffer_x" Type="System.Int32" />
        <Parameter Name="buffer_y" Type="System.Int32" />
        <Parameter Name="window_x" Type="System.Int32&amp;" RefType="out" />
        <Parameter Name="window_y" Type="System.Int32&amp;" RefType="out" />
      </Parameters>
      <Docs>
        <summary>
          Converts specified buffer coordinates to coordinates
          for window
        </summary>
        <param name="win">
          a <see cref="T:Gtk.TextWindowType" />,
          except for <see cref="T:Gtk.TextWindowType.Private" /></param>
        <param name="buffer_x">x coordinate of the buffer</param>
        <param name="buffer_y">y coordinate of the buffer</param>
        <param name="window_x">return location for the window's x coordinate</param>
        <param name="window_y">return location for the window's y coordinate</param>
        <remarks>
          <para>
            Note that you can't convert coordinates for a nonexisting
            window (see <see cref="M:Ptk.TextView.SetBorderWindowSize(Gtk.TextWindowType,System.Int32)" />.
          </para>
        </remarks>
      </Docs>
    </Member>
    <Member MemberName="GetBorderWindowSize">
      <MemberSignature Language="C#" Value="public int GetBorderWindowSize (Gtk.TextWindowType type);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Int32</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="type" Type="Gtk.TextWindowType" />
      </Parameters>
      <Docs>
        <summary>Gets the width of the specified border window.</summary>
        <param name="type">a window to return size from</param>
        <returns>the width of the window</returns>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="BackwardDisplayLine">
      <MemberSignature Language="C#" Value="public bool BackwardDisplayLine (ref Gtk.TextIter iter);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iter" Type="Gtk.TextIter&amp;" RefType="ref" />
      </Parameters>
      <Docs>
        <summary>Moves the given iter backward by one display (wrapped) line</summary>
        <param name="iter">the given <see cref="T:Gtk.TextIter" /></param>
        <returns>
          <see langword="true" /> if <paramref name="iter" /> was moved and is not on the end iterator</returns>
        <remarks>
          <para>
            Moves the given iter backward by one display (wrapped)
            line. A display line is different from a
            paragraph. Paragraphs are separated by newlines or other
            paragraph separator characters. Display lines are created
            by line-wrapping a paragraph. If wrapping is turned off,
            display lines and paragraphs will be the same. Display
            lines are divided differently for each view, since they
            depend on the view's width; paragraphs are the same in all
            views, since they depend on the contents of the <see cref="T:Gtk.TextBuffer" />.
          </para>
        </remarks>
        <since version="Gtk# 2.4" />
      </Docs>
    </Member>
    <Member MemberName="GetWindow">
      <MemberSignature Language="C#" Value="public Gdk.Window GetWindow (Gtk.TextWindowType win);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>Gdk.Window</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="win" Type="Gtk.TextWindowType" />
      </Parameters>
      <Docs>
        <summary>Retrieves the <see cref="T:Gdk.Window" /> corresponding to an area of the text view</summary>
        <param name="win">window to get</param>
        <returns>
          a <see cref="T:Gdk.Window" />, or <see langword="null" /></returns>
        <remarks>
          <para>
            Retrieves the <see cref="T:Gdk.Window" /> corresponding to
            an area of the text view; possible windows include the
            overall widget window, child windows on the left, right,
            top, bottom, and the window that displays the text
            buffer. Windows are <see langword="null" /> and
            nonexistent if their width or height is 0, and are
            nonexistent before the widget has been realized.
          </para>
        </remarks>
      </Docs>
    </Member>
    <Member MemberName="SetBorderWindowSize">
      <MemberSignature Language="C#" Value="public void SetBorderWindowSize (Gtk.TextWindowType type, int size);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="type" Type="Gtk.TextWindowType" />
        <Parameter Name="size" Type="System.Int32" />
      </Parameters>
      <Docs>
        <summary>
          Sets the width of <see cref="T:Gtk.TextWindowType.Left" />
          or <see cref="T:Gtk.TextWindowType.Right" />, or the height of
          <see cref="T:Gtk.TextWindow.Top" /> or <see cref="T:Gtk.TextWindow.Bottom" />.
        </summary>
        <param name="type">the window to affect</param>
        <param name="size">the width or height of the window</param>
        <remarks>
          <para>
            Automatically destroys the corresponding window if the
            size is set to 0, and creates the window if the size is
            set to non-zero. This function can only be used for the
            "border windows," it doesn't work with <see cref="T:Gtk.TextWindowType.Widget" />, <see cref="T:Gtk.TextWindow.Text" />, or <see cref="T:Gtk.TextWindow.Private" />.
          </para>
        </remarks>
      </Docs>
    </Member>
    <Member MemberName="PlaceCursorOnscreen">
      <MemberSignature Language="C#" Value="public bool PlaceCursorOnscreen ();" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Moves the cursor to the currently visible region of the buffer  if it isn't there already.</summary>
        <returns>
          <see langword="true" /> if the cursor had to be moved</returns>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="ForwardDisplayLineEnd">
      <MemberSignature Language="C#" Value="public bool ForwardDisplayLineEnd (ref Gtk.TextIter iter);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iter" Type="Gtk.TextIter&amp;" RefType="ref" />
      </Parameters>
      <Docs>
        <summary>Moves <paramref name="iter" /> forward to the next display line end</summary>
        <param name="iter">a <see cref="T:Gtk.TextIter" /></param>
        <returns>
          <see langword="true" /> if <paramref name="iter" /> was moved and is not on the end iterator</returns>
        <remarks>
          <para>
            Moves the given iter forward to the next display line
            end. A display line is different from a
            paragraph. Paragraphs are separated by newlines or other
            paragraph separator characters. Display lines are created
            by line-wrapping a paragraph. If wrapping is turned off,
            display lines and paragraphs will be the same. Display
            lines are divided differently for each view, since they
            depend on the view's width; paragraphs are the same in all
            views, since they depend on the contents of the
            <see cref="T:Gtk.TextBuffer" />.
          </para>
        </remarks>
        <since version="Gtk# 2.4" />
      </Docs>
    </Member>
    <Member MemberName="AddChildAtAnchor">
      <MemberSignature Language="C#" Value="public void AddChildAtAnchor (Gtk.Widget child, Gtk.TextChildAnchor anchor);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="child" Type="Gtk.Widget" />
        <Parameter Name="anchor" Type="Gtk.TextChildAnchor" />
      </Parameters>
      <Docs>
        <summary>Adds a child widget in the text buffer, at the given anchor</summary>
        <param name="child">any <see cref="M:Gtk.Widget" /></param>
        <param name="anchor">
          a <see cref="M:Gtk.TextChildAnchor" /> in the current <see cref="P:Gtk.TextView.Buffer" /></param>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="BackwardDisplayLineStart">
      <MemberSignature Language="C#" Value="public bool BackwardDisplayLineStart (ref Gtk.TextIter iter);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iter" Type="Gtk.TextIter&amp;" RefType="ref" />
      </Parameters>
      <Docs>
        <summary>Moves the given <paramref name="iter" /> backward to the next display line start</summary>
        <param name="iter">the given <see cref="T:Gtk.TextIter" /></param>
        <returns>
          <see langword="true" /> if <paramref name="iter" /> was moved and is not on the end iterator</returns>
        <remarks>
          <para>
            A display line is different from a paragraph. Paragraphs
            are separated by newlines or other paragraph separator
            characters. Display lines are created by line-wrapping a
            paragraph. If wrapping is turned off, display lines and
            paragraphs will be the same. Display lines are divided
            differently for each view, since they depend on the view's
            width; paragraphs are the same in all views, since they
            depend on the contents of the <see cref="T:Gtk.TextBuffer" />.
          </para>
        </remarks>
        <since version="Gtk# 2.4" />
      </Docs>
    </Member>
    <Member MemberName="ForwardDisplayLine">
      <MemberSignature Language="C#" Value="public bool ForwardDisplayLine (ref Gtk.TextIter iter);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iter" Type="Gtk.TextIter&amp;" RefType="ref" />
      </Parameters>
      <Docs>
        <summary>Moves the given <paramref name="iter" /> forward by one display (wrapped) line</summary>
        <param name="iter">the given <see cref="T:Gtk.TextIter" /></param>
        <returns>
          <see langword="true" /> if <paramref name="iter" /> was moved and is not on the end iterator</returns>
        <remarks>
          <para>
            A display line is different from a paragraph. Paragraphs
            are separated by newlines or other paragraph separator
            characters. Display lines are created by line-wrapping a
            paragraph. If wrapping is turned off, display lines and
            paragraphs will be the same. Display lines are divided
            differently for each view, since they depend on the view's
            width; paragraphs are the same in all views, since they
            depend on the contents of the <see cref="T:Gtk.TextBuffer" />.
          </para>
        </remarks>
        <since version="Gtk# 2.4" />
      </Docs>
    </Member>
    <Member MemberName="GetLineYrange">
      <MemberSignature Language="C#" Value="public void GetLineYrange (Gtk.TextIter iter, out int y, out int height);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iter" Type="Gtk.TextIter" />
        <Parameter Name="y" Type="System.Int32&amp;" RefType="out" />
        <Parameter Name="height" Type="System.Int32&amp;" RefType="out" />
      </Parameters>
      <Docs>
        <summary>
          Gets the y coordinate of the top of the line
          containing <paramref name="iter" />, and the height of the line
        </summary>
        <param name="iter">the given <see cref="T:Gtk.TextIter" /></param>
        <param name="y">return location for the y coordinate</param>
        <param name="height">return location for the height</param>
        <remarks>
          Gets the y coordinate of the top of the line containing
          iter, and the height of the line. The coordinate is a buffer
          coordinate; convert to window coordinates with <see cref="M:Gtk.TextView.BufferToWindowCoords(Gtk.TextWindowType,System.Int32,System.Int32,System.Int32&amp;,System.Int32&amp;)" />.
        </remarks>
      </Docs>
    </Member>
    <Member MemberName="ScrollToMark">
      <MemberSignature Language="C#" Value="public void ScrollToMark (Gtk.TextMark mark, double within_margin, bool use_align, double xalign, double yalign);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="mark" Type="Gtk.TextMark" />
        <Parameter Name="within_margin" Type="System.Double" />
        <Parameter Name="use_align" Type="System.Boolean" />
        <Parameter Name="xalign" Type="System.Double" />
        <Parameter Name="yalign" Type="System.Double" />
      </Parameters>
      <Docs>
        <summary>
          Scrolls the view so that <paramref name="mark" /> is on the
          screen in the position indicated by <paramref name="xalign" /> and <paramref name="yalign" /></summary>
        <param name="mark">a given <see cref="T:Gtk.TextMark" /></param>
        <param name="within_margin">
          margin of screen size, the valid range is 0.0 to 0.5
        </param>
        <param name="use_align">
          whether to use alignment arguments (if <see langword="false" />, just get the mark onscreen)
        </param>
        <param name="xalign">
          horizontal alignment of mark within visible area
        </param>
        <param name="yalign">
          vertical alignment of mark within visible area
        </param>
        <remarks>
          <para>
            An alignment of 0.0 indicates left or top, 1.0 indicates
            right or bottom, 0.5 means center. If <paramref name="use_align" /> is <see langword="false" />,
            the text scrolls the minimal distance to get the mark
            onscreen, possibly not scrolling at all. The effective
            screen for purposes of this function is reduced by a
            margin of size <paramref name="within_margin" />.
          </para>
        </remarks>
      </Docs>
    </Member>
    <Member MemberName="StartsDisplayLine">
      <MemberSignature Language="C#" Value="public bool StartsDisplayLine (Gtk.TextIter iter);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iter" Type="Gtk.TextIter" />
      </Parameters>
      <Docs>
        <summary>Determines whether iter is at the start of a display line</summary>
        <param name="iter">the given <see cref="T:Gtk.TextIter" /></param>
        <returns>
          <see langword="true" /> if <paramref name="iter" /> begins a wrapped line</returns>
        <remarks>
          <para>
            Determines whether iter is at the start of a display
            line. See <see cref="M:GtkTextView.ForwardDisplayLine(Gtk.TextIter)" /> for an
            explanation of display lines vs. paragraphs.
          </para>
        </remarks>
      </Docs>
    </Member>
    <Member MemberName="GetWindowType">
      <MemberSignature Language="C#" Value="public Gtk.TextWindowType GetWindowType (Gdk.Window window);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>Gtk.TextWindowType</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="window" Type="Gdk.Window" />
      </Parameters>
      <Docs>
        <summary>Used for finding out which window an event corresponds to</summary>
        <param name="window">a window type</param>
        <returns>the window type</returns>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="MoveVisually">
      <MemberSignature Language="C#" Value="public bool MoveVisually (ref Gtk.TextIter iter, int count);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iter" Type="Gtk.TextIter&amp;" RefType="ref" />
        <Parameter Name="count" Type="System.Int32" />
      </Parameters>
      <Docs>
        <summary>Move the iterator a given number of characters visually, treating it as the strong cursor position</summary>
        <param name="iter">the given <see cref="T:Gtk.TextIter" /></param>
        <param name="count">the number of characters to move (negative moves left, positive moves right)</param>
        <returns>
          <see langword="true" /> if iter moved and is not on the end iterator</returns>
        <remarks>
          <para>
            Move the iterator a given number of characters visually,
            treating it as the strong cursor position. If count is
            positive, then the new strong cursor position will be
            count positions to the right of the old cursor
            position. If count is negative then the new strong cursor
            position will be count positions to the left of the old
            cursor position.
          </para>
          <para>
            In the presence of bidirection text, the correspondence
            between logical and visual order will depend on the
            direction of the current run, and there may be jumps when
            the cursor is moved off of the end of a run.
          </para>
        </remarks>
        <since version="Gtk# 2.4" />
      </Docs>
    </Member>
    <Member MemberName="MoveMarkOnscreen">
      <MemberSignature Language="C#" Value="public bool MoveMarkOnscreen (Gtk.TextMark mark);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="mark" Type="Gtk.TextMark" />
      </Parameters>
      <Docs>
        <summary>Moves <paramref name="mark" /> within the buffer so that it's located within the currently-visible text area</summary>
        <param name="mark">a <see cref="T:Gtk.TextMark" /></param>
        <returns>
          <see langword="true" /> if the mark moved (wasn't already onscreen)</returns>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="ScrollToIter">
      <MemberSignature Language="C#" Value="public bool ScrollToIter (Gtk.TextIter iter, double within_margin, bool use_align, double xalign, double yalign);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iter" Type="Gtk.TextIter" />
        <Parameter Name="within_margin" Type="System.Double" />
        <Parameter Name="use_align" Type="System.Boolean" />
        <Parameter Name="xalign" Type="System.Double" />
        <Parameter Name="yalign" Type="System.Double" />
      </Parameters>
      <Docs>
        <summary>
          Scrolls the text view so that <paramref name="iter" /> is on
          the screen in the position indicated by <paramref name="xalign" /> and <paramref name="yalign" /></summary>
        <param name="iter">the given <see cref="T:Gtk.TextIter" /></param>
        <param name="within_margin">
          margin of screen size, the valid range is 0.0 to 0.5
        </param>
        <param name="use_align">
          whether to use alignment arguments (if <see langword="false" />, just get the mark onscreen)
        </param>
        <param name="xalign">horizontal alignment of mark within visible area</param>
        <param name="yalign">vertical alignment of mark within visible area</param>
        <returns>
          <see langword="true" /> if scrolling occurred</returns>
        <remarks>
          <para>
            Scrolls the text view so that <paramref name="iter" /> is on the screen in the
            position indicated by <paramref name="xalign" /> and <paramref name="yalign" />. An alignment of
            0.0 indicates left or top, 1.0 indicates right or bottom,
            0.5 means center. If <paramref name="use_align" /> is <see langword="false" />, the text scrolls
            the minimal distance to get the mark onscreen, possibly
            not scrolling at all. The effective screen for purposes of
            this function is reduced by a margin of size
            within_margin.
          </para>
          <para>
            NOTE: This function uses the currently-computed height of
            the lines in the text buffer. Note that line heights are
            computed in an idle handler; so this function may not have
            the desired effect if it's called before the height
            computations. To avoid oddness, consider using <see cref="M:Gtk.TextView.ScrollToMark(Gtk.TextMark,System.Double,System.Boolean,System.Double,System.Double)" /> which saves a point to be scrolled to after line
            validation.
          </para>
        </remarks>
      </Docs>
    </Member>
    <Member MemberName="ScrollMarkOnscreen">
      <MemberSignature Language="C#" Value="public void ScrollMarkOnscreen (Gtk.TextMark mark);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="mark" Type="Gtk.TextMark" />
      </Parameters>
      <Docs>
        <summary>
          Scrolls the text view the minimum distance such that <paramref name="mark" /> is contained within the visible area of
          the widget
        </summary>
        <param name="mark">
          a mark in the current <see cref="P:Gtk.TextView.Buffer" /></param>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="WindowToBufferCoords">
      <MemberSignature Language="C#" Value="public void WindowToBufferCoords (Gtk.TextWindowType win, int window_x, int window_y, out int buffer_x, out int buffer_y);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="win" Type="Gtk.TextWindowType" />
        <Parameter Name="window_x" Type="System.Int32" />
        <Parameter Name="window_y" Type="System.Int32" />
        <Parameter Name="buffer_x" Type="System.Int32&amp;" RefType="out" />
        <Parameter Name="buffer_y" Type="System.Int32&amp;" RefType="out" />
      </Parameters>
      <Docs>
        <summary>Converts coordinates on the window to buffer coordinates</summary>
        <param name="win">
          a <see cref="T:Gtk.TextWindowType" /> except <see cref="T:Gtk.TextWindowType.Private" /></param>
        <param name="window_x">x coordinate of the window</param>
        <param name="window_y">y coordinate of the window</param>
        <param name="buffer_x">return location for the buffer's x coordinate</param>
        <param name="buffer_y">return location for the buffer's y coordinate</param>
        <remarks>
          <para>
            Note that you can't convert coordinates for a nonexisting
            window (see <see cref="M:Ptk.TextView.SetBorderWindowSize(Gtk.TextWindowType,System.Int32)" />.
          </para>
        </remarks>
      </Docs>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="public TextView (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 TextView ();" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters />
      <Docs>
        <summary>Creates a new TextView</summary>
        <remarks>
          <para>
            If you don't set the <see cref="P:Gtk.TextView.Buffer" /> before using
            the text view, an empty default buffer will be created for
            you. If you want to specify your own buffer, use
            <see cref="C:Gtk.TextView(Gtk.TextBuffer)" />.
          </para>
        </remarks>
      </Docs>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="public TextView (Gtk.TextBuffer buffer);" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters>
        <Parameter Name="buffer" Type="Gtk.TextBuffer" />
      </Parameters>
      <Docs>
        <summary>Creates a new TextView displaying a specified buffer.</summary>
        <param name="buffer">the buffer to be displayed</param>
        <remarks>
          <para>
            Creates a new <see cref="T:Gtk.TextView" /> widget
            displaying the <paramref name="buffer" /> buffer. One
            buffer can be shared among many widgets.
          </para>
        </remarks>
      </Docs>
    </Member>
    <Member MemberName="DefaultAttributes">
      <MemberSignature Language="C#" Value="public Gtk.TextAttributes DefaultAttributes { get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>Gtk.TextAttributes</ReturnType>
      </ReturnValue>
      <Docs>
        <summary>The default text attributes</summary>
        <value>a <see cref="T:Gtk.TextAttribute" />s</value>
        <remarks>
          <para>
            Obtains a copy of the default text attributes. These are
            the attributes used for text unless a tag overrides
            them. You'd typically pass the default attributes in to
            <see cref="M:Gtk.TextIter.GetAttributes(System.Boolean)" /> in order to get the attributes in effect at a given
            text position.
          </para>
          <para>
            The return valuea is a copy owned by the caller of this
            function, and should be freed.
          </para>
        </remarks>
      </Docs>
    </Member>
    <Member MemberName="Buffer">
      <MemberSignature Language="C#" Value="public Gtk.TextBuffer Buffer { set; get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>Gtk.TextBuffer</ReturnType>
      </ReturnValue>
      <Parameters>
      </Parameters>
      <Docs>
        <summary>
          The <see cref="T:Gtk.TextBuffer" /> displayed by the text view
        </summary>
        <value>the current buffer that is displayed</value>
        <remarks />
      </Docs>
      <Attributes>
        <Attribute>
          <AttributeName>GLib.Property("buffer")</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="CursorVisible">
      <MemberSignature Language="C#" Value="public bool CursorVisible { set; get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
      </Parameters>
      <Docs>
        <summary>Whether the insertion point is displayed</summary>
        <value>whether the insertion point is visible</value>
        <remarks>Defaults to true.</remarks>
      </Docs>
      <Attributes>
        <Attribute>
          <AttributeName>GLib.Property("cursor-visible")</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="LeftMargin">
      <MemberSignature Language="C#" Value="public int LeftMargin { set; get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Int32</ReturnType>
      </ReturnValue>
      <Parameters>
      </Parameters>
      <Docs>
        <summary>The default left margin</summary>
        <value>The left margin.</value>
        <remarks />
      </Docs>
      <Attributes>
        <Attribute>
          <AttributeName>GLib.Property("left-margin")</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="RightMargin">
      <MemberSignature Language="C#" Value="public int RightMargin { set; get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Int32</ReturnType>
      </ReturnValue>
      <Parameters>
      </Parameters>
      <Docs>
        <summary>The default right margin</summary>
        <value>the right margin</value>
        <remarks />
      </Docs>
      <Attributes>
        <Attribute>
          <AttributeName>GLib.Property("right-margin")</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="PixelsAboveLines">
      <MemberSignature Language="C#" Value="public int PixelsAboveLines { set; get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Int32</ReturnType>
      </ReturnValue>
      <Parameters>
      </Parameters>
      <Docs>
        <summary>The default number of blank pixels above paragraphs</summary>
        <value>the number of pixels above paragraphs</value>
        <remarks>
          <para>
            Tags in the <see cref="P:Gtk.TextView.Buffer" /> may
            override the defaults.
          </para>
        </remarks>
      </Docs>
      <Attributes>
        <Attribute>
          <AttributeName>GLib.Property("pixels-above-lines")</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="Justification">
      <MemberSignature Language="C#" Value="public Gtk.Justification Justification { set; get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>Gtk.Justification</ReturnType>
      </ReturnValue>
      <Parameters>
      </Parameters>
      <Docs>
        <summary>The default justification</summary>
        <value>The default justification of paragraphs</value>
        <remarks>
          <para>
            Tags in the <see cref="P:Gtk.TextView.Buffer" /> may
            override the defaults.
          </para>
        </remarks>
      </Docs>
      <Attributes>
        <Attribute>
          <AttributeName>GLib.Property("justification")</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="Indent">
      <MemberSignature Language="C#" Value="public int Indent { set; get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Int32</ReturnType>
      </ReturnValue>
      <Parameters>
      </Parameters>
      <Docs>
        <summary>The default indentation for paragraphs</summary>
        <value>The number of pixels of indentation.</value>
        <remarks>
          <para>
            Tags in the <see cref="P:Gtk.TextView.Buffer" /> may override the default.
          </para>
        </remarks>
      </Docs>
      <Attributes>
        <Attribute>
          <AttributeName>GLib.Property("indent")</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="Editable">
      <MemberSignature Language="C#" Value="public bool Editable { set; get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters>
      </Parameters>
      <Docs>
        <summary>Whether the text can be modified by the user</summary>
        <value>Whether or not the text can be edited by the user.</value>
        <remarks>Defaults to true.</remarks>
      </Docs>
      <Attributes>
        <Attribute>
          <AttributeName>GLib.Property("editable")</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="WrapMode">
      <MemberSignature Language="C#" Value="public Gtk.WrapMode WrapMode { set; get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>Gtk.WrapMode</ReturnType>
      </ReturnValue>
      <Parameters>
      </Parameters>
      <Docs>
        <summary>Whether to wrap lines never, at word boundaries, or at character boundaries.</summary>
        <value>the <see cref="T:Gtk.WrapMode" /> of the text view </value>
        <remarks />
      </Docs>
      <Attributes>
        <Attribute>
          <AttributeName>GLib.Property("wrap-mode")</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="Tabs">
      <MemberSignature Language="C#" Value="public Pango.TabArray Tabs { set; get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>Pango.TabArray</ReturnType>
      </ReturnValue>
      <Parameters>
      </Parameters>
      <Docs>
        <summary>Custom tabs for this text</summary>
        <value>custom tabes for this text</value>
        <remarks />
      </Docs>
      <Attributes>
        <Attribute>
          <AttributeName>GLib.Property("tabs")</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="PixelsBelowLines">
      <MemberSignature Language="C#" Value="public int PixelsBelowLines { set; get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Int32</ReturnType>
      </ReturnValue>
      <Parameters>
      </Parameters>
      <Docs>
        <summary>The default number of pixels of blank space to put below paragraphs</summary>
        <value>the blank space below paragraphs in pixels</value>
        <remarks>
          <para>
            Tags in the <see cref="P:Gtk.TextView.Buffer" /> may
            override this default.
          </para>
        </remarks>
      </Docs>
      <Attributes>
        <Attribute>
          <AttributeName>GLib.Property("pixels-below-lines")</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="PixelsInsideWrap">
      <MemberSignature Language="C#" Value="public int PixelsInsideWrap { set; get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Int32</ReturnType>
      </ReturnValue>
      <Parameters>
      </Parameters>
      <Docs>
        <summary>The default number of pixels of blank space to leave between display/wrapped lines within a paragraph</summary>
        <value>default number of pixels of blank space between wrapped lines</value>
        <remarks>
          <para>
            Tags in the <see cref="P:Gtk.TextView.Buffer" /> may
            override this default.
          </para>
        </remarks>
      </Docs>
      <Attributes>
        <Attribute>
          <AttributeName>GLib.Property("pixels-inside-wrap")</AttributeName>
        </Attribute>
      </Attributes>
    </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>Raised whenever the adjustment values for the scrollbars are set.</summary>
        <remarks />
      </Docs>
      <Attributes>
        <Attribute>
          <AttributeName>GLib.Signal("set_scroll_adjustments")</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="SetAnchor">
      <MemberSignature Language="C#" Value="public event EventHandler SetAnchor;" />
      <MemberType>Event</MemberType>
      <ReturnValue>
        <ReturnType>System.EventHandler</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Raised whenever an anchor (e.g. <see cref="M:Gtk.TextChildAnchor" />) is set within the TextView. </summary>
        <remarks />
      </Docs>
      <Attributes>
        <Attribute>
          <AttributeName>GLib.Signal("set_anchor")</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="MoveCursor">
      <MemberSignature Language="C#" Value="public event Gtk.MoveCursorHandler MoveCursor;" />
      <MemberType>Event</MemberType>
      <ReturnValue>
        <ReturnType>Gtk.MoveCursorHandler</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Raised whenever the cursor is moved.</summary>
        <remarks />
      </Docs>
      <Attributes>
        <Attribute>
          <AttributeName>GLib.Signal("move_cursor")</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="PopulatePopup">
      <MemberSignature Language="C#" Value="public event Gtk.PopulatePopupHandler PopulatePopup;" />
      <MemberType>Event</MemberType>
      <ReturnValue>
        <ReturnType>Gtk.PopulatePopupHandler</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Raised when the popup dialog on this object needs to be filled with data.</summary>
        <remarks />
      </Docs>
      <Attributes>
        <Attribute>
          <AttributeName>GLib.Signal("populate_popup")</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="DeleteFromCursor">
      <MemberSignature Language="C#" Value="public event Gtk.DeleteFromCursorHandler DeleteFromCursor;" />
      <MemberType>Event</MemberType>
      <ReturnValue>
        <ReturnType>Gtk.DeleteFromCursorHandler</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Raised when text is deleted from the cursor (usually by hitting Backspace or Delete).</summary>
        <remarks />
      </Docs>
      <Attributes>
        <Attribute>
          <AttributeName>GLib.Signal("delete_from_cursor")</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="CopyClipboard">
      <MemberSignature Language="C#" Value="public event EventHandler CopyClipboard;" />
      <MemberType>Event</MemberType>
      <ReturnValue>
        <ReturnType>System.EventHandler</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Raised when text is copied to the clipboard.</summary>
        <remarks />
      </Docs>
      <Attributes>
        <Attribute>
          <AttributeName>GLib.Signal("copy_clipboard")</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="MoveFocus">
      <MemberSignature Language="C#" Value="public event Gtk.MoveFocusHandler MoveFocus;" />
      <MemberType>Event</MemberType>
      <ReturnValue>
        <ReturnType>Gtk.MoveFocusHandler</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Raised when the keyboard focus changes.</summary>
        <remarks />
      </Docs>
      <Attributes>
        <Attribute>
          <AttributeName>GLib.Signal("move_focus")</AttributeName>
        </Attribute>
        <Attribute>
          <AttributeName>System.Obsolete("Replaced by keybinding signal on Gtk.Widget")</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="PageHorizontally">
      <MemberSignature Language="C#" Value="public event Gtk.PageHorizontallyHandler PageHorizontally;" />
      <MemberType>Event</MemberType>
      <ReturnValue>
        <ReturnType>Gtk.PageHorizontallyHandler</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Raised when the user scrolls horizontally in this widget.</summary>
        <remarks />
      </Docs>
      <Attributes>
        <Attribute>
          <AttributeName>GLib.Signal("page_horizontally")</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="ToggleOverwrite">
      <MemberSignature Language="C#" Value="public event EventHandler ToggleOverwrite;" />
      <MemberType>Event</MemberType>
      <ReturnValue>
        <ReturnType>System.EventHandler</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Raised whenever the insert/overwrite flag is toggled.</summary>
        <remarks />
      </Docs>
      <Attributes>
        <Attribute>
          <AttributeName>GLib.Signal("toggle_overwrite")</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="CutClipboard">
      <MemberSignature Language="C#" Value="public event EventHandler CutClipboard;" />
      <MemberType>Event</MemberType>
      <ReturnValue>
        <ReturnType>System.EventHandler</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Raised whenever a selection is cut to the clipboard.</summary>
        <remarks />
      </Docs>
      <Attributes>
        <Attribute>
          <AttributeName>GLib.Signal("cut_clipboard")</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="InsertAtCursor">
      <MemberSignature Language="C#" Value="public event Gtk.InsertAtCursorHandler InsertAtCursor;" />
      <MemberType>Event</MemberType>
      <ReturnValue>
        <ReturnType>Gtk.InsertAtCursorHandler</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Raised whenever text is inserted at the cursor.</summary>
        <remarks />
      </Docs>
      <Attributes>
        <Attribute>
          <AttributeName>GLib.Signal("insert_at_cursor")</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="PasteClipboard">
      <MemberSignature Language="C#" Value="public event EventHandler PasteClipboard;" />
      <MemberType>Event</MemberType>
      <ReturnValue>
        <ReturnType>System.EventHandler</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Raised whenever text is pasted from the clipboard.</summary>
        <remarks />
      </Docs>
      <Attributes>
        <Attribute>
          <AttributeName>GLib.Signal("paste_clipboard")</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="GetLineAtY">
      <MemberSignature Language="C#" Value="public void GetLineAtY (out Gtk.TextIter target_iter, int y, out int line_top);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="target_iter" Type="Gtk.TextIter&amp;" RefType="out" />
        <Parameter Name="y" Type="System.Int32" />
        <Parameter Name="line_top" Type="System.Int32&amp;" RefType="out" />
      </Parameters>
      <Docs>
        <summary>This method should be fixed</summary>
        <param name="target_iter">a <see cref="T:Gtk.TextIter" /></param>
        <param name="y"> a y coordinate</param>
        <param name="line_top"> return location for top coordinate of the line</param>
        <remarks>Gets the <see cref="T:Gtk.TextIter" /> at the start of the line containing the coordinate <paramref name="y" />. <paramref name="y" /> is in buffer coordinates, convert from window coordinates with <see cref="M:Gtk.TextView.WindowToBufferCoords()" />. If non-<see langword="null" />, <paramref name="line_top" /> will be filled with the coordinate of the top edge of the line.</remarks>
      </Docs>
    </Member>
    <Member MemberName="MoveChild">
      <MemberSignature Language="C#" Value="public void MoveChild (Gtk.Widget child, int xpos, int ypos);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="child" Type="Gtk.Widget" />
        <Parameter Name="xpos" Type="System.Int32" />
        <Parameter Name="ypos" Type="System.Int32" />
      </Parameters>
      <Docs>
        <summary>Updates the position of a child</summary>
        <param name="child"> child widget already added to the text view</param>
        <param name="xpos"> new X position in window coordinates</param>
        <param name="ypos"> new Y position in window coordinates</param>
        <remarks />
      </Docs>
    </Member>
    <Member MemberName="AddChildInWindow">
      <MemberSignature Language="C#" Value="public void AddChildInWindow (Gtk.Widget child, Gtk.TextWindowType which_window, int xpos, int ypos);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="child" Type="Gtk.Widget" />
        <Parameter Name="which_window" Type="Gtk.TextWindowType" />
        <Parameter Name="xpos" Type="System.Int32" />
        <Parameter Name="ypos" Type="System.Int32" />
      </Parameters>
      <Docs>
        <summary>Adds a child at fixed coordinates in one of the text widget's windows.</summary>
        <param name="child">a <see cref="T:Gtk.Widget" /></param>
        <param name="which_window">a <see cref="T:Gtk.TextWindowType" /></param>
        <param name="xpos">a <see cref="T:System.Int32" /></param>
        <param name="ypos">a <see cref="T:System.Int32" /></param>
        <remarks>The window must have non-zero size (see <see cref="M:Gtk.TextView.SetBorderWindowSize()" />). Note that the child coordinates are given relative to the <see cref="T:Gdk.Window" /> in question, and that these coordinates have no sane relationship to scrolling. When placing a child in GTK_TEXT_WINDOW_WIDGET, scrolling is irrelevant, the child floats above all scrollable areas. But when placing a child in one of the scrollable windows (border windows or text window), you will need to compute the child's correct position in buffer coordinates any time scrolling occurs or buffer changes occur, and then call <see cref="M:Gtk.TextView.MoveChild()" /> to update the child's position. Unfortunately there is no good way to detect that scrolling has occurred, using the current API; a possible hack would be to update all child positions when the scroll adjustments change or the text buffer changes. See bug 64518 on bugzilla.gnome.org for status of fixing this issue.</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.TextView" />.</remarks>
      </Docs>
    </Member>
    <Member MemberName="OnPasteClipboard">
      <MemberSignature Language="C#" Value="protected virtual void OnPasteClipboard ();" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Default handler for the <see cref="M:Gtk.TextView.PasteClipboard" /> event.</summary>
        <remarks>Override this method in a subclass to provide a default handler for the <see cref="M:Gtk.TextView.PasteClipboard" /> event.</remarks>
      </Docs>
    </Member>
    <Member MemberName="OnInsertAtCursor">
      <MemberSignature Language="C#" Value="protected virtual void OnInsertAtCursor (string str);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="str" Type="System.String" />
      </Parameters>
      <Docs>
        <summary>Default handler for the <see cref="M:Gtk.TextView.InsertAtCursor" /> event.</summary>
        <param name="str">a <see cref="T:System.String" /></param>
        <remarks>Override this method in a subclass to provide a default handler for the <see cref="M:Gtk.TextView.InsertAtCursor" /> event.</remarks>
      </Docs>
    </Member>
    <Member MemberName="OnCutClipboard">
      <MemberSignature Language="C#" Value="protected virtual void OnCutClipboard ();" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Default handler for the <see cref="M:Gtk.TextView.CutClipboard" /> event.</summary>
        <remarks>Override this method in a subclass to provide a default handler for the <see cref="M:Gtk.TextView.CutClipboard" /> event.</remarks>
      </Docs>
    </Member>
    <Member MemberName="OnToggleOverwrite">
      <MemberSignature Language="C#" Value="protected virtual void OnToggleOverwrite ();" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Default handler for the <see cref="M:Gtk.TextView.ToggleOverwrite" /> event.</summary>
        <remarks>Override this method in a subclass to provide a default handler for the <see cref="M:Gtk.TextView.ToggleOverwrite" /> event.</remarks>
      </Docs>
    </Member>
    <Member MemberName="OnPageHorizontally">
      <MemberSignature Language="C#" Value="protected virtual void OnPageHorizontally (int count, bool extend_selection);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="count" Type="System.Int32" />
        <Parameter Name="extend_selection" Type="System.Boolean" />
      </Parameters>
      <Docs>
        <summary>Default handler for the <see cref="M:Gtk.TextView.PageHorizontally" /> event.</summary>
        <param name="count">a <see cref="T:System.Int32" /></param>
        <param name="extend_selection">a <see cref="T:System.Boolean" /></param>
        <remarks>Override this method in a subclass to provide a default handler for the <see cref="M:Gtk.TextView.PageHorizontally" /> event.</remarks>
      </Docs>
    </Member>
    <Member MemberName="OnMoveFocus">
      <MemberSignature Language="C#" Value="protected virtual void OnMoveFocus (Gtk.DirectionType direction);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="direction" Type="Gtk.DirectionType" />
      </Parameters>
      <Docs>
        <summary>Default handler for the <see cref="M:Gtk.TextView.MoveFocus" /> event.</summary>
        <param name="direction">a <see cref="T:Gtk.DirectionType" /></param>
        <remarks>Override this method in a subclass to provide a default handler for the <see cref="M:Gtk.TextView.MoveFocus" /> event.</remarks>
      </Docs>
    </Member>
    <Member MemberName="OnCopyClipboard">
      <MemberSignature Language="C#" Value="protected virtual void OnCopyClipboard ();" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Default handler for the <see cref="M:Gtk.TextView.CopyClipboard" /> event.</summary>
        <remarks>Override this method in a subclass to provide a default handler for the <see cref="M:Gtk.TextView.CopyClipboard" /> event.</remarks>
      </Docs>
    </Member>
    <Member MemberName="OnDeleteFromCursor">
      <MemberSignature Language="C#" Value="protected virtual void OnDeleteFromCursor (Gtk.DeleteType type, int count);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="type" Type="Gtk.DeleteType" />
        <Parameter Name="count" Type="System.Int32" />
      </Parameters>
      <Docs>
        <summary>Default handler for the <see cref="M:Gtk.TextView.DeleteFromCursor" /> event.</summary>
        <param name="type">a <see cref="T:Gtk.DeleteType" /></param>
        <param name="count">a <see cref="T:System.Int32" /></param>
        <remarks>Override this method in a subclass to provide a default handler for the <see cref="M:Gtk.TextView.DeleteFromCursor" /> event.</remarks>
      </Docs>
    </Member>
    <Member MemberName="OnPopulatePopup">
      <MemberSignature Language="C#" Value="protected virtual void OnPopulatePopup (Gtk.Menu menu);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="menu" Type="Gtk.Menu" />
      </Parameters>
      <Docs>
        <summary>Default handler for the <see cref="M:Gtk.TextView.PopulatePopup" /> event.</summary>
        <param name="menu">a <see cref="T:Gtk.Menu" /></param>
        <remarks>Override this method in a subclass to provide a default handler for the <see cref="M:Gtk.TextView.PopulatePopup" /> event.</remarks>
      </Docs>
    </Member>
    <Member MemberName="OnMoveCursor">
      <MemberSignature Language="C#" Value="protected virtual void OnMoveCursor (Gtk.MovementStep step, int count, bool extend_selection);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="step" Type="Gtk.MovementStep" />
        <Parameter Name="count" Type="System.Int32" />
        <Parameter Name="extend_selection" Type="System.Boolean" />
      </Parameters>
      <Docs>
        <summary>Default handler for the <see cref="M:Gtk.TextView.MoveCursor" /> event.</summary>
        <param name="step">a <see cref="T:Gtk.MovementStep" /></param>
        <param name="count">a <see cref="T:System.Int32" /></param>
        <param name="extend_selection">a <see cref="T:System.Boolean" /></param>
        <remarks>Override this method in a subclass to provide a default handler for the <see cref="M:Gtk.TextView.MoveCursor" /> event.</remarks>
      </Docs>
    </Member>
    <Member MemberName="OnSetAnchor">
      <MemberSignature Language="C#" Value="protected virtual void OnSetAnchor ();" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Default handler for the <see cref="M:Gtk.TextView.SetAnchor" /> event.</summary>
        <remarks>Override this method in a subclass to provide a default handler for the <see cref="M:Gtk.TextView.SetAnchor" /> event.</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>Default handler for the <see cref="M:Gtk.TextView.ScrollAdjustmentsSet" /> event.</summary>
        <param name="hadjustment">a <see cref="T:Gtk.Adjustment" /></param>
        <param name="vadjustment">a <see cref="T:Gtk.Adjustment" /></param>
        <remarks>Override this method in a subclass to provide a default handler for the <see cref="M:Gtk.TextView.ScrollAdjustmentsSet" /> event.</remarks>
      </Docs>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="protected TextView (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>
    <Member MemberName="GetIterAtLocation">
      <MemberSignature Language="C#" Value="public Gtk.TextIter GetIterAtLocation (int x, int y);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>Gtk.TextIter</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="x" Type="System.Int32" />
        <Parameter Name="y" Type="System.Int32" />
      </Parameters>
      <Docs>
        <summary>Retrieves the iterator at buffer coordinates <paramref name="x" /> and <paramref name="y" />.</summary>
        <param name="x"> x position, in buffer coordinates</param>
        <param name="y"> y position, in buffer coordinates</param>
        <returns>a <see cref="T:Gtk.TextIter" /></returns>
        <remarks>Buffer coordinates are coordinates for the entire buffer, not just the currently-displayed portion. If you have coordinates from an event, you have to convert those to buffer coordinates with <see cref="M:Gtk.TextView.WindowToBufferCoords()" />.</remarks>
      </Docs>
    </Member>
    <Member MemberName="GetIterLocation">
      <MemberSignature Language="C#" Value="public Gdk.Rectangle GetIterLocation (Gtk.TextIter iter);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>Gdk.Rectangle</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iter" Type="Gtk.TextIter" />
      </Parameters>
      <Docs>
        <summary>Gets a rectangle which roughly contains the character at iter.</summary>
        <param name="iter">a <see cref="T:Gtk.TextIter" /></param>
        <returns>a <see cref="T:Gdk.Rectangle" />, which is the bounds of the character at <paramref name="iter" /></returns>
        <remarks>The rectangle position is in buffer coordinates; use <see cref="M:Gtk.TextView.BufferToWindowCoords()" /> to convert these coordinates to coordinates for one of the windows in the text view.</remarks>
      </Docs>
    </Member>
    <Member MemberName="AcceptsTab">
      <MemberSignature Language="C#" Value="public bool AcceptsTab { set; get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Whether Tab will result in a tab character being entered.</summary>
        <value>a <see cref="T:System.Boolean" /></value>
        <remarks>Defaults to true.</remarks>
        <since version="Gtk# 2.4" />
      </Docs>
      <Attributes>
        <Attribute>
          <AttributeName>GLib.Property("accepts-tab")</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="Overwrite">
      <MemberSignature Language="C#" Value="public bool Overwrite { set; get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Boolean</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Whether entered text overwrites existing contents.</summary>
        <value>a <see cref="T:System.Boolean" /></value>
        <remarks>Defaults to false.</remarks>
        <since version="Gtk# 2.4" />
      </Docs>
      <Attributes>
        <Attribute>
          <AttributeName>GLib.Property("overwrite")</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="VisibleRect">
      <MemberSignature Language="C#" Value="public Gdk.Rectangle VisibleRect { get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>Gdk.Rectangle</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Returns the currently-visible region of the buffer, in buffer coordinates.</summary>
        <value>a <see cref="T:Gdk.Rectangle" /></value>
        <remarks>
          You can convert to window coordinates with <see cref="M:Gtk.TextView.BufferToWindowCoords(Gtk.TextWindowType,System.Int32,System.Int32,System.Int32&amp;,System.Int32&amp;)" />.
        </remarks>
      </Docs>
    </Member>
    <Member MemberName="Backspace">
      <MemberSignature Language="C#" Value="public event EventHandler Backspace;" />
      <MemberType>Event</MemberType>
      <ReturnValue>
        <ReturnType>System.EventHandler</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>To be added</summary>
        <remarks>To be added</remarks>
        <since version="Gtk# 2.6" />
      </Docs>
      <Attributes>
        <Attribute>
          <AttributeName>GLib.Signal("backspace")</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="OnBackspace">
      <MemberSignature Language="C#" Value="protected virtual void OnBackspace ();" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>Default handler for the <see cref="M:Gtk.TextView.Backspace" /> event.</summary>
        <remarks>Override this method in a subclass to provide a default handler for the <see cref="M:Gtk.TextView.Backspace" /> event.</remarks>
        <since version="Gtk# 2.6" />
      </Docs>
    </Member>
    <Member MemberName="GetIterAtPosition">
      <MemberSignature Language="C#" Value="public int GetIterAtPosition (Gtk.TextIter iter, int x, int y);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Int32</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="iter" Type="Gtk.TextIter" />
        <Parameter Name="x" Type="System.Int32" />
        <Parameter Name="y" Type="System.Int32" />
      </Parameters>
      <Docs>
        <summary>To be added</summary>
        <param name="iter">a <see cref="T:Gtk.TextIter" /></param>
        <param name="x">a <see cref="T:System.Int32" /></param>
        <param name="y">a <see cref="T:System.Int32" /></param>
        <returns>a <see cref="T:System.Int32" /></returns>
        <remarks>To be added</remarks>
        <since version="Gtk# 2.6" />
      </Docs>
    </Member>
  </Members>
</Type>
