Eclipse Platform Release 3.7

## org.eclipse.swt.widgets
Class Text

    java.lang.Object
      org.eclipse.swt.widgets.Widget
          org.eclipse.swt.widgets.Control
              org.eclipse.swt.widgets.Scrollable
                  org.eclipse.swt.widgets.Text

All Implemented Interfaces:
  Drawable

    public class Text

extends Scrollable

Instances of this class are selectable user interface objects that allow the user to enter and modify text. Text controls can be either single or multi-line. When a text control is created with a border, the operating system includes a platform specific inset around the contents of the control. When created without a border, an effort is made to remove the inset such that the preferred size of the control is the same size as the contents.

Styles:
  CENTER, ICON_CANCEL, ICON_SEARCH, LEFT, MULTI, PASSWORD, SEARCH, SINGLE, RIGHT, READ_ONLY, WRAP
Events:
  DefaultSelection, Modify, Verify, OrientationChange

Note: Only one of the styles MULTI and SINGLE may be specified, and only one of the styles LEFT, CENTER, and RIGHT may be specified.

Note: The styles ICON_CANCEL and ICON_SEARCH are hints used in combination with SEARCH. When the platform supports the hint, the text control shows these icons. When an icon is selected, a default selection event is sent with the detail field set to one of ICON_CANCEL or ICON_SEARCH. Normally, application code does not need to check the detail. In the case of ICON_CANCEL, the text is cleared before the default selection event is sent causing the application to search for an empty string.

IMPORTANT: This class is not intended to be subclassed.

See Also:
  Text snippets, SWT Example: ControlExample, Sample code and further information
Restriction:
  This class is not intended to be subclassed by clients.

Field Summary
`static String` `DELIMITER` The delimiter used by multi-line text widgets.
`static int` `LIMIT` The maximum number of characters that can be entered into a text widget.

Fields inherited from class org.eclipse.swt.widgets.Control
`handle`

Constructor Summary
`Text(Composite parent, int style)` Constructs a new instance of this class given its parent and a style value describing its behavior and appearance.

