-
-
procedure Copy (Source : Gtk_Text_Iter; Dest : out Gtk_Text_Iter);
Characters and bytes
The basic component of a Gtk_Text_Buffer is a character. Since these are
encoded in Unicode's UTF8, a character can be stored as multiple bytes
in fact, and gtk+ therefore provides function to either take bytes or
characters into account. The latter is generally the form that you
should use in your applications
-
procedure Forward_Char (Iter : in out Gtk_Text_Iter; Result : out Boolean);
-
procedure Backward_Char (Iter : in out Gtk_Text_Iter; Result : out Boolean);
-
procedure Forward_Chars
(Iter : in out Gtk_Text_Iter;
Count : Gint := 1;
Result : out Boolean);
-
procedure Backward_Chars
(Iter : in out Gtk_Text_Iter;
Count : Gint := 1;
Result : out Boolean);
-
procedure Set_Offset (Iter : in out Gtk_Text_Iter; Char_Offset : Gint);
function Get_Offset (Iter : Gtk_Text_Iter) return Gint;
Words
Characters are grouped together into words. Their exact definition
depends on the current language (see Pango.Language).
-
function Starts_Word (Iter : Gtk_Text_Iter) return Boolean;
-
function Ends_Word (Iter : Gtk_Text_Iter) return Boolean;
-
function Inside_Word (Iter : Gtk_Text_Iter) return Boolean;
-
procedure Forward_Word_End
(Iter : in out Gtk_Text_Iter; Result : out Boolean);
-
procedure Forward_Word_Ends
(Iter : in out Gtk_Text_Iter;
Count : Gint := 1;
Result : out Boolean);
-
procedure Forward_Visible_Word_End
(Iter : in out Gtk_Text_Iter; Result : out Boolean);
-
procedure Forward_Visible_Word_Ends
(Iter : in out Gtk_Text_Iter;
Count : Gint := 1;
Result : out Boolean);
-
procedure Backward_Word_Start
(Iter : in out Gtk_Text_Iter; Result : out Boolean);
-
procedure Backward_Word_Starts
(Iter : in out Gtk_Text_Iter;
Count : Gint := 1;
Result : out Boolean);
-
procedure Backward_Visible_Word_Start
(Iter : in out Gtk_Text_Iter; Result : out Boolean);
-
procedure Backward_Visible_Word_Starts
(Iter : Gtk_Text_Iter;
Count : Gint := 1;
Result : in out Boolean);
Sentences
Words are then grouped together into sentences.
-
function Starts_Sentence (Iter : Gtk_Text_Iter) return Boolean;
-
function Ends_Sentence (Iter : Gtk_Text_Iter) return Boolean;
-
function Inside_Sentence (Iter : Gtk_Text_Iter) return Boolean;
-
procedure Forward_Sentence_End
(Iter : in out Gtk_Text_Iter; Result : out Boolean);
-
procedure Backward_Sentence_Start
(Iter : in out Gtk_Text_Iter; Result : out Boolean);
-
procedure Forward_Sentence_Ends
(Iter : in out Gtk_Text_Iter;
Count : Gint := 1;
Result : out Boolean);
-
procedure Backward_Sentence_Starts
(Iter : in out Gtk_Text_Iter;
Count : Gint := 1;
Result : out Boolean);
Lines and paragraphs
Sentences are grouped together to form lines and paragraphs. The
definition of these is language-dependent
-
procedure Set_Line (Iter : in out Gtk_Text_Iter; Line_Number : Gint);
function Get_Line (Iter : Gtk_Text_Iter) return Gint;
-
procedure Set_Line_Offset
(Iter : in out Gtk_Text_Iter; Char_On_Line : Gint);
function Get_Line_Offset (Iter : Gtk_Text_Iter) return Gint;
-
procedure Set_Line_Index (Iter : in out Gtk_Text_Iter; Byte_On_Line : Gint);
function Get_Line_Index (Iter : Gtk_Text_Iter) return Gint;
-
procedure Set_Visible_Line_Offset
(Iter : in out Gtk_Text_Iter; Char_On_Line : Gint);
function Get_Visible_Line_Offset (Iter : Gtk_Text_Iter) return Gint;
-
procedure Set_Visible_Line_Index
(Iter : in out Gtk_Text_Iter; Byte_On_Line : Gint);
function Get_Visible_Line_Index (Iter : Gtk_Text_Iter) return Gint;
-
function Starts_Line (Iter : Gtk_Text_Iter) return Boolean;
-
function Ends_Line (Iter : Gtk_Text_Iter) return Boolean;
-
function Get_Chars_In_Line (Iter : Gtk_Text_Iter) return Gint;
-
function Get_Bytes_In_Line (Iter : Gtk_Text_Iter) return Gint;
-
procedure Forward_Line (Iter : in out Gtk_Text_Iter; Result : out Boolean);
-
procedure Forward_Lines
(Iter : in out Gtk_Text_Iter;
Count : Gint := 1;
Result : out Boolean);
-
procedure Forward_Visible_Line
(Iter : in out Gtk_Text_Iter; Result : out Boolean);
-
procedure Forward_Visible_Lines
(Iter : in out Gtk_Text_Iter;
Count : Gint := 1;
Result : out Boolean);
-
procedure Forward_To_Line_End
(Iter : in out Gtk_Text_Iter; Result : out Boolean);
-
procedure Backward_Line (Iter : in out Gtk_Text_Iter; Result : out Boolean);
-
procedure Backward_Lines
(Iter : in out Gtk_Text_Iter;
Count : Gint := 1;
Result : out Boolean);
-
procedure Backward_Visible_Line
(Iter : in out Gtk_Text_Iter; Result : out Boolean);
-
procedure Backward_Visible_Lines
(Iter : in out Gtk_Text_Iter;
Count : Gint := 1;
Result : out Boolean);
Buffer
When grouped together, lines and paragraph made up the whole buffer.
-
function Is_End (Iter : Gtk_Text_Iter) return Boolean;
-
function Is_Start (Iter : Gtk_Text_Iter) return Boolean;
-
procedure Forward_To_End (Iter : in out Gtk_Text_Iter);
Reading buffer contents
-
function Get_Char (Iter : Gtk_Text_Iter) return Gunichar;
-
function Get_Char (Iter : Gtk_Text_Iter) return Character;
-
function Get_Slice
(Start : Gtk_Text_Iter;
The_End : Gtk_Text_Iter) return UTF8_String;
-
function Get_Slice
(Start : Gtk_Text_Iter;
The_End : Gtk_Text_Iter) return Interfaces.C.Strings.chars_ptr;
-
function Get_Text
(Start : Gtk_Text_Iter;
The_End : Gtk_Text_Iter) return UTF8_String;
-
function Get_Visible_Slice
(Start : Gtk_Text_Iter;
The_End : Gtk_Text_Iter) return UTF8_String;
-
function Get_Visible_Text
(Start : Gtk_Text_Iter;
The_End : Gtk_Text_Iter) return UTF8_String;
-
Tags
Iterators can be used to move among tags. These tags are used to
set some specific attributes on the text.
-
-
-
-
-
function Get_Tags
(Iter : Gtk_Text_Iter) return Gtk.Text_Tag.Text_Tag_List.GSlist;
-
procedure Forward_To_Tag_Toggle
(Iter :
in out Gtk_Text_Iter;
Tag :
Gtk.Text_Tag.Gtk_Text_Tag :=
null;
Result :
out Boolean);
-
procedure Backward_To_Tag_Toggle
(Iter :
in out Gtk_Text_Iter;
Tag :
Gtk.Text_Tag.Gtk_Text_Tag :=
null;
Result :
out Boolean);
-
function Get_Toggled_Tags
(Iter : Gtk_Text_Iter;
Toggled_On : Boolean)
return Glib.Object.Object_List.GSlist;
Attributes
The tags are used to change the attributes of parts of the buffer. For
convenience, a number of wrapper subprograms are provided to make the
use of tags easier.
-
function Editable
(Iter : Gtk_Text_Iter;
Default_Setting : Boolean := True) return Boolean;
-
function Can_Insert
(Iter : Gtk_Text_Iter;
Default_Editability : Boolean) return Boolean;
-
function Get_Language (Iter : Gtk_Text_Iter) return UTF8_String;
-
procedure Get_Attributes
(Iter : Gtk_Text_Iter;
Values : in out Gtk.Text_Attributes.Gtk_Text_Attributes;
Modified : out Boolean);
Cursor
The cursor is a special position in the buffer that indicates where the
user will interactively insert new characters. In some languages, you
can put the cursor between certain chars. Also you can't put the cursor
between \r and \n on Windows-line ending files.
-
function Is_Cursor_Position (Iter : Gtk_Text_Iter) return Boolean;
-
procedure Forward_Cursor_Position
(Iter : in out Gtk_Text_Iter; Result : out Boolean);
-
procedure Backward_Cursor_Position
(Iter : in out Gtk_Text_Iter; Result : out Boolean);
-
procedure Forward_Cursor_Positions
(Iter : in out Gtk_Text_Iter;
Count : Gint := 1;
Result : out Boolean);
-
procedure Forward_Visible_Cursor_Position
(Iter : in out Gtk_Text_Iter; Result : out Boolean);
-
procedure Forward_Visible_Cursor_Positions
(Iter : in out Gtk_Text_Iter;
Count : Gint := 1;
Result : out Boolean);
-
procedure Backward_Cursor_Positions
(Iter : in out Gtk_Text_Iter;
Count : Gint := 1;
Result : out Boolean);
-
procedure Backward_Visible_Cursor_Position
(Iter : in out Gtk_Text_Iter; Result : out Boolean);
-
procedure Backward_Visible_Cursor_Positions
(Iter : in out Gtk_Text_Iter;
Count : Gint := 1;
Result : out Boolean);
Children
The buffer can contain many widgets. They are all attached to specific
anchors (see
Gtk.Text_Child)
-
-
function Get_Marks
(Iter : Gtk_Text_Iter) return Glib.Object.Object_List.GSlist;
Searching
-
procedure Forward_Search
(Iter : Gtk_Text_Iter;
Str : UTF8_String;
Flags : Gtk_Text_Search_Flags;
Match_Start : out Gtk_Text_Iter;
Match_End : out Gtk_Text_Iter;
Limit : Gtk_Text_Iter;
Result : out Boolean);
-
procedure Backward_Search
(Iter : Gtk_Text_Iter;
Str : UTF8_String;
Flags : Gtk_Text_Search_Flags;
Match_Start : out Gtk_Text_Iter;
Match_End : out Gtk_Text_Iter;
Limit : Gtk_Text_Iter;
Result : out Boolean);
-
function Forward_Find_Char
(Iter : Gtk_Text_Iter;
Pred : Gtk_Text_Char_Predicate;
User_Data : Data_Type;
Limit : Gtk_Text_Iter) return Boolean;
-
function Backward_Find_Char
(Iter : Gtk_Text_Iter;
Pred : Gtk_Text_Char_Predicate;
User_Data : Data_Type;
Limit : Gtk_Text_Iter) return Boolean;
Comparisons
-
function Equal (Lhs : Gtk_Text_Iter; Rhs : Gtk_Text_Iter) return Boolean;
-
function Compare (Lhs : Gtk_Text_Iter; Rhs : Gtk_Text_Iter) return Gint;
-
function In_Range
(Iter : Gtk_Text_Iter;
Start : Gtk_Text_Iter;
The_End : Gtk_Text_Iter) return Boolean;
-
procedure Order
(First : in out Gtk_Text_Iter;
Second : in out Gtk_Text_Iter);
Converting to/from GValue
-
procedure Set_Text_Iter
(Val : in out Glib.Values.GValue;
Iter : Gtk_Text_Iter);
-
procedure Get_Text_Iter
(Val : Glib.Values.GValue;
Iter : out Gtk_Text_Iter);