Sophie

Sophie

distrib > Fedora > 14 > x86_64 > media > updates > by-pkgid > 677c1b5134368504c2e447757584d19e > files > 1100

ghc-gtk-devel-0.11.2-5.fc14.i686.rpm

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<!-- Generated by HsColour, http://www.cs.york.ac.uk/fp/darcs/hscolour/ -->
<title>dist/build/Graphics/UI/Gtk/Multiline/TextIter.hs</title>
<link type='text/css' rel='stylesheet' href='hscolour.css' />
</head>
<body>
<pre><a name="line-1"></a>
<a name="line-2"></a><span class='hs-comment'>{-# LINE 2 "./Graphics/UI/Gtk/Multiline/TextIter.chs" #-}</span>
<a name="line-3"></a><span class='hs-comment'>-- -*-haskell-*-</span>
<a name="line-4"></a><span class='hs-comment'>-- GIMP Toolkit (GTK) TextIter TextBuffer</span>
<a name="line-5"></a><span class='hs-comment'>--</span>
<a name="line-6"></a><span class='hs-comment'>-- Author : Axel Simon, Andy Stewart</span>
<a name="line-7"></a><span class='hs-comment'>--</span>
<a name="line-8"></a><span class='hs-comment'>-- Created: 23 February 2002</span>
<a name="line-9"></a><span class='hs-comment'>--</span>
<a name="line-10"></a><span class='hs-comment'>-- Copyright (C) 2002-2005 Axel Simon</span>
<a name="line-11"></a><span class='hs-comment'>-- Copyright (C) 2009 Andy Stewart</span>
<a name="line-12"></a><span class='hs-comment'>--</span>
<a name="line-13"></a><span class='hs-comment'>-- This library is free software; you can redistribute it and/or</span>
<a name="line-14"></a><span class='hs-comment'>-- modify it under the terms of the GNU Lesser General Public</span>
<a name="line-15"></a><span class='hs-comment'>-- License as published by the Free Software Foundation; either</span>
<a name="line-16"></a><span class='hs-comment'>-- version 2.1 of the License, or (at your option) any later version.</span>
<a name="line-17"></a><span class='hs-comment'>--</span>
<a name="line-18"></a><span class='hs-comment'>-- This library is distributed in the hope that it will be useful,</span>
<a name="line-19"></a><span class='hs-comment'>-- but WITHOUT ANY WARRANTY; without even the implied warranty of</span>
<a name="line-20"></a><span class='hs-comment'>-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU</span>
<a name="line-21"></a><span class='hs-comment'>-- Lesser General Public License for more details.</span>
<a name="line-22"></a><span class='hs-comment'>--</span>
<a name="line-23"></a><span class='hs-comment'>-- The following functions do not make sense due to Haskell's wide character</span>
<a name="line-24"></a><span class='hs-comment'>-- representation of Unicode:</span>
<a name="line-25"></a><span class='hs-comment'>-- gtk_text_iter_get_line_index</span>
<a name="line-26"></a><span class='hs-comment'>-- gtk_text_iter_get_visible_line_index</span>
<a name="line-27"></a><span class='hs-comment'>-- gtk_text_iter_get_bytes_in_line</span>
<a name="line-28"></a><span class='hs-comment'>-- gtk_text_iter_set_line_index</span>
<a name="line-29"></a><span class='hs-comment'>-- gtk_text_iter_set_visible_line_index</span>
<a name="line-30"></a><span class='hs-comment'>--</span>
<a name="line-31"></a><span class='hs-comment'>-- All offsets are counted from 0.</span>
<a name="line-32"></a><span class='hs-comment'>--</span>
<a name="line-33"></a><span class='hs-comment'>-- |</span>
<a name="line-34"></a><span class='hs-comment'>-- Maintainer : gtk2hs-users@lists.sourceforge.net</span>
<a name="line-35"></a><span class='hs-comment'>-- Stability : provisional</span>
<a name="line-36"></a><span class='hs-comment'>-- Portability : portable (depends on GHC)</span>
<a name="line-37"></a><span class='hs-comment'>--</span>
<a name="line-38"></a><span class='hs-comment'>-- An iterator is an abstract datatype representing a pointer into a</span>
<a name="line-39"></a><span class='hs-comment'>-- 'TextBuffer'.</span>
<a name="line-40"></a><span class='hs-comment'>--</span>
<a name="line-41"></a><span class='hs-keyword'>module</span> <span class='hs-conid'>Graphics</span><span class='hs-varop'>.</span><span class='hs-conid'>UI</span><span class='hs-varop'>.</span><span class='hs-conid'>Gtk</span><span class='hs-varop'>.</span><span class='hs-conid'>Multiline</span><span class='hs-varop'>.</span><span class='hs-conid'>TextIter</span> <span class='hs-layout'>(</span>
<a name="line-42"></a>
<a name="line-43"></a><span class='hs-comment'>-- * Types</span>
<a name="line-44"></a>  <span class='hs-conid'>TextIter</span><span class='hs-layout'>,</span>
<a name="line-45"></a>  <span class='hs-conid'>TextSearchFlags</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span><span class='hs-layout'>,</span>
<a name="line-46"></a>
<a name="line-47"></a><span class='hs-comment'>-- * Methods</span>
<a name="line-48"></a>  <span class='hs-varid'>textIterCopy</span><span class='hs-layout'>,</span>
<a name="line-49"></a>  <span class='hs-varid'>textIterGetBuffer</span><span class='hs-layout'>,</span>
<a name="line-50"></a>  <span class='hs-varid'>textIterGetOffset</span><span class='hs-layout'>,</span>
<a name="line-51"></a>  <span class='hs-varid'>textIterGetLine</span><span class='hs-layout'>,</span>
<a name="line-52"></a>  <span class='hs-varid'>textIterGetLineOffset</span><span class='hs-layout'>,</span>
<a name="line-53"></a>  <span class='hs-varid'>textIterGetVisibleLineOffset</span><span class='hs-layout'>,</span>
<a name="line-54"></a>  <span class='hs-varid'>textIterGetChar</span><span class='hs-layout'>,</span>
<a name="line-55"></a>  <span class='hs-varid'>textIterGetSlice</span><span class='hs-layout'>,</span>
<a name="line-56"></a>  <span class='hs-varid'>textIterGetText</span><span class='hs-layout'>,</span>
<a name="line-57"></a>  <span class='hs-varid'>textIterGetVisibleSlice</span><span class='hs-layout'>,</span>
<a name="line-58"></a>  <span class='hs-varid'>textIterGetVisibleText</span><span class='hs-layout'>,</span>
<a name="line-59"></a>  <span class='hs-varid'>textIterGetPixbuf</span><span class='hs-layout'>,</span>
<a name="line-60"></a>  <span class='hs-varid'>textIterGetChildAnchor</span><span class='hs-layout'>,</span>
<a name="line-61"></a>  <span class='hs-varid'>textIterGetMarks</span><span class='hs-layout'>,</span>
<a name="line-62"></a>  <span class='hs-varid'>textIterGetToggledTags</span><span class='hs-layout'>,</span>
<a name="line-63"></a>  <span class='hs-varid'>textIterBeginsTag</span><span class='hs-layout'>,</span>
<a name="line-64"></a>  <span class='hs-varid'>textIterEndsTag</span><span class='hs-layout'>,</span>
<a name="line-65"></a>  <span class='hs-varid'>textIterTogglesTag</span><span class='hs-layout'>,</span>
<a name="line-66"></a>  <span class='hs-varid'>textIterHasTag</span><span class='hs-layout'>,</span>
<a name="line-67"></a>  <span class='hs-varid'>textIterGetTags</span><span class='hs-layout'>,</span>
<a name="line-68"></a>  <span class='hs-varid'>textIterEditable</span><span class='hs-layout'>,</span>
<a name="line-69"></a>  <span class='hs-varid'>textIterCanInsert</span><span class='hs-layout'>,</span>
<a name="line-70"></a>  <span class='hs-varid'>textIterStartsWord</span><span class='hs-layout'>,</span>
<a name="line-71"></a>  <span class='hs-varid'>textIterEndsWord</span><span class='hs-layout'>,</span>
<a name="line-72"></a>  <span class='hs-varid'>textIterInsideWord</span><span class='hs-layout'>,</span>
<a name="line-73"></a>  <span class='hs-varid'>textIterStartsLine</span><span class='hs-layout'>,</span>
<a name="line-74"></a>  <span class='hs-varid'>textIterEndsLine</span><span class='hs-layout'>,</span>
<a name="line-75"></a>  <span class='hs-varid'>textIterStartsSentence</span><span class='hs-layout'>,</span>
<a name="line-76"></a>  <span class='hs-varid'>textIterEndsSentence</span><span class='hs-layout'>,</span>
<a name="line-77"></a>  <span class='hs-varid'>textIterInsideSentence</span><span class='hs-layout'>,</span>
<a name="line-78"></a>  <span class='hs-varid'>textIterIsCursorPosition</span><span class='hs-layout'>,</span>
<a name="line-79"></a>  <span class='hs-varid'>textIterGetCharsInLine</span><span class='hs-layout'>,</span>
<a name="line-80"></a>  <span class='hs-varid'>textIterGetAttributes</span><span class='hs-layout'>,</span>
<a name="line-81"></a>  <span class='hs-varid'>textIterGetLanguage</span><span class='hs-layout'>,</span>
<a name="line-82"></a>  <span class='hs-varid'>textIterIsEnd</span><span class='hs-layout'>,</span>
<a name="line-83"></a>  <span class='hs-varid'>textIterIsStart</span><span class='hs-layout'>,</span>
<a name="line-84"></a>  <span class='hs-varid'>textIterForwardChar</span><span class='hs-layout'>,</span>
<a name="line-85"></a>  <span class='hs-varid'>textIterBackwardChar</span><span class='hs-layout'>,</span>
<a name="line-86"></a>  <span class='hs-varid'>textIterForwardChars</span><span class='hs-layout'>,</span>
<a name="line-87"></a>  <span class='hs-varid'>textIterBackwardChars</span><span class='hs-layout'>,</span>
<a name="line-88"></a>  <span class='hs-varid'>textIterForwardLine</span><span class='hs-layout'>,</span>
<a name="line-89"></a>  <span class='hs-varid'>textIterBackwardLine</span><span class='hs-layout'>,</span>
<a name="line-90"></a>  <span class='hs-varid'>textIterForwardLines</span><span class='hs-layout'>,</span>
<a name="line-91"></a>  <span class='hs-varid'>textIterBackwardLines</span><span class='hs-layout'>,</span>
<a name="line-92"></a>  <span class='hs-varid'>textIterForwardWordEnds</span><span class='hs-layout'>,</span>
<a name="line-93"></a>  <span class='hs-varid'>textIterBackwardWordStarts</span><span class='hs-layout'>,</span>
<a name="line-94"></a>  <span class='hs-varid'>textIterForwardWordEnd</span><span class='hs-layout'>,</span>
<a name="line-95"></a>  <span class='hs-varid'>textIterBackwardWordStart</span><span class='hs-layout'>,</span>
<a name="line-96"></a>  <span class='hs-varid'>textIterForwardCursorPosition</span><span class='hs-layout'>,</span>
<a name="line-97"></a>  <span class='hs-varid'>textIterBackwardCursorPosition</span><span class='hs-layout'>,</span>
<a name="line-98"></a>  <span class='hs-varid'>textIterForwardCursorPositions</span><span class='hs-layout'>,</span>
<a name="line-99"></a>  <span class='hs-varid'>textIterBackwardCursorPositions</span><span class='hs-layout'>,</span>
<a name="line-100"></a>  <span class='hs-varid'>textIterForwardSentenceEnds</span><span class='hs-layout'>,</span>
<a name="line-101"></a>  <span class='hs-varid'>textIterBackwardSentenceStarts</span><span class='hs-layout'>,</span>
<a name="line-102"></a>  <span class='hs-varid'>textIterForwardSentenceEnd</span><span class='hs-layout'>,</span>
<a name="line-103"></a>  <span class='hs-varid'>textIterBackwardSentenceStart</span><span class='hs-layout'>,</span>
<a name="line-104"></a>  <span class='hs-varid'>textIterSetOffset</span><span class='hs-layout'>,</span>
<a name="line-105"></a>  <span class='hs-varid'>textIterSetLine</span><span class='hs-layout'>,</span>
<a name="line-106"></a>  <span class='hs-varid'>textIterSetLineOffset</span><span class='hs-layout'>,</span>
<a name="line-107"></a>  <span class='hs-varid'>textIterSetVisibleLineOffset</span><span class='hs-layout'>,</span>
<a name="line-108"></a>  <span class='hs-varid'>textIterForwardToEnd</span><span class='hs-layout'>,</span>
<a name="line-109"></a>  <span class='hs-varid'>textIterForwardToLineEnd</span><span class='hs-layout'>,</span>
<a name="line-110"></a>  <span class='hs-varid'>textIterForwardToTagToggle</span><span class='hs-layout'>,</span>
<a name="line-111"></a>  <span class='hs-varid'>textIterBackwardToTagToggle</span><span class='hs-layout'>,</span>
<a name="line-112"></a>  <span class='hs-varid'>textIterForwardFindChar</span><span class='hs-layout'>,</span>
<a name="line-113"></a>  <span class='hs-varid'>textIterBackwardFindChar</span><span class='hs-layout'>,</span>
<a name="line-114"></a>  <span class='hs-varid'>textIterForwardSearch</span><span class='hs-layout'>,</span>
<a name="line-115"></a>  <span class='hs-varid'>textIterBackwardSearch</span><span class='hs-layout'>,</span>
<a name="line-116"></a>  <span class='hs-varid'>textIterEqual</span><span class='hs-layout'>,</span>
<a name="line-117"></a>  <span class='hs-varid'>textIterCompare</span><span class='hs-layout'>,</span>
<a name="line-118"></a>  <span class='hs-varid'>textIterInRange</span><span class='hs-layout'>,</span>
<a name="line-119"></a>  <span class='hs-varid'>textIterOrder</span><span class='hs-layout'>,</span>
<a name="line-120"></a>
<a name="line-121"></a>  <span class='hs-varid'>textIterForwardVisibleLine</span><span class='hs-layout'>,</span>
<a name="line-122"></a>  <span class='hs-varid'>textIterBackwardVisibleLine</span><span class='hs-layout'>,</span>
<a name="line-123"></a>  <span class='hs-varid'>textIterForwardVisibleLines</span><span class='hs-layout'>,</span>
<a name="line-124"></a>  <span class='hs-varid'>textIterBackwardVisibleLines</span><span class='hs-layout'>,</span>
<a name="line-125"></a>
<a name="line-126"></a>  <span class='hs-varid'>textIterForwardVisibleWordEnds</span><span class='hs-layout'>,</span>
<a name="line-127"></a>  <span class='hs-varid'>textIterBackwardVisibleWordStarts</span><span class='hs-layout'>,</span>
<a name="line-128"></a>  <span class='hs-varid'>textIterForwardVisibleWordEnd</span><span class='hs-layout'>,</span>
<a name="line-129"></a>  <span class='hs-varid'>textIterBackwardVisibleWordStart</span><span class='hs-layout'>,</span>
<a name="line-130"></a>  <span class='hs-varid'>textIterForwardVisibleCursorPosition</span><span class='hs-layout'>,</span>
<a name="line-131"></a>  <span class='hs-varid'>textIterBackwardVisibleCursorPosition</span><span class='hs-layout'>,</span>
<a name="line-132"></a>  <span class='hs-varid'>textIterForwardVisibleCursorPositions</span><span class='hs-layout'>,</span>
<a name="line-133"></a>  <span class='hs-varid'>textIterBackwardVisibleCursorPositions</span><span class='hs-layout'>,</span>
<a name="line-134"></a>
<a name="line-135"></a><span class='hs-comment'>-- * Attributes</span>
<a name="line-136"></a>  <span class='hs-varid'>textIterVisibleLineOffset</span><span class='hs-layout'>,</span>
<a name="line-137"></a>  <span class='hs-varid'>textIterOffset</span><span class='hs-layout'>,</span>
<a name="line-138"></a>  <span class='hs-varid'>textIterLineOffset</span><span class='hs-layout'>,</span>
<a name="line-139"></a>  <span class='hs-varid'>textIterLine</span><span class='hs-layout'>,</span>
<a name="line-140"></a>  <span class='hs-layout'>)</span> <span class='hs-keyword'>where</span>
<a name="line-141"></a>
<a name="line-142"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Control</span><span class='hs-varop'>.</span><span class='hs-conid'>Monad</span> <span class='hs-layout'>(</span><span class='hs-varid'>liftM</span><span class='hs-layout'>)</span>
<a name="line-143"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>Maybe</span> <span class='hs-layout'>(</span><span class='hs-varid'>fromMaybe</span><span class='hs-layout'>)</span>
<a name="line-144"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Data</span><span class='hs-varop'>.</span><span class='hs-conid'>Char</span> <span class='hs-layout'>(</span><span class='hs-varid'>chr</span><span class='hs-layout'>)</span>
<a name="line-145"></a>
<a name="line-146"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>System</span><span class='hs-varop'>.</span><span class='hs-conid'>Glib</span><span class='hs-varop'>.</span><span class='hs-conid'>FFI</span>
<a name="line-147"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>System</span><span class='hs-varop'>.</span><span class='hs-conid'>Glib</span><span class='hs-varop'>.</span><span class='hs-conid'>Flags</span> <span class='hs-layout'>(</span><span class='hs-varid'>fromFlags</span><span class='hs-layout'>)</span>
<a name="line-148"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>System</span><span class='hs-varop'>.</span><span class='hs-conid'>Glib</span><span class='hs-varop'>.</span><span class='hs-conid'>UTFString</span>
<a name="line-149"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>System</span><span class='hs-varop'>.</span><span class='hs-conid'>Glib</span><span class='hs-varop'>.</span><span class='hs-conid'>Attributes</span>
<a name="line-150"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>System</span><span class='hs-varop'>.</span><span class='hs-conid'>Glib</span><span class='hs-varop'>.</span><span class='hs-conid'>GObject</span> <span class='hs-layout'>(</span><span class='hs-varid'>makeNewGObject</span><span class='hs-layout'>)</span>
<a name="line-151"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>System</span><span class='hs-varop'>.</span><span class='hs-conid'>Glib</span><span class='hs-varop'>.</span><span class='hs-conid'>GList</span>
<a name="line-152"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Graphics</span><span class='hs-varop'>.</span><span class='hs-conid'>UI</span><span class='hs-varop'>.</span><span class='hs-conid'>Gtk</span><span class='hs-varop'>.</span><span class='hs-conid'>Types</span>
<a name="line-153"></a><span class='hs-comment'>{-# LINE 152 "./Graphics/UI/Gtk/Multiline/TextIter.chs" #-}</span>
<a name="line-154"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Graphics</span><span class='hs-varop'>.</span><span class='hs-conid'>UI</span><span class='hs-varop'>.</span><span class='hs-conid'>Gtk</span><span class='hs-varop'>.</span><span class='hs-conid'>General</span><span class='hs-varop'>.</span><span class='hs-conid'>Enums</span> <span class='hs-layout'>(</span><span class='hs-conid'>TextSearchFlags</span><span class='hs-layout'>(</span><span class='hs-keyglyph'>..</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-155"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Graphics</span><span class='hs-varop'>.</span><span class='hs-conid'>UI</span><span class='hs-varop'>.</span><span class='hs-conid'>Gtk</span><span class='hs-varop'>.</span><span class='hs-conid'>Multiline</span><span class='hs-varop'>.</span><span class='hs-conid'>Types</span>
<a name="line-156"></a><span class='hs-comment'>{-# LINE 154 "./Graphics/UI/Gtk/Multiline/TextIter.chs" #-}</span>
<a name="line-157"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Graphics</span><span class='hs-varop'>.</span><span class='hs-conid'>UI</span><span class='hs-varop'>.</span><span class='hs-conid'>Gtk</span><span class='hs-varop'>.</span><span class='hs-conid'>Multiline</span><span class='hs-varop'>.</span><span class='hs-conid'>TextTag</span>
<a name="line-158"></a><span class='hs-comment'>{-# LINE 155 "./Graphics/UI/Gtk/Multiline/TextIter.chs" #-}</span>
<a name="line-159"></a><span class='hs-keyword'>import</span> <span class='hs-conid'>Graphics</span><span class='hs-varop'>.</span><span class='hs-conid'>Rendering</span><span class='hs-varop'>.</span><span class='hs-conid'>Pango</span><span class='hs-varop'>.</span><span class='hs-conid'>BasicTypes</span>
<a name="line-160"></a><span class='hs-comment'>{-# LINE 156 "./Graphics/UI/Gtk/Multiline/TextIter.chs" #-}</span>
<a name="line-161"></a>
<a name="line-162"></a>
<a name="line-163"></a><span class='hs-comment'>{-# LINE 158 "./Graphics/UI/Gtk/Multiline/TextIter.chs" #-}</span>
<a name="line-164"></a>
<a name="line-165"></a><span class='hs-comment'>-- methods</span>
<a name="line-166"></a>
<a name="line-167"></a>
<a name="line-168"></a><a name="textIterGetBuffer"></a><span class='hs-comment'>-- | Return the 'TextBuffer' this iterator</span>
<a name="line-169"></a><span class='hs-comment'>-- is associated with.</span>
<a name="line-170"></a><span class='hs-comment'>--</span>
<a name="line-171"></a><span class='hs-definition'>textIterGetBuffer</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>TextBuffer</span>
<a name="line-172"></a><span class='hs-definition'>textIterGetBuffer</span> <span class='hs-varid'>ti</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>makeNewGObject</span> <span class='hs-varid'>mkTextBuffer</span> <span class='hs-varop'>$</span>
<a name="line-173"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_get_buffer</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span>
<a name="line-174"></a>
<a name="line-175"></a><a name="textIterGetOffset"></a><span class='hs-comment'>-- | Returns the character offset of an iterator. Each character in a</span>
<a name="line-176"></a><span class='hs-comment'>-- 'TextBuffer' has an offset, starting with 0 for the first character in the</span>
<a name="line-177"></a><span class='hs-comment'>-- buffer. Use 'Graphics.UI.Gtk.Multiline.TextBuffer.textBufferGetIterAtOffset'</span>
<a name="line-178"></a><span class='hs-comment'>-- to convert an offset back into an iterator.</span>
<a name="line-179"></a><span class='hs-comment'>--</span>
<a name="line-180"></a><span class='hs-definition'>textIterGetOffset</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Int</span>
<a name="line-181"></a><span class='hs-definition'>textIterGetOffset</span> <span class='hs-varid'>ti</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>fromIntegral</span> <span class='hs-varop'>$</span>
<a name="line-182"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_get_offset</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span>
<a name="line-183"></a>
<a name="line-184"></a><a name="textIterGetLine"></a><span class='hs-comment'>-- | Returns the line number containing the iterator. Lines in a 'TextBuffer'</span>
<a name="line-185"></a><span class='hs-comment'>-- are numbered beginning with 0 for the first line in the buffer.</span>
<a name="line-186"></a><span class='hs-comment'>--</span>
<a name="line-187"></a><span class='hs-definition'>textIterGetLine</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Int</span>
<a name="line-188"></a><span class='hs-definition'>textIterGetLine</span> <span class='hs-varid'>ti</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>fromIntegral</span> <span class='hs-varop'>$</span>
<a name="line-189"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_get_line</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span>
<a name="line-190"></a>
<a name="line-191"></a><a name="textIterGetLineOffset"></a><span class='hs-comment'>-- | Returns the character offset of the iterator, counting from the start of</span>
<a name="line-192"></a><span class='hs-comment'>-- a newline-terminated line. The first character on the line has offset 0.</span>
<a name="line-193"></a><span class='hs-comment'>--</span>
<a name="line-194"></a><span class='hs-definition'>textIterGetLineOffset</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Int</span>
<a name="line-195"></a><span class='hs-definition'>textIterGetLineOffset</span> <span class='hs-varid'>ti</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>fromIntegral</span> <span class='hs-varop'>$</span>
<a name="line-196"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_get_line_offset</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span>
<a name="line-197"></a>
<a name="line-198"></a><a name="textIterGetVisibleLineOffset"></a><span class='hs-comment'>-- | Returns the offset in characters from the start of the line to the given</span>
<a name="line-199"></a><span class='hs-comment'>-- @iter@, not counting characters that are invisible due to tags with the</span>
<a name="line-200"></a><span class='hs-comment'>-- \"invisible\" flag toggled on.</span>
<a name="line-201"></a><span class='hs-comment'>--</span>
<a name="line-202"></a><span class='hs-definition'>textIterGetVisibleLineOffset</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Int</span>
<a name="line-203"></a><span class='hs-definition'>textIterGetVisibleLineOffset</span> <span class='hs-varid'>ti</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>fromIntegral</span> <span class='hs-varop'>$</span>
<a name="line-204"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_get_visible_line_offset</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span>
<a name="line-205"></a>
<a name="line-206"></a><a name="textIterGetChar"></a><span class='hs-comment'>-- | Returns the Unicode character at this iterator.</span>
<a name="line-207"></a><span class='hs-comment'>-- If the element at this iterator is a non-character</span>
<a name="line-208"></a><span class='hs-comment'>-- element, such as an image embedded in the buffer, the Unicode \"unknown\"</span>
<a name="line-209"></a><span class='hs-comment'>-- character 0xFFFC is returned. If invoked on the end iterator,</span>
<a name="line-210"></a><span class='hs-comment'>-- @Nothigng@ is returned.</span>
<a name="line-211"></a><span class='hs-comment'>--</span>
<a name="line-212"></a><span class='hs-definition'>textIterGetChar</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Maybe</span> <span class='hs-conid'>Char</span><span class='hs-layout'>)</span>
<a name="line-213"></a><span class='hs-definition'>textIterGetChar</span> <span class='hs-varid'>ti</span> <span class='hs-keyglyph'>=</span> <span class='hs-keyword'>do</span>
<a name="line-214"></a>  <span class='hs-varid'>res</span> <span class='hs-keyglyph'>&lt;-</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>fromIntegral</span> <span class='hs-varop'>$</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_get_char</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span>
<a name="line-215"></a>  <span class='hs-varid'>return</span> <span class='hs-varop'>$</span> <span class='hs-keyword'>if</span> <span class='hs-varid'>res</span><span class='hs-varop'>==</span><span class='hs-num'>0</span> <span class='hs-keyword'>then</span> <span class='hs-conid'>Nothing</span> <span class='hs-keyword'>else</span> <span class='hs-conid'>Just</span> <span class='hs-layout'>(</span><span class='hs-varid'>chr</span> <span class='hs-varid'>res</span><span class='hs-layout'>)</span>
<a name="line-216"></a>
<a name="line-217"></a><a name="textIterGetSlice"></a><span class='hs-comment'>-- | Returns the text in the given range. A \"slice\" is a list of</span>
<a name="line-218"></a><span class='hs-comment'>-- characters, including the Unicode \"unknown\"</span>
<a name="line-219"></a><span class='hs-comment'>-- character 0xFFFC for iterable non-character elements in the buffer, such as</span>
<a name="line-220"></a><span class='hs-comment'>-- images. Because images are encoded in the slice, offsets</span>
<a name="line-221"></a><span class='hs-comment'>-- in the returned array will correspond to offsets in the text buffer.</span>
<a name="line-222"></a><span class='hs-comment'>-- Note that 0xFFFC can occur in normal text as well, so it is not a reliable</span>
<a name="line-223"></a><span class='hs-comment'>-- indicator that a pixbuf or widget is in the buffer.</span>
<a name="line-224"></a><span class='hs-comment'>--</span>
<a name="line-225"></a><span class='hs-definition'>textIterGetSlice</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>String</span>
<a name="line-226"></a><span class='hs-definition'>textIterGetSlice</span> <span class='hs-varid'>end</span> <span class='hs-varid'>start</span> <span class='hs-keyglyph'>=</span> <span class='hs-keyword'>do</span>
<a name="line-227"></a>  <span class='hs-varid'>cStr</span> <span class='hs-keyglyph'>&lt;-</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg2</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr2</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_get_slice</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>argPtr2</span><span class='hs-layout'>)</span> <span class='hs-varid'>start</span> <span class='hs-varid'>end</span>
<a name="line-228"></a>  <span class='hs-varid'>str</span> <span class='hs-keyglyph'>&lt;-</span> <span class='hs-varid'>peekUTFString</span> <span class='hs-varid'>cStr</span>
<a name="line-229"></a>  <span class='hs-varid'>g_free</span> <span class='hs-layout'>(</span><span class='hs-varid'>castPtr</span> <span class='hs-varid'>cStr</span><span class='hs-layout'>)</span>
<a name="line-230"></a>  <span class='hs-varid'>return</span> <span class='hs-varid'>str</span>
<a name="line-231"></a>
<a name="line-232"></a><a name="textIterGetText"></a><span class='hs-comment'>-- | Return the text in a given range.</span>
<a name="line-233"></a><span class='hs-comment'>--</span>
<a name="line-234"></a><span class='hs-comment'>-- * Pictures (and other objects) are stripped form the output. Thus, this</span>
<a name="line-235"></a><span class='hs-comment'>-- function does not preserve offsets.</span>
<a name="line-236"></a><span class='hs-comment'>--</span>
<a name="line-237"></a><span class='hs-definition'>textIterGetText</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>String</span>
<a name="line-238"></a><span class='hs-definition'>textIterGetText</span> <span class='hs-varid'>start</span> <span class='hs-varid'>end</span> <span class='hs-keyglyph'>=</span> <span class='hs-keyword'>do</span>
<a name="line-239"></a>  <span class='hs-varid'>cStr</span> <span class='hs-keyglyph'>&lt;-</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg2</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr2</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_get_text</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>argPtr2</span><span class='hs-layout'>)</span> <span class='hs-varid'>start</span> <span class='hs-varid'>end</span>
<a name="line-240"></a>  <span class='hs-varid'>str</span> <span class='hs-keyglyph'>&lt;-</span> <span class='hs-varid'>peekUTFString</span> <span class='hs-varid'>cStr</span>
<a name="line-241"></a>  <span class='hs-varid'>g_free</span> <span class='hs-layout'>(</span><span class='hs-varid'>castPtr</span> <span class='hs-varid'>cStr</span><span class='hs-layout'>)</span>
<a name="line-242"></a>  <span class='hs-varid'>return</span> <span class='hs-varid'>str</span>
<a name="line-243"></a>
<a name="line-244"></a><a name="textIterGetVisibleSlice"></a><span class='hs-comment'>-- | Like 'textIterGetSlice', but invisible text is not included. Invisible</span>
<a name="line-245"></a><span class='hs-comment'>-- text is usually invisible because a 'TextTag' with the \"invisible\"</span>
<a name="line-246"></a><span class='hs-comment'>-- attribute turned on has been applied to it.</span>
<a name="line-247"></a><span class='hs-comment'>--</span>
<a name="line-248"></a><span class='hs-definition'>textIterGetVisibleSlice</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>String</span>
<a name="line-249"></a><span class='hs-definition'>textIterGetVisibleSlice</span> <span class='hs-varid'>start</span> <span class='hs-varid'>end</span> <span class='hs-keyglyph'>=</span> <span class='hs-keyword'>do</span>
<a name="line-250"></a>  <span class='hs-varid'>cStr</span> <span class='hs-keyglyph'>&lt;-</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg2</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr2</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_get_visible_slice</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>argPtr2</span><span class='hs-layout'>)</span> <span class='hs-varid'>start</span> <span class='hs-varid'>end</span>
<a name="line-251"></a>  <span class='hs-varid'>str</span> <span class='hs-keyglyph'>&lt;-</span> <span class='hs-varid'>peekUTFString</span> <span class='hs-varid'>cStr</span>
<a name="line-252"></a>  <span class='hs-varid'>g_free</span> <span class='hs-layout'>(</span><span class='hs-varid'>castPtr</span> <span class='hs-varid'>cStr</span><span class='hs-layout'>)</span>
<a name="line-253"></a>  <span class='hs-varid'>return</span> <span class='hs-varid'>str</span>
<a name="line-254"></a>
<a name="line-255"></a><a name="textIterGetVisibleText"></a><span class='hs-comment'>-- | Like 'textIterGetText', but invisible text is not included. Invisible</span>
<a name="line-256"></a><span class='hs-comment'>-- text is usually invisible because a 'TextTag' with the \"invisible\"</span>
<a name="line-257"></a><span class='hs-comment'>-- attribute turned on has been applied to it.</span>
<a name="line-258"></a><span class='hs-comment'>--</span>
<a name="line-259"></a><span class='hs-definition'>textIterGetVisibleText</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>String</span>
<a name="line-260"></a><span class='hs-definition'>textIterGetVisibleText</span> <span class='hs-varid'>start</span> <span class='hs-varid'>end</span> <span class='hs-keyglyph'>=</span> <span class='hs-keyword'>do</span>
<a name="line-261"></a>  <span class='hs-varid'>cStr</span> <span class='hs-keyglyph'>&lt;-</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg2</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr2</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_get_visible_text</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>argPtr2</span><span class='hs-layout'>)</span> <span class='hs-varid'>start</span> <span class='hs-varid'>end</span>
<a name="line-262"></a>  <span class='hs-varid'>str</span> <span class='hs-keyglyph'>&lt;-</span> <span class='hs-varid'>peekUTFString</span> <span class='hs-varid'>cStr</span>
<a name="line-263"></a>  <span class='hs-varid'>g_free</span> <span class='hs-layout'>(</span><span class='hs-varid'>castPtr</span> <span class='hs-varid'>cStr</span><span class='hs-layout'>)</span>
<a name="line-264"></a>  <span class='hs-varid'>return</span> <span class='hs-varid'>str</span>
<a name="line-265"></a>
<a name="line-266"></a><a name="textIterGetPixbuf"></a><span class='hs-comment'>-- | Get the 'Pixbuf' under the iterator.</span>
<a name="line-267"></a><span class='hs-comment'>--</span>
<a name="line-268"></a><span class='hs-definition'>textIterGetPixbuf</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Maybe</span> <span class='hs-conid'>Pixbuf</span><span class='hs-layout'>)</span>
<a name="line-269"></a><span class='hs-definition'>textIterGetPixbuf</span> <span class='hs-varid'>it</span> <span class='hs-keyglyph'>=</span> <span class='hs-keyword'>do</span>
<a name="line-270"></a>  <span class='hs-varid'>pbPtr</span> <span class='hs-keyglyph'>&lt;-</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_get_pixbuf</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span> <span class='hs-varid'>it</span>
<a name="line-271"></a>  <span class='hs-keyword'>if</span> <span class='hs-varid'>pbPtr</span><span class='hs-varop'>==</span><span class='hs-varid'>nullPtr</span> <span class='hs-keyword'>then</span> <span class='hs-varid'>return</span> <span class='hs-conid'>Nothing</span> <span class='hs-keyword'>else</span> <span class='hs-varid'>liftM</span> <span class='hs-conid'>Just</span> <span class='hs-varop'>$</span>
<a name="line-272"></a>    <span class='hs-varid'>makeNewGObject</span> <span class='hs-varid'>mkPixbuf</span> <span class='hs-layout'>(</span><span class='hs-varid'>return</span> <span class='hs-varid'>pbPtr</span><span class='hs-layout'>)</span>
<a name="line-273"></a>
<a name="line-274"></a><a name="textIterGetChildAnchor"></a><span class='hs-comment'>-- | If the location at @iter@ contains a child anchor,</span>
<a name="line-275"></a><span class='hs-comment'>-- the anchor is returned (with no new reference count added).</span>
<a name="line-276"></a><span class='hs-comment'>-- Otherwise, @Nothing@ is returned.</span>
<a name="line-277"></a><span class='hs-comment'>--</span>
<a name="line-278"></a><span class='hs-definition'>textIterGetChildAnchor</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Maybe</span> <span class='hs-conid'>TextChildAnchor</span><span class='hs-layout'>)</span>
<a name="line-279"></a><span class='hs-definition'>textIterGetChildAnchor</span> <span class='hs-varid'>it</span> <span class='hs-keyglyph'>=</span> <span class='hs-keyword'>do</span>
<a name="line-280"></a>  <span class='hs-varid'>tcaPtr</span> <span class='hs-keyglyph'>&lt;-</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_get_child_anchor</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span> <span class='hs-varid'>it</span>
<a name="line-281"></a>  <span class='hs-keyword'>if</span> <span class='hs-varid'>tcaPtr</span> <span class='hs-varop'>==</span> <span class='hs-varid'>nullPtr</span> <span class='hs-keyword'>then</span> <span class='hs-varid'>return</span> <span class='hs-conid'>Nothing</span> <span class='hs-keyword'>else</span> <span class='hs-varid'>liftM</span> <span class='hs-conid'>Just</span> <span class='hs-varop'>$</span>
<a name="line-282"></a>    <span class='hs-varid'>makeNewGObject</span> <span class='hs-varid'>mkTextChildAnchor</span> <span class='hs-layout'>(</span><span class='hs-varid'>return</span> <span class='hs-varid'>tcaPtr</span><span class='hs-layout'>)</span>
<a name="line-283"></a>
<a name="line-284"></a><a name="textIterGetMarks"></a><span class='hs-comment'>-- | Returns a list of all 'TextMark' at this location. Because marks are not</span>
<a name="line-285"></a><span class='hs-comment'>-- iterable (they don't take up any \"space\" in the buffer, they are just</span>
<a name="line-286"></a><span class='hs-comment'>-- marks in between iterable locations), multiple marks can exist in the same</span>
<a name="line-287"></a><span class='hs-comment'>-- place. The returned list is not in any meaningful order.</span>
<a name="line-288"></a><span class='hs-comment'>--</span>
<a name="line-289"></a><span class='hs-definition'>textIterGetMarks</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span>
<a name="line-290"></a> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>TextMark</span><span class='hs-keyglyph'>]</span> <span class='hs-comment'>-- ^ returns list of 'TextMark'</span>
<a name="line-291"></a><span class='hs-definition'>textIterGetMarks</span> <span class='hs-varid'>self</span> <span class='hs-keyglyph'>=</span>
<a name="line-292"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_get_marks</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span>
<a name="line-293"></a><span class='hs-comment'>{-# LINE 287 "./Graphics/UI/Gtk/Multiline/TextIter.chs" #-}</span>
<a name="line-294"></a>    <span class='hs-varid'>self</span>
<a name="line-295"></a>  <span class='hs-varop'>&gt;&gt;=</span> <span class='hs-varid'>fromGSList</span>
<a name="line-296"></a>  <span class='hs-varop'>&gt;&gt;=</span> <span class='hs-varid'>mapM</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-varid'>tm</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>makeNewGObject</span> <span class='hs-varid'>mkTextMark</span> <span class='hs-layout'>(</span><span class='hs-varid'>return</span> <span class='hs-varid'>tm</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-297"></a>
<a name="line-298"></a><a name="textIterGetToggledTags"></a><span class='hs-comment'>-- | Returns a list of 'TextTag' that are toggled on or off at this point. (If</span>
<a name="line-299"></a><span class='hs-comment'>-- @toggledOn@ is @True@, the list contains tags that are toggled on.) If a tag</span>
<a name="line-300"></a><span class='hs-comment'>-- is toggled on at @iter@, then some non-empty range of characters following</span>
<a name="line-301"></a><span class='hs-comment'>-- @iter@ has that tag applied to it. If a tag is toggled off, then some</span>
<a name="line-302"></a><span class='hs-comment'>-- non-empty range following @iter@ does /not/ have the tag applied to it.</span>
<a name="line-303"></a><span class='hs-comment'>--</span>
<a name="line-304"></a><span class='hs-definition'>textIterGetToggledTags</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span>
<a name="line-305"></a> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Bool</span> <span class='hs-comment'>-- ^ @toggledOn@ - @True@ to get toggled-on tags</span>
<a name="line-306"></a> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>TextTag</span><span class='hs-keyglyph'>]</span> <span class='hs-comment'>-- ^ returns tags toggled at this point</span>
<a name="line-307"></a><span class='hs-definition'>textIterGetToggledTags</span> <span class='hs-varid'>self</span> <span class='hs-varid'>toggledOn</span> <span class='hs-keyglyph'>=</span>
<a name="line-308"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-varid'>arg2</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_get_toggled_tags</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span>
<a name="line-309"></a><span class='hs-comment'>{-# LINE 302 "./Graphics/UI/Gtk/Multiline/TextIter.chs" #-}</span>
<a name="line-310"></a>    <span class='hs-varid'>self</span>
<a name="line-311"></a>    <span class='hs-layout'>(</span><span class='hs-varid'>fromBool</span> <span class='hs-varid'>toggledOn</span><span class='hs-layout'>)</span>
<a name="line-312"></a>  <span class='hs-varop'>&gt;&gt;=</span> <span class='hs-varid'>fromGSList</span>
<a name="line-313"></a>  <span class='hs-varop'>&gt;&gt;=</span> <span class='hs-varid'>mapM</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-varid'>tt</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>makeNewGObject</span> <span class='hs-varid'>mkTextTag</span> <span class='hs-layout'>(</span><span class='hs-varid'>return</span> <span class='hs-varid'>tt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-314"></a>
<a name="line-315"></a><a name="textIterBeginsTag"></a><span class='hs-comment'>-- | Returns @True@ if @tag@ is toggled on at exactly this point. If @tag@ is</span>
<a name="line-316"></a><span class='hs-comment'>-- @Nothing@,</span>
<a name="line-317"></a><span class='hs-comment'>-- returns @True@ if any tag is toggled on at this point. Note that the</span>
<a name="line-318"></a><span class='hs-comment'>-- 'textIterBeginsTag' returns @True@ if @iter@ is the /start/ of the tagged</span>
<a name="line-319"></a><span class='hs-comment'>-- range; 'textIterHasTag' tells you whether an iterator is /within/ a tagged</span>
<a name="line-320"></a><span class='hs-comment'>-- range.</span>
<a name="line-321"></a><span class='hs-comment'>--</span>
<a name="line-322"></a><span class='hs-definition'>textIterBeginsTag</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Maybe</span> <span class='hs-conid'>TextTag</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-323"></a><span class='hs-definition'>textIterBeginsTag</span> <span class='hs-varid'>ti</span> <span class='hs-layout'>(</span><span class='hs-conid'>Just</span> <span class='hs-varid'>tt</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-324"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-conid'>TextTag</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg2</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr2</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_begins_tag</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>argPtr2</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span> <span class='hs-varid'>tt</span>
<a name="line-325"></a><span class='hs-definition'>textIterBeginsTag</span> <span class='hs-varid'>ti</span> <span class='hs-conid'>Nothing</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-326"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-conid'>TextTag</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg2</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr2</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_begins_tag</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>argPtr2</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span> <span class='hs-layout'>(</span><span class='hs-conid'>TextTag</span> <span class='hs-varid'>nullForeignPtr</span><span class='hs-layout'>)</span>
<a name="line-327"></a>
<a name="line-328"></a><a name="textIterEndsTag"></a><span class='hs-comment'>-- | Returns @True@ if @tag@ is toggled off at exactly this point. If @tag@ is</span>
<a name="line-329"></a><span class='hs-comment'>-- @Notihng@,</span>
<a name="line-330"></a><span class='hs-comment'>-- returns @True@ if any tag is toggled off at this point. Note that the</span>
<a name="line-331"></a><span class='hs-comment'>-- 'textIterEndsTag' returns @True@ if @iter@ is the /end/ of the tagged range;</span>
<a name="line-332"></a><span class='hs-comment'>-- 'textIterHasTag' tells you whether an iterator is /within/ a tagged range.</span>
<a name="line-333"></a><span class='hs-comment'>--</span>
<a name="line-334"></a><span class='hs-definition'>textIterEndsTag</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Maybe</span> <span class='hs-conid'>TextTag</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-335"></a><span class='hs-definition'>textIterEndsTag</span> <span class='hs-varid'>ti</span> <span class='hs-layout'>(</span><span class='hs-conid'>Just</span> <span class='hs-varid'>tt</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-336"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-conid'>TextTag</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg2</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr2</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_ends_tag</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>argPtr2</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span> <span class='hs-varid'>tt</span>
<a name="line-337"></a><span class='hs-definition'>textIterEndsTag</span> <span class='hs-varid'>ti</span> <span class='hs-conid'>Nothing</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-338"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-conid'>TextTag</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg2</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr2</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_ends_tag</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>argPtr2</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span> <span class='hs-layout'>(</span><span class='hs-conid'>TextTag</span> <span class='hs-varid'>nullForeignPtr</span><span class='hs-layout'>)</span>
<a name="line-339"></a>
<a name="line-340"></a><a name="textIterTogglesTag"></a><span class='hs-comment'>-- | Query if the 'TextIter' is at the</span>
<a name="line-341"></a><span class='hs-comment'>-- beginning or the end of a 'TextTag'. This is equivalent to</span>
<a name="line-342"></a><span class='hs-comment'>-- ('textIterBeginsTag' || 'textIterEndsTag'), i.e. it</span>
<a name="line-343"></a><span class='hs-comment'>-- tells you whether a range with @tag@ applied to it begins /or/ ends at</span>
<a name="line-344"></a><span class='hs-comment'>-- @iter@.</span>
<a name="line-345"></a><span class='hs-comment'>--</span>
<a name="line-346"></a><span class='hs-definition'>textIterTogglesTag</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Maybe</span> <span class='hs-conid'>TextTag</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-347"></a><span class='hs-definition'>textIterTogglesTag</span> <span class='hs-varid'>ti</span> <span class='hs-layout'>(</span><span class='hs-conid'>Just</span> <span class='hs-varid'>tt</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-348"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-conid'>TextTag</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg2</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr2</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_toggles_tag</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>argPtr2</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span> <span class='hs-varid'>tt</span>
<a name="line-349"></a><span class='hs-definition'>textIterTogglesTag</span> <span class='hs-varid'>ti</span> <span class='hs-conid'>Nothing</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-350"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-conid'>TextTag</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg2</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr2</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_toggles_tag</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>argPtr2</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span> <span class='hs-layout'>(</span><span class='hs-conid'>TextTag</span> <span class='hs-varid'>nullForeignPtr</span><span class='hs-layout'>)</span>
<a name="line-351"></a>
<a name="line-352"></a><a name="textIterHasTag"></a><span class='hs-comment'>-- | Check if 'TextIter' is within a range</span>
<a name="line-353"></a><span class='hs-comment'>-- tagged with tag.</span>
<a name="line-354"></a><span class='hs-comment'>--</span>
<a name="line-355"></a><span class='hs-definition'>textIterHasTag</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Maybe</span> <span class='hs-conid'>TextTag</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-356"></a><span class='hs-definition'>textIterHasTag</span> <span class='hs-varid'>ti</span> <span class='hs-layout'>(</span><span class='hs-conid'>Just</span> <span class='hs-varid'>tt</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-357"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-conid'>TextTag</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg2</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr2</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_has_tag</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>argPtr2</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span> <span class='hs-varid'>tt</span>
<a name="line-358"></a><span class='hs-definition'>textIterHasTag</span> <span class='hs-varid'>ti</span> <span class='hs-conid'>Nothing</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-359"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-conid'>TextTag</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg2</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr2</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_has_tag</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>argPtr2</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span> <span class='hs-layout'>(</span><span class='hs-conid'>TextTag</span> <span class='hs-varid'>nullForeignPtr</span><span class='hs-layout'>)</span>
<a name="line-360"></a>
<a name="line-361"></a><a name="textIterGetTags"></a><span class='hs-comment'>-- | Returns a list of tags that apply to @iter@, in ascending order of</span>
<a name="line-362"></a><span class='hs-comment'>-- priority (highest-priority tags are last).</span>
<a name="line-363"></a><span class='hs-comment'>--</span>
<a name="line-364"></a><span class='hs-definition'>textIterGetTags</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span>
<a name="line-365"></a> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>TextTag</span><span class='hs-keyglyph'>]</span> <span class='hs-comment'>-- ^ returns list of 'TextTag'</span>
<a name="line-366"></a><span class='hs-definition'>textIterGetTags</span> <span class='hs-varid'>self</span> <span class='hs-keyglyph'>=</span>
<a name="line-367"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_get_tags</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span>
<a name="line-368"></a><span class='hs-comment'>{-# LINE 360 "./Graphics/UI/Gtk/Multiline/TextIter.chs" #-}</span>
<a name="line-369"></a>    <span class='hs-varid'>self</span>
<a name="line-370"></a>  <span class='hs-varop'>&gt;&gt;=</span> <span class='hs-varid'>fromGSList</span>
<a name="line-371"></a>  <span class='hs-varop'>&gt;&gt;=</span> <span class='hs-varid'>mapM</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-varid'>tt</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>makeNewGObject</span> <span class='hs-varid'>mkTextTag</span> <span class='hs-layout'>(</span><span class='hs-varid'>return</span> <span class='hs-varid'>tt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-372"></a>
<a name="line-373"></a>
<a name="line-374"></a><a name="textIterEditable"></a><span class='hs-comment'>-- | Returns whether the character at @iter@ is within an editable region of</span>
<a name="line-375"></a><span class='hs-comment'>-- text. Non-editable text is \"locked\" and can't be changed by the user via</span>
<a name="line-376"></a><span class='hs-comment'>-- 'TextView'. This function is simply a convenience wrapper around</span>
<a name="line-377"></a><span class='hs-comment'>-- 'textIterGetAttributes'. If no tags applied to this text affect editability,</span>
<a name="line-378"></a><span class='hs-comment'>-- @defaultSetting@ will be returned.</span>
<a name="line-379"></a><span class='hs-comment'>--</span>
<a name="line-380"></a><span class='hs-comment'>-- You don't want to use this function to decide whether text can be</span>
<a name="line-381"></a><span class='hs-comment'>-- inserted at @iter@, because for insertion you don't want to know whether the</span>
<a name="line-382"></a><span class='hs-comment'>-- char at @iter@ is inside an editable range, you want to know whether a new</span>
<a name="line-383"></a><span class='hs-comment'>-- character inserted at @iter@ would be inside an editable range. Use</span>
<a name="line-384"></a><span class='hs-comment'>-- 'textIterCanInsert' to handle this case.</span>
<a name="line-385"></a><span class='hs-comment'>--</span>
<a name="line-386"></a><span class='hs-definition'>textIterEditable</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Bool</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-387"></a><span class='hs-definition'>textIterEditable</span> <span class='hs-varid'>ti</span> <span class='hs-varid'>def</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-388"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-varid'>arg2</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_editable</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span> <span class='hs-layout'>(</span><span class='hs-varid'>fromBool</span> <span class='hs-varid'>def</span><span class='hs-layout'>)</span>
<a name="line-389"></a>
<a name="line-390"></a><a name="textIterCanInsert"></a><span class='hs-comment'>-- | Check if new text can be inserted at 'TextIter'.</span>
<a name="line-391"></a><span class='hs-comment'>--</span>
<a name="line-392"></a><span class='hs-comment'>-- * Considering the default editability of the buffer, and tags that affect</span>
<a name="line-393"></a><span class='hs-comment'>-- editability, determines whether text inserted at @iter@ would be editable.</span>
<a name="line-394"></a><span class='hs-comment'>-- If text inserted at @iter@ would be editable then the user should be allowed</span>
<a name="line-395"></a><span class='hs-comment'>-- to insert text at @iter@.</span>
<a name="line-396"></a><span class='hs-comment'>-- 'Graphics.UI.Gtk.Multiline.TextBuffer.textBufferInsertInteractive'</span>
<a name="line-397"></a><span class='hs-comment'>-- uses this function</span>
<a name="line-398"></a><span class='hs-comment'>-- to decide whether insertions are allowed at a given position.</span>
<a name="line-399"></a><span class='hs-comment'>--</span>
<a name="line-400"></a><span class='hs-comment'>-- * Use 'Graphics.UI.Gtk.Multiline.TextBuffer.textBufferInsertInteractive'</span>
<a name="line-401"></a><span class='hs-comment'>-- if you want to insert text depending on the current editable status.</span>
<a name="line-402"></a><span class='hs-comment'>--</span>
<a name="line-403"></a><span class='hs-definition'>textIterCanInsert</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Bool</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-404"></a><span class='hs-definition'>textIterCanInsert</span> <span class='hs-varid'>ti</span> <span class='hs-varid'>def</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-405"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-varid'>arg2</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_can_insert</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span> <span class='hs-layout'>(</span><span class='hs-varid'>fromBool</span> <span class='hs-varid'>def</span><span class='hs-layout'>)</span>
<a name="line-406"></a>
<a name="line-407"></a><a name="textIterStartsWord"></a><span class='hs-comment'>-- | Determine if 'TextIter' begins a new</span>
<a name="line-408"></a><span class='hs-comment'>-- natural-language word.</span>
<a name="line-409"></a><span class='hs-comment'>--</span>
<a name="line-410"></a><span class='hs-definition'>textIterStartsWord</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-411"></a><span class='hs-definition'>textIterStartsWord</span> <span class='hs-varid'>ti</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_starts_word</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span>
<a name="line-412"></a>
<a name="line-413"></a>
<a name="line-414"></a><a name="textIterEndsWord"></a><span class='hs-comment'>-- | Determine if 'TextIter' ends a new</span>
<a name="line-415"></a><span class='hs-comment'>-- natural-language word.</span>
<a name="line-416"></a><span class='hs-comment'>--</span>
<a name="line-417"></a><span class='hs-definition'>textIterEndsWord</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-418"></a><span class='hs-definition'>textIterEndsWord</span> <span class='hs-varid'>ti</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_ends_word</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span>
<a name="line-419"></a>
<a name="line-420"></a><a name="textIterInsideWord"></a><span class='hs-comment'>-- | Determine if 'TextIter' is inside a</span>
<a name="line-421"></a><span class='hs-comment'>-- word.</span>
<a name="line-422"></a><span class='hs-comment'>--</span>
<a name="line-423"></a><span class='hs-definition'>textIterInsideWord</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-424"></a><span class='hs-definition'>textIterInsideWord</span> <span class='hs-varid'>ti</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_inside_word</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span>
<a name="line-425"></a>
<a name="line-426"></a><a name="textIterStartsLine"></a><span class='hs-comment'>-- | Determine if 'TextIter' begins a new</span>
<a name="line-427"></a><span class='hs-comment'>-- line.</span>
<a name="line-428"></a><span class='hs-comment'>--</span>
<a name="line-429"></a><span class='hs-definition'>textIterStartsLine</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-430"></a><span class='hs-definition'>textIterStartsLine</span> <span class='hs-varid'>ti</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_starts_line</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span>
<a name="line-431"></a>
<a name="line-432"></a><a name="textIterEndsLine"></a><span class='hs-comment'>-- | Returns @True@ if @iter@ points to the start of the paragraph delimiter</span>
<a name="line-433"></a><span class='hs-comment'>-- characters for a line (delimiters will be either a newline, a carriage</span>
<a name="line-434"></a><span class='hs-comment'>-- return, a carriage return followed by a newline, or a Unicode paragraph</span>
<a name="line-435"></a><span class='hs-comment'>-- separator character). Note that an iterator pointing to the \n of a \r\n</span>
<a name="line-436"></a><span class='hs-comment'>-- pair will not be counted as the end of a line, the line ends before the \r.</span>
<a name="line-437"></a><span class='hs-comment'>-- The end iterator is considered to be at the end of a line, even though there</span>
<a name="line-438"></a><span class='hs-comment'>-- are no paragraph delimiter chars there.</span>
<a name="line-439"></a><span class='hs-comment'>--</span>
<a name="line-440"></a><span class='hs-definition'>textIterEndsLine</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-441"></a><span class='hs-definition'>textIterEndsLine</span> <span class='hs-varid'>ti</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_ends_line</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span>
<a name="line-442"></a>
<a name="line-443"></a><a name="textIterStartsSentence"></a><span class='hs-comment'>-- | Determine if 'TextIter' starts a</span>
<a name="line-444"></a><span class='hs-comment'>-- sentence.</span>
<a name="line-445"></a><span class='hs-comment'>--</span>
<a name="line-446"></a><span class='hs-definition'>textIterStartsSentence</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-447"></a><span class='hs-definition'>textIterStartsSentence</span> <span class='hs-varid'>ti</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-448"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_starts_sentence</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span>
<a name="line-449"></a>
<a name="line-450"></a><a name="textIterEndsSentence"></a><span class='hs-comment'>-- | Determine if 'TextIter' ends a</span>
<a name="line-451"></a><span class='hs-comment'>-- sentence.</span>
<a name="line-452"></a><span class='hs-comment'>--</span>
<a name="line-453"></a><span class='hs-definition'>textIterEndsSentence</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-454"></a><span class='hs-definition'>textIterEndsSentence</span> <span class='hs-varid'>ti</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-455"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_ends_sentence</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span>
<a name="line-456"></a>
<a name="line-457"></a><a name="textIterInsideSentence"></a><span class='hs-comment'>-- | Determine if 'TextIter' is inside</span>
<a name="line-458"></a><span class='hs-comment'>-- a sentence.</span>
<a name="line-459"></a><span class='hs-comment'>--</span>
<a name="line-460"></a><span class='hs-definition'>textIterInsideSentence</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-461"></a><span class='hs-definition'>textIterInsideSentence</span> <span class='hs-varid'>ti</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-462"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_inside_sentence</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span>
<a name="line-463"></a>
<a name="line-464"></a><a name="textIterIsCursorPosition"></a><span class='hs-comment'>-- | Determine if 'TextIter' is at a</span>
<a name="line-465"></a><span class='hs-comment'>-- cursor position.</span>
<a name="line-466"></a><span class='hs-comment'>--</span>
<a name="line-467"></a><span class='hs-definition'>textIterIsCursorPosition</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-468"></a><span class='hs-definition'>textIterIsCursorPosition</span> <span class='hs-varid'>ti</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-469"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_is_cursor_position</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span>
<a name="line-470"></a>
<a name="line-471"></a><a name="textIterGetCharsInLine"></a><span class='hs-comment'>-- | Return number of characters in this line.</span>
<a name="line-472"></a><span class='hs-comment'>--</span>
<a name="line-473"></a><span class='hs-comment'>-- * The return value includes delimiters.</span>
<a name="line-474"></a><span class='hs-comment'>--</span>
<a name="line-475"></a><span class='hs-definition'>textIterGetCharsInLine</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Int</span>
<a name="line-476"></a><span class='hs-definition'>textIterGetCharsInLine</span> <span class='hs-varid'>ti</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>fromIntegral</span> <span class='hs-varop'>$</span>
<a name="line-477"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_get_chars_in_line</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span>
<a name="line-478"></a>
<a name="line-479"></a><a name="textIterGetAttributes"></a><span class='hs-comment'>-- | Computes the effect of any tags applied to this spot in the text.</span>
<a name="line-480"></a><span class='hs-comment'>-- The values parameter should be initialized to the default settings you wish to use if no tags are in effect.</span>
<a name="line-481"></a><span class='hs-comment'>-- You'd typically obtain the defaults from 'textViewGetDefaultAttributes'. </span>
<a name="line-482"></a><span class='hs-comment'>-- 'textIterGetAttributes' will modify values, applying the effects of any tags present at iter.</span>
<a name="line-483"></a><span class='hs-comment'>-- If any tags affected values, the function returns @True@.</span>
<a name="line-484"></a><span class='hs-comment'>--</span>
<a name="line-485"></a><span class='hs-definition'>textIterGetAttributes</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>TextAttributes</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-486"></a><span class='hs-definition'>textIterGetAttributes</span> <span class='hs-varid'>ti</span> <span class='hs-varid'>ta</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-487"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-conid'>TextAttributes</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg2</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr2</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_get_attributes</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>argPtr2</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span> <span class='hs-varid'>ta</span>
<a name="line-488"></a>
<a name="line-489"></a><a name="textIterGetLanguage"></a><span class='hs-comment'>-- | A convenience wrapper around 'textIterGetAttributes', which returns the language in effect at iter.</span>
<a name="line-490"></a><span class='hs-comment'>-- If no tags affecting language apply to iter, the return value is identical to that of 'getDefaultLanguage'.</span>
<a name="line-491"></a><span class='hs-comment'>--</span>
<a name="line-492"></a><span class='hs-definition'>textIterGetLanguage</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Language</span>
<a name="line-493"></a><span class='hs-definition'>textIterGetLanguage</span> <span class='hs-varid'>ti</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-conid'>Language</span> <span class='hs-varop'>$</span>
<a name="line-494"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_get_language</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span>
<a name="line-495"></a>
<a name="line-496"></a><a name="textIterIsEnd"></a><span class='hs-comment'>-- | Determine if 'TextIter' is at the end of</span>
<a name="line-497"></a><span class='hs-comment'>-- the buffer.</span>
<a name="line-498"></a><span class='hs-comment'>--</span>
<a name="line-499"></a><span class='hs-definition'>textIterIsEnd</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-500"></a><span class='hs-definition'>textIterIsEnd</span> <span class='hs-varid'>ti</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-501"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_is_end</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span>
<a name="line-502"></a>
<a name="line-503"></a><a name="textIterIsStart"></a><span class='hs-comment'>-- | Determine if 'TextIter' is at the</span>
<a name="line-504"></a><span class='hs-comment'>-- beginning of the buffer.</span>
<a name="line-505"></a><span class='hs-comment'>--</span>
<a name="line-506"></a><span class='hs-definition'>textIterIsStart</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-507"></a><span class='hs-definition'>textIterIsStart</span> <span class='hs-varid'>ti</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-508"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_is_start</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span>
<a name="line-509"></a>
<a name="line-510"></a><a name="textIterForwardChar"></a><span class='hs-comment'>-- | Move 'TextIter' forwards.</span>
<a name="line-511"></a><span class='hs-comment'>--</span>
<a name="line-512"></a><span class='hs-comment'>-- * Retuns True if the iterator is pointing to a character.</span>
<a name="line-513"></a><span class='hs-comment'>--</span>
<a name="line-514"></a><span class='hs-definition'>textIterForwardChar</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-515"></a><span class='hs-definition'>textIterForwardChar</span> <span class='hs-varid'>ti</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-516"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_forward_char</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span>
<a name="line-517"></a>
<a name="line-518"></a><a name="textIterBackwardChar"></a><span class='hs-comment'>-- | Move 'TextIter' backwards.</span>
<a name="line-519"></a><span class='hs-comment'>--</span>
<a name="line-520"></a><span class='hs-comment'>-- * Retuns True if the movement was possible.</span>
<a name="line-521"></a><span class='hs-comment'>--</span>
<a name="line-522"></a><span class='hs-definition'>textIterBackwardChar</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-523"></a><span class='hs-definition'>textIterBackwardChar</span> <span class='hs-varid'>ti</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-524"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_backward_char</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span>
<a name="line-525"></a>
<a name="line-526"></a><a name="textIterForwardChars"></a><span class='hs-comment'>-- | Move 'TextIter' forwards by</span>
<a name="line-527"></a><span class='hs-comment'>-- @n@ characters.</span>
<a name="line-528"></a><span class='hs-comment'>--</span>
<a name="line-529"></a><span class='hs-comment'>-- * Retuns @True@ if the iterator is pointing to a new character (and @False@ if</span>
<a name="line-530"></a><span class='hs-comment'>-- the iterator points to a picture or has not moved).</span>
<a name="line-531"></a><span class='hs-comment'>--</span>
<a name="line-532"></a><span class='hs-comment'>-- * Note that images embedded</span>
<a name="line-533"></a><span class='hs-comment'>-- in the buffer occupy 1 character slot, so 'textIterForwardChar' may actually</span>
<a name="line-534"></a><span class='hs-comment'>-- move onto an image instead of a character.</span>
<a name="line-535"></a><span class='hs-comment'>--</span>
<a name="line-536"></a><span class='hs-definition'>textIterForwardChars</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Int</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-537"></a><span class='hs-definition'>textIterForwardChars</span> <span class='hs-varid'>ti</span> <span class='hs-varid'>n</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-538"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-varid'>arg2</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_forward_chars</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span> <span class='hs-layout'>(</span><span class='hs-varid'>fromIntegral</span> <span class='hs-varid'>n</span><span class='hs-layout'>)</span>
<a name="line-539"></a>
<a name="line-540"></a><a name="textIterBackwardChars"></a><span class='hs-comment'>-- | Move 'TextIter' backwards by</span>
<a name="line-541"></a><span class='hs-comment'>-- @n@ characters.</span>
<a name="line-542"></a><span class='hs-comment'>--</span>
<a name="line-543"></a><span class='hs-comment'>-- * Retuns @True@ if the iterator is pointing to a new character (and @False@ if</span>
<a name="line-544"></a><span class='hs-comment'>-- the iterator points to a picture or has not moved).</span>
<a name="line-545"></a><span class='hs-comment'>--</span>
<a name="line-546"></a><span class='hs-definition'>textIterBackwardChars</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Int</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-547"></a><span class='hs-definition'>textIterBackwardChars</span> <span class='hs-varid'>ti</span> <span class='hs-varid'>n</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-548"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-varid'>arg2</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_backward_chars</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span> <span class='hs-layout'>(</span><span class='hs-varid'>fromIntegral</span> <span class='hs-varid'>n</span><span class='hs-layout'>)</span>
<a name="line-549"></a>
<a name="line-550"></a>
<a name="line-551"></a><a name="textIterForwardLine"></a><span class='hs-comment'>-- | Move 'TextIter' forwards.</span>
<a name="line-552"></a><span class='hs-comment'>--</span>
<a name="line-553"></a><span class='hs-comment'>-- * Retuns True if the iterator is pointing to a new line (and False if the</span>
<a name="line-554"></a><span class='hs-comment'>-- iterator points to a picture or has not moved).</span>
<a name="line-555"></a><span class='hs-comment'>--</span>
<a name="line-556"></a><span class='hs-comment'>-- * If 'TextIter' is on the first line, it will be moved to the</span>
<a name="line-557"></a><span class='hs-comment'>-- beginning of the buffer.</span>
<a name="line-558"></a><span class='hs-comment'>--</span>
<a name="line-559"></a><span class='hs-definition'>textIterForwardLine</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-560"></a><span class='hs-definition'>textIterForwardLine</span> <span class='hs-varid'>ti</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-561"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_forward_line</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span>
<a name="line-562"></a>
<a name="line-563"></a><a name="textIterBackwardLine"></a><span class='hs-comment'>-- | Move 'TextIter' backwards.</span>
<a name="line-564"></a><span class='hs-comment'>--</span>
<a name="line-565"></a><span class='hs-comment'>-- * Retuns True if the iterator is pointing to a new line (and False if the</span>
<a name="line-566"></a><span class='hs-comment'>-- iterator points to a picture or has not moved).</span>
<a name="line-567"></a><span class='hs-comment'>--</span>
<a name="line-568"></a><span class='hs-comment'>-- * If 'TextIter' is on the first line, it will be moved to the end</span>
<a name="line-569"></a><span class='hs-comment'>-- of the buffer.</span>
<a name="line-570"></a><span class='hs-comment'>--</span>
<a name="line-571"></a><span class='hs-definition'>textIterBackwardLine</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-572"></a><span class='hs-definition'>textIterBackwardLine</span> <span class='hs-varid'>ti</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-573"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_backward_line</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span>
<a name="line-574"></a>
<a name="line-575"></a>
<a name="line-576"></a><a name="textIterForwardLines"></a><span class='hs-comment'>-- | Move 'TextIter' forwards by</span>
<a name="line-577"></a><span class='hs-comment'>-- @n@ lines.</span>
<a name="line-578"></a><span class='hs-comment'>--</span>
<a name="line-579"></a><span class='hs-comment'>-- * Retuns True if the iterator is pointing to a new line (and False if the</span>
<a name="line-580"></a><span class='hs-comment'>-- iterator points to a picture or has not moved).</span>
<a name="line-581"></a><span class='hs-comment'>--</span>
<a name="line-582"></a><span class='hs-comment'>-- * If 'TextIter' is on the first line, it will be moved to the</span>
<a name="line-583"></a><span class='hs-comment'>-- beginning of the buffer.</span>
<a name="line-584"></a><span class='hs-comment'>--</span>
<a name="line-585"></a><span class='hs-comment'>-- * @n@ can be negative.</span>
<a name="line-586"></a><span class='hs-comment'>--</span>
<a name="line-587"></a><span class='hs-definition'>textIterForwardLines</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Int</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-588"></a><span class='hs-definition'>textIterForwardLines</span> <span class='hs-varid'>ti</span> <span class='hs-varid'>n</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-589"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-varid'>arg2</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_forward_lines</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span> <span class='hs-layout'>(</span><span class='hs-varid'>fromIntegral</span> <span class='hs-varid'>n</span><span class='hs-layout'>)</span>
<a name="line-590"></a>
<a name="line-591"></a><a name="textIterBackwardLines"></a><span class='hs-comment'>-- | Move 'TextIter' backwards by</span>
<a name="line-592"></a><span class='hs-comment'>-- @n@ lines.</span>
<a name="line-593"></a><span class='hs-comment'>--</span>
<a name="line-594"></a><span class='hs-comment'>-- * Retuns True if the iterator is pointing to a new line (and False if the</span>
<a name="line-595"></a><span class='hs-comment'>-- iterator points to a picture or has not moved).</span>
<a name="line-596"></a><span class='hs-comment'>--</span>
<a name="line-597"></a><span class='hs-comment'>-- * If 'TextIter' is on the first line, it will be moved to the end</span>
<a name="line-598"></a><span class='hs-comment'>-- of the buffer.</span>
<a name="line-599"></a><span class='hs-comment'>--</span>
<a name="line-600"></a><span class='hs-comment'>-- * @n@ can be negative.</span>
<a name="line-601"></a><span class='hs-comment'>--</span>
<a name="line-602"></a><span class='hs-definition'>textIterBackwardLines</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Int</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-603"></a><span class='hs-definition'>textIterBackwardLines</span> <span class='hs-varid'>ti</span> <span class='hs-varid'>n</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-604"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-varid'>arg2</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_backward_lines</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span> <span class='hs-layout'>(</span><span class='hs-varid'>fromIntegral</span> <span class='hs-varid'>n</span><span class='hs-layout'>)</span>
<a name="line-605"></a>
<a name="line-606"></a><a name="textIterForwardWordEnds"></a><span class='hs-comment'>-- | Move 'TextIter' forwards by</span>
<a name="line-607"></a><span class='hs-comment'>-- @n@ word ends.</span>
<a name="line-608"></a><span class='hs-comment'>--</span>
<a name="line-609"></a><span class='hs-comment'>-- * Retuns True if the iterator is pointing to a new word end.</span>
<a name="line-610"></a><span class='hs-comment'>--</span>
<a name="line-611"></a><span class='hs-definition'>textIterForwardWordEnds</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Int</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-612"></a><span class='hs-definition'>textIterForwardWordEnds</span> <span class='hs-varid'>ti</span> <span class='hs-varid'>n</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-613"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-varid'>arg2</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_forward_word_ends</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span> <span class='hs-layout'>(</span><span class='hs-varid'>fromIntegral</span> <span class='hs-varid'>n</span><span class='hs-layout'>)</span>
<a name="line-614"></a>
<a name="line-615"></a><a name="textIterBackwardWordStarts"></a><span class='hs-comment'>-- | Move 'TextIter' backwards by</span>
<a name="line-616"></a><span class='hs-comment'>-- @n@ word beginnings.</span>
<a name="line-617"></a><span class='hs-comment'>--</span>
<a name="line-618"></a><span class='hs-comment'>-- * Retuns True if the iterator is pointing to a new word start.</span>
<a name="line-619"></a><span class='hs-comment'>--</span>
<a name="line-620"></a><span class='hs-definition'>textIterBackwardWordStarts</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Int</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-621"></a><span class='hs-definition'>textIterBackwardWordStarts</span> <span class='hs-varid'>ti</span> <span class='hs-varid'>n</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-622"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-varid'>arg2</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_backward_word_starts</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span> <span class='hs-layout'>(</span><span class='hs-varid'>fromIntegral</span> <span class='hs-varid'>n</span><span class='hs-layout'>)</span>
<a name="line-623"></a>
<a name="line-624"></a><a name="textIterForwardWordEnd"></a><span class='hs-comment'>-- | Move 'TextIter' forwards to the</span>
<a name="line-625"></a><span class='hs-comment'>-- next word end.</span>
<a name="line-626"></a><span class='hs-comment'>--</span>
<a name="line-627"></a><span class='hs-comment'>-- * Retuns True if the iterator has moved to a new word end.</span>
<a name="line-628"></a><span class='hs-comment'>--</span>
<a name="line-629"></a><span class='hs-definition'>textIterForwardWordEnd</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-630"></a><span class='hs-definition'>textIterForwardWordEnd</span> <span class='hs-varid'>ti</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-631"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_forward_word_end</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span>
<a name="line-632"></a>
<a name="line-633"></a><a name="textIterBackwardWordStart"></a><span class='hs-comment'>-- | Move 'TextIter' backwards to</span>
<a name="line-634"></a><span class='hs-comment'>-- the next word beginning.</span>
<a name="line-635"></a><span class='hs-comment'>--</span>
<a name="line-636"></a><span class='hs-comment'>-- * Retuns True if the iterator has moved to a new word beginning.</span>
<a name="line-637"></a><span class='hs-comment'>--</span>
<a name="line-638"></a><span class='hs-definition'>textIterBackwardWordStart</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-639"></a><span class='hs-definition'>textIterBackwardWordStart</span> <span class='hs-varid'>ti</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-640"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_backward_word_start</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span>
<a name="line-641"></a>
<a name="line-642"></a><a name="textIterForwardCursorPosition"></a><span class='hs-comment'>-- | Move 'TextIter' forwards to</span>
<a name="line-643"></a><span class='hs-comment'>-- the next cursor position.</span>
<a name="line-644"></a><span class='hs-comment'>--</span>
<a name="line-645"></a><span class='hs-comment'>-- * Some characters are composed of two Unicode codes. This function ensures</span>
<a name="line-646"></a><span class='hs-comment'>-- that 'TextIter' does not point inbetween such double characters.</span>
<a name="line-647"></a><span class='hs-comment'>--</span>
<a name="line-648"></a><span class='hs-comment'>-- * Returns True if 'TextIter' moved and points to a character (not</span>
<a name="line-649"></a><span class='hs-comment'>-- to an object).</span>
<a name="line-650"></a><span class='hs-comment'>--</span>
<a name="line-651"></a><span class='hs-definition'>textIterForwardCursorPosition</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-652"></a><span class='hs-definition'>textIterForwardCursorPosition</span> <span class='hs-varid'>ti</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-653"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_forward_cursor_position</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span>
<a name="line-654"></a>
<a name="line-655"></a><a name="textIterBackwardCursorPosition"></a><span class='hs-comment'>-- | Move 'TextIter' backwards</span>
<a name="line-656"></a><span class='hs-comment'>-- to the next cursor position.</span>
<a name="line-657"></a><span class='hs-comment'>--</span>
<a name="line-658"></a><span class='hs-comment'>-- * Some characters are composed of two Unicode codes. This function ensures</span>
<a name="line-659"></a><span class='hs-comment'>-- that 'TextIter' does not point inbetween such double characters.</span>
<a name="line-660"></a><span class='hs-comment'>--</span>
<a name="line-661"></a><span class='hs-comment'>-- * Returns True if 'TextIter' moved and points to a character (not</span>
<a name="line-662"></a><span class='hs-comment'>-- to an object).</span>
<a name="line-663"></a><span class='hs-comment'>--</span>
<a name="line-664"></a><span class='hs-definition'>textIterBackwardCursorPosition</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-665"></a><span class='hs-definition'>textIterBackwardCursorPosition</span> <span class='hs-varid'>ti</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-666"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_backward_cursor_position</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span>
<a name="line-667"></a>
<a name="line-668"></a><a name="textIterForwardCursorPositions"></a><span class='hs-comment'>-- | Move 'TextIter' forwards</span>
<a name="line-669"></a><span class='hs-comment'>-- by @n@ cursor positions.</span>
<a name="line-670"></a><span class='hs-comment'>--</span>
<a name="line-671"></a><span class='hs-comment'>-- * Returns True if 'TextIter' moved and points to a character (not</span>
<a name="line-672"></a><span class='hs-comment'>-- to an object).</span>
<a name="line-673"></a><span class='hs-comment'>--</span>
<a name="line-674"></a><span class='hs-definition'>textIterForwardCursorPositions</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Int</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-675"></a><span class='hs-definition'>textIterForwardCursorPositions</span> <span class='hs-varid'>ti</span> <span class='hs-varid'>n</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-676"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-varid'>arg2</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_forward_cursor_positions</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span> <span class='hs-layout'>(</span><span class='hs-varid'>fromIntegral</span> <span class='hs-varid'>n</span><span class='hs-layout'>)</span>
<a name="line-677"></a>
<a name="line-678"></a><a name="textIterBackwardCursorPositions"></a><span class='hs-comment'>-- | Move 'TextIter' backwards</span>
<a name="line-679"></a><span class='hs-comment'>-- by @n@ cursor positions.</span>
<a name="line-680"></a><span class='hs-comment'>--</span>
<a name="line-681"></a><span class='hs-comment'>-- * Returns True if 'TextIter' moved and points to a character (not</span>
<a name="line-682"></a><span class='hs-comment'>-- to an object).</span>
<a name="line-683"></a><span class='hs-comment'>--</span>
<a name="line-684"></a><span class='hs-definition'>textIterBackwardCursorPositions</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Int</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-685"></a><span class='hs-definition'>textIterBackwardCursorPositions</span> <span class='hs-varid'>ti</span> <span class='hs-varid'>n</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-686"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-varid'>arg2</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_backward_cursor_positions</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span> <span class='hs-layout'>(</span><span class='hs-varid'>fromIntegral</span> <span class='hs-varid'>n</span><span class='hs-layout'>)</span>
<a name="line-687"></a>
<a name="line-688"></a>
<a name="line-689"></a><a name="textIterForwardSentenceEnds"></a><span class='hs-comment'>-- | Move 'TextIter' forwards by</span>
<a name="line-690"></a><span class='hs-comment'>-- @n@ sentence ends.</span>
<a name="line-691"></a><span class='hs-comment'>--</span>
<a name="line-692"></a><span class='hs-comment'>-- * Retuns True if the iterator is pointing to a new sentence end.</span>
<a name="line-693"></a><span class='hs-comment'>--</span>
<a name="line-694"></a><span class='hs-definition'>textIterForwardSentenceEnds</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Int</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-695"></a><span class='hs-definition'>textIterForwardSentenceEnds</span> <span class='hs-varid'>ti</span> <span class='hs-varid'>n</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-696"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-varid'>arg2</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_forward_sentence_ends</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span> <span class='hs-layout'>(</span><span class='hs-varid'>fromIntegral</span> <span class='hs-varid'>n</span><span class='hs-layout'>)</span>
<a name="line-697"></a>
<a name="line-698"></a><a name="textIterBackwardSentenceStarts"></a><span class='hs-comment'>-- | Move 'TextIter' backwards</span>
<a name="line-699"></a><span class='hs-comment'>-- by @n@ sentence beginnings.</span>
<a name="line-700"></a><span class='hs-comment'>--</span>
<a name="line-701"></a><span class='hs-comment'>-- * Retuns True if the iterator is pointing to a new sentence start.</span>
<a name="line-702"></a><span class='hs-comment'>--</span>
<a name="line-703"></a><span class='hs-definition'>textIterBackwardSentenceStarts</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Int</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-704"></a><span class='hs-definition'>textIterBackwardSentenceStarts</span> <span class='hs-varid'>ti</span> <span class='hs-varid'>n</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-705"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-varid'>arg2</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_backward_sentence_starts</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span> <span class='hs-layout'>(</span><span class='hs-varid'>fromIntegral</span> <span class='hs-varid'>n</span><span class='hs-layout'>)</span>
<a name="line-706"></a>
<a name="line-707"></a><a name="textIterForwardSentenceEnd"></a><span class='hs-comment'>-- | Move 'TextIter' forwards to</span>
<a name="line-708"></a><span class='hs-comment'>-- the next sentence end.</span>
<a name="line-709"></a><span class='hs-comment'>--</span>
<a name="line-710"></a><span class='hs-comment'>-- * Retuns True if the iterator has moved to a new sentence end.</span>
<a name="line-711"></a><span class='hs-comment'>--</span>
<a name="line-712"></a><span class='hs-definition'>textIterForwardSentenceEnd</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-713"></a><span class='hs-definition'>textIterForwardSentenceEnd</span> <span class='hs-varid'>ti</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-714"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_forward_sentence_end</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span>
<a name="line-715"></a>
<a name="line-716"></a><a name="textIterBackwardSentenceStart"></a><span class='hs-comment'>-- | Move 'TextIter' backwards</span>
<a name="line-717"></a><span class='hs-comment'>-- to the next sentence beginning.</span>
<a name="line-718"></a><span class='hs-comment'>--</span>
<a name="line-719"></a><span class='hs-comment'>-- * Retuns True if the iterator has moved to a new sentence beginning.</span>
<a name="line-720"></a><span class='hs-comment'>--</span>
<a name="line-721"></a><span class='hs-definition'>textIterBackwardSentenceStart</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-722"></a><span class='hs-definition'>textIterBackwardSentenceStart</span> <span class='hs-varid'>ti</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-723"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_backward_sentence_start</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span>
<a name="line-724"></a>
<a name="line-725"></a><a name="textIterSetOffset"></a><span class='hs-comment'>-- | Set 'TextIter' to an offset within the</span>
<a name="line-726"></a><span class='hs-comment'>-- buffer.</span>
<a name="line-727"></a><span class='hs-comment'>--</span>
<a name="line-728"></a><span class='hs-definition'>textIterSetOffset</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Int</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>()</span>
<a name="line-729"></a><span class='hs-definition'>textIterSetOffset</span> <span class='hs-varid'>ti</span> <span class='hs-varid'>n</span> <span class='hs-keyglyph'>=</span>
<a name="line-730"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-varid'>arg2</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_set_offset</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span> <span class='hs-layout'>(</span><span class='hs-varid'>fromIntegral</span> <span class='hs-varid'>n</span><span class='hs-layout'>)</span>
<a name="line-731"></a>
<a name="line-732"></a><a name="textIterSetLine"></a><span class='hs-comment'>-- | Set 'TextIter' to a line within the</span>
<a name="line-733"></a><span class='hs-comment'>-- buffer.</span>
<a name="line-734"></a><span class='hs-comment'>--</span>
<a name="line-735"></a><span class='hs-comment'>-- * If number is negative or larger than the number of lines in the buffer,</span>
<a name="line-736"></a><span class='hs-comment'>-- moves @iter@ to the start of the last line in the buffer.</span>
<a name="line-737"></a><span class='hs-comment'>--</span>
<a name="line-738"></a><span class='hs-definition'>textIterSetLine</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Int</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>()</span>
<a name="line-739"></a><span class='hs-definition'>textIterSetLine</span> <span class='hs-varid'>ti</span> <span class='hs-varid'>n</span> <span class='hs-keyglyph'>=</span>
<a name="line-740"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-varid'>arg2</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_set_line</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span> <span class='hs-layout'>(</span><span class='hs-varid'>fromIntegral</span> <span class='hs-varid'>n</span><span class='hs-layout'>)</span>
<a name="line-741"></a>
<a name="line-742"></a><a name="textIterSetLineOffset"></a><span class='hs-comment'>-- | Set 'TextIter' to an offset within the line.</span>
<a name="line-743"></a><span class='hs-comment'>--</span>
<a name="line-744"></a><span class='hs-comment'>-- * The</span>
<a name="line-745"></a><span class='hs-comment'>-- given character offset must be less than or equal to the number of</span>
<a name="line-746"></a><span class='hs-comment'>-- characters in the line; if equal, the iterator moves to the start of the</span>
<a name="line-747"></a><span class='hs-comment'>-- next line.</span>
<a name="line-748"></a><span class='hs-comment'>--</span>
<a name="line-749"></a><span class='hs-definition'>textIterSetLineOffset</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Int</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>()</span>
<a name="line-750"></a><span class='hs-definition'>textIterSetLineOffset</span> <span class='hs-varid'>ti</span> <span class='hs-varid'>n</span> <span class='hs-keyglyph'>=</span>
<a name="line-751"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-varid'>arg2</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_set_line_offset</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span> <span class='hs-layout'>(</span><span class='hs-varid'>fromIntegral</span> <span class='hs-varid'>n</span><span class='hs-layout'>)</span>
<a name="line-752"></a>
<a name="line-753"></a><a name="textIterSetVisibleLineOffset"></a><span class='hs-comment'>-- | Like 'textIterSetLineOffset', but the offset is in visible characters,</span>
<a name="line-754"></a><span class='hs-comment'>-- i.e. text with a tag making it invisible is not counted in the offset.</span>
<a name="line-755"></a><span class='hs-comment'>--</span>
<a name="line-756"></a><span class='hs-definition'>textIterSetVisibleLineOffset</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Int</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>()</span>
<a name="line-757"></a><span class='hs-definition'>textIterSetVisibleLineOffset</span> <span class='hs-varid'>ti</span> <span class='hs-varid'>n</span> <span class='hs-keyglyph'>=</span>
<a name="line-758"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-varid'>arg2</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_set_visible_line_offset</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span> <span class='hs-layout'>(</span><span class='hs-varid'>fromIntegral</span> <span class='hs-varid'>n</span><span class='hs-layout'>)</span>
<a name="line-759"></a>
<a name="line-760"></a><a name="textIterForwardToEnd"></a><span class='hs-comment'>-- | Moves @iter@ forward to the \"end iterator,\" which points one past the</span>
<a name="line-761"></a><span class='hs-comment'>-- last valid character in the buffer.</span>
<a name="line-762"></a><span class='hs-comment'>--</span>
<a name="line-763"></a><span class='hs-definition'>textIterForwardToEnd</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>()</span>
<a name="line-764"></a><span class='hs-definition'>textIterForwardToEnd</span> <span class='hs-varid'>ti</span> <span class='hs-keyglyph'>=</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_forward_to_end</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span>
<a name="line-765"></a>
<a name="line-766"></a><a name="textIterForwardToLineEnd"></a><span class='hs-comment'>-- | Moves the iterator to point to the paragraph delimiter characters, which</span>
<a name="line-767"></a><span class='hs-comment'>-- will be either a newline, a carriage return, a carriage return\/newline in</span>
<a name="line-768"></a><span class='hs-comment'>-- sequence, or the Unicode paragraph separator character. If the iterator is</span>
<a name="line-769"></a><span class='hs-comment'>-- already at the paragraph delimiter characters, moves to the paragraph</span>
<a name="line-770"></a><span class='hs-comment'>-- delimiter characters for the next line. If @iter@ is on the last line in the</span>
<a name="line-771"></a><span class='hs-comment'>-- buffer, which does not end in paragraph delimiters, moves to the end</span>
<a name="line-772"></a><span class='hs-comment'>-- iterator (end of the last line), and returns @False@.</span>
<a name="line-773"></a><span class='hs-comment'>--</span>
<a name="line-774"></a><span class='hs-definition'>textIterForwardToLineEnd</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-775"></a><span class='hs-definition'>textIterForwardToLineEnd</span> <span class='hs-varid'>ti</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-776"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_forward_to_line_end</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span>
<a name="line-777"></a>
<a name="line-778"></a><a name="textIterForwardToTagToggle"></a><span class='hs-comment'>-- | Moves 'TextIter' forward to</span>
<a name="line-779"></a><span class='hs-comment'>-- the next change of a 'TextTag'.</span>
<a name="line-780"></a><span class='hs-comment'>--</span>
<a name="line-781"></a><span class='hs-comment'>-- * If Nothing is supplied, any 'TextTag' will be matched.</span>
<a name="line-782"></a><span class='hs-comment'>--</span>
<a name="line-783"></a><span class='hs-comment'>-- * Returns @True@ if there was a tag toggle after 'TextIter'.</span>
<a name="line-784"></a><span class='hs-comment'>--</span>
<a name="line-785"></a><span class='hs-definition'>textIterForwardToTagToggle</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Maybe</span> <span class='hs-conid'>TextTag</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-786"></a><span class='hs-definition'>textIterForwardToTagToggle</span> <span class='hs-varid'>ti</span> <span class='hs-varid'>tt</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-787"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-conid'>TextTag</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg2</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr2</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_forward_to_tag_toggle</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>argPtr2</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span>
<a name="line-788"></a>    <span class='hs-layout'>(</span><span class='hs-varid'>fromMaybe</span> <span class='hs-layout'>(</span><span class='hs-conid'>TextTag</span> <span class='hs-varid'>nullForeignPtr</span><span class='hs-layout'>)</span> <span class='hs-varid'>tt</span><span class='hs-layout'>)</span>
<a name="line-789"></a>
<a name="line-790"></a><a name="textIterBackwardToTagToggle"></a><span class='hs-comment'>-- | Moves 'TextIter' backward to</span>
<a name="line-791"></a><span class='hs-comment'>-- the next change of a 'TextTag'.</span>
<a name="line-792"></a><span class='hs-comment'>--</span>
<a name="line-793"></a><span class='hs-comment'>-- * If @Nothing@ is supplied, any 'TextTag' will be matched.</span>
<a name="line-794"></a><span class='hs-comment'>--</span>
<a name="line-795"></a><span class='hs-comment'>-- * Returns @True@ if there was a tag toggle before 'TextIter'.</span>
<a name="line-796"></a><span class='hs-comment'>--</span>
<a name="line-797"></a><span class='hs-definition'>textIterBackwardToTagToggle</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Maybe</span> <span class='hs-conid'>TextTag</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-798"></a><span class='hs-definition'>textIterBackwardToTagToggle</span> <span class='hs-varid'>ti</span> <span class='hs-varid'>tt</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-799"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-conid'>TextTag</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg2</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr2</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_backward_to_tag_toggle</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>argPtr2</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span>
<a name="line-800"></a>    <span class='hs-layout'>(</span><span class='hs-varid'>fromMaybe</span> <span class='hs-layout'>(</span><span class='hs-conid'>TextTag</span> <span class='hs-varid'>nullForeignPtr</span><span class='hs-layout'>)</span> <span class='hs-varid'>tt</span><span class='hs-layout'>)</span>
<a name="line-801"></a>
<a name="line-802"></a><a name="TextCharPredicateCB"></a><span class='hs-comment'>-- Setup a callback for a predicate function.</span>
<a name="line-803"></a><a name="TextCharPredicateCB"></a><span class='hs-comment'>--</span>
<a name="line-804"></a><a name="TextCharPredicateCB"></a><span class='hs-keyword'>type</span> <span class='hs-conid'>TextCharPredicateCB</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>Char</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Bool</span>
<a name="line-805"></a>
<a name="line-806"></a><a name="TextCharPredicate"></a><span class='hs-keyword'>type</span> <span class='hs-conid'>TextCharPredicate</span> <span class='hs-keyglyph'>=</span> <span class='hs-conid'>FunPtr</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>CUInt</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-807"></a><span class='hs-comment'>{-# LINE 798 "./Graphics/UI/Gtk/Multiline/TextIter.chs" #-}</span>
<a name="line-808"></a>
<a name="line-809"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-str'>"wrapper"</span> <span class='hs-varid'>mkTextCharPredicate</span> <span class='hs-keyglyph'>::</span>
<a name="line-810"></a>  <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>CUInt</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Ptr</span> <span class='hs-conid'>()</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>TextCharPredicate</span>
<a name="line-811"></a>
<a name="line-812"></a><a name="textIterForwardFindChar"></a><span class='hs-comment'>-- | Move 'TextIter' forward until a</span>
<a name="line-813"></a><span class='hs-comment'>-- predicate function returns True.</span>
<a name="line-814"></a><span class='hs-comment'>--</span>
<a name="line-815"></a><span class='hs-comment'>-- * If @pred@ returns True before @limit@ is reached, the</span>
<a name="line-816"></a><span class='hs-comment'>-- search is stopped and the return value is True.</span>
<a name="line-817"></a><span class='hs-comment'>--</span>
<a name="line-818"></a><span class='hs-comment'>-- * If @limit@ is Nothing, the search stops at the end of the buffer.</span>
<a name="line-819"></a><span class='hs-comment'>--</span>
<a name="line-820"></a><span class='hs-definition'>textIterForwardFindChar</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>Char</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Bool</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Maybe</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span>
<a name="line-821"></a>                           <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-822"></a><span class='hs-definition'>textIterForwardFindChar</span> <span class='hs-varid'>ti</span> <span class='hs-varid'>pred</span> <span class='hs-varid'>limit</span> <span class='hs-keyglyph'>=</span> <span class='hs-keyword'>do</span>
<a name="line-823"></a>  <span class='hs-varid'>fPtr</span> <span class='hs-keyglyph'>&lt;-</span> <span class='hs-varid'>mkTextCharPredicate</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-varid'>c</span> <span class='hs-keyword'>_</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>fromBool</span> <span class='hs-varop'>$</span> <span class='hs-varid'>pred</span> <span class='hs-layout'>(</span><span class='hs-varid'>chr</span> <span class='hs-layout'>(</span><span class='hs-varid'>fromIntegral</span> <span class='hs-varid'>c</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-824"></a>  <span class='hs-varid'>res</span> <span class='hs-keyglyph'>&lt;-</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-varid'>arg2</span> <span class='hs-varid'>arg3</span> <span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg4</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg4</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr4</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_forward_find_char</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>arg2</span> <span class='hs-varid'>arg3</span> <span class='hs-varid'>argPtr4</span><span class='hs-layout'>)</span>
<a name="line-825"></a><span class='hs-comment'>{-# LINE 815 "./Graphics/UI/Gtk/Multiline/TextIter.chs" #-}</span>
<a name="line-826"></a>    <span class='hs-varid'>ti</span> <span class='hs-varid'>fPtr</span> <span class='hs-varid'>nullPtr</span> <span class='hs-layout'>(</span><span class='hs-varid'>fromMaybe</span> <span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>nullForeignPtr</span><span class='hs-layout'>)</span> <span class='hs-varid'>limit</span><span class='hs-layout'>)</span>
<a name="line-827"></a>  <span class='hs-varid'>freeHaskellFunPtr</span> <span class='hs-varid'>fPtr</span>
<a name="line-828"></a>  <span class='hs-varid'>return</span> <span class='hs-varid'>res</span>
<a name="line-829"></a>
<a name="line-830"></a><a name="textIterBackwardFindChar"></a><span class='hs-comment'>-- | Move 'TextIter' backward until a</span>
<a name="line-831"></a><span class='hs-comment'>-- predicate function returns True.</span>
<a name="line-832"></a><span class='hs-comment'>--</span>
<a name="line-833"></a><span class='hs-comment'>-- * If @pred@ returns True before @limit@ is reached, the</span>
<a name="line-834"></a><span class='hs-comment'>-- search is stopped and the return value is True.</span>
<a name="line-835"></a><span class='hs-comment'>--</span>
<a name="line-836"></a><span class='hs-comment'>-- * If @limit@ is Nothing, the search stops at the end of the buffer.</span>
<a name="line-837"></a><span class='hs-comment'>--</span>
<a name="line-838"></a><span class='hs-definition'>textIterBackwardFindChar</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>Char</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Bool</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Maybe</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span>
<a name="line-839"></a>                            <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-840"></a><span class='hs-definition'>textIterBackwardFindChar</span> <span class='hs-varid'>ti</span> <span class='hs-varid'>pred</span> <span class='hs-varid'>limit</span> <span class='hs-keyglyph'>=</span> <span class='hs-keyword'>do</span>
<a name="line-841"></a>  <span class='hs-varid'>fPtr</span> <span class='hs-keyglyph'>&lt;-</span> <span class='hs-varid'>mkTextCharPredicate</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-varid'>c</span> <span class='hs-keyword'>_</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>fromBool</span> <span class='hs-varop'>$</span> <span class='hs-varid'>pred</span> <span class='hs-layout'>(</span><span class='hs-varid'>chr</span> <span class='hs-layout'>(</span><span class='hs-varid'>fromIntegral</span> <span class='hs-varid'>c</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-842"></a>  <span class='hs-varid'>res</span> <span class='hs-keyglyph'>&lt;-</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-varid'>arg2</span> <span class='hs-varid'>arg3</span> <span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg4</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg4</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr4</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_backward_find_char</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>arg2</span> <span class='hs-varid'>arg3</span> <span class='hs-varid'>argPtr4</span><span class='hs-layout'>)</span>
<a name="line-843"></a><span class='hs-comment'>{-# LINE 832 "./Graphics/UI/Gtk/Multiline/TextIter.chs" #-}</span>
<a name="line-844"></a>    <span class='hs-varid'>ti</span> <span class='hs-varid'>fPtr</span> <span class='hs-varid'>nullPtr</span> <span class='hs-layout'>(</span><span class='hs-varid'>fromMaybe</span> <span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>nullForeignPtr</span><span class='hs-layout'>)</span> <span class='hs-varid'>limit</span><span class='hs-layout'>)</span>
<a name="line-845"></a>  <span class='hs-varid'>freeHaskellFunPtr</span> <span class='hs-varid'>fPtr</span>
<a name="line-846"></a>  <span class='hs-varid'>return</span> <span class='hs-varid'>res</span>
<a name="line-847"></a>
<a name="line-848"></a><a name="textIterForwardSearch"></a><span class='hs-comment'>-- | Search forward for a specific string.</span>
<a name="line-849"></a><span class='hs-comment'>--</span>
<a name="line-850"></a><span class='hs-comment'>-- * If specified, the last character which is tested against that start of</span>
<a name="line-851"></a><span class='hs-comment'>-- the search pattern will be @limit@.</span>
<a name="line-852"></a><span class='hs-comment'>--</span>
<a name="line-853"></a><span class='hs-comment'>-- * 'TextSearchFlags' may be empty.</span>
<a name="line-854"></a><span class='hs-comment'>--</span>
<a name="line-855"></a><span class='hs-comment'>-- * Returns the start and end position of the string found.</span>
<a name="line-856"></a><span class='hs-comment'>--</span>
<a name="line-857"></a><span class='hs-definition'>textIterForwardSearch</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>String</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>TextSearchFlags</span><span class='hs-keyglyph'>]</span> <span class='hs-keyglyph'>-&gt;</span>
<a name="line-858"></a>                         <span class='hs-conid'>Maybe</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Maybe</span> <span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span><span class='hs-layout'>,</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-859"></a><span class='hs-definition'>textIterForwardSearch</span> <span class='hs-varid'>ti</span> <span class='hs-varid'>str</span> <span class='hs-varid'>flags</span> <span class='hs-varid'>limit</span> <span class='hs-keyglyph'>=</span> <span class='hs-keyword'>do</span>
<a name="line-860"></a>  <span class='hs-varid'>start</span> <span class='hs-keyglyph'>&lt;-</span> <span class='hs-varid'>makeEmptyTextIter</span>
<a name="line-861"></a>  <span class='hs-varid'>end</span> <span class='hs-keyglyph'>&lt;-</span> <span class='hs-varid'>makeEmptyTextIter</span>
<a name="line-862"></a>  <span class='hs-varid'>found</span> <span class='hs-keyglyph'>&lt;-</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span> <span class='hs-varid'>withUTFString</span> <span class='hs-varid'>str</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>cStr</span> <span class='hs-keyglyph'>-&gt;</span>
<a name="line-863"></a>    <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-varid'>arg2</span> <span class='hs-varid'>arg3</span> <span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg4</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg5</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg6</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg4</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr4</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg5</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr5</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg6</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr6</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_forward_search</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>arg2</span> <span class='hs-varid'>arg3</span> <span class='hs-varid'>argPtr4</span> <span class='hs-varid'>argPtr5</span> <span class='hs-varid'>argPtr6</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span> <span class='hs-varid'>cStr</span>
<a name="line-864"></a>    <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-varid'>fromIntegral</span><span class='hs-varop'>.</span><span class='hs-varid'>fromFlags</span><span class='hs-layout'>)</span> <span class='hs-varid'>flags</span><span class='hs-layout'>)</span> <span class='hs-varid'>start</span> <span class='hs-varid'>end</span>
<a name="line-865"></a>    <span class='hs-layout'>(</span><span class='hs-varid'>fromMaybe</span> <span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>nullForeignPtr</span><span class='hs-layout'>)</span> <span class='hs-varid'>limit</span><span class='hs-layout'>)</span>
<a name="line-866"></a>  <span class='hs-varid'>return</span> <span class='hs-varop'>$</span> <span class='hs-keyword'>if</span> <span class='hs-varid'>found</span> <span class='hs-keyword'>then</span> <span class='hs-conid'>Just</span> <span class='hs-layout'>(</span><span class='hs-varid'>start</span><span class='hs-layout'>,</span><span class='hs-varid'>end</span><span class='hs-layout'>)</span> <span class='hs-keyword'>else</span> <span class='hs-conid'>Nothing</span>
<a name="line-867"></a>
<a name="line-868"></a><a name="textIterBackwardSearch"></a><span class='hs-comment'>-- | Search backward for a specific string.</span>
<a name="line-869"></a><span class='hs-comment'>--</span>
<a name="line-870"></a><span class='hs-comment'>-- * If specified, the last character which is tested against that start of</span>
<a name="line-871"></a><span class='hs-comment'>-- the search pattern will be @limit@.</span>
<a name="line-872"></a><span class='hs-comment'>--</span>
<a name="line-873"></a><span class='hs-comment'>-- * 'TextSearchFlags' my be empty.</span>
<a name="line-874"></a><span class='hs-comment'>--</span>
<a name="line-875"></a><span class='hs-comment'>-- * Returns the start and end position of the string found.</span>
<a name="line-876"></a><span class='hs-comment'>--</span>
<a name="line-877"></a><span class='hs-definition'>textIterBackwardSearch</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>String</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-keyglyph'>[</span><span class='hs-conid'>TextSearchFlags</span><span class='hs-keyglyph'>]</span> <span class='hs-keyglyph'>-&gt;</span>
<a name="line-878"></a>                          <span class='hs-conid'>Maybe</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Maybe</span> <span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span><span class='hs-layout'>,</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-879"></a><span class='hs-definition'>textIterBackwardSearch</span> <span class='hs-varid'>ti</span> <span class='hs-varid'>str</span> <span class='hs-varid'>flags</span> <span class='hs-varid'>limit</span> <span class='hs-keyglyph'>=</span> <span class='hs-keyword'>do</span>
<a name="line-880"></a>  <span class='hs-varid'>start</span> <span class='hs-keyglyph'>&lt;-</span> <span class='hs-varid'>makeEmptyTextIter</span>
<a name="line-881"></a>  <span class='hs-varid'>end</span> <span class='hs-keyglyph'>&lt;-</span> <span class='hs-varid'>makeEmptyTextIter</span>
<a name="line-882"></a>  <span class='hs-varid'>found</span> <span class='hs-keyglyph'>&lt;-</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span> <span class='hs-varid'>withUTFString</span> <span class='hs-varid'>str</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>cStr</span> <span class='hs-keyglyph'>-&gt;</span>
<a name="line-883"></a>    <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-varid'>arg2</span> <span class='hs-varid'>arg3</span> <span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg4</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg5</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg6</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg4</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr4</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg5</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr5</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg6</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr6</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_backward_search</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>arg2</span> <span class='hs-varid'>arg3</span> <span class='hs-varid'>argPtr4</span> <span class='hs-varid'>argPtr5</span> <span class='hs-varid'>argPtr6</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span> <span class='hs-varid'>cStr</span>
<a name="line-884"></a>    <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-varid'>fromIntegral</span><span class='hs-varop'>.</span><span class='hs-varid'>fromFlags</span><span class='hs-layout'>)</span> <span class='hs-varid'>flags</span><span class='hs-layout'>)</span> <span class='hs-varid'>start</span> <span class='hs-varid'>end</span>
<a name="line-885"></a>    <span class='hs-layout'>(</span><span class='hs-varid'>fromMaybe</span> <span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>nullForeignPtr</span><span class='hs-layout'>)</span> <span class='hs-varid'>limit</span><span class='hs-layout'>)</span>
<a name="line-886"></a>  <span class='hs-varid'>return</span> <span class='hs-varop'>$</span> <span class='hs-keyword'>if</span> <span class='hs-varid'>found</span> <span class='hs-keyword'>then</span> <span class='hs-conid'>Just</span> <span class='hs-layout'>(</span><span class='hs-varid'>start</span><span class='hs-layout'>,</span><span class='hs-varid'>end</span><span class='hs-layout'>)</span> <span class='hs-keyword'>else</span> <span class='hs-conid'>Nothing</span>
<a name="line-887"></a>
<a name="line-888"></a>
<a name="line-889"></a><a name="textIterForwardVisibleLine"></a><span class='hs-comment'>-- | Moves @iter@ to the start of the next visible line. Returns @True@ if</span>
<a name="line-890"></a><span class='hs-comment'>-- there was a next line to move to, and @False@ if @iter@ was simply moved to</span>
<a name="line-891"></a><span class='hs-comment'>-- the end of the buffer and is now not dereferenceable, or if @iter@ was</span>
<a name="line-892"></a><span class='hs-comment'>-- already at the end of the buffer.</span>
<a name="line-893"></a><span class='hs-comment'>--</span>
<a name="line-894"></a><span class='hs-comment'>-- * Available since Gtk+ version 2.8</span>
<a name="line-895"></a><span class='hs-comment'>--</span>
<a name="line-896"></a><span class='hs-definition'>textIterForwardVisibleLine</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span>
<a name="line-897"></a> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span> <span class='hs-comment'>-- ^ returns whether @iter@ can be dereferenced</span>
<a name="line-898"></a><span class='hs-definition'>textIterForwardVisibleLine</span> <span class='hs-varid'>self</span> <span class='hs-keyglyph'>=</span>
<a name="line-899"></a>  <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-900"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_forward_visible_line</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span>
<a name="line-901"></a><span class='hs-comment'>{-# LINE 889 "./Graphics/UI/Gtk/Multiline/TextIter.chs" #-}</span>
<a name="line-902"></a>    <span class='hs-varid'>self</span>
<a name="line-903"></a>
<a name="line-904"></a><a name="textIterBackwardVisibleLine"></a><span class='hs-comment'>-- | Moves @iter@ to the start of the previous visible line. Returns @True@ if</span>
<a name="line-905"></a><span class='hs-comment'>-- @iter@ could be moved; i.e. if @iter@ was at character offset 0, this</span>
<a name="line-906"></a><span class='hs-comment'>-- function returns @False@. Therefore if @iter@ was already on line 0, but not</span>
<a name="line-907"></a><span class='hs-comment'>-- at the start of the line, @iter@ is snapped to the start of the line and the</span>
<a name="line-908"></a><span class='hs-comment'>-- function returns @True@. (Note that this implies that in a loop calling this</span>
<a name="line-909"></a><span class='hs-comment'>-- function, the line number may not change on every iteration, if your first</span>
<a name="line-910"></a><span class='hs-comment'>-- iteration is on line 0.)</span>
<a name="line-911"></a><span class='hs-comment'>--</span>
<a name="line-912"></a><span class='hs-comment'>-- * Available since Gtk+ version 2.8</span>
<a name="line-913"></a><span class='hs-comment'>--</span>
<a name="line-914"></a><span class='hs-definition'>textIterBackwardVisibleLine</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span>
<a name="line-915"></a> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span> <span class='hs-comment'>-- ^ returns whether @iter@ moved</span>
<a name="line-916"></a><span class='hs-definition'>textIterBackwardVisibleLine</span> <span class='hs-varid'>self</span> <span class='hs-keyglyph'>=</span>
<a name="line-917"></a>  <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-918"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_backward_visible_line</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span>
<a name="line-919"></a><span class='hs-comment'>{-# LINE 906 "./Graphics/UI/Gtk/Multiline/TextIter.chs" #-}</span>
<a name="line-920"></a>    <span class='hs-varid'>self</span>
<a name="line-921"></a>
<a name="line-922"></a><a name="textIterForwardVisibleLines"></a><span class='hs-comment'>-- | Moves @count@ visible lines forward, if possible (if @count@ would move</span>
<a name="line-923"></a><span class='hs-comment'>-- past the start or end of the buffer, moves to the start or end of the</span>
<a name="line-924"></a><span class='hs-comment'>-- buffer). The return value indicates whether the iterator moved onto a</span>
<a name="line-925"></a><span class='hs-comment'>-- dereferenceable position; if the iterator didn't move, or moved onto the end</span>
<a name="line-926"></a><span class='hs-comment'>-- iterator, then @False@ is returned. If @count@ is 0, the function does</span>
<a name="line-927"></a><span class='hs-comment'>-- nothing and returns @False@. If @count@ is negative, moves backward by 0 -</span>
<a name="line-928"></a><span class='hs-comment'>-- @count@ lines.</span>
<a name="line-929"></a><span class='hs-comment'>--</span>
<a name="line-930"></a><span class='hs-comment'>-- * Available since Gtk+ version 2.8</span>
<a name="line-931"></a><span class='hs-comment'>--</span>
<a name="line-932"></a><span class='hs-definition'>textIterForwardVisibleLines</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span>
<a name="line-933"></a> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Int</span> <span class='hs-comment'>-- ^ @count@ - number of lines to move forward</span>
<a name="line-934"></a> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span> <span class='hs-comment'>-- ^ returns whether @iter@ moved and is dereferenceable</span>
<a name="line-935"></a><span class='hs-definition'>textIterForwardVisibleLines</span> <span class='hs-varid'>self</span> <span class='hs-varid'>count</span> <span class='hs-keyglyph'>=</span>
<a name="line-936"></a>  <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-937"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-varid'>arg2</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_forward_visible_lines</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span>
<a name="line-938"></a><span class='hs-comment'>{-# LINE 924 "./Graphics/UI/Gtk/Multiline/TextIter.chs" #-}</span>
<a name="line-939"></a>    <span class='hs-varid'>self</span>
<a name="line-940"></a>    <span class='hs-layout'>(</span><span class='hs-varid'>fromIntegral</span> <span class='hs-varid'>count</span><span class='hs-layout'>)</span>
<a name="line-941"></a>
<a name="line-942"></a><a name="textIterBackwardVisibleLines"></a><span class='hs-comment'>-- | Moves @count@ visible lines backward, if possible (if @count@ would move</span>
<a name="line-943"></a><span class='hs-comment'>-- past the start or end of the buffer, moves to the start or end of the</span>
<a name="line-944"></a><span class='hs-comment'>-- buffer). The return value indicates whether the iterator moved onto a</span>
<a name="line-945"></a><span class='hs-comment'>-- dereferenceable position; if the iterator didn't move, or moved onto the end</span>
<a name="line-946"></a><span class='hs-comment'>-- iterator, then @False@ is returned. If @count@ is 0, the function does</span>
<a name="line-947"></a><span class='hs-comment'>-- nothing and returns @False@. If @count@ is negative, moves forward by 0 -</span>
<a name="line-948"></a><span class='hs-comment'>-- @count@ lines.</span>
<a name="line-949"></a><span class='hs-comment'>--</span>
<a name="line-950"></a><span class='hs-comment'>-- * Available since Gtk+ version 2.8</span>
<a name="line-951"></a><span class='hs-comment'>--</span>
<a name="line-952"></a><span class='hs-definition'>textIterBackwardVisibleLines</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span>
<a name="line-953"></a> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Int</span> <span class='hs-comment'>-- ^ @count@ - number of lines to move backward</span>
<a name="line-954"></a> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span> <span class='hs-comment'>-- ^ returns whether @iter@ moved and is dereferenceable</span>
<a name="line-955"></a><span class='hs-definition'>textIterBackwardVisibleLines</span> <span class='hs-varid'>self</span> <span class='hs-varid'>count</span> <span class='hs-keyglyph'>=</span>
<a name="line-956"></a>  <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-957"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-varid'>arg2</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_backward_visible_lines</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span>
<a name="line-958"></a><span class='hs-comment'>{-# LINE 943 "./Graphics/UI/Gtk/Multiline/TextIter.chs" #-}</span>
<a name="line-959"></a>    <span class='hs-varid'>self</span>
<a name="line-960"></a>    <span class='hs-layout'>(</span><span class='hs-varid'>fromIntegral</span> <span class='hs-varid'>count</span><span class='hs-layout'>)</span>
<a name="line-961"></a>
<a name="line-962"></a>
<a name="line-963"></a><a name="textIterForwardVisibleWordEnds"></a><span class='hs-comment'>-- | Calls 'textIterForwardVisibleWordEnd' up to count times.</span>
<a name="line-964"></a><span class='hs-comment'>--</span>
<a name="line-965"></a><span class='hs-definition'>textIterForwardVisibleWordEnds</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span>
<a name="line-966"></a> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Int</span> <span class='hs-comment'>-- ^ @couter@ - number of times to move</span>
<a name="line-967"></a> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span> <span class='hs-comment'>-- ^ return @True@ if iter moved and is not the end iterator</span>
<a name="line-968"></a><span class='hs-definition'>textIterForwardVisibleWordEnds</span> <span class='hs-varid'>self</span> <span class='hs-varid'>count</span> <span class='hs-keyglyph'>=</span>
<a name="line-969"></a>  <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-970"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-varid'>arg2</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_forward_visible_word_ends</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span>
<a name="line-971"></a><span class='hs-comment'>{-# LINE 955 "./Graphics/UI/Gtk/Multiline/TextIter.chs" #-}</span>
<a name="line-972"></a>    <span class='hs-varid'>self</span>
<a name="line-973"></a>    <span class='hs-layout'>(</span><span class='hs-varid'>fromIntegral</span> <span class='hs-varid'>count</span><span class='hs-layout'>)</span>
<a name="line-974"></a>
<a name="line-975"></a><a name="textIterBackwardVisibleWordStarts"></a><span class='hs-comment'>-- | Calls 'textIterBackwardVisibleWordStart' up to count times.</span>
<a name="line-976"></a><span class='hs-comment'>--</span>
<a name="line-977"></a><span class='hs-definition'>textIterBackwardVisibleWordStarts</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span>
<a name="line-978"></a> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Int</span> <span class='hs-comment'>-- ^ @couter@ - number of times to move</span>
<a name="line-979"></a> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span> <span class='hs-comment'>-- ^ return @True@ if iter moved and is not the end iterator</span>
<a name="line-980"></a><span class='hs-definition'>textIterBackwardVisibleWordStarts</span> <span class='hs-varid'>self</span> <span class='hs-varid'>count</span> <span class='hs-keyglyph'>=</span>
<a name="line-981"></a>  <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-982"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-varid'>arg2</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_backward_visible_word_starts</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span>
<a name="line-983"></a><span class='hs-comment'>{-# LINE 966 "./Graphics/UI/Gtk/Multiline/TextIter.chs" #-}</span>
<a name="line-984"></a>    <span class='hs-varid'>self</span>
<a name="line-985"></a>    <span class='hs-layout'>(</span><span class='hs-varid'>fromIntegral</span> <span class='hs-varid'>count</span><span class='hs-layout'>)</span>
<a name="line-986"></a>
<a name="line-987"></a><a name="textIterForwardVisibleWordEnd"></a><span class='hs-comment'>-- | Moves forward to the next visible word end.</span>
<a name="line-988"></a><span class='hs-comment'>-- (If iter is currently on a word end, moves forward to the next one after that.)</span>
<a name="line-989"></a><span class='hs-comment'>-- Word breaks are determined by Pango and should be correct for nearly any language</span>
<a name="line-990"></a><span class='hs-comment'>-- (if not, the correct fix would be to the Pango word break algorithms).</span>
<a name="line-991"></a><span class='hs-comment'>--</span>
<a name="line-992"></a><span class='hs-definition'>textIterForwardVisibleWordEnd</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span>
<a name="line-993"></a> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span> <span class='hs-comment'>-- ^ return @True@ if iter moved and is not the end iterator</span>
<a name="line-994"></a><span class='hs-definition'>textIterForwardVisibleWordEnd</span> <span class='hs-varid'>self</span> <span class='hs-keyglyph'>=</span>
<a name="line-995"></a>  <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-996"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_forward_visible_word_end</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span>
<a name="line-997"></a><span class='hs-comment'>{-# LINE 979 "./Graphics/UI/Gtk/Multiline/TextIter.chs" #-}</span>
<a name="line-998"></a>    <span class='hs-varid'>self</span>
<a name="line-999"></a>
<a name="line-1000"></a><a name="textIterBackwardVisibleWordStart"></a><span class='hs-comment'>-- | Moves backward to the previous visible word start.</span>
<a name="line-1001"></a><span class='hs-comment'>-- (If iter is currently on a word start, moves backward to the next one after that.)</span>
<a name="line-1002"></a><span class='hs-comment'>-- Word breaks are determined by Pango and should be correct for nearly any language</span>
<a name="line-1003"></a><span class='hs-comment'>-- (if not, the correct fix would be to the Pango word break algorithms).</span>
<a name="line-1004"></a><span class='hs-comment'>--</span>
<a name="line-1005"></a><span class='hs-definition'>textIterBackwardVisibleWordStart</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span>
<a name="line-1006"></a> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span> <span class='hs-comment'>-- ^ return @True@ if iter moved and is not the end iterator</span>
<a name="line-1007"></a><span class='hs-definition'>textIterBackwardVisibleWordStart</span> <span class='hs-varid'>self</span> <span class='hs-keyglyph'>=</span>
<a name="line-1008"></a>  <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-1009"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_backward_visible_word_start</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span>
<a name="line-1010"></a><span class='hs-comment'>{-# LINE 991 "./Graphics/UI/Gtk/Multiline/TextIter.chs" #-}</span>
<a name="line-1011"></a>    <span class='hs-varid'>self</span>
<a name="line-1012"></a>
<a name="line-1013"></a><a name="textIterForwardVisibleCursorPosition"></a><span class='hs-comment'>-- | Moves iter forward to the next visible cursor position.</span>
<a name="line-1014"></a><span class='hs-comment'>-- See 'textIterForwardCursorPosition' for details.</span>
<a name="line-1015"></a><span class='hs-comment'>--</span>
<a name="line-1016"></a><span class='hs-definition'>textIterForwardVisibleCursorPosition</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span>
<a name="line-1017"></a> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span> <span class='hs-comment'>-- ^ return @True@ if iter moved and is not the end iterator</span>
<a name="line-1018"></a><span class='hs-definition'>textIterForwardVisibleCursorPosition</span> <span class='hs-varid'>self</span> <span class='hs-keyglyph'>=</span>
<a name="line-1019"></a>  <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-1020"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_forward_visible_cursor_position</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span>
<a name="line-1021"></a><span class='hs-comment'>{-# LINE 1001 "./Graphics/UI/Gtk/Multiline/TextIter.chs" #-}</span>
<a name="line-1022"></a>    <span class='hs-varid'>self</span>
<a name="line-1023"></a>
<a name="line-1024"></a><a name="textIterBackwardVisibleCursorPosition"></a><span class='hs-comment'>-- | Moves iter forward to the previous visible cursor position.</span>
<a name="line-1025"></a><span class='hs-comment'>-- See 'textIterBackwardCursorPosition' for details.</span>
<a name="line-1026"></a><span class='hs-comment'>--</span>
<a name="line-1027"></a><span class='hs-definition'>textIterBackwardVisibleCursorPosition</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span>
<a name="line-1028"></a> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span> <span class='hs-comment'>-- ^ return @True@ if iter moved and is not the end iterator</span>
<a name="line-1029"></a><span class='hs-definition'>textIterBackwardVisibleCursorPosition</span> <span class='hs-varid'>self</span> <span class='hs-keyglyph'>=</span>
<a name="line-1030"></a>  <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-1031"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_backward_visible_cursor_position</span> <span class='hs-varid'>argPtr1</span><span class='hs-layout'>)</span>
<a name="line-1032"></a><span class='hs-comment'>{-# LINE 1011 "./Graphics/UI/Gtk/Multiline/TextIter.chs" #-}</span>
<a name="line-1033"></a>    <span class='hs-varid'>self</span>
<a name="line-1034"></a>
<a name="line-1035"></a><a name="textIterForwardVisibleCursorPositions"></a><span class='hs-comment'>-- | Moves up to count visible cursor positions.</span>
<a name="line-1036"></a><span class='hs-comment'>-- See 'textIterForwardCursorPosition' for details.</span>
<a name="line-1037"></a><span class='hs-definition'>textIterForwardVisibleCursorPositions</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span>
<a name="line-1038"></a> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Int</span> <span class='hs-comment'>-- ^ @couter@ - number of times to move</span>
<a name="line-1039"></a> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span> <span class='hs-comment'>-- ^ return @True@ if iter moved and is not the end iterator</span>
<a name="line-1040"></a><span class='hs-definition'>textIterForwardVisibleCursorPositions</span> <span class='hs-varid'>self</span> <span class='hs-varid'>count</span> <span class='hs-keyglyph'>=</span>
<a name="line-1041"></a>  <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-1042"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-varid'>arg2</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_forward_visible_cursor_positions</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span>
<a name="line-1043"></a><span class='hs-comment'>{-# LINE 1021 "./Graphics/UI/Gtk/Multiline/TextIter.chs" #-}</span>
<a name="line-1044"></a>    <span class='hs-varid'>self</span>
<a name="line-1045"></a>    <span class='hs-layout'>(</span><span class='hs-varid'>fromIntegral</span> <span class='hs-varid'>count</span><span class='hs-layout'>)</span>
<a name="line-1046"></a>
<a name="line-1047"></a><a name="textIterBackwardVisibleCursorPositions"></a><span class='hs-comment'>-- | Moves up to count visible cursor positions.</span>
<a name="line-1048"></a><span class='hs-comment'>-- See 'textIterBackwardCursorPosition' for details.</span>
<a name="line-1049"></a><span class='hs-comment'>--</span>
<a name="line-1050"></a><span class='hs-definition'>textIterBackwardVisibleCursorPositions</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span>
<a name="line-1051"></a> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>Int</span> <span class='hs-comment'>-- ^ @couter@ - number of times to move</span>
<a name="line-1052"></a> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span> <span class='hs-comment'>-- ^ return @True@ if iter moved and is not the end iterator</span>
<a name="line-1053"></a><span class='hs-definition'>textIterBackwardVisibleCursorPositions</span> <span class='hs-varid'>self</span> <span class='hs-varid'>count</span> <span class='hs-keyglyph'>=</span>
<a name="line-1054"></a>  <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-1055"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-varid'>arg2</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_backward_visible_cursor_positions</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span>
<a name="line-1056"></a><span class='hs-comment'>{-# LINE 1033 "./Graphics/UI/Gtk/Multiline/TextIter.chs" #-}</span>
<a name="line-1057"></a>    <span class='hs-varid'>self</span>
<a name="line-1058"></a>    <span class='hs-layout'>(</span><span class='hs-varid'>fromIntegral</span> <span class='hs-varid'>count</span><span class='hs-layout'>)</span>
<a name="line-1059"></a>
<a name="line-1060"></a><a name="textIterEqual"></a><span class='hs-comment'>-- | Compare two 'TextIter' for equality.</span>
<a name="line-1061"></a><span class='hs-comment'>--</span>
<a name="line-1062"></a><span class='hs-definition'>textIterEqual</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span>
<a name="line-1063"></a><span class='hs-definition'>textIterEqual</span> <span class='hs-varid'>ti2</span> <span class='hs-varid'>ti1</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg2</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr2</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_equal</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>argPtr2</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti1</span> <span class='hs-varid'>ti2</span>
<a name="line-1064"></a>
<a name="line-1065"></a><a name="textIterCompare"></a><span class='hs-comment'>-- | Compare two 'TextIter'.</span>
<a name="line-1066"></a><span class='hs-comment'>--</span>
<a name="line-1067"></a><span class='hs-definition'>textIterCompare</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Ordering</span>
<a name="line-1068"></a><span class='hs-definition'>textIterCompare</span> <span class='hs-varid'>ti2</span> <span class='hs-varid'>ti1</span> <span class='hs-keyglyph'>=</span> <span class='hs-keyword'>do</span>
<a name="line-1069"></a>  <span class='hs-varid'>res</span> <span class='hs-keyglyph'>&lt;-</span> <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg2</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr2</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_compare</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>argPtr2</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti1</span> <span class='hs-varid'>ti2</span>
<a name="line-1070"></a>  <span class='hs-varid'>return</span> <span class='hs-varop'>$</span> <span class='hs-keyword'>case</span> <span class='hs-varid'>res</span> <span class='hs-keyword'>of</span>
<a name="line-1071"></a>    <span class='hs-layout'>(</span><span class='hs-comment'>-</span><span class='hs-num'>1</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>LT</span>
<a name="line-1072"></a>    <span class='hs-num'>0</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>EQ</span>
<a name="line-1073"></a>    <span class='hs-num'>1</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>GT</span>
<a name="line-1074"></a>
<a name="line-1075"></a><a name="textIterInRange"></a><span class='hs-comment'>-- | Checks whether iter falls in the range [start, end).</span>
<a name="line-1076"></a><span class='hs-comment'>-- start and end must be in ascending order.</span>
<a name="line-1077"></a><span class='hs-comment'>--</span>
<a name="line-1078"></a><span class='hs-definition'>textIterInRange</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span>
<a name="line-1079"></a> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>TextIter</span> <span class='hs-comment'>-- ^ @start@ start of range</span>
<a name="line-1080"></a> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>TextIter</span> <span class='hs-comment'>-- ^ @end@ end of range</span>
<a name="line-1081"></a> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>Bool</span> <span class='hs-comment'>-- ^ @True@ if iter is in the range</span>
<a name="line-1082"></a><span class='hs-definition'>textIterInRange</span> <span class='hs-varid'>ti</span> <span class='hs-varid'>start</span> <span class='hs-varid'>end</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>liftM</span> <span class='hs-varid'>toBool</span> <span class='hs-varop'>$</span>
<a name="line-1083"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg3</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg2</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr2</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg3</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr3</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_in_range</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>argPtr2</span> <span class='hs-varid'>argPtr3</span><span class='hs-layout'>)</span> <span class='hs-varid'>ti</span> <span class='hs-varid'>start</span> <span class='hs-varid'>end</span>
<a name="line-1084"></a>
<a name="line-1085"></a><a name="textIterOrder"></a><span class='hs-comment'>-- | Swaps the value of first and second if second comes before first in the buffer.</span>
<a name="line-1086"></a><span class='hs-comment'>-- That is, ensures that first and second are in sequence.</span>
<a name="line-1087"></a><span class='hs-comment'>-- Most text buffer functions that take a range call this automatically on your behalf, so there's no real reason to call it yourself in those cases. </span>
<a name="line-1088"></a><span class='hs-comment'>-- There are some exceptions, such as 'textIterInRange', that expect a pre-sorted range.</span>
<a name="line-1089"></a><span class='hs-comment'>--</span>
<a name="line-1090"></a><span class='hs-definition'>textIterOrder</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>TextIter</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-conid'>IO</span> <span class='hs-conid'>()</span>
<a name="line-1091"></a><span class='hs-definition'>textIterOrder</span> <span class='hs-varid'>first</span> <span class='hs-varid'>second</span> <span class='hs-keyglyph'>=</span>
<a name="line-1092"></a>  <span class='hs-layout'>(</span><span class='hs-keyglyph'>\</span><span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg1</span><span class='hs-layout'>)</span> <span class='hs-layout'>(</span><span class='hs-conid'>TextIter</span> <span class='hs-varid'>arg2</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg1</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr1</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>withForeignPtr</span> <span class='hs-varid'>arg2</span> <span class='hs-varop'>$</span> <span class='hs-keyglyph'>\</span><span class='hs-varid'>argPtr2</span> <span class='hs-keyglyph'>-&gt;</span><span class='hs-varid'>gtk_text_iter_order</span> <span class='hs-varid'>argPtr1</span> <span class='hs-varid'>argPtr2</span><span class='hs-layout'>)</span> <span class='hs-varid'>first</span> <span class='hs-varid'>second</span>
<a name="line-1093"></a>
<a name="line-1094"></a><span class='hs-comment'>--------------------</span>
<a name="line-1095"></a><span class='hs-comment'>-- Attributes</span>
<a name="line-1096"></a>
<a name="line-1097"></a><a name="textIterVisibleLineOffset"></a><span class='hs-comment'>-- | \'visibleLineOffset\' property. See 'textIterGetVisibleLineOffset' and</span>
<a name="line-1098"></a><span class='hs-comment'>-- 'textIterSetVisibleLineOffset'</span>
<a name="line-1099"></a><span class='hs-comment'>--</span>
<a name="line-1100"></a><span class='hs-definition'>textIterVisibleLineOffset</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Attr</span> <span class='hs-conid'>TextIter</span> <span class='hs-conid'>Int</span>
<a name="line-1101"></a><span class='hs-definition'>textIterVisibleLineOffset</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>newAttr</span>
<a name="line-1102"></a>  <span class='hs-varid'>textIterGetVisibleLineOffset</span>
<a name="line-1103"></a>  <span class='hs-varid'>textIterSetVisibleLineOffset</span>
<a name="line-1104"></a>
<a name="line-1105"></a><a name="textIterOffset"></a><span class='hs-comment'>-- | \'offset\' property. See 'textIterGetOffset' and 'textIterSetOffset'</span>
<a name="line-1106"></a><span class='hs-comment'>--</span>
<a name="line-1107"></a><span class='hs-definition'>textIterOffset</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Attr</span> <span class='hs-conid'>TextIter</span> <span class='hs-conid'>Int</span>
<a name="line-1108"></a><span class='hs-definition'>textIterOffset</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>newAttr</span>
<a name="line-1109"></a>  <span class='hs-varid'>textIterGetOffset</span>
<a name="line-1110"></a>  <span class='hs-varid'>textIterSetOffset</span>
<a name="line-1111"></a>
<a name="line-1112"></a><a name="textIterLineOffset"></a><span class='hs-comment'>-- | \'lineOffset\' property. See 'textIterGetLineOffset' and</span>
<a name="line-1113"></a><span class='hs-comment'>-- 'textIterSetLineOffset'</span>
<a name="line-1114"></a><span class='hs-comment'>--</span>
<a name="line-1115"></a><span class='hs-definition'>textIterLineOffset</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Attr</span> <span class='hs-conid'>TextIter</span> <span class='hs-conid'>Int</span>
<a name="line-1116"></a><span class='hs-definition'>textIterLineOffset</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>newAttr</span>
<a name="line-1117"></a>  <span class='hs-varid'>textIterGetLineOffset</span>
<a name="line-1118"></a>  <span class='hs-varid'>textIterSetLineOffset</span>
<a name="line-1119"></a>
<a name="line-1120"></a><a name="textIterLine"></a><span class='hs-comment'>-- | \'line\' property. See 'textIterGetLine' and 'textIterSetLine'</span>
<a name="line-1121"></a><span class='hs-comment'>--</span>
<a name="line-1122"></a><span class='hs-definition'>textIterLine</span> <span class='hs-keyglyph'>::</span> <span class='hs-conid'>Attr</span> <span class='hs-conid'>TextIter</span> <span class='hs-conid'>Int</span>
<a name="line-1123"></a><span class='hs-definition'>textIterLine</span> <span class='hs-keyglyph'>=</span> <span class='hs-varid'>newAttr</span>
<a name="line-1124"></a>  <span class='hs-varid'>textIterGetLine</span>
<a name="line-1125"></a>  <span class='hs-varid'>textIterSetLine</span>
<a name="line-1126"></a>
<a name="line-1127"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_get_buffer"</span>
<a name="line-1128"></a>  <span class='hs-varid'>gtk_text_iter_get_buffer</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextBuffer</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1129"></a>
<a name="line-1130"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_get_offset"</span>
<a name="line-1131"></a>  <span class='hs-varid'>gtk_text_iter_get_offset</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1132"></a>
<a name="line-1133"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_get_line"</span>
<a name="line-1134"></a>  <span class='hs-varid'>gtk_text_iter_get_line</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1135"></a>
<a name="line-1136"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_get_line_offset"</span>
<a name="line-1137"></a>  <span class='hs-varid'>gtk_text_iter_get_line_offset</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1138"></a>
<a name="line-1139"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_get_visible_line_offset"</span>
<a name="line-1140"></a>  <span class='hs-varid'>gtk_text_iter_get_visible_line_offset</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1141"></a>
<a name="line-1142"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_get_char"</span>
<a name="line-1143"></a>  <span class='hs-varid'>gtk_text_iter_get_char</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CUInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1144"></a>
<a name="line-1145"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>safe</span> <span class='hs-str'>"gtk_text_iter_get_slice"</span>
<a name="line-1146"></a>  <span class='hs-varid'>gtk_text_iter_get_slice</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>CChar</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1147"></a>
<a name="line-1148"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"g_free"</span>
<a name="line-1149"></a>  <span class='hs-varid'>g_free</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1150"></a>
<a name="line-1151"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>safe</span> <span class='hs-str'>"gtk_text_iter_get_text"</span>
<a name="line-1152"></a>  <span class='hs-varid'>gtk_text_iter_get_text</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>CChar</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1153"></a>
<a name="line-1154"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>safe</span> <span class='hs-str'>"gtk_text_iter_get_visible_slice"</span>
<a name="line-1155"></a>  <span class='hs-varid'>gtk_text_iter_get_visible_slice</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>CChar</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1156"></a>
<a name="line-1157"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>safe</span> <span class='hs-str'>"gtk_text_iter_get_visible_text"</span>
<a name="line-1158"></a>  <span class='hs-varid'>gtk_text_iter_get_visible_text</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>CChar</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1159"></a>
<a name="line-1160"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_get_pixbuf"</span>
<a name="line-1161"></a>  <span class='hs-varid'>gtk_text_iter_get_pixbuf</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>Pixbuf</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1162"></a>
<a name="line-1163"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_get_child_anchor"</span>
<a name="line-1164"></a>  <span class='hs-varid'>gtk_text_iter_get_child_anchor</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextChildAnchor</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1165"></a>
<a name="line-1166"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>safe</span> <span class='hs-str'>"gtk_text_iter_get_marks"</span>
<a name="line-1167"></a>  <span class='hs-varid'>gtk_text_iter_get_marks</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1168"></a>
<a name="line-1169"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>safe</span> <span class='hs-str'>"gtk_text_iter_get_toggled_tags"</span>
<a name="line-1170"></a>  <span class='hs-varid'>gtk_text_iter_get_toggled_tags</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>CInt</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1171"></a>
<a name="line-1172"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_begins_tag"</span>
<a name="line-1173"></a>  <span class='hs-varid'>gtk_text_iter_begins_tag</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextTag</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1174"></a>
<a name="line-1175"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_ends_tag"</span>
<a name="line-1176"></a>  <span class='hs-varid'>gtk_text_iter_ends_tag</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextTag</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1177"></a>
<a name="line-1178"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_toggles_tag"</span>
<a name="line-1179"></a>  <span class='hs-varid'>gtk_text_iter_toggles_tag</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextTag</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1180"></a>
<a name="line-1181"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_has_tag"</span>
<a name="line-1182"></a>  <span class='hs-varid'>gtk_text_iter_has_tag</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextTag</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1183"></a>
<a name="line-1184"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>safe</span> <span class='hs-str'>"gtk_text_iter_get_tags"</span>
<a name="line-1185"></a>  <span class='hs-varid'>gtk_text_iter_get_tags</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1186"></a>
<a name="line-1187"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_editable"</span>
<a name="line-1188"></a>  <span class='hs-varid'>gtk_text_iter_editable</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>CInt</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1189"></a>
<a name="line-1190"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_can_insert"</span>
<a name="line-1191"></a>  <span class='hs-varid'>gtk_text_iter_can_insert</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>CInt</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1192"></a>
<a name="line-1193"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_starts_word"</span>
<a name="line-1194"></a>  <span class='hs-varid'>gtk_text_iter_starts_word</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1195"></a>
<a name="line-1196"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_ends_word"</span>
<a name="line-1197"></a>  <span class='hs-varid'>gtk_text_iter_ends_word</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1198"></a>
<a name="line-1199"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_inside_word"</span>
<a name="line-1200"></a>  <span class='hs-varid'>gtk_text_iter_inside_word</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1201"></a>
<a name="line-1202"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_starts_line"</span>
<a name="line-1203"></a>  <span class='hs-varid'>gtk_text_iter_starts_line</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1204"></a>
<a name="line-1205"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_ends_line"</span>
<a name="line-1206"></a>  <span class='hs-varid'>gtk_text_iter_ends_line</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1207"></a>
<a name="line-1208"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_starts_sentence"</span>
<a name="line-1209"></a>  <span class='hs-varid'>gtk_text_iter_starts_sentence</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1210"></a>
<a name="line-1211"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_ends_sentence"</span>
<a name="line-1212"></a>  <span class='hs-varid'>gtk_text_iter_ends_sentence</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1213"></a>
<a name="line-1214"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_inside_sentence"</span>
<a name="line-1215"></a>  <span class='hs-varid'>gtk_text_iter_inside_sentence</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1216"></a>
<a name="line-1217"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_is_cursor_position"</span>
<a name="line-1218"></a>  <span class='hs-varid'>gtk_text_iter_is_cursor_position</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1219"></a>
<a name="line-1220"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_get_chars_in_line"</span>
<a name="line-1221"></a>  <span class='hs-varid'>gtk_text_iter_get_chars_in_line</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1222"></a>
<a name="line-1223"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_get_attributes"</span>
<a name="line-1224"></a>  <span class='hs-varid'>gtk_text_iter_get_attributes</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextAttributes</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1225"></a>
<a name="line-1226"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_get_language"</span>
<a name="line-1227"></a>  <span class='hs-varid'>gtk_text_iter_get_language</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>Language</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1228"></a>
<a name="line-1229"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_is_end"</span>
<a name="line-1230"></a>  <span class='hs-varid'>gtk_text_iter_is_end</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1231"></a>
<a name="line-1232"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_is_start"</span>
<a name="line-1233"></a>  <span class='hs-varid'>gtk_text_iter_is_start</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1234"></a>
<a name="line-1235"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_forward_char"</span>
<a name="line-1236"></a>  <span class='hs-varid'>gtk_text_iter_forward_char</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1237"></a>
<a name="line-1238"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_backward_char"</span>
<a name="line-1239"></a>  <span class='hs-varid'>gtk_text_iter_backward_char</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1240"></a>
<a name="line-1241"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_forward_chars"</span>
<a name="line-1242"></a>  <span class='hs-varid'>gtk_text_iter_forward_chars</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>CInt</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1243"></a>
<a name="line-1244"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_backward_chars"</span>
<a name="line-1245"></a>  <span class='hs-varid'>gtk_text_iter_backward_chars</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>CInt</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1246"></a>
<a name="line-1247"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_forward_line"</span>
<a name="line-1248"></a>  <span class='hs-varid'>gtk_text_iter_forward_line</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1249"></a>
<a name="line-1250"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_backward_line"</span>
<a name="line-1251"></a>  <span class='hs-varid'>gtk_text_iter_backward_line</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1252"></a>
<a name="line-1253"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_forward_lines"</span>
<a name="line-1254"></a>  <span class='hs-varid'>gtk_text_iter_forward_lines</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>CInt</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1255"></a>
<a name="line-1256"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_backward_lines"</span>
<a name="line-1257"></a>  <span class='hs-varid'>gtk_text_iter_backward_lines</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>CInt</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1258"></a>
<a name="line-1259"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_forward_word_ends"</span>
<a name="line-1260"></a>  <span class='hs-varid'>gtk_text_iter_forward_word_ends</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>CInt</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1261"></a>
<a name="line-1262"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_backward_word_starts"</span>
<a name="line-1263"></a>  <span class='hs-varid'>gtk_text_iter_backward_word_starts</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>CInt</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1264"></a>
<a name="line-1265"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_forward_word_end"</span>
<a name="line-1266"></a>  <span class='hs-varid'>gtk_text_iter_forward_word_end</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1267"></a>
<a name="line-1268"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_backward_word_start"</span>
<a name="line-1269"></a>  <span class='hs-varid'>gtk_text_iter_backward_word_start</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1270"></a>
<a name="line-1271"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_forward_cursor_position"</span>
<a name="line-1272"></a>  <span class='hs-varid'>gtk_text_iter_forward_cursor_position</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1273"></a>
<a name="line-1274"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_backward_cursor_position"</span>
<a name="line-1275"></a>  <span class='hs-varid'>gtk_text_iter_backward_cursor_position</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1276"></a>
<a name="line-1277"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_forward_cursor_positions"</span>
<a name="line-1278"></a>  <span class='hs-varid'>gtk_text_iter_forward_cursor_positions</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>CInt</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1279"></a>
<a name="line-1280"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_backward_cursor_positions"</span>
<a name="line-1281"></a>  <span class='hs-varid'>gtk_text_iter_backward_cursor_positions</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>CInt</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1282"></a>
<a name="line-1283"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_forward_sentence_ends"</span>
<a name="line-1284"></a>  <span class='hs-varid'>gtk_text_iter_forward_sentence_ends</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>CInt</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1285"></a>
<a name="line-1286"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_backward_sentence_starts"</span>
<a name="line-1287"></a>  <span class='hs-varid'>gtk_text_iter_backward_sentence_starts</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>CInt</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1288"></a>
<a name="line-1289"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_forward_sentence_end"</span>
<a name="line-1290"></a>  <span class='hs-varid'>gtk_text_iter_forward_sentence_end</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1291"></a>
<a name="line-1292"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_backward_sentence_start"</span>
<a name="line-1293"></a>  <span class='hs-varid'>gtk_text_iter_backward_sentence_start</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1294"></a>
<a name="line-1295"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_set_offset"</span>
<a name="line-1296"></a>  <span class='hs-varid'>gtk_text_iter_set_offset</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>CInt</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1297"></a>
<a name="line-1298"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_set_line"</span>
<a name="line-1299"></a>  <span class='hs-varid'>gtk_text_iter_set_line</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>CInt</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1300"></a>
<a name="line-1301"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_set_line_offset"</span>
<a name="line-1302"></a>  <span class='hs-varid'>gtk_text_iter_set_line_offset</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>CInt</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1303"></a>
<a name="line-1304"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_set_visible_line_offset"</span>
<a name="line-1305"></a>  <span class='hs-varid'>gtk_text_iter_set_visible_line_offset</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>CInt</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1306"></a>
<a name="line-1307"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_forward_to_end"</span>
<a name="line-1308"></a>  <span class='hs-varid'>gtk_text_iter_forward_to_end</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1309"></a>
<a name="line-1310"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_forward_to_line_end"</span>
<a name="line-1311"></a>  <span class='hs-varid'>gtk_text_iter_forward_to_line_end</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1312"></a>
<a name="line-1313"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_forward_to_tag_toggle"</span>
<a name="line-1314"></a>  <span class='hs-varid'>gtk_text_iter_forward_to_tag_toggle</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextTag</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1315"></a>
<a name="line-1316"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_backward_to_tag_toggle"</span>
<a name="line-1317"></a>  <span class='hs-varid'>gtk_text_iter_backward_to_tag_toggle</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextTag</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1318"></a>
<a name="line-1319"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>safe</span> <span class='hs-str'>"gtk_text_iter_forward_find_char"</span>
<a name="line-1320"></a>  <span class='hs-varid'>gtk_text_iter_forward_find_char</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>FunPtr</span> <span class='hs-layout'>(</span><span class='hs-conid'>CUInt</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1321"></a>
<a name="line-1322"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>safe</span> <span class='hs-str'>"gtk_text_iter_backward_find_char"</span>
<a name="line-1323"></a>  <span class='hs-varid'>gtk_text_iter_backward_find_char</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>FunPtr</span> <span class='hs-layout'>(</span><span class='hs-conid'>CUInt</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1324"></a>
<a name="line-1325"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_forward_search"</span>
<a name="line-1326"></a>  <span class='hs-varid'>gtk_text_iter_forward_search</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>CChar</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>CInt</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1327"></a>
<a name="line-1328"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_backward_search"</span>
<a name="line-1329"></a>  <span class='hs-varid'>gtk_text_iter_backward_search</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>CChar</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>CInt</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1330"></a>
<a name="line-1331"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>safe</span> <span class='hs-str'>"gtk_text_iter_forward_visible_line"</span>
<a name="line-1332"></a>  <span class='hs-varid'>gtk_text_iter_forward_visible_line</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1333"></a>
<a name="line-1334"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>safe</span> <span class='hs-str'>"gtk_text_iter_backward_visible_line"</span>
<a name="line-1335"></a>  <span class='hs-varid'>gtk_text_iter_backward_visible_line</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1336"></a>
<a name="line-1337"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>safe</span> <span class='hs-str'>"gtk_text_iter_forward_visible_lines"</span>
<a name="line-1338"></a>  <span class='hs-varid'>gtk_text_iter_forward_visible_lines</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>CInt</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1339"></a>
<a name="line-1340"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>safe</span> <span class='hs-str'>"gtk_text_iter_backward_visible_lines"</span>
<a name="line-1341"></a>  <span class='hs-varid'>gtk_text_iter_backward_visible_lines</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>CInt</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1342"></a>
<a name="line-1343"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>safe</span> <span class='hs-str'>"gtk_text_iter_forward_visible_word_ends"</span>
<a name="line-1344"></a>  <span class='hs-varid'>gtk_text_iter_forward_visible_word_ends</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>CInt</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1345"></a>
<a name="line-1346"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>safe</span> <span class='hs-str'>"gtk_text_iter_backward_visible_word_starts"</span>
<a name="line-1347"></a>  <span class='hs-varid'>gtk_text_iter_backward_visible_word_starts</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>CInt</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1348"></a>
<a name="line-1349"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>safe</span> <span class='hs-str'>"gtk_text_iter_forward_visible_word_end"</span>
<a name="line-1350"></a>  <span class='hs-varid'>gtk_text_iter_forward_visible_word_end</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1351"></a>
<a name="line-1352"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>safe</span> <span class='hs-str'>"gtk_text_iter_backward_visible_word_start"</span>
<a name="line-1353"></a>  <span class='hs-varid'>gtk_text_iter_backward_visible_word_start</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1354"></a>
<a name="line-1355"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>safe</span> <span class='hs-str'>"gtk_text_iter_forward_visible_cursor_position"</span>
<a name="line-1356"></a>  <span class='hs-varid'>gtk_text_iter_forward_visible_cursor_position</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1357"></a>
<a name="line-1358"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>safe</span> <span class='hs-str'>"gtk_text_iter_backward_visible_cursor_position"</span>
<a name="line-1359"></a>  <span class='hs-varid'>gtk_text_iter_backward_visible_cursor_position</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1360"></a>
<a name="line-1361"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>safe</span> <span class='hs-str'>"gtk_text_iter_forward_visible_cursor_positions"</span>
<a name="line-1362"></a>  <span class='hs-varid'>gtk_text_iter_forward_visible_cursor_positions</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>CInt</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1363"></a>
<a name="line-1364"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>safe</span> <span class='hs-str'>"gtk_text_iter_backward_visible_cursor_positions"</span>
<a name="line-1365"></a>  <span class='hs-varid'>gtk_text_iter_backward_visible_cursor_positions</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>CInt</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1366"></a>
<a name="line-1367"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_equal"</span>
<a name="line-1368"></a>  <span class='hs-varid'>gtk_text_iter_equal</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1369"></a>
<a name="line-1370"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_compare"</span>
<a name="line-1371"></a>  <span class='hs-varid'>gtk_text_iter_compare</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1372"></a>
<a name="line-1373"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>unsafe</span> <span class='hs-str'>"gtk_text_iter_in_range"</span>
<a name="line-1374"></a>  <span class='hs-varid'>gtk_text_iter_in_range</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>CInt</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
<a name="line-1375"></a>
<a name="line-1376"></a><span class='hs-keyword'>foreign</span> <span class='hs-keyword'>import</span> <span class='hs-keyword'>ccall</span> <span class='hs-keyword'>safe</span> <span class='hs-str'>"gtk_text_iter_order"</span>
<a name="line-1377"></a>  <span class='hs-varid'>gtk_text_iter_order</span> <span class='hs-keyglyph'>::</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-layout'>(</span><span class='hs-conid'>Ptr</span> <span class='hs-conid'>TextIter</span><span class='hs-layout'>)</span> <span class='hs-keyglyph'>-&gt;</span> <span class='hs-layout'>(</span><span class='hs-conid'>IO</span> <span class='hs-conid'>()</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span><span class='hs-layout'>)</span>
</pre></body>
</html>