Method Summary
`void` `addModifyListener(ModifyListener listener)` Adds the listener to the collection of listeners who will be notified when the receiver's text is modified, by sending it one of the messages defined in the `ModifyListener` interface.
`void` `addSelectionListener(SelectionListener listener)` Adds the listener to the collection of listeners who will be notified when the control is selected by the user, by sending it one of the messages defined in the `SelectionListener` interface.
`void` `addVerifyListener(VerifyListener listener)` Adds the listener to the collection of listeners who will be notified when the receiver's text is verified, by sending it one of the messages defined in the `VerifyListener` interface.
`void` `append(String string)` Appends a string.
`void` `clearSelection()` Clears the selection.
`Point` `computeSize(int wHint, int hHint, boolean changed)` Returns the preferred size of the receiver.
`Rectangle` `computeTrim(int x, int y, int width, int height)` Given a desired client area for the receiver (as described by the arguments), returns the bounding rectangle which would be required to produce that client area.
`void` `copy()` Copies the selected text.
`void` `cut()` Cuts the selected text.
`int` `getBorderWidth()` Returns the receiver's border width.
`int` `getCaretLineNumber()` Returns the line number of the caret.
`Point` `getCaretLocation()` Returns a point describing the receiver's location relative to its parent (or its display if its parent is null).
`int` `getCaretPosition()` Returns the character position of the caret.
`int` `getCharCount()` Returns the number of characters.
`boolean` `getDoubleClickEnabled()` Returns the double click enabled flag.
`char` `getEchoChar()` Returns the echo character.
`boolean` `getEditable()` Returns the editable state.
`int` `getLineCount()` Returns the number of lines.
`String` `getLineDelimiter()` Returns the line delimiter.
`int` `getLineHeight()` Returns the height of a line.
`String` `getMessage()` Returns the widget message.
`int` `getOrientation()` Returns the orientation of the receiver, which will be one of the constants `SWT.LEFT_TO_RIGHT` or `SWT.RIGHT_TO_LEFT`.
`Point` `getSelection()` Returns a `Point` whose x coordinate is the character position representing the start of the selected text, and whose y coordinate is the character position representing the end of the selection.
`int` `getSelectionCount()` Returns the number of selected characters.
`String` `getSelectionText()` Gets the selected text, or an empty string if there is no current selection.
`int` `getTabs()` Returns the number of tabs.
`String` `getText()` Returns the widget text.
`String` `getText(int start, int end)` Returns a range of text.
`char[]` `getTextChars()` Returns the widget's text as a character array.
`int` `getTextLimit()` Returns the maximum number of characters that the receiver is capable of holding.
`int` `getTopIndex()` Returns the zero-relative index of the line which is currently at the top of the receiver.
`int` `getTopPixel()` Returns the top pixel.
`void` `insert(String string)` Inserts a string.
`void` `paste()` Pastes text from clipboard.
`void` `removeModifyListener(ModifyListener listener)` Removes the listener from the collection of listeners who will be notified when the receiver's text is modified.
`void` `removeSelectionListener(SelectionListener listener)` Removes the listener from the collection of listeners who will be notified when the control is selected by the user.
`void` `removeVerifyListener(VerifyListener listener)` Removes the listener from the collection of listeners who will be notified when the control is verified.
`void` `selectAll()` Selects all the text in the receiver.
`void` `setDoubleClickEnabled(boolean doubleClick)` Sets the double click enabled flag.
`void` `setEchoChar(char echo)` Sets the echo character.
`void` `setEditable(boolean editable)` Sets the editable state.
`void` `setFont(Font font)` Sets the font that the receiver will use to paint textual information to the font specified by the argument, or to the default font for that kind of control if the argument is null.
`void` `setMessage(String message)` Sets the widget message.
`void` `setOrientation(int orientation)` Sets the orientation of the receiver, which must be one of the constants `SWT.LEFT_TO_RIGHT` or `SWT.RIGHT_TO_LEFT`.
`void` `setRedraw(boolean redraw)` If the argument is `false`, causes subsequent drawing operations in the receiver to be ignored.
`void` `setSelection(int start)` Sets the selection.
`void` `setSelection(int start, int end)` Sets the selection to the range specified by the given start and end indices.
`void` `setSelection(Point selection)` Sets the selection to the range specified by the given point, where the x coordinate represents the start index and the y coordinate represents the end index.
`void` `setTabs(int tabs)` Sets the number of tabs.
`void` `setText(String string)` Sets the contents of the receiver to the given string.
`void` `setTextChars(char[] text)` Sets the contents of the receiver to the characters in the array.
`void` `setTextLimit(int limit)` Sets the maximum number of characters that the receiver is capable of holding to be the argument.
`void` `setTopIndex(int index)` Sets the zero-relative index of the line which is currently at the top of the receiver.
`void` `showSelection()` Shows the selection.

Methods inherited from class org.eclipse.swt.widgets.Scrollable
`getClientArea, getHorizontalBar, getVerticalBar`

Methods inherited from class org.eclipse.swt.widgets.Control

`addControlListener, addDragDetectListener, addFocusListener, addGestureListener, addHelpListener, addKeyListener, addMenuDetectListener, addMouseListener, addMouseMoveListener, addMouseTrackListener, addMouseWheelListener, addPaintListener, addTouchListener, addTraverseListener, computeSize, dragDetect, dragDetect, forceFocus, getAccessible, getBackground, getBackgroundImage, getBounds, getCursor, getDragDetect, getEnabled, getFont, getForeground, getLayoutData, getLocation, getMenu, getMonitor, getParent, getRegion, getShell, getSize, getToolTipText, getTouchEnabled, getVisible, internal_dispose_GC, internal_new_GC, isEnabled, isFocusControl, isReparentable, isVisible, moveAbove, moveBelow, pack, pack, print, redraw, redraw, removeControlListener, removeDragDetectListener, removeFocusListener, removeGestureListener, removeHelpListener, removeKeyListener, removeMenuDetectListener, removeMouseListener, removeMouseMoveListener, removeMouseTrackListener, removeMouseWheelListener, removePaintListener, removeTouchListener, removeTraverseListener, setBackground, setBackgroundImage, setBounds, setBounds, setCapture, setCursor, setDragDetect, setEnabled, setFocus, setForeground, setLayoutData, setLocation, setLocation, setMenu, setParent, setRegion, setSize, setSize, setToolTipText, setTouchEnabled, setVisible, toControl, toControl, toDisplay, toDisplay, traverse, traverse, traverse, update`

