# TypeIn (leaf, event)

A single-line editable text.

  Contents (`Value` takes precedence):
Value `GP`
  (Text, `""`)
  The current text.
From
  (Text)
  If present, names a resource from which the initial text will be taken.

ReadOnly
  (Boolean, `FALSE`)
  If true, the text-area will not be editable.
ExpandOnDemand
  (Boolean, `FALSE`)
  If true, the text area will grow and shrink vertically, as required, to contain the entire text.
FirstFocus
  (Boolean, `FALSE`)
  If true, and if this TypeIn is in a subwindow or TSplit-child, then when that component appears, this TypeIn will acquire the keyboard focus, and its text will be selected in replace-mode.
TabTo
  (Symbol)
  If given, this is the name of the component to which the keyboard focus wil be transferred when the user types Tab.
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.

Behavior
  This is a text editor, normally used for small type-in fields.
  Typing Return generates an event.
  Extensive application control can be exercised by direct calls on procedures in the `TextPort` interface.
Shape
  The width is initially 30 times the width of the widest character in the font. It has infinite shrinkability and stretchability. It is initially one line high. If `ExpandOnDemand` is false, then it always keeps that height; otherwise, the height changes to accomodate the entire text, but never less than one line. In any case, there is no vertical stretch or shrink.
Notes
  For details on the editing commands, see the description of the TypeinVBT interface in the VBTkit Reference Manual [VBTkitRefman] .
See Also
  TextEdit and Typescript