---
name: "Gtk2::TextBuffer"
section: "3pm"
platform: "linux"
package: "libgtk2-perl-doc"
version: "2:1.24992-1"
release: "Debian 10 (Buster)"
platforms: ["linux"]
url: "https://new.carta.tech/Gtk2::TextBuffer"
---

# Gtk2::TextBuffer(3pm)

wrapper for GtkTextBuffer

## NAME

Gtk2::TextBuffer - wrapper for GtkTextBuffer

## HIERARCHY

```
  Glib::Object
  +----Gtk2::TextBuffer
```

## METHODS

### textbuffer = Gtk2::TextBuffer-\>new ($tagtable=undef)

- •

  `$tagtable` (Gtk2::TextTagTable or undef)

### $buffer-\>add\_mark ($mark, $where)

- •

  `$mark` (Gtk2::TextMark)

- •

  `$where` (Gtk2::TextIter)

Since: gtk+ 2.12

### $buffer-\>add\_selection\_clipboard ($clipboard)

- •

  `$clipboard` (Gtk2::Clipboard)

Since: gtk+ 2.2

### $buffer-\>apply\_tag ($tag, $start, $end)

- •

  `$tag` (Gtk2::TextTag)

- •

  `$start` (Gtk2::TextIter)

- •

  `$end` (Gtk2::TextIter)

### $buffer-\>apply\_tag\_by\_name ($name, $start, $end)

- •

  `$name` (string)

- •

  `$start` (Gtk2::TextIter)

- •

  `$end` (Gtk2::TextIter)

### boolean = $buffer-\>backspace ($iter, $interactive, $default\_editable)

- •

  `$iter` (Gtk2::TextIter)

- •

  `$interactive` (boolean)

- •

  `$default_editable` (boolean)

Since: gtk+ 2.6

### $buffer-\>begin\_user\_action

### (start, end) = $buffer-\>get\_bounds

Retrieves the first and last iterators in the buffer, i.e. the entire buffer lies within the range (start,end).

### integer = $buffer-\>get\_char\_count

### $buffer-\>copy\_clipboard ($clipboard)

- •

  `$clipboard` (Gtk2::Clipboard)

Since: gtk+ 2.2

### targetlist = $buffer-\>get\_copy\_target\_list

Since: gtk+ 2.10

### textchildanchor = $buffer-\>create\_child\_anchor ($iter)

- •

  `$iter` (Gtk2::TextIter)

### textmark = $buffer-\>create\_mark ($mark\_name, $where, $left\_gravity)

- •

  `$mark_name` (string or undef)

- •

  `$where` (Gtk2::TextIter)

- •

  `$left_gravity` (boolean)

### texttag = $buffer-\>create\_tag ($tag\_name, $property\_name1, $property\_value1, ...)

- •

  `$tag_name` (string or undef)

- •

  `$property_name1` (string) the first property name

- •

  `$property_value1` (string) the first property value

- •

  ... (list) pairs of names and values

### $buffer-\>cut\_clipboard ($clipboard, $default\_editable)

- •

  `$clipboard` (Gtk2::Clipboard)

- •

  `$default_editable` (boolean)

Since: gtk+ 2.2

### $buffer-\>delete ($start, $end)

- •

  `$start` (Gtk2::TextIter)

- •

  `$end` (Gtk2::TextIter)

### boolean = $buffer-\>delete\_interactive ($start\_iter, $end\_iter, $default\_editable)

- •

  `$start_iter` (Gtk2::TextIter)

- •

  `$end_iter` (Gtk2::TextIter)

- •

  `$default_editable` (boolean)

### $buffer-\>delete\_mark ($mark)

- •

  `$mark` (Gtk2::TextMark)

### $buffer-\>delete\_mark\_by\_name ($name)

- •

  `$name` (string)

### boolean = $buffer-\>delete\_selection ($interactive, $default\_editable)

- •

  `$interactive` (boolean)

- •

  `$default_editable` (boolean)

### $register\_buffer-\>deserialize ($content\_buffer, $format, $iter, $data)

- •

  `$content_buffer` (Gtk2::TextBuffer)

- •

  `$format` (Gtk2::Gdk::Atom)

- •

  `$iter` (Gtk2::TextIter)

- •

  `$data` (scalar)

May croak with a Glib::Error in $@ on failure.

### list = $buffer-\>get\_deserialize\_formats

### boolean = $buffer-\>deserialize\_get\_can\_create\_tags ($format)

- •

  `$format` (Gtk2::Gdk::Atom)

### $buffer-\>deserialize\_set\_can\_create\_tags ($format, $can\_create\_tags)

- •

  `$format` (Gtk2::Gdk::Atom)

- •

  `$can_create_tags` (boolean)

### textiter = $buffer-\>get\_end\_iter

### $buffer-\>end\_user\_action

