# class TextEditor(Component)

A TextEditor provides efficient editing of large amounts of text.
There may optionally be horizontal and/or vertical scroll bars. If there is no horizontal scroll bar, text is wrapped to the width of the component.
Tab stops may be set at regularly-spaced intervals.

## Constructor

TextEditor(scrolling = 'hv')
  Creates a TextEditor. Presence of scroll bars is controlled by the scrolling parameter, which is a string containing 'h' for horizontal and 'v' for vertical.

## Properties

text
  The text being edited, as a string.
text_length
  Read only. The number of characters in the text
selection
  A tuple of indexes (start, end) representing the range of selected characters.
font
  The Font in which the text is displayed.
tab_spacing
  Distance between tab stops.

## Methods

select_all()
  Selects all of the text.

> `cut_cmd()`
> `copy_cmd()`
> `paste_cmd()`
> `clear_cmd()
> select_all_cmd()`
>   These implement the standard editing menu commands. The corresponding menu items are enabled automatically whenever the component has the keyboard focus.

---