Methods inherited from class org.eclipse.swt.widgets.Widget
`addDisposeListener, addListener, checkSubclass, checkWidget, dispose, getData, getData, getDisplay, getListeners, getStyle, isDisposed, isListening, notifyListeners, removeDisposeListener, removeListener, removeListener, reskin, setData, setData, toString`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Field Detail

### LIMIT

    public static final int LIMIT

  The maximum number of characters that can be entered into a text widget.

  Note that this value is platform dependent, based upon the native widget implementation.

### DELIMITER

    public static final String DELIMITER

  The delimiter used by multi-line text widgets. When text is queried and from the widget, it will be delimited using this delimiter.

Constructor Detail

### Text

    public Text(Composite parent,
                int style)

  Constructs a new instance of this class given its parent and a style value describing its behavior and appearance.

  The style value is either one of the style constants defined in class `SWT` which is applicable to instances of this class, or must be built by bitwise OR'ing together (that is, using the `int` "|" operator) two or more of those `SWT` style constants. The class description lists the style constants that are applicable to the class. Style bits are also inherited from superclasses.

  Parameters:
    `parent` - a composite control which will be the parent of the new instance (cannot be null)
    `style` - the style of control to construct
  Throws:
    `IllegalArgumentException` -
    - ERROR_NULL_ARGUMENT - if the parent is null
    `SWTException` -
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the parent
    - ERROR_INVALID_SUBCLASS - if this class is not an allowed subclass
  See Also:
    `SWT.SINGLE`, `SWT.MULTI`, `SWT.READ_ONLY`, `SWT.WRAP`, `SWT.LEFT`, `SWT.RIGHT`, `SWT.CENTER`, `SWT.PASSWORD`, `SWT.SEARCH`, `SWT.ICON_SEARCH`, `SWT.ICON_CANCEL`, `Widget.checkSubclass()`, `Widget.getStyle()`

Method Detail

### addModifyListener

    public void addModifyListener(ModifyListener listener)

  Adds the listener to the collection of listeners who will be notified when the receiver's text is modified, by sending it one of the messages defined in the `ModifyListener` interface.

  Parameters:
    `listener` - the listener which should be notified
  Throws:
    `IllegalArgumentException` -
    - ERROR_NULL_ARGUMENT - if the listener is null
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
  See Also:
    `ModifyListener`, `removeModifyListener(org.eclipse.swt.events.ModifyListener)`

### addSelectionListener

    public void addSelectionListener(SelectionListener listener)

  Adds the listener to the collection of listeners who will be notified when the control is selected by the user, by sending it one of the messages defined in the `SelectionListener` interface.

  `widgetSelected` is not called for texts. `widgetDefaultSelected` is typically called when ENTER is pressed in a single-line text, or when ENTER is pressed in a search text. If the receiver has the `SWT.SEARCH | SWT.CANCEL` style and the user cancels the search, the event object detail field contains the value `SWT.CANCEL`.

  Parameters:
    `listener` - the listener which should be notified when the control is selected by the user
  Throws:
    `IllegalArgumentException` -
    - ERROR_NULL_ARGUMENT - if the listener is null
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
  See Also:
    `SelectionListener`, `removeSelectionListener(org.eclipse.swt.events.SelectionListener)`, `SelectionEvent`

### addVerifyListener

    public void addVerifyListener(VerifyListener listener)

  Adds the listener to the collection of listeners who will be notified when the receiver's text is verified, by sending it one of the messages defined in the `VerifyListener` interface.

  Parameters:
    `listener` - the listener which should be notified
  Throws:
    `IllegalArgumentException` -
    - ERROR_NULL_ARGUMENT - if the listener is null
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
  See Also:
    `VerifyListener`, `removeVerifyListener(org.eclipse.swt.events.VerifyListener)`