### boolean = $buffer-\>get\_has\_selection

Since: gtk+ 2.10

### $buffer-\>insert ($iter, $text)

- •

  `$iter` (Gtk2::TextIter)

- •

  `$text` (string)

### $buffer-\>insert\_at\_cursor ($text)

- •

  `$text` (string)

### $buffer-\>insert\_child\_anchor ($iter, $anchor)

- •

  `$iter` (Gtk2::TextIter)

- •

  `$anchor` (Gtk2::TextChildAnchor)

### textmark = $buffer-\>get\_insert

### boolean = $buffer-\>insert\_interactive ($iter, $text, $default\_editable)

- •

  `$iter` (Gtk2::TextIter)

- •

  `$text` (string)

- •

  `$default_editable` (boolean)

### boolean = $buffer-\>insert\_interactive\_at\_cursor ($text, $default\_editable)

- •

  `$text` (string)

- •

  `$default_editable` (boolean)

### $buffer-\>insert\_pixbuf ($iter, $pixbuf)

- •

  `$iter` (Gtk2::TextIter)

- •

  `$pixbuf` (Gtk2::Gdk::Pixbuf)

### $buffer-\>insert\_range ($iter, $start, $end)

- •

  `$iter` (Gtk2::TextIter)

- •

  `$start` (Gtk2::TextIter)

- •

  `$end` (Gtk2::TextIter)

### boolean = $buffer-\>insert\_range\_interactive ($iter, $start, $end, $default\_editable)

- •

  `$iter` (Gtk2::TextIter)

- •

  `$start` (Gtk2::TextIter)

- •

  `$end` (Gtk2::TextIter)

- •

  `$default_editable` (boolean)

### $buffer-\>insert\_with\_tags ($iter, $text, ...)

- •

  `$iter` (Gtk2::TextIter)

- •

  `$text` (string)

- •

  ... (list) of Gtk2::TextTag's

### $buffer-\>insert\_with\_tags\_by\_name ($iter, $text, ...)

- •

  `$iter` (Gtk2::TextIter)

- •

  `$text` (string)

- •

  ... (list) of strings, tag names

### textiter = $buffer-\>get\_iter\_at\_child\_anchor ($anchor)

- •

  `$anchor` (Gtk2::TextChildAnchor)

### textiter = $buffer-\>get\_iter\_at\_line ($line\_number)

- •

  `$line_number` (integer)

### textiter = $buffer-\>get\_iter\_at\_line\_index ($line\_number, $byte\_index)

- •

  `$line_number` (integer)

- •

  `$byte_index` (integer)

### textiter = $buffer-\>get\_iter\_at\_line\_offset ($line\_number, $char\_offset)

- •

  `$line_number` (integer)

- •

  `$char_offset` (integer)

### textiter = $buffer-\>get\_iter\_at\_mark ($mark)

- •

  `$mark` (Gtk2::TextMark)

### textiter = $buffer-\>get\_iter\_at\_offset ($char\_offset)

- •

  `$char_offset` (integer)

### integer = $buffer-\>get\_line\_count

### textmark or undef = $buffer-\>get\_mark ($name)

- •

  `$name` (string)

### boolean = $buffer-\>get\_modified

### $buffer-\>set\_modified ($setting)

- •

  `$setting` (boolean)

### $buffer-\>move\_mark ($mark, $where)

- •

  `$mark` (Gtk2::TextMark)

- •

  `$where` (Gtk2::TextIter)

### $buffer-\>move\_mark\_by\_name ($name, $where)

- •

  `$name` (string)

- •

  `$where` (Gtk2::TextIter)

### $buffer-\>paste\_clipboard ($clipboard, $override\_location, $default\_editable)

- •

  `$clipboard` (Gtk2::Clipboard)

- •

  `$override_location` (Gtk2::TextIter or undef)

- •

  `$default_editable` (boolean)

Since: gtk+ 2.2

### targetlist = $buffer-\>get\_paste\_target\_list

Since: gtk+ 2.10

### $buffer-\>place\_cursor ($where)

- •

  `$where` (Gtk2::TextIter)

### atom = $buffer-\>register\_deserialize\_format ($mime\_type, $function, $user\_data=undef)

- •

  `$mime_type` (string)

- •

  `$function` (scalar)

- •

  `$user_data` (scalar)

### atom = $buffer-\>register\_deserialize\_tagset ($tagset\_name)

- •

  `$tagset_name` (string or undef)

### atom = $buffer-\>register\_serialize\_format ($mime\_type, $function, $user\_data=undef)

- •

  `$mime_type` (string)

- •

  `$function` (scalar)

- •

  `$user_data` (scalar)

### atom = $buffer-\>register\_serialize\_tagset ($tagset\_name)

- •

  `$tagset_name` (string or undef)

