Module java.desktop
Package javax.accessibility

## Interface AccessibleExtendedText

- All Known Implementing Classes:
    `JEditorPane.AccessibleJEditorPane`, `JEditorPane.AccessibleJEditorPaneHTML`, `JEditorPane.JEditorPaneAccessibleHypertextSupport`, `JPasswordField.AccessibleJPasswordField`, `JTextArea.AccessibleJTextArea`, `JTextComponent.AccessibleJTextComponent`, `JTextField.AccessibleJTextField`

      public interface AccessibleExtendedText

  The `AccessibleExtendedText` interface contains additional methods not provided by the `AccessibleText` interface.

  Applications can determine if an object supports the `AccessibleExtendedText` interface by first obtaining its `AccessibleContext` (see `Accessible`) and then calling the `AccessibleContext.getAccessibleText()` method of `AccessibleContext`. If the return value is an instance of `AccessibleExtendedText`, the object supports this interface.

  Since:
    1.5
  See Also:
    `Accessible`, `Accessible.getAccessibleContext()`, `AccessibleContext`, `AccessibleContext.getAccessibleText()`

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static int` | `ATTRIBUTE_RUN` | Constant used to indicate that the part of the text that should be retrieved is contiguous text with the same text attributes.
    `static int` | `LINE` | Constant used to indicate that the part of the text that should be retrieved is a line of text.

  - ### Method Summary

    Modifier and Type | Method | Description
    --- | --- | ---
    `Rectangle` | `getTextBounds​(int startIndex, int endIndex)` | Returns the bounding rectangle of the text between two indices.
    `String` | `getTextRange​(int startIndex, int endIndex)` | Returns the text between two indices.
    `AccessibleTextSequence` | `getTextSequenceAfter​(int part, int index)` | Returns the `AccessibleTextSequence` after a given index.
    `AccessibleTextSequence` | `getTextSequenceAt​(int part, int index)` | Returns the `AccessibleTextSequence` at a given index.
    `AccessibleTextSequence` | `getTextSequenceBefore​(int part, int index)` | Returns the `AccessibleTextSequence` before a given index.

- - ### Field Detail

    - #### LINE

          static final int LINE

      Constant used to indicate that the part of the text that should be retrieved is a line of text.
      See Also:
        `AccessibleText.getAtIndex(int, int)`, `AccessibleText.getAfterIndex(int, int)`, `AccessibleText.getBeforeIndex(int, int)`, Constant Field Values

    - #### ATTRIBUTE_RUN

          static final int ATTRIBUTE_RUN

      Constant used to indicate that the part of the text that should be retrieved is contiguous text with the same text attributes.
      See Also:
        `AccessibleText.getAtIndex(int, int)`, `AccessibleText.getAfterIndex(int, int)`, `AccessibleText.getBeforeIndex(int, int)`, Constant Field Values

  - ### Method Detail

    - #### getTextRange

          String getTextRange​(int startIndex,
                              int endIndex)

      Returns the text between two indices.
      Parameters:
        `startIndex` - the start index in the text
        `endIndex` - the end index in the text
      Returns:
        the text string if the indices are valid. Otherwise, `null` is returned.

    - #### getTextSequenceAt

          AccessibleTextSequence getTextSequenceAt​(int part,
                                                   int index)

      Returns the `AccessibleTextSequence` at a given index.
      Parameters:
        `part` - the `CHARACTER`, `WORD`, `SENTENCE`, `LINE` or `ATTRIBUTE_RUN` to retrieve
        `index` - an index within the text
      Returns:
        an `AccessibleTextSequence` specifying the text if `part` and `index` are valid. Otherwise, `null` is returned.
      See Also:
        `AccessibleText.CHARACTER`, `AccessibleText.WORD`, `AccessibleText.SENTENCE`

    - #### getTextSequenceAfter

          AccessibleTextSequence getTextSequenceAfter​(int part,
                                                      int index)

      Returns the `AccessibleTextSequence` after a given index.
      Parameters:
        `part` - the `CHARACTER`, `WORD`, `SENTENCE`, `LINE` or `ATTRIBUTE_RUN` to retrieve
        `index` - an index within the text
      Returns:
        an `AccessibleTextSequence` specifying the text if `part` and `index` are valid. Otherwise, `null` is returned.
      See Also:
        `AccessibleText.CHARACTER`, `AccessibleText.WORD`, `AccessibleText.SENTENCE`

    - #### getTextSequenceBefore

          AccessibleTextSequence getTextSequenceBefore​(int part,
                                                       int index)

      Returns the `AccessibleTextSequence` before a given index.
      Parameters:
        `part` - the `CHARACTER`, `WORD`, `SENTENCE`, `LINE` or `ATTRIBUTE_RUN` to retrieve
        `index` - an index within the text
      Returns:
        an `AccessibleTextSequence` specifying the text if `part` and `index` are valid. Otherwise, `null` is returned.
      See Also:
        `AccessibleText.CHARACTER`, `AccessibleText.WORD`, `AccessibleText.SENTENCE`

    - #### getTextBounds

          Rectangle getTextBounds​(int startIndex,
                                  int endIndex)

      Returns the bounding rectangle of the text between two indices.
      Parameters:
        `startIndex` - the start index in the text
        `endIndex` - the end index in the text
      Returns:
        the bounding rectangle of the text if the indices are valid. Otherwise, `null` is returned.