# TextEdit (leaf)

A multi-line, editable text with a scrollbar.

  Contents (`Value` takes precedence):
Value
  (Text, `""`)
  The contents.
From
  (Text)
  The name of a resource from which the text will be taken.

ReadOnly `GP`
  (Boolean, `FALSE`)
  If true, the text will not be editable.
Clip
  (Boolean, `FALSE`)
  If true, the long lines will be clipped, not wrapped.
TurnMargin
  (Real, `2.0`)
  If long lines are wrapped, then a small grey bar will appear at the end of the first line and the beginning of the next to indicate that the line was wrapped. TurnMargin specifies the width of the grey bar.
NoScrollbar
  (Boolean, `FALSE`)
  If true, there will be no scrollbar or thin line to the left of the text area.
FirstFocus
  (Boolean, `FALSE`)
  If true, and if this TextEdit is in a subwindow or TSplit-child, then when that component appears, this TextEdit will acquire the keyboard focus.
Position `GP`
  (Cardinal, N/A)
  The position of the cursor.
Length `GP`
  (Cardinal, N/A)
  The number of characters in the text.

Notes
  The Position and Length properties are unusual because they cannot be specified in the s-expression; they may only be accessed at runtime using `FormsVBT.GetIntegerProperty` and `FormsVBT.PutIntegerProperty`.
Notes
  For details on the editing commands, see the description of TextPort in the VBTkit Reference Manual [VBTkitRefman] .
Notes
  This form produces an object that is a subtype of `TextEditVBT.T`, which contains a `TextPort.T` and (optionally) a `TextPort.Scrollbar`. To override methods such as `filter` on the textport, the client should use the `realize` method of the `FormsVBT.T`; see Section [realize] , page [realize] for an example.
See Also
  TypeIn and Typescript