### $buffer-\>remove\_all\_tags ($start, $end)

- •

  `$start` (Gtk2::TextIter)

- •

  `$end` (Gtk2::TextIter)

### $buffer-\>remove\_selection\_clipboard ($clipboard)

- •

  `$clipboard` (Gtk2::Clipboard)

Since: gtk+ 2.2

### $buffer-\>remove\_tag ($tag, $start, $end)

- •

  `$tag` (Gtk2::TextTag)

- •

  `$start` (Gtk2::TextIter)

- •

  `$end` (Gtk2::TextIter)

### $buffer-\>remove\_tag\_by\_name ($name, $start, $end)

- •

  `$name` (string)

- •

  `$start` (Gtk2::TextIter)

- •

  `$end` (Gtk2::TextIter)

### $buffer-\>select\_range ($ins, $bound)

- •

  `$ins` (Gtk2::TextIter)

- •

  `$bound` (Gtk2::TextIter)

Since: gtk+ 2.4

### textmark = $buffer-\>get\_selection\_bound

### (start, end) = $buffer-\>get\_selection\_bounds

Returns start and end if some text is selected, empty otherwise; places the bounds of the selection in start and end (if the selection has length 0, then start and end are filled in with the same value). start and end will be in ascending order.

### scalar = $register\_buffer-\>serialize ($content\_buffer, $format, $start, $end)

- •

  `$content_buffer` (Gtk2::TextBuffer)

- •

  `$format` (Gtk2::Gdk::Atom)

- •

  `$start` (Gtk2::TextIter)

- •

  `$end` (Gtk2::TextIter)

### list = $buffer-\>get\_serialize\_formats

### string = $buffer-\>get\_slice ($start, $end, $include\_hidden\_chars)

- •

  `$start` (Gtk2::TextIter)

- •

  `$end` (Gtk2::TextIter)

- •

  `$include_hidden_chars` (boolean)

### textiter = $buffer-\>get\_start\_iter

### texttagtable = $buffer-\>get\_tag\_table

### string = $buffer-\>get\_text ($start, $end, $include\_hidden\_chars)

- •

  `$start` (Gtk2::TextIter)

- •

  `$end` (Gtk2::TextIter)

- •

  `$include_hidden_chars` (boolean)

### $buffer-\>set\_text ($text)

- •

  `$text` (string)

### $buffer-\>unregister\_deserialize\_format ($format)

- •

  `$format` (Gtk2::Gdk::Atom)

### $buffer-\>unregister\_serialize\_format ($format)

- •

  `$format` (Gtk2::Gdk::Atom)

## PROPERTIES

- 'copy-target-list' (Gtk2::TargetList : default undef : readable / private)

  The list of targets this buffer supports for clipboard copying and DND source

- 'cursor-position' (integer : default 0 : readable / private)

  The position of the insert mark (as offset from the beginning of the buffer)

- 'has-selection' (boolean : default false : readable / private)

  Whether the buffer has some text currently selected

- 'paste-target-list' (Gtk2::TargetList : default undef : readable / private)

  The list of targets this buffer supports for clipboard pasting and DND destination

- 'tag-table' (Gtk2::TextTagTable : default undef : readable / writable / construct-only / private)

  Text Tag Table

- 'text' (string : default "" : readable / writable / private)

  Current text of the buffer

## SIGNALS

- **apply-tag** (Gtk2::TextBuffer, Gtk2::TextTag, Gtk2::TextIter, Gtk2::TextIter)

  - **begin-user-action** (Gtk2::TextBuffer)

  - **changed** (Gtk2::TextBuffer)

  - **delete-range** (Gtk2::TextBuffer, Gtk2::TextIter, Gtk2::TextIter)

  - **end-user-action** (Gtk2::TextBuffer)

  - **insert-child-anchor** (Gtk2::TextBuffer, Gtk2::TextIter, Gtk2::TextChildAnchor)

  - **insert-pixbuf** (Gtk2::TextBuffer, Gtk2::TextIter, Gtk2::Gdk::Pixbuf)

  - **insert-text** (Gtk2::TextBuffer, Gtk2::TextIter, string, integer)

  - **mark-deleted** (Gtk2::TextBuffer, Gtk2::TextMark)

  - **mark-set** (Gtk2::TextBuffer, Gtk2::TextIter, Gtk2::TextMark)

  - **modified-changed** (Gtk2::TextBuffer)

  - **paste-done** (Gtk2::TextBuffer, Gtk2::Clipboard)

  - **remove-tag** (Gtk2::TextBuffer, Gtk2::TextTag, Gtk2::TextIter, Gtk2::TextIter)

  ## SEE ALSO

Gtk2, Glib::Object

## COPYRIGHT

Copyright (C) 2003-2011 by the gtk2-perl team.

This software is licensed under the LGPL.  See Gtk2 for a full notice.