### append

    public void append(String string)

  Appends a string.

  The new text is appended to the text at the end of the widget.

  Parameters:
    `string` - the string to be appended
  Throws:
    `IllegalArgumentException` -
    - ERROR_NULL_ARGUMENT - if the string is null
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

### clearSelection

    public void clearSelection()

  Clears the selection.

  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

### computeSize

    public Point computeSize(int wHint,
                             int hHint,
                             boolean changed)

  Description copied from class: `Control`
  Returns the preferred size of the receiver.

  The preferred size of a control is the size that it would best be displayed at. The width hint and height hint arguments allow the caller to ask a control questions such as "Given a particular width, how high does the control need to be to show all of the contents?" To indicate that the caller does not wish to constrain a particular dimension, the constant `SWT.DEFAULT` is passed for the hint.

  If the changed flag is `true`, it indicates that the receiver's contents have changed, therefore any caches that a layout manager containing the control may have been keeping need to be flushed. When the control is resized, the changed flag will be `false`, so layout manager caches can be retained.

  Overrides:
    `computeSize` in class `Control`
  Parameters:
    `wHint` - the width hint (can be `SWT.DEFAULT`)
    `hHint` - the height hint (can be `SWT.DEFAULT`)
    `changed` - `true` if the control's contents have changed, and `false` otherwise
  Returns:
    the preferred size of the control.
  See Also:
    `Layout`, `Control.getBorderWidth()`, `Control.getBounds()`, `Control.getSize()`, `Control.pack(boolean)`, "computeTrim, getClientArea for controls that implement them"

### computeTrim

    public Rectangle computeTrim(int x,
                                 int y,
                                 int width,
                                 int height)

  Description copied from class: `Scrollable`
  Given a desired client area for the receiver (as described by the arguments), returns the bounding rectangle which would be required to produce that client area.

  In other words, it returns a rectangle such that, if the receiver's bounds were set to that rectangle, the area of the receiver which is capable of displaying data (that is, not covered by the "trimmings") would be the rectangle described by the arguments (relative to the receiver's parent).

  Overrides:
    `computeTrim` in class `Scrollable`
  Parameters:
    `x` - the desired x coordinate of the client area
    `y` - the desired y coordinate of the client area
    `width` - the desired width of the client area
    `height` - the desired height of the client area
  Returns:
    the required bounds to produce the given client area
  See Also:
    `Scrollable.getClientArea()`

### copy

    public void copy()

  Copies the selected text.

  The current selection is copied to the clipboard.

  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

### cut

    public void cut()

  Cuts the selected text.

  The current selection is first copied to the clipboard and then deleted from the widget.

  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

### getBorderWidth

    public int getBorderWidth()

  Description copied from class: `Control`
  Returns the receiver's border width.

  Overrides:
    `getBorderWidth` in class `Control`
  Returns:
    the border width

### getCaretLineNumber

    public int getCaretLineNumber()

  Returns the line number of the caret.

  The line number of the caret is returned.

  Returns:
    the line number
  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

### getCaretLocation

    public Point getCaretLocation()

  Returns a point describing the receiver's location relative to its parent (or its display if its parent is null).

  The location of the caret is returned.

  Returns:
    a point, the location of the caret
  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

### getCaretPosition

    public int getCaretPosition()

  Returns the character position of the caret.

  Indexing is zero based.

  Returns:
    the position of the caret
  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

### getCharCount

    public int getCharCount()

  Returns the number of characters.

  Returns:
    number of characters in the widget
  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

### getDoubleClickEnabled

    public boolean getDoubleClickEnabled()

  Returns the double click enabled flag.

  The double click flag enables or disables the default action of the text widget when the user double clicks.

  Returns:
    whether or not double click is enabled
  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

### getEchoChar

    public char getEchoChar()

  Returns the echo character.

  The echo character is the character that is displayed when the user enters text or the text is changed by the programmer.

  Returns:
    the echo character
  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
  See Also:
    `setEchoChar(char)`

### getEditable

    public boolean getEditable()

  Returns the editable state.

  Returns:
    whether or not the receiver is editable
  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

### getLineCount

    public int getLineCount()

  Returns the number of lines.

  Returns:
    the number of lines in the widget
  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

### getLineDelimiter

    public String getLineDelimiter()

  Returns the line delimiter.

  Returns:
    a string that is the line delimiter
  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
  See Also:
    `DELIMITER`

### getLineHeight

    public int getLineHeight()

  Returns the height of a line.

  Returns:
    the height of a row of text
  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

### getOrientation

    public int getOrientation()

  Returns the orientation of the receiver, which will be one of the constants `SWT.LEFT_TO_RIGHT` or `SWT.RIGHT_TO_LEFT`.

  Overrides:
    `getOrientation` in class `Control`
  Returns:
    the orientation style
  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
  Since:
    2.1.2

### getMessage

    public String getMessage()

  Returns the widget message. The message text is displayed as a hint for the user, indicating the purpose of the field.

  Typically this is used in conjunction with `SWT.SEARCH`.

  Returns:
    the widget message
  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
  Since:
    3.3

### getSelection

    public Point getSelection()

  Returns a `Point` whose x coordinate is the character position representing the start of the selected text, and whose y coordinate is the character position representing the end of the selection. An "empty" selection is indicated by the x and y coordinates having the same value.

  Indexing is zero based. The range of a selection is from 0..N where N is the number of characters in the widget.

  Returns:
    a point representing the selection start and end
  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

### getSelectionCount

    public int getSelectionCount()

  Returns the number of selected characters.

  Returns:
    the number of selected characters.
  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

### getSelectionText

    public String getSelectionText()

  Gets the selected text, or an empty string if there is no current selection.

  Returns:
    the selected text
  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

### getTabs

    public int getTabs()

  Returns the number of tabs.

  Tab stop spacing is specified in terms of the space (' ') character. The width of a single tab stop is the pixel width of the spaces.

  Returns:
    the number of tab characters
  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

### getText

    public String getText()

  Returns the widget text.

  The text for a text widget is the characters in the widget, or an empty string if this has never been set.

  Returns:
    the widget text
  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

### getTextChars

    public char[] getTextChars()

  Returns the widget's text as a character array.

  The text for a text widget is the characters in the widget, or a zero-length array if this has never been set.

  Returns:
    a character array that contains the widget's text
  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
  Since:
    3.7
  See Also:
    `setTextChars(char[])`

### getText

    public String getText(int start,
                          int end)

  Returns a range of text. Returns an empty string if the start of the range is greater than the end.

  Indexing is zero based. The range of a selection is from 0..N-1 where N is the number of characters in the widget.

  Parameters:
    `start` - the start of the range
    `end` - the end of the range
  Returns:
    the range of text
  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

### getTextLimit

    public int getTextLimit()

  Returns the maximum number of characters that the receiver is capable of holding.

  If this has not been changed by `setTextLimit()`, it will be the constant `Text.LIMIT`.

  Returns:
    the text limit
  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
  See Also:
    `LIMIT`

### getTopIndex

    public int getTopIndex()

  Returns the zero-relative index of the line which is currently at the top of the receiver.

  This index can change when lines are scrolled or new lines are added or removed.

  Returns:
    the index of the top line
  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

### getTopPixel

    public int getTopPixel()

  Returns the top pixel.

  The top pixel is the pixel position of the line that is currently at the top of the widget. On some platforms, a text widget can be scrolled by pixels instead of lines so that a partial line is displayed at the top of the widget.

  The top pixel changes when the widget is scrolled. The top pixel does not include the widget trimming.

  Returns:
    the pixel position of the top line
  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

### insert

    public void insert(String string)

  Inserts a string.

  The old selection is replaced with the new text.

  Parameters:
    `string` - the string
  Throws:
    `IllegalArgumentException` -
    - ERROR_NULL_ARGUMENT - if the string is `null`
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

### paste

    public void paste()

  Pastes text from clipboard.

  The selected text is deleted from the widget and new text inserted from the clipboard.

  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

### removeModifyListener

    public void removeModifyListener(ModifyListener listener)

  Removes the listener from the collection of listeners who will be notified when the receiver's text is modified.

  Parameters:
    `listener` - the listener which should no longer be notified
  Throws:
    `IllegalArgumentException` -
    - ERROR_NULL_ARGUMENT - if the listener is null
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
  See Also:
    `ModifyListener`, `addModifyListener(org.eclipse.swt.events.ModifyListener)`

### removeSelectionListener

    public void removeSelectionListener(SelectionListener listener)

  Removes the listener from the collection of listeners who will be notified when the control is selected by the user.

  Parameters:
    `listener` - the listener which should no longer be notified
  Throws:
    `IllegalArgumentException` -
    - ERROR_NULL_ARGUMENT - if the listener is null
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
  See Also:
    `SelectionListener`, `addSelectionListener(org.eclipse.swt.events.SelectionListener)`

### removeVerifyListener

    public void removeVerifyListener(VerifyListener listener)

  Removes the listener from the collection of listeners who will be notified when the control is verified.

  Parameters:
    `listener` - the listener which should no longer be notified
  Throws:
    `IllegalArgumentException` -
    - ERROR_NULL_ARGUMENT - if the listener is null
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
  See Also:
    `VerifyListener`, `addVerifyListener(org.eclipse.swt.events.VerifyListener)`

### selectAll

    public void selectAll()

  Selects all the text in the receiver.

  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

### setDoubleClickEnabled

    public void setDoubleClickEnabled(boolean doubleClick)

  Sets the double click enabled flag.

  The double click flag enables or disables the default action of the text widget when the user double clicks.

  Note: This operation is a hint and is not supported on platforms that do not have this concept.

  Parameters:
    `doubleClick` - the new double click flag
  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

### setEchoChar

    public void setEchoChar(char echo)

  Sets the echo character.

  The echo character is the character that is displayed when the user enters text or the text is changed by the programmer. Setting the echo character to '\0' clears the echo character and redraws the original text. If for any reason the echo character is invalid, or if the platform does not allow modification of the echo character, the default echo character for the platform is used.

  Parameters:
    `echo` - the new echo character
  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

### setEditable

    public void setEditable(boolean editable)

  Sets the editable state.

  Parameters:
    `editable` - the new editable state
  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

### setFont

    public void setFont(Font font)

  Description copied from class: `Control`
  Sets the font that the receiver will use to paint textual information to the font specified by the argument, or to the default font for that kind of control if the argument is null.

  Overrides:
    `setFont` in class `Control`
  Parameters:
    `font` - the new font (or null)

### setMessage

    public void setMessage(String message)

  Sets the widget message. The message text is displayed as a hint for the user, indicating the purpose of the field.

  Typically this is used in conjunction with `SWT.SEARCH`.

  Parameters:
    `message` - the new message
  Throws:
    `IllegalArgumentException` -
    - ERROR_NULL_ARGUMENT - if the message is null
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
  Since:
    3.3

### setOrientation

    public void setOrientation(int orientation)

  Sets the orientation of the receiver, which must be one of the constants `SWT.LEFT_TO_RIGHT` or `SWT.RIGHT_TO_LEFT`.

  Note: This operation is a hint and is not supported on platforms that do not have this concept.

  Overrides:
    `setOrientation` in class `Control`
  Parameters:
    `orientation` - new orientation style
  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
  Since:
    2.1.2

### setSelection

    public void setSelection(int start)

  Sets the selection.

  Indexing is zero based. The range of a selection is from 0..N where N is the number of characters in the widget.

  Text selections are specified in terms of caret positions. In a text widget that contains N characters, there are N+1 caret positions, ranging from 0..N. This differs from other functions that address character position such as getText () that use the regular array indexing rules.

  Parameters:
    `start` - new caret position
  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

### setSelection

    public void setSelection(int start,
                             int end)

  Sets the selection to the range specified by the given start and end indices.

  Indexing is zero based. The range of a selection is from 0..N where N is the number of characters in the widget.

  Text selections are specified in terms of caret positions. In a text widget that contains N characters, there are N+1 caret positions, ranging from 0..N. This differs from other functions that address character position such as getText () that use the usual array indexing rules.

  Parameters:
    `start` - the start of the range
    `end` - the end of the range
  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

### setRedraw

    public void setRedraw(boolean redraw)

  Description copied from class: `Control`
  If the argument is `false`, causes subsequent drawing operations in the receiver to be ignored. No drawing of any kind can occur in the receiver until the flag is set to true. Graphics operations that occurred while the flag was `false` are lost. When the flag is set to `true`, the entire widget is marked as needing to be redrawn. Nested calls to this method are stacked.

  Note: This operation is a hint and may not be supported on some platforms or for some widgets.

  Overrides:
    `setRedraw` in class `Control`
  Parameters:
    `redraw` - the new redraw state
  See Also:
    `Control.redraw(int, int, int, int, boolean)`, `Control.update()`

### setSelection

    public void setSelection(Point selection)

  Sets the selection to the range specified by the given point, where the x coordinate represents the start index and the y coordinate represents the end index.

  Indexing is zero based. The range of a selection is from 0..N where N is the number of characters in the widget.

  Text selections are specified in terms of caret positions. In a text widget that contains N characters, there are N+1 caret positions, ranging from 0..N. This differs from other functions that address character position such as getText () that use the usual array indexing rules.

  Parameters:
    `selection` - the point
  Throws:
    `IllegalArgumentException` -
    - ERROR_NULL_ARGUMENT - if the point is null
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

### setTabs

    public void setTabs(int tabs)

  Sets the number of tabs.

  Tab stop spacing is specified in terms of the space (' ') character. The width of a single tab stop is the pixel width of the spaces.

  Parameters:
    `tabs` - the number of tabs
  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

### setText

    public void setText(String string)

  Sets the contents of the receiver to the given string. If the receiver has style SINGLE and the argument contains multiple lines of text, the result of this operation is undefined and may vary from platform to platform.

  Parameters:
    `string` - the new text
  Throws:
    `IllegalArgumentException` -
    - ERROR_NULL_ARGUMENT - if the string is null
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

### setTextChars

    public void setTextChars(char[] text)

  Sets the contents of the receiver to the characters in the array. If the receiver has style `SWT.SINGLE` and the argument contains multiple lines of text then the result of this operation is undefined and may vary between platforms.

  Parameters:
    `text` - a character array that contains the new text
  Throws:
    `IllegalArgumentException` -
    - ERROR_NULL_ARGUMENT - if the array is null
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
  Since:
    3.7
  See Also:
    `getTextChars()`

### setTextLimit

    public void setTextLimit(int limit)

  Sets the maximum number of characters that the receiver is capable of holding to be the argument.

  Instead of trying to set the text limit to zero, consider creating a read-only text widget.

  To reset this value to the default, use `setTextLimit(Text.LIMIT)`. Specifying a limit value larger than `Text.LIMIT` sets the receiver's limit to `Text.LIMIT`.

  Parameters:
    `limit` - new text limit
  Throws:
    `IllegalArgumentException` -
    - ERROR_CANNOT_BE_ZERO - if the limit is zero
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
  See Also:
    `LIMIT`

### setTopIndex

    public void setTopIndex(int index)

  Sets the zero-relative index of the line which is currently at the top of the receiver. This index can change when lines are scrolled or new lines are added and removed.

  Parameters:
    `index` - the index of the top item
  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

### showSelection

    public void showSelection()

  Shows the selection.

  If the selection is already showing in the receiver, this method simply returns. Otherwise, lines are scrolled until the selection is visible.

  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

Eclipse Platform Release 3.7

Guidelines for using Eclipse APIs.

Copyright (c) Eclipse contributors and others 2000, 2011. All rights reserved.