# Class TextComponent.AccessibleAWTTextComponent

java.lang.Object
javax.accessibility.AccessibleContext
java.awt.Component.AccessibleAWTComponent
java.awt.TextComponent.AccessibleAWTTextComponent

All Implemented Interfaces:
  `TextListener`, `Serializable`, `EventListener`, `AccessibleComponent`, `AccessibleText`

Direct Known Subclasses:
  `TextArea.AccessibleAWTTextArea`, `TextField.AccessibleAWTTextField`

Enclosing class:
  `TextComponent`

protected class TextComponent.AccessibleAWTTextComponent extends Component.AccessibleAWTComponent implements AccessibleText, TextListener
This class implements accessibility support for the `TextComponent` class. It provides an implementation of the Java Accessibility API appropriate to text component user-interface elements.

Since:
  1.3
See Also:
  - Serialized Form

- ## Nested Class Summary

  ### Nested classes/interfaces declared in class java.awt.Component.AccessibleAWTComponent

  `Component.AccessibleAWTComponent.AccessibleAWTComponentHandler, Component.AccessibleAWTComponent.AccessibleAWTFocusHandler`

- ## Field Summary

  ### Fields declared in class java.awt.Component.AccessibleAWTComponent

  `accessibleAWTComponentHandler, accessibleAWTFocusHandler`

  ### Fields declared in class javax.accessibility.AccessibleContext

  `ACCESSIBLE_ACTION_PROPERTY, ACCESSIBLE_ACTIVE_DESCENDANT_PROPERTY, ACCESSIBLE_CARET_PROPERTY, ACCESSIBLE_CHILD_PROPERTY, ACCESSIBLE_COMPONENT_BOUNDS_CHANGED, ACCESSIBLE_DESCRIPTION_PROPERTY, ACCESSIBLE_HYPERTEXT_OFFSET, ACCESSIBLE_INVALIDATE_CHILDREN, ACCESSIBLE_NAME_PROPERTY, ACCESSIBLE_SELECTION_PROPERTY, ACCESSIBLE_STATE_PROPERTY, ACCESSIBLE_TABLE_CAPTION_CHANGED, ACCESSIBLE_TABLE_COLUMN_DESCRIPTION_CHANGED, ACCESSIBLE_TABLE_COLUMN_HEADER_CHANGED, ACCESSIBLE_TABLE_MODEL_CHANGED, ACCESSIBLE_TABLE_ROW_DESCRIPTION_CHANGED, ACCESSIBLE_TABLE_ROW_HEADER_CHANGED, ACCESSIBLE_TABLE_SUMMARY_CHANGED, ACCESSIBLE_TEXT_ATTRIBUTES_CHANGED, ACCESSIBLE_TEXT_PROPERTY, ACCESSIBLE_VALUE_PROPERTY, ACCESSIBLE_VISIBLE_DATA_PROPERTY, accessibleDescription, accessibleName, accessibleParent`

  ### Fields declared in interface javax.accessibility.AccessibleText

  `CHARACTER, SENTENCE, WORD`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `AccessibleAWTTextComponent()`
  Constructs an AccessibleAWTTextComponent.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `AccessibleRole`
  `getAccessibleRole()`
  Gets the role of this object.
  `AccessibleStateSet`
  `getAccessibleStateSet()`
  Gets the state set of the TextComponent.
  `AccessibleText`
  `getAccessibleText()`
  Get the AccessibleText associated with this object.
  `String`
  `getAfterIndex(int part, int index)`
  Returns the String after a given index.
  `String`
  `getAtIndex(int part, int index)`
  Returns the String at a given index.
  `String`
  `getBeforeIndex(int part, int index)`
  Returns the String before a given index.
  `int`
  `getCaretPosition()`
  Returns the zero-based offset of the caret.
  `AttributeSet`
  `getCharacterAttribute(int i)`
  Returns the AttributeSet for a given character (at a given index).
  `Rectangle`
  `getCharacterBounds(int i)`
  Determines the bounding box of the character at the given index into the string.
  `int`
  `getCharCount()`
  Returns the number of characters (valid indices)
  `int`
  `getIndexAtPoint(Point p)`
  Given a point in local coordinates, return the zero-based index of the character under that Point.
  `String`
  `getSelectedText()`
  Returns the portion of the text that is selected.
  `int`
  `getSelectionEnd()`
  Returns the end offset within the selected text.
  `int`
  `getSelectionStart()`
  Returns the start offset within the selected text.
  `void`
  `textValueChanged(TextEvent textEvent)`
  TextListener notification of a text value change.

  ### Methods declared in class java.awt.Component.AccessibleAWTComponent

  `addFocusListener, addPropertyChangeListener, contains, getAccessibleAt, getAccessibleChild, getAccessibleChildrenCount, getAccessibleComponent, getAccessibleDescription, getAccessibleIndexInParent, getAccessibleName, getAccessibleParent, getBackground, getBounds, getCursor, getFont, getFontMetrics, getForeground, getLocale, getLocation, getLocationOnScreen, getSize, isEnabled, isFocusTraversable, isShowing, isVisible, removeFocusListener, removePropertyChangeListener, requestFocus, setBackground, setBounds, setCursor, setEnabled, setFont, setForeground, setLocation, setSize, setVisible`

  ### Methods declared in class javax.accessibility.AccessibleContext

  `firePropertyChange, getAccessibleAction, getAccessibleEditableText, getAccessibleIcon, getAccessibleRelationSet, getAccessibleSelection, getAccessibleTable, getAccessibleValue, setAccessibleDescription, setAccessibleName, setAccessibleParent`

  ### Methods declared in class java.lang.Object

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

- ## Constructor Details

  - ### AccessibleAWTTextComponent

    public AccessibleAWTTextComponent()
    Constructs an AccessibleAWTTextComponent. Adds a listener to track caret change.

- ## Method Details

  - ### textValueChanged

    public void textValueChanged(TextEvent textEvent)
    TextListener notification of a text value change.
    Specified by:
      `textValueChanged` in interface `TextListener`
    Parameters:
      `textEvent` - the event to be processed

  - ### getAccessibleStateSet

    public AccessibleStateSet getAccessibleStateSet()
    Gets the state set of the TextComponent. The AccessibleStateSet of an object is composed of a set of unique AccessibleStates. A change in the AccessibleStateSet of an object will cause a PropertyChangeEvent to be fired for the AccessibleContext.ACCESSIBLE_STATE_PROPERTY property.
    Overrides:
      `getAccessibleStateSet` in class `Component.AccessibleAWTComponent`
    Returns:
      an instance of AccessibleStateSet containing the current state set of the object
    See Also:
      - `AccessibleStateSet`
      - `AccessibleState`
      - `Component.AccessibleAWTComponent.addPropertyChangeListener(java.beans.PropertyChangeListener)`

  - ### getAccessibleRole

    public AccessibleRole getAccessibleRole()
    Gets the role of this object.
    Overrides:
      `getAccessibleRole` in class `Component.AccessibleAWTComponent`
    Returns:
      an instance of AccessibleRole describing the role of the object (AccessibleRole.TEXT)
    See Also:
      - `AccessibleRole`

  - ### getAccessibleText

    public AccessibleText getAccessibleText()
    Get the AccessibleText associated with this object. In the implementation of the Java Accessibility API for this class, return this object, which is responsible for implementing the AccessibleText interface on behalf of itself.
    Overrides:
      `getAccessibleText` in class `AccessibleContext`
    Returns:
      this object
    See Also:
      - `AccessibleText`

  - ### getIndexAtPoint

    public int getIndexAtPoint(Point p)
    Given a point in local coordinates, return the zero-based index of the character under that Point. If the point is invalid, this method returns -1.
    Specified by:
      `getIndexAtPoint` in interface `AccessibleText`
    Parameters:
      `p` - the Point in local coordinates
    Returns:
      the zero-based index of the character under Point p.

  - ### getCharacterBounds

    public Rectangle getCharacterBounds(int i)
    Determines the bounding box of the character at the given index into the string. The bounds are returned in local coordinates. If the index is invalid a null rectangle is returned.
    Specified by:
      `getCharacterBounds` in interface `AccessibleText`
    Parameters:
      `i` - the index into the String >= 0
    Returns:
      the screen coordinates of the character's bounding box

  - ### getCharCount

    public int getCharCount()
    Returns the number of characters (valid indices)
    Specified by:
      `getCharCount` in interface `AccessibleText`
    Returns:
      the number of characters >= 0

  - ### getCaretPosition

    public int getCaretPosition()
    Returns the zero-based offset of the caret. Note: The character to the right of the caret will have the same index value as the offset (the caret is between two characters).
    Specified by:
      `getCaretPosition` in interface `AccessibleText`
    Returns:
      the zero-based offset of the caret.

  - ### getCharacterAttribute

    public AttributeSet getCharacterAttribute(int i)
    Returns the AttributeSet for a given character (at a given index).
    Specified by:
      `getCharacterAttribute` in interface `AccessibleText`
    Parameters:
      `i` - the zero-based index into the text
    Returns:
      the AttributeSet of the character

  - ### getSelectionStart

    public int getSelectionStart()
    Returns the start offset within the selected text. If there is no selection, but there is a caret, the start and end offsets will be the same. Return 0 if the text is empty, or the caret position if no selection.
    Specified by:
      `getSelectionStart` in interface `AccessibleText`
    Returns:
      the index into the text of the start of the selection >= 0

  - ### getSelectionEnd

    public int getSelectionEnd()
    Returns the end offset within the selected text. If there is no selection, but there is a caret, the start and end offsets will be the same. Return 0 if the text is empty, or the caret position if no selection.
    Specified by:
      `getSelectionEnd` in interface `AccessibleText`
    Returns:
      the index into the text of the end of the selection >= 0

  - ### getSelectedText

    public String getSelectedText()
    Returns the portion of the text that is selected.
    Specified by:
      `getSelectedText` in interface `AccessibleText`
    Returns:
      the text, null if no selection

  - ### getAtIndex

    public String getAtIndex(int part, int index)
    Returns the String at a given index.
    Specified by:
      `getAtIndex` in interface `AccessibleText`
    Parameters:
      `part` - the AccessibleText.CHARACTER, AccessibleText.WORD, or AccessibleText.SENTENCE to retrieve
      `index` - an index within the text >= 0
    Returns:
      the letter, word, or sentence, null for an invalid index or part

  - ### getAfterIndex

    public String getAfterIndex(int part, int index)
    Returns the String after a given index.
    Specified by:
      `getAfterIndex` in interface `AccessibleText`
    Parameters:
      `part` - the AccessibleText.CHARACTER, AccessibleText.WORD, or AccessibleText.SENTENCE to retrieve
      `index` - an index within the text >= 0
    Returns:
      the letter, word, or sentence, null for an invalid index or part

  - ### getBeforeIndex

    public String getBeforeIndex(int part, int index)
    Returns the String before a given index.
    Specified by:
      `getBeforeIndex` in interface `AccessibleText`
    Parameters:
      `part` - the AccessibleText.CHARACTER, AccessibleText.WORD, or AccessibleText.SENTENCE to retrieve
      `index` - an index within the text >= 0
    Returns:
      the letter, word, or sentence, null for an invalid index or part