.\" -*- mode: troff; coding: utf-8 -*- .\" Automatically generated by Pod::Man 5.01 (Pod::Simple 3.43) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>. .ie n \{\ . ds C` "" . ds C' "" 'br\} .el\{\ . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" ======================================================================== .\" .IX Title "Gtk2::Editable 3" .TH Gtk2::Editable 3 2023-07-25 "perl v5.38.0" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH NAME Gtk2::Editable \- wrapper for GtkEditable .SH HIERARCHY .IX Header "HIERARCHY" .Vb 2 \& Glib::Interface \& +\-\-\-\-Gtk2::Editable .Ve .SH METHODS .IX Header "METHODS" .ie n .SS "string = $editable\->\fBget_chars\fP ($start_pos, $end_pos)" .el .SS "string = \f(CW$editable\fP\->\fBget_chars\fP ($start_pos, \f(CW$end_pos\fP)" .IX Subsection "string = $editable->get_chars ($start_pos, $end_pos)" .IP \(bu 4 \&\f(CW$start_pos\fR (integer) .IP \(bu 4 \&\f(CW$end_pos\fR (integer) .ie n .SS $editable\->\fBcopy_clipboard\fP .el .SS \f(CW$editable\fP\->\fBcopy_clipboard\fP .IX Subsection "$editable->copy_clipboard" .ie n .SS $editable\->\fBcut_clipboard\fP .el .SS \f(CW$editable\fP\->\fBcut_clipboard\fP .IX Subsection "$editable->cut_clipboard" .ie n .SS $editable\->\fBdelete_selection\fP .el .SS \f(CW$editable\fP\->\fBdelete_selection\fP .IX Subsection "$editable->delete_selection" .ie n .SS "$editable\->\fBdelete_text\fP ($start_pos, $end_pos)" .el .SS "\f(CW$editable\fP\->\fBdelete_text\fP ($start_pos, \f(CW$end_pos\fP)" .IX Subsection "$editable->delete_text ($start_pos, $end_pos)" .IP \(bu 4 \&\f(CW$start_pos\fR (integer) .IP \(bu 4 \&\f(CW$end_pos\fR (integer) .ie n .SS "boolean = $editable\->\fBget_editable\fP" .el .SS "boolean = \f(CW$editable\fP\->\fBget_editable\fP" .IX Subsection "boolean = $editable->get_editable" .ie n .SS "$editable\->\fBset_editable\fP ($is_editable)" .el .SS "\f(CW$editable\fP\->\fBset_editable\fP ($is_editable)" .IX Subsection "$editable->set_editable ($is_editable)" .IP \(bu 4 \&\f(CW$is_editable\fR (boolean) .ie n .SS "new_position = $editable\->\fBinsert_text\fP (new_text, position)" .el .SS "new_position = \f(CW$editable\fP\->\fBinsert_text\fP (new_text, position)" .IX Subsection "new_position = $editable->insert_text (new_text, position)" .IP \(bu 4 \&\f(CW$new_text\fR (string) .IP \(bu 4 \&... (list) .ie n .SS $editable\->\fBpaste_clipboard\fP .el .SS \f(CW$editable\fP\->\fBpaste_clipboard\fP .IX Subsection "$editable->paste_clipboard" .ie n .SS "integer = $editable\->\fBget_position\fP" .el .SS "integer = \f(CW$editable\fP\->\fBget_position\fP" .IX Subsection "integer = $editable->get_position" .ie n .SS "$editable\->\fBset_position\fP ($position)" .el .SS "\f(CW$editable\fP\->\fBset_position\fP ($position)" .IX Subsection "$editable->set_position ($position)" .IP \(bu 4 \&\f(CW$position\fR (integer) .ie n .SS "$editable\->\fBselect_region\fP ($start, $end)" .el .SS "\f(CW$editable\fP\->\fBselect_region\fP ($start, \f(CW$end\fP)" .IX Subsection "$editable->select_region ($start, $end)" .IP \(bu 4 \&\f(CW$start\fR (integer) .IP \(bu 4 \&\f(CW$end\fR (integer) .ie n .SS "(start, end) = $editable\->\fBget_selection_bounds\fP" .el .SS "(start, end) = \f(CW$editable\fP\->\fBget_selection_bounds\fP" .IX Subsection "(start, end) = $editable->get_selection_bounds" Returns integers, start and end. .SH SIGNALS .IX Header "SIGNALS" .IP "\fBchanged\fR (Gtk2::Editable)" 4 .IX Item "changed (Gtk2::Editable)" .PD 0 .IP "\fBdelete-text\fR (Gtk2::Editable, integer, integer)" 4 .IX Item "delete-text (Gtk2::Editable, integer, integer)" .IP "\fBinsert-text\fR (Gtk2::Editable, string, integer, gpointer)" 4 .IX Item "insert-text (Gtk2::Editable, string, integer, gpointer)" .PD .PP The \f(CW\*(C`insert\-text\*(C'\fR signal handler can optionally alter the text to be inserted. It may .IP \(bu 4 Return no values for no change. Be sure to end with an empty \&\f(CW\*(C`return\*(C'\fR. .Sp .Vb 5 \& sub my_insert_text_handler { \& my ($widget, $text, $len, $pos, $userdata) = @_; \& print "inserting \*(Aq$text\*(Aq at char position \*(Aq$pos\*(Aq\en"; \& return; # no values \& } .Ve .IP \(bu 4 Return two values \f(CW\*(C`($text, $pos)\*(C'\fR which are the new text and character position. .Sp .Vb 4 \& sub my_insert_text_handler { \& my ($widget, $text, $len, $pos, $userdata) = @_; \& return (uc($text), $pos); # force to upper case \& } .Ve .IP \(bu 4 Return no values and modify the text in \f(CW$_[1]\fR and/or position in \&\f(CW$_[3]\fR. For example, .Sp .Vb 5 \& sub my_insert_text_handler { \& $_[1] = uc($_[1]); # force to upper case \& $_[3] = 0; # force position to the start \& return; # no values \& } .Ve .PP Note that currently in a Perl subclass of a \f(CW\*(C`Gtk2::Editable\*(C'\fR widget, a class closure (ie. class default signal handler) for \f(CW\*(C`insert\-text\*(C'\fR does not work this way. It instead sees the C level \f(CW\*(C`($text, $len, $pos_pointer)\*(C'\fR, where \f(CW$pos_pointer\fR is a machine address and cannot be used easily. Hopefully this will change in the future. A \f(CW\*(C`signal_chain_from_overridden\*(C'\fR with the args as passed works, but for anything else the suggestion is to use a \f(CW\*(C`signal_connect\*(C'\fR instead. .SH "SEE ALSO" .IX Header "SEE ALSO" Gtk2, Glib::Interface .SH COPYRIGHT .IX Header "COPYRIGHT" Copyright (C) 2003\-2011 by the gtk2\-perl team. .PP This software is licensed under the LGPL. See Gtk2 for a full notice.