Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
Curses::UI::TextEditorUser Contributed Perl DocumentaCurses::UI::TextEditor(3)

NAME
       Curses::UI::TextEditor -	Create and manipulate texteditor widgets

CLASS HIERARCHY
	Curses::UI::Widget
	Curses::UI::Searchable
	   |
	   +----Curses::UI::TextEditor

SYNOPSIS
	   use Curses::UI;
	   my $cui = new Curses::UI;
	   my $win = $cui->add('window_id', 'Window');

	   my $editor =	$win->add(
	       'myeditor', 'TextEditor',
	       -vscrollbar => 1,
	       -wrapping   => 1,
	   );

	   $editor->focus();
	   my $text = $editor->get();

DESCRIPTION
       Curses::UI::TextEditor is a widget that can be used to create a couple
       of different kinds of texteditors. These	are:

       o   multi-line texteditor

	   This	is a multi-line	text editor with features like word-wrapping,
	   maximum textlength and undo.

       o   single-line texteditor

	   The texteditor can be created as a single-line editor.  Most	of the
	   features of the default texteditor will remain.  Only the multi-
	   line	specific options will not be available (like moving up and
	   down	in the text).

       o   read	only texteditor

	   The texteditor can also be used in read only	mode.  In this mode,
	   the texteditor will function	as a text viewer. The user can walk
	   through the text and	search trough it.

       See exampes/demo-Curses::UI::TextEditor in the distribution for a short
       demo of these.

STANDARD OPTIONS
       -parent,	-x, -y,	-width,	-height, -pad, -padleft, -padright, -padtop,
       -padbottom, -ipad, -ipadleft, -ipadright, -ipadtop, -ipadbottom,
       -title, -titlefullwidth,	-titlereverse, -onfocus, -onblur

       For an explanation of these standard options, see Curses::UI::Widget.

WIDGET-SPECIFIC	OPTIONS
       o   -text < TEXT	>

	   This	sets the initial text for the widget to	TEXT.

       o   -pos	< CURSOR_POSITION >

	   This	sets the initial cursor	position for the widget	to
	   CURSOR_POSITION. -pos represents the	character index	within -text.
	   By default this option is set to 0.

       o   -readonly < BOOLEAN >

	   The texteditor widget will be created as a read only	texteditor
	   (which is also called a textviewer) if BOOLEAN is true. By default
	   BOOLEAN is false.

       o   -singleline < BOOLEAN >

	   The texteditor widget will be created as a single line texteditor
	   (which is also called a textentry) if BOOLEAN is true. By default
	   BOOLEAN is false.

       o   -wrapping < BOOLEAN >

	   If BOOLEAN is true, the texteditor will have	text wrapping enabled.
	   By default BOOLEAN is false.

       o   -showlines <	BOOLEAN	>

	   If BOOLEAN is set to	a true value, each editable line in the	editor
	   will	show a line to type on.	By default BOOLEAN is set to false.

       o   -maxlength <	VALUE >

	   This	sets the maximum allowed length	of the text to VALUE. By
	   default VALUE is set	to 0, which means that the text	may be
	   infinitely long.

       o   -maxlines < VALUE >

	   This	sets the maximum allowed number	of lines for the text to
	   SCALAR. By default VALUE is set to 0, which means that the text may
	   contain an infinite number of lines.

       o   -password < CHARACTER >

	   Instead of showing the real text in the widget, every character of
	   the text will (on the screen) be replaced by	CHARACTER. So creating
	   a standard password field can be done by setting:

	       -password => '*'

       o   -regexp < REGEXP >

	   If characters are added to the texteditor, the new text will	be
	   matched against REGEXP. If the text does not	match, the change will
	   be denied. This can for example be used to force digit-only input
	   on the texteditor:

	       -regexp => '/^\d*$/'

       o   -undolevels < VALUE >

	   This	option determines how many undolevels should be	kept in	memory
	   for the texteditor widget. By default 10 levels are kept. If	this
	   value is set	to 0, the number of levels is infinite.

       o   -showoverflow < BOOLEAN >

	   If BOOLEAN is true, the text	in the texteditor will be padded by an
	   overflow character ($) if there is text outside the screen (like
	   'pico' does). By default BOOLEAN is true.

       o   -showhardreturns < BOOLEAN >

	   If BOOLEAN is true, hard returns will be made visible by a diamond
	   character. By default BOOLEAN is false.

       o   -homeonblur < BOOLEAN >

	   If BOOLEAN is set to	a true value, the cursor will move to the
	   start of the	text if	the widget loses focus.

       o   -toupper < BOOLEAN >

	   If BOOLEAN is true, all entered text	will be	converted to
	   uppercase. By default BOOLEAN is false.

       o   -tolower < BOOLEAN >

	   If BOOLEAN is true, all entered text	will be	converted to
	   lowercase. By default BOOLEAN is false.

       o   -onchange < CODEREF >

	   This	sets the onChange event	handler	for the	texteditor widget.  If
	   the text is changed by typing, the code in CODEREF will be
	   executed.  It will get the widget reference as its argument.

       o   -reverse < BOOLEAN >

	   Makes the text drawn	in reverse font.

METHODS
       o   new ( OPTIONS )

       o   layout ( )

       o   draw	( BOOLEAN )

       o   focus ( )

       o   onFocus ( CODEREF )

       o   onBlur ( CODEREF )

	   These are standard methods. See Curses::UI::Widget for an
	   explanation of these.

       o   text	( [TEXT] )

	   If TEXT is defined, this will set the text of the widget to TEXT.
	   To see the change, the widget needs to be redrawn by	the draw
	   method.  If TEXT is not defined, this method	will return the
	   current contents of the texteditor.

       o   get ( )

	   This	method will call text without any arguments, so	it will	return
	   the contents	of the texteditor.

       o   onChange ( CODEREF )

	   This	method can be used to set the -onchange	event handler (see
	   above) after	initialization of the texteditor.

       o   set_password_char ( $char )

	   This	method can be used to change the password property.  The
	   password character will be set to $char, or turned off in $char is
	   undef.

       o   toggle_showhardreturns

	   Toggles the -showhardreturns	option.

       o   toggle_showoverflow

	   Toggles the -showoverflow option.

       o   toggle_wrapping

	   Toggles the -wrapping option.

DEFAULT	BINDINGS
       There are different sets	of bindings for	each mode in which this	widget
       can be used.

   All modes (editor, single line and read only)
       o   <tab>

	   Call	the 'returreturnn' routine. This will have the widget loose
	   its focus.

       o   <cursor-left>, <CTRL+B>

	   Call	the 'cursor-left' routine: move	the cursor one position	to the
	   left.

       o   <cursor-right>, <CTRL+F>

	   Call	the 'cursor-right' routine: move the cursor one	position to
	   the right.

       o   <cursor-down>, <CTRL+N>

	   Call	the 'cursor-down' routine: move	the cursor one line down.

       o   <cursor-up>,	<CTRL+P>

	   Call	the 'cursor-up'	routine: move the cursor one line up.

       o   <page-up>

	   Call	the 'cursor-pageup' routine: move the cursor to	the previous
	   page.

       o   <page-down>

	   Call	the 'cursor-pagedown' routine: move the	cursor to the next
	   page.

       o   <home>

	   Call	the 'cursor-home' routine: go to the start of the text.

       o   <end>

	   Call	the 'cursor-end' routine: go to	the end	of the text.

       o   <CTRL+A>

	   Call	the 'cursor-scrlinestart' routine: move	the cursor to the
	   start of the	current	line.

       o   <CTRL+E>

	   Call	the 'cursor-scrlineend'	routine: move the cursor to the	end of
	   the current line.

       o   <CTRL+W>

	   Call	the 'toggle-wrapping' routine: toggle the -wrapping option of
	   the texteditor.

       o   <CTRL+R>

	   Call	the 'toggle-showhardreturns' routine: toggle the
	   -showhardreturns option of the texteditor.

       o   <CTRL+T>

	   Call	the 'toggle-showoverflow' routine: toggle the -showoverflow
	   option of the texteditor.

   All edit modes (all but read	only mode)
       o   <CTRL+Y>, <CTRL+X>

	   Call	the 'delete-line' routine: Delete the current line.

       o   <CTRL+K>

	   Call	the 'delete-till-eol' routine: delete the text from the
	   current cursor position up to the end of the	current	line.

       o   <CTRL+U>

	   Call	the 'clear-line' routine: clear	the current line and move the
	   cursor to the start of this line.

       o   <CTRL+D>

	   Call	the 'delete-character' routine:	delete the character that
	   currently is	under the cursor.

       o   <backspace>

	   Call	the 'backspace'	routine: delete	the character this is before
	   the current cursor position.

       o   <CTRL+Z>

	   Call	the 'undo' routine: undo the last change to the	text, up to
	   -undolevels levels.

       o   <CTRL+V>

	   Call	the 'paste' routine: this will paste the last deleted text at
	   the current cursor position.

       o   <any	other key>

	   Call	the 'add-string' routine: the character	will be	inserted in
	   the text at the current cursor position.

   Only	for the	read only mode
       o   <h>

	   Call	the 'cursor-left' routine: move	the cursor one position	to the
	   left.

       o   <l>

	   Call	the 'cursor-right' routine: move the cursor one	position to
	   the right.

       o   b<<k>>

	   Call	the 'cursor-up'	routine: move the cursor one line up.

       o   b<<j>>

	   Call	the 'cursor-down' routine: move	the cursor one line down.

       o   <space>, <]>

	   Call	the 'cursor-pagedown' routine: move the	cursor to the next
	   page.

       o   <->,	<[>

	   Call	the 'cursor-pageup' routine: move the cursor to	the previous
	   page.

       o   </>

	   Call	the 'search-forward' routine. This will	make a 'less'-like
	   search system appear	in the textviewer. A searchstring can be
	   entered. After that the user	can search for the next	occurance
	   using the 'n' key or	the previous occurance using the 'N' key.

       o   <?>

	   Call	the 'search-backward' routine. This will do the	same as	the
	   'search-forward' routine, only it will search in the	opposite
	   direction.

SEE ALSO
       Curses::UI, Curses::UI::TextViewer Curses::UI::TextEntry
       Curses::UI::Widget, Curses::UI::Common

AUTHOR
       Copyright (c) 2001-2002 Maurice Makaay. All rights reserved.

       Maintained by Marcus Thiesen (marcus@cpan.thiesenweb.de)

       This package is free software and is provided "as is" without express
       or implied warranty. It may be used, redistributed and/or modified
       under the same terms as perl itself.

perl v5.24.1			  2011-09-01	     Curses::UI::TextEditor(3)

NAME | CLASS HIERARCHY | SYNOPSIS | DESCRIPTION | STANDARD OPTIONS | WIDGET-SPECIFIC OPTIONS | METHODS | DEFAULT BINDINGS | SEE ALSO | AUTHOR

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=Curses::UI::TextEditor&sektion=3&manpath=FreeBSD+12.0-RELEASE+and+Ports>

home | help