com.google.gwt.user.client.ui

## Class TextArea

- java.lang.Object
- - com.google.gwt.user.client.ui.UIObject
  - - com.google.gwt.user.client.ui.Widget
    - - com.google.gwt.user.client.ui.FocusWidget
      - - com.google.gwt.user.client.ui.ValueBoxBase<java.lang.String>
        - - com.google.gwt.user.client.ui.TextBoxBase
          - - com.google.gwt.user.client.ui.TextArea

- All Implemented Interfaces:
    IsEditor<ValueBoxEditor<java.lang.String>>, HasAllDragAndDropHandlers, HasAllFocusHandlers, HasAllGestureHandlers, HasAllKeyHandlers, HasAllMouseHandlers, HasAllTouchHandlers, HasBlurHandlers, HasChangeHandlers, HasClickHandlers, HasDoubleClickHandlers, HasDragEndHandlers, HasDragEnterHandlers, HasDragHandlers, HasDragLeaveHandlers, HasDragOverHandlers, HasDragStartHandlers, HasDropHandlers, HasFocusHandlers, HasGestureChangeHandlers, HasGestureEndHandlers, HasGestureStartHandlers, HasKeyDownHandlers, HasKeyPressHandlers, HasKeyUpHandlers, HasMouseDownHandlers, HasMouseMoveHandlers, HasMouseOutHandlers, HasMouseOverHandlers, HasMouseUpHandlers, HasMouseWheelHandlers, HasTouchCancelHandlers, HasTouchEndHandlers, HasTouchMoveHandlers, HasTouchStartHandlers, HasAttachHandlers, HasValueChangeHandlers<java.lang.String>, HasHandlers, AutoDirectionHandler.Target, HasDirection, HasDirectionEstimator, EventListener, TakesValue<java.lang.String>, Focusable, HasEnabled, HasFocus, HasName, HasText, HasValue<java.lang.String>, HasVisibility, IsWidget, SourcesChangeEvents, SourcesClickEvents, SourcesFocusEvents, SourcesKeyboardEvents, SourcesMouseEvents

      public class TextArea
      extends TextBoxBase

  A text box that allows multiple lines of text to be entered.

  ### CSS Style Rules

  - .gwt-TextArea { primary style }
  - .gwt-TextArea-readonly { dependent style set when the text area is read-only }

  ### Built-in Bidi Text Support

  This widget is capable of automatically adjusting its direction according to the input text. This feature is controlled by `ValueBoxBase.setDirectionEstimator(boolean)`, and is available by default when at least one of the application's locales is right-to-left.

  ### Example

  >     public class TextBoxExample implements EntryPoint {

  >       public void onModuleLoad() {
  >         // Make some text boxes. The password text box is identical to the text
  >         // box, except that the input is visually masked by the browser.
  >         PasswordTextBox ptb = new PasswordTextBox();
  >         TextBox tb = new TextBox();

  >         // TODO(ECC) must be tested.
  >         tb.addKeyPressHandler(new KeyPressHandler() {

  >           public void onKeyPress(KeyPressEvent event) {
  >             if (!Character.isDigit(event.getCharCode())) {
  >               ((TextBox) event.getSource()).cancelKey();
  >             }
  >           }
  >         });

  >         // Let's make an 80x50 text area to go along with the other two.
  >         TextArea ta = new TextArea();
  >         ta.setCharacterWidth(80);
  >         ta.setVisibleLines(50);

  >         // Add them to the root panel.
  >         VerticalPanel panel = new VerticalPanel();
  >         panel.add(tb);
  >         panel.add(ptb);
  >         panel.add(ta);
  >         RootPanel.get().add(panel);
  >       }
  >     }

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class com.google.gwt.user.client.ui.TextBoxBase

      `TextBoxBase.TextAlignConstant`

    - ### Nested classes/interfaces inherited from class com.google.gwt.user.client.ui.ValueBoxBase

      `ValueBoxBase.TextAlignment`

    - ### Nested classes/interfaces inherited from class com.google.gwt.user.client.ui.UIObject

      `UIObject.DebugIdImpl, UIObject.DebugIdImplEnabled`

    - ### Nested classes/interfaces inherited from interface com.google.gwt.i18n.client.HasDirection

      `HasDirection.Direction`

  - ### Field Summary

    - ### Fields inherited from class com.google.gwt.user.client.ui.TextBoxBase

      `ALIGN_CENTER, ALIGN_JUSTIFY, ALIGN_LEFT, ALIGN_RIGHT`

    - ### Fields inherited from class com.google.gwt.user.client.ui.Widget

      `eventsToSink`

    - ### Fields inherited from class com.google.gwt.user.client.ui.UIObject

      `DEBUG_ID_PREFIX, MISSING_ELEMENT_ERROR, SETELEMENT_TWICE_ERROR`

  - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `` | `TextArea()` Creates an empty text area.
    `protected` | `TextArea(Element element)` This constructor may be used by subclasses to explicitly use an existing element.

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `int` | `getCharacterWidth()` Gets the requested width of the text box (this is not an exact value, as not all characters are created equal).
    `int` | `getCursorPos()` Gets the current position of the cursor (this also serves as the beginning of the text selection).
    `int` | `getSelectionLength()` Gets the length of the current text selection.
    `int` | `getVisibleLines()` Gets the number of text lines that are visible.
    `void` | `setCharacterWidth(int width)` Sets the requested width of the text box (this is not an exact value, as not all characters are created equal).
    `void` | `setVisibleLines(int lines)` Sets the number of text lines that are visible.
    `static TextArea` | `wrap(Element element)` Creates a TextArea widget that wraps an existing <textarea> element.

    - ### Methods inherited from class com.google.gwt.user.client.ui.TextBoxBase

      `addChangeListener, getValue, setTextAlignment`

    - ### Methods inherited from class com.google.gwt.user.client.ui.ValueBoxBase

      `addChangeHandler, addValueChangeHandler, asEditor, cancelKey, getDirection, getDirectionEstimator, getImpl, getName, getSelectedText, getText, getValueOrThrow, isReadOnly, onBrowserEvent, onLoad, removeChangeListener, selectAll, setAlignment, setCursorPos, setDirection, setDirectionEstimator, setDirectionEstimator, setKey, setName, setReadOnly, setSelectionRange, setText, setValue, setValue`

    - ### Methods inherited from class com.google.gwt.user.client.ui.FocusWidget

      `addBlurHandler, addClickHandler, addClickListener, addDoubleClickHandler, addDragEndHandler, addDragEnterHandler, addDragHandler, addDragLeaveHandler, addDragOverHandler, addDragStartHandler, addDropHandler, addFocusHandler, addFocusListener, addGestureChangeHandler, addGestureEndHandler, addGestureStartHandler, addKeyboardListener, addKeyDownHandler, addKeyPressHandler, addKeyUpHandler, addMouseDownHandler, addMouseListener, addMouseMoveHandler, addMouseOutHandler, addMouseOverHandler, addMouseUpHandler, addMouseWheelHandler, addMouseWheelListener, addTouchCancelHandler, addTouchEndHandler, addTouchMoveHandler, addTouchStartHandler, getFocusImpl, getTabIndex, isEnabled, onAttach, removeClickListener, removeFocusListener, removeKeyboardListener, removeMouseListener, removeMouseWheelListener, setAccessKey, setEnabled, setFocus, setTabIndex`

    - ### Methods inherited from class com.google.gwt.user.client.ui.Widget

      `addAttachHandler, addBitlessDomHandler, addDomHandler, addHandler, asWidget, asWidgetOrNull, createHandlerManager, delegateEvent, doAttachChildren, doDetachChildren, ensureHandlers, fireEvent, getHandlerCount, getHandlerManager, getLayoutData, getParent, isAttached, isOrWasAttached, onDetach, onUnload, removeFromParent, replaceElement, setLayoutData, setParent, sinkEvents, unsinkEvents`

    - ### Methods inherited from class com.google.gwt.user.client.ui.UIObject

      `addStyleDependentName, addStyleName, ensureDebugId, ensureDebugId, ensureDebugId, getAbsoluteLeft, getAbsoluteTop, getElement, getOffsetHeight, getOffsetWidth, getStyleElement, getStyleName, getStyleName, getStylePrimaryName, getStylePrimaryName, getTitle, isVisible, isVisible, onEnsureDebugId, removeStyleDependentName, removeStyleName, resolvePotentialElement, setElement, setElement, setHeight, setPixelSize, setSize, setStyleDependentName, setStyleName, setStyleName, setStyleName, setStyleName, setStylePrimaryName, setStylePrimaryName, setTitle, setVisible, setVisible, setWidth, sinkBitlessEvent, toString`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

    - ### Methods inherited from interface com.google.gwt.user.client.ui.SourcesChangeEvents

      `removeChangeListener`

    - ### Methods inherited from interface com.google.gwt.event.dom.client.HasKeyUpHandlers

      `addKeyUpHandler`

    - ### Methods inherited from interface com.google.gwt.event.shared.HasHandlers

      `fireEvent`

- - ### Constructor Detail

    - #### TextArea

          public TextArea()

      Creates an empty text area.

    - #### TextArea

          protected TextArea(Element element)

      This constructor may be used by subclasses to explicitly use an existing element. This element must be a <textarea> element.
      Parameters:
        `element` - the element to be used

  - ### Method Detail

    - #### wrap

          public static TextArea wrap(Element element)

      Creates a TextArea widget that wraps an existing <textarea> element. This element must already be attached to the document. If the element is removed from the document, you must call `RootPanel.detachNow(Widget)`.
      Parameters:
        `element` - the element to be wrapped

    - #### getCharacterWidth

          public int getCharacterWidth()

      Gets the requested width of the text box (this is not an exact value, as not all characters are created equal).
      Returns:
        the requested width, in characters

    - #### getCursorPos

          public int getCursorPos()

      Description copied from class: `ValueBoxBase`
      Gets the current position of the cursor (this also serves as the beginning of the text selection).
      Overrides:
        `getCursorPos` in class `ValueBoxBase<java.lang.String>`
      Returns:
        the cursor's position

    - #### getSelectionLength

          public int getSelectionLength()

      Description copied from class: `ValueBoxBase`
      Gets the length of the current text selection.
      Overrides:
        `getSelectionLength` in class `ValueBoxBase<java.lang.String>`
      Returns:
        the text selection length

    - #### getVisibleLines

          public int getVisibleLines()

      Gets the number of text lines that are visible.
      Returns:
        the number of visible lines

    - #### setCharacterWidth

          public void setCharacterWidth(int width)

      Sets the requested width of the text box (this is not an exact value, as not all characters are created equal).
      Parameters:
        `width` - the requested width, in characters

    - #### setVisibleLines

          public void setVisibleLines(int lines)

      Sets the number of text lines that are visible.
      Parameters:
        `lines` - the number of visible lines