=head1 NAME

Gtk2::TextBuffer

=head1 HIERARCHY

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


=head1 METHODS

=head2 textbuffer = Gtk2::TextBuffer-E<gt>B<new> ($tagtable=undef)

=over

=over

=item * $tagtable (Gtk2::TextTagTable or undef) 

=back

=back

=head2 $buffer-E<gt>B<add_selection_clipboard> ($clipboard)

=over

=over

=item * $clipboard (Gtk2::Clipboard) 

=back

=back

=head2 $buffer-E<gt>B<apply_tag> ($tag, $start, $end)

=over

=over

=item * $tag (Gtk2::TextTag) 

=item * $start (Gtk2::TextIter) 

=item * $end (Gtk2::TextIter) 

=back

=back

=head2 $buffer-E<gt>B<apply_tag_by_name> ($name, $start, $end)

=over

=over

=item * $name (string) 

=item * $start (Gtk2::TextIter) 

=item * $end (Gtk2::TextIter) 

=back

=back

=head2 boolean = $buffer-E<gt>B<backspace> ($iter, $interactive, $default_editable)

=over

=over

=item * $iter (Gtk2::TextIter) 

=item * $interactive (boolean) 

=item * $default_editable (boolean) 

=back

=back

=head2 $buffer-E<gt>B<begin_user_action> 

=over

=back

=head2 (start, end) = $buffer->B<get_bounds>

=over

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

=back

=head2 integer = $buffer-E<gt>B<get_char_count> 

=over

=back

=head2 $buffer-E<gt>B<copy_clipboard> ($clipboard)

=over

=over

=item * $clipboard (Gtk2::Clipboard) 

=back

=back

=head2 textchildanchor = $buffer-E<gt>B<create_child_anchor> ($iter)

=over

=over

=item * $iter (Gtk2::TextIter) 

=back

=back

=head2 textmark = $buffer-E<gt>B<create_mark> ($mark_name, $where, $left_gravity)

=over

=over

=item * $mark_name (string or undef) 

=item * $where (Gtk2::TextIter) 

=item * $left_gravity (boolean) 

=back

=back

=head2 texttag = $buffer-E<gt>B<create_tag> ($tag_name, $property_name1, $property_value1, ...)

=over

=over

=item * $tag_name (string or undef) 

=item * $property_name1 (string) the first property name

=item * $property_value1 (string) the first property value

=item * ... (list) pairs of names and values

=back



=back

=head2 $buffer-E<gt>B<cut_clipboard> ($clipboard, $default_editable)

=over

=over

=item * $clipboard (Gtk2::Clipboard) 

=item * $default_editable (boolean) 

=back

=back

=head2 $buffer-E<gt>B<delete> ($start, $end)

=over

=over

=item * $start (Gtk2::TextIter) 

=item * $end (Gtk2::TextIter) 

=back

=back

=head2 boolean = $buffer-E<gt>B<delete_interactive> ($start_iter, $end_iter, $default_editable)

=over

=over

=item * $start_iter (Gtk2::TextIter) 

=item * $end_iter (Gtk2::TextIter) 

=item * $default_editable (boolean) 

=back

=back

=head2 $buffer-E<gt>B<delete_mark> ($mark)

=over

=over

=item * $mark (Gtk2::TextMark) 

=back

=back

=head2 $buffer-E<gt>B<delete_mark_by_name> ($name)

=over

=over

=item * $name (string) 

=back

=back

=head2 boolean = $buffer-E<gt>B<delete_selection> ($interactive, $default_editable)

=over

=over

=item * $interactive (boolean) 

=item * $default_editable (boolean) 

=back

=back

=head2 textiter = $buffer-E<gt>B<get_end_iter> 

=over

=back

=head2 $buffer-E<gt>B<end_user_action> 

=over

=back

=head2 $buffer-E<gt>B<insert> ($iter, $text)

=over

=over

=item * $iter (Gtk2::TextIter) 

=item * $text (string) 

=back

=back

=head2 $buffer-E<gt>B<insert_at_cursor> ($text)

=over

=over

=item * $text (string) 

=back

=back

=head2 $buffer-E<gt>B<insert_child_anchor> ($iter, $anchor)

=over

=over

=item * $iter (Gtk2::TextIter) 

=item * $anchor (Gtk2::TextChildAnchor) 

=back

=back

=head2 textmark = $buffer-E<gt>B<get_insert> 

=over

=back

=head2 boolean = $buffer-E<gt>B<insert_interactive> ($iter, $text, $default_editable)

=over

=over

=item * $iter (Gtk2::TextIter) 

=item * $text (string) 

=item * $default_editable (boolean) 

=back

=back

=head2 boolean = $buffer-E<gt>B<insert_interactive_at_cursor> ($text, $default_editable)

=over

=over

=item * $text (string) 

=item * $default_editable (boolean) 

=back

=back

=head2 $buffer-E<gt>B<insert_pixbuf> ($iter, $pixbuf)

=over

=over

=item * $iter (Gtk2::TextIter) 

=item * $pixbuf (Gtk2::Gdk::Pixbuf) 

=back

=back

=head2 $buffer-E<gt>B<insert_range> ($iter, $start, $end)

=over

=over

=item * $iter (Gtk2::TextIter) 

=item * $start (Gtk2::TextIter) 

=item * $end (Gtk2::TextIter) 

=back

=back

=head2 boolean = $buffer-E<gt>B<insert_range_interactive> ($iter, $start, $end, $default_editable)

=over

=over

=item * $iter (Gtk2::TextIter) 

=item * $start (Gtk2::TextIter) 

=item * $end (Gtk2::TextIter) 

=item * $default_editable (boolean) 

=back

=back

=head2 $buffer-E<gt>B<insert_with_tags> ($iter, $text, ...)

=over

=over

=item * $iter (Gtk2::TextIter) 

=item * $text (string) 

=item * ... (list) of Gtk2::TextTag's

=back



=back

=head2 $buffer-E<gt>B<insert_with_tags_by_name> ($iter, $text, ...)

=over

=over

=item * $iter (Gtk2::TextIter) 

=item * $text (string) 

=item * ... (list) of strings, tag names

=back



=back

=head2 textiter = $buffer-E<gt>B<get_iter_at_child_anchor> ($anchor)

=over

=over

=item * $anchor (Gtk2::TextChildAnchor) 

=back

=back

=head2 textiter = $buffer-E<gt>B<get_iter_at_line> ($line_number)

=over

=over

=item * $line_number (integer) 

=back

=back

=head2 textiter = $buffer-E<gt>B<get_iter_at_line_index> ($line_number, $byte_index)

=over

=over

=item * $line_number (integer) 

=item * $byte_index (integer) 

=back

=back

=head2 textiter = $buffer-E<gt>B<get_iter_at_line_offset> ($line_number, $char_offset)

=over

=over

=item * $line_number (integer) 

=item * $char_offset (integer) 

=back

=back

=head2 textiter = $buffer-E<gt>B<get_iter_at_mark> ($mark)

=over

=over

=item * $mark (Gtk2::TextMark) 

=back

=back

=head2 textiter = $buffer-E<gt>B<get_iter_at_offset> ($char_offset)

=over

=over

=item * $char_offset (integer) 

=back

=back

=head2 integer = $buffer-E<gt>B<get_line_count> 

=over

=back

=head2 textmark or undef = $buffer-E<gt>B<get_mark> ($name)

=over

=over

=item * $name (string) 

=back

=back

=head2 boolean = $buffer-E<gt>B<get_modified> 

=over

=back

=head2 $buffer-E<gt>B<set_modified> ($setting)

=over

=over

=item * $setting (boolean) 

=back

=back

=head2 $buffer-E<gt>B<move_mark> ($mark, $where)

=over

=over

=item * $mark (Gtk2::TextMark) 

=item * $where (Gtk2::TextIter) 

=back

=back

=head2 $buffer-E<gt>B<move_mark_by_name> ($name, $where)

=over

=over

=item * $name (string) 

=item * $where (Gtk2::TextIter) 

=back

=back

=head2 $buffer-E<gt>B<paste_clipboard> ($clipboard, $override_location, $default_editable)

=over

=over

=item * $clipboard (Gtk2::Clipboard) 

=item * $override_location (Gtk2::TextIter or undef) 

=item * $default_editable (boolean) 

=back

=back

=head2 $buffer-E<gt>B<place_cursor> ($where)

=over

=over

=item * $where (Gtk2::TextIter) 

=back

=back

=head2 $buffer-E<gt>B<remove_all_tags> ($start, $end)

=over

=over

=item * $start (Gtk2::TextIter) 

=item * $end (Gtk2::TextIter) 

=back

=back

=head2 $buffer-E<gt>B<remove_selection_clipboard> ($clipboard)

=over

=over

=item * $clipboard (Gtk2::Clipboard) 

=back

=back

=head2 $buffer-E<gt>B<remove_tag> ($tag, $start, $end)

=over

=over

=item * $tag (Gtk2::TextTag) 

=item * $start (Gtk2::TextIter) 

=item * $end (Gtk2::TextIter) 

=back

=back

=head2 $buffer-E<gt>B<remove_tag_by_name> ($name, $start, $end)

=over

=over

=item * $name (string) 

=item * $start (Gtk2::TextIter) 

=item * $end (Gtk2::TextIter) 

=back

=back

=head2 $buffer-E<gt>B<select_range> ($ins, $bound)

=over

=over

=item * $ins (Gtk2::TextIter) 

=item * $bound (Gtk2::TextIter) 

=back

=back

=head2 textmark = $buffer-E<gt>B<get_selection_bound> 

=over

=back

=head2 (start, end) = $buffer->B<get_selection_bounds>

=over

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.  

=back

=head2 string = $buffer-E<gt>B<get_slice> ($start, $end, $include_hidden_chars)

=over

=over

=item * $start (Gtk2::TextIter) 

=item * $end (Gtk2::TextIter) 

=item * $include_hidden_chars (boolean) 

=back

=back

=head2 textiter = $buffer-E<gt>B<get_start_iter> 

=over

=back

=head2 texttagtable = $buffer-E<gt>B<get_tag_table> 

=over

=back

=head2 string = $buffer-E<gt>B<get_text> ($start, $end, $include_hidden_chars)

=over

=over

=item * $start (Gtk2::TextIter) 

=item * $end (Gtk2::TextIter) 

=item * $include_hidden_chars (boolean) 

=back

=back

=head2 $buffer-E<gt>B<set_text> ($text)

=over

=over

=item * $text (string) 

=back

=back


=head1 PROPERTIES

=over

=item 'tag-table' (Gtk2::TextTagTable : readable / writable / construct-only / private)

Text Tag Table

=item 'text' (string : readable / writable / private)

Current text of the buffer

=back


=head1 SIGNALS

=over

=item B<changed> (Gtk2::TextBuffer)

=item B<insert-text> (Gtk2::TextBuffer, Gtk2::TextIter, string, integer)

=item B<insert-pixbuf> (Gtk2::TextBuffer, Gtk2::TextIter, Gtk2::Gdk::Pixbuf)

=item B<insert-child-anchor> (Gtk2::TextBuffer, Gtk2::TextIter, Gtk2::TextChildAnchor)

=item B<delete-range> (Gtk2::TextBuffer, Gtk2::TextIter, Gtk2::TextIter)

=item B<modified-changed> (Gtk2::TextBuffer)

=item B<mark-set> (Gtk2::TextBuffer, Gtk2::TextIter, Gtk2::TextMark)

=item B<mark-deleted> (Gtk2::TextBuffer, Gtk2::TextMark)

=item B<apply-tag> (Gtk2::TextBuffer, Gtk2::TextTag, Gtk2::TextIter, Gtk2::TextIter)

=item B<remove-tag> (Gtk2::TextBuffer, Gtk2::TextTag, Gtk2::TextIter, Gtk2::TextIter)

=item B<begin-user-action> (Gtk2::TextBuffer)

=item B<end-user-action> (Gtk2::TextBuffer)

=back


=head1 SEE ALSO

L<Gtk2>, L<Glib::Object>

=head1 COPYRIGHT

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

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


=cut

