# Class JEditorPane.JEditorPaneAccessibleHypertextSupport

java.lang.Object
javax.accessibility.AccessibleContext
java.awt.Component.AccessibleAWTComponent
java.awt.Container.AccessibleAWTContainer
javax.swing.JComponent.AccessibleJComponent
javax.swing.text.JTextComponent.AccessibleJTextComponent
javax.swing.JEditorPane.AccessibleJEditorPane
javax.swing.JEditorPane.JEditorPaneAccessibleHypertextSupport

All Implemented Interfaces:
  `Serializable, EventListener, AccessibleAction, AccessibleComponent, AccessibleEditableText, AccessibleExtendedComponent, AccessibleExtendedText, AccessibleHypertext, AccessibleText, CaretListener, DocumentListener`

Enclosing class:
  `JEditorPane`

protected class JEditorPane.JEditorPaneAccessibleHypertextSupport extends JEditorPane.AccessibleJEditorPane implements AccessibleHypertext
What's returned by `AccessibleJEditorPaneHTML.getAccessibleText`. Provides support for `AccessibleHypertext` in case there is an HTML document being displayed in this `JEditorPane`.

Since:
  1.2

- ## Nested Class Summary

  Nested Classes
  Modifier and Type
  Class
  Description
  `class`
  `JEditorPane.JEditorPaneAccessibleHypertextSupport.HTMLLink`
  An HTML link.

  ### Nested classes/interfaces declared in class JComponent.AccessibleJComponent

  `JComponent.AccessibleJComponent.AccessibleContainerHandler, JComponent.AccessibleJComponent.AccessibleFocusHandler`
  Modifier and Type
  Class
  Description
  `protected class`
  `JComponent.AccessibleJComponent.AccessibleContainerHandler`
  Fire PropertyChange listener, if one is registered, when children added/removed.
  `protected class`
  `JComponent.AccessibleJComponent.AccessibleFocusHandler`
  Deprecated.
  This class is no longer used or needed.

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

  `Component.AccessibleAWTComponent.AccessibleAWTComponentHandler, Component.AccessibleAWTComponent.AccessibleAWTFocusHandler`
  Modifier and Type
  Class
  Description
  `protected class`
  `Component.AccessibleAWTComponent.AccessibleAWTComponentHandler`
  Fire PropertyChange listener, if one is registered, when shown/hidden..
  `protected class`
  `Component.AccessibleAWTComponent.AccessibleAWTFocusHandler`
  Fire PropertyChange listener, if one is registered, when focus events happen

- ## Field Summary

  ### Fields declared in class JComponent.AccessibleJComponent

  `accessibleFocusHandler`
  Modifier and Type
  Field
  Description
  `protected FocusListener`
  `accessibleFocusHandler`
  Deprecated.

  ### Fields declared in class Container.AccessibleAWTContainer

  `accessibleContainerHandler`
  Modifier and Type
  Field
  Description
  `protected ContainerListener`
  `accessibleContainerHandler`
  The handler to fire `PropertyChange` when children are added or removed

  ### Fields declared in class Component.AccessibleAWTComponent

  `accessibleAWTComponentHandler, accessibleAWTFocusHandler`
  Modifier and Type
  Field
  Description
  `protected ComponentListener`
  `accessibleAWTComponentHandler`
  A component listener to track show/hide/resize events and convert them to PropertyChange events.
  `protected FocusListener`
  `accessibleAWTFocusHandler`
  A listener to track focus events and convert them to PropertyChange events.

  ### Fields declared in class 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`
  Modifier and Type
  Field
  Description
  `static final String`
  `ACCESSIBLE_ACTION_PROPERTY`
  Constant used to indicate that the supported set of actions has changed.
  `static final String`
  `ACCESSIBLE_ACTIVE_DESCENDANT_PROPERTY`
  Constant used to determine when the active descendant of a component has changed.
  `static final String`
  `ACCESSIBLE_CARET_PROPERTY`
  Constant used to determine when the `accessibleText` caret has changed.
  `static final String`
  `ACCESSIBLE_CHILD_PROPERTY`
  Constant used to determine when `Accessible` children are added/removed from the object.
  `static final String`
  `ACCESSIBLE_COMPONENT_BOUNDS_CHANGED`
  `PropertyChangeEvent` which indicates that a change has occurred in a component's bounds.
  `static final String`
  `ACCESSIBLE_DESCRIPTION_PROPERTY`
  Constant used to determine when the `AccessibleContext.accessibleDescription` property has changed.
  `static final String`
  `ACCESSIBLE_HYPERTEXT_OFFSET`
  Constant used to indicate that a hypertext element has received focus.
  `static final String`
  `ACCESSIBLE_INVALIDATE_CHILDREN`
  `PropertyChangeEvent` which indicates that a significant change has occurred to the children of a component like a tree or text.
  `static final String`
  `ACCESSIBLE_NAME_PROPERTY`
  Constant used to determine when the `AccessibleContext.accessibleName` property has changed.
  `static final String`
  `ACCESSIBLE_SELECTION_PROPERTY`
  Constant used to determine when the `accessibleSelection` has changed.
  `static final String`
  `ACCESSIBLE_STATE_PROPERTY`
  Constant used to determine when the `accessibleStateSet` property has changed.
  `static final String`
  `ACCESSIBLE_TABLE_CAPTION_CHANGED`
  Constant used to indicate that the table caption has changed.
  `static final String`
  `ACCESSIBLE_TABLE_COLUMN_DESCRIPTION_CHANGED`
  Constant used to indicate that the column description has changed.
  `static final String`
  `ACCESSIBLE_TABLE_COLUMN_HEADER_CHANGED`
  Constant used to indicate that the column header has changed.
  `static final String`
  `ACCESSIBLE_TABLE_MODEL_CHANGED`
  Constant used to indicate that table data has changed.
  `static final String`
  `ACCESSIBLE_TABLE_ROW_DESCRIPTION_CHANGED`
  Constant used to indicate that the row description has changed.
  `static final String`
  `ACCESSIBLE_TABLE_ROW_HEADER_CHANGED`
  Constant used to indicate that the row header has changed.
  `static final String`
  `ACCESSIBLE_TABLE_SUMMARY_CHANGED`
  Constant used to indicate that the table summary has changed.
  `static final String`
  `ACCESSIBLE_TEXT_ATTRIBUTES_CHANGED`
  `PropertyChangeEvent` which indicates that text attributes have changed.
  `static final String`
  `ACCESSIBLE_TEXT_PROPERTY`
  `PropertyChangeEvent` which indicates that text has changed.
  `static final String`
  `ACCESSIBLE_VALUE_PROPERTY`
  Constant used to determine when the `accessibleValue` property has changed.
  `static final String`
  `ACCESSIBLE_VISIBLE_DATA_PROPERTY`
  Constant used to determine when the visual appearance of the object has changed.
  `protected String`
  `accessibleDescription`
  A localized String containing the description of the object.
  `protected String`
  `accessibleName`
  A localized String containing the name of the object.
  `protected Accessible`
  `accessibleParent`
  The accessible parent of this object.

  ### Fields declared in interface AccessibleAction

  `CLICK, DECREMENT, INCREMENT, TOGGLE_EXPAND, TOGGLE_POPUP`
  Modifier and Type
  Field
  Description
  `static final String`
  `CLICK`
  An action which causes a component to execute its default action.
  `static final String`
  `DECREMENT`
  An action which decrements a value.
  `static final String`
  `INCREMENT`
  An action which increments a value.
  `static final String`
  `TOGGLE_EXPAND`
  An action which causes a tree node to collapse if expanded and expand if collapsed.
  `static final String`
  `TOGGLE_POPUP`
  An action which causes a popup to become visible if it is hidden and hidden if it is visible.

  ### Fields declared in interface AccessibleExtendedText

  `ATTRIBUTE_RUN, LINE`
  Modifier and Type
  Field
  Description
  `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.
  `static final int`
  `LINE`
  Constant used to indicate that the part of the text that should be retrieved is a line of text.

  ### Fields declared in interface AccessibleText

  `CHARACTER, SENTENCE, WORD`
  Modifier and Type
  Field
  Description
  `static final int`
  `CHARACTER`
  Constant used to indicate that the part of the text that should be retrieved is a character.
  `static final int`
  `SENTENCE`
  Constant used to indicate that the part of the text that should be retrieved is a sentence.
  `static final int`
  `WORD`
  Constant used to indicate that the part of the text that should be retrieved is a word.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `JEditorPaneAccessibleHypertextSupport()`
  Constructs a `JEditorPaneAccessibleHypertextSupport`.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `AccessibleHyperlink`
  `getLink(int linkIndex)`
  Returns the index into an array of hyperlinks that index.
  `int`
  `getLinkCount()`
  Returns the number of links within this hypertext doc.
  `int`
  `getLinkIndex(int charIndex)`
  Returns the index into an array of hyperlinks that is associated with this character index, or -1 if there is no hyperlink associated with this index.
  `String`
  `getLinkText(int linkIndex)`
  Returns the contiguous text within the document that is associated with this hyperlink.

  ### Methods declared in class JEditorPane.AccessibleJEditorPane

  `getAccessibleDescription, getAccessibleStateSet`
  Modifier and Type
  Method
  Description
  `String`
  `getAccessibleDescription()`
  Gets the accessibleDescription property of this object.
  `AccessibleStateSet`
  `getAccessibleStateSet()`
  Gets the state set of this object.

  ### Methods declared in class JTextComponent.AccessibleJTextComponent

  `caretUpdate, changedUpdate, cut, delete, doAccessibleAction, getAccessibleActionCount, getAccessibleActionDescription, getAccessibleEditableText, getAccessibleRole, getAccessibleText, getAfterIndex, getAtIndex, getBeforeIndex, getCaretPosition, getCharacterAttribute, getCharacterBounds, getCharCount, getIndexAtPoint, getSelectedText, getSelectionEnd, getSelectionStart, getTextBounds, getTextRange, getTextSequenceAfter, getTextSequenceAt, getTextSequenceBefore, insertTextAtIndex, insertUpdate, paste, removeUpdate, replaceText, selectText, setAttributes, setTextContents`
  Modifier and Type
  Method
  Description
  `void`
  `caretUpdate(CaretEvent e)`
  Handles caret updates (fire appropriate property change event, which are AccessibleContext.ACCESSIBLE_CARET_PROPERTY and AccessibleContext.ACCESSIBLE_SELECTION_PROPERTY).
  `void`
  `changedUpdate(DocumentEvent e)`
  Handles document remove (fire appropriate property change event, which is AccessibleContext.ACCESSIBLE_TEXT_PROPERTY).
  `void`
  `cut(int startIndex, int endIndex)`
  Cuts the text between two indices into the system clipboard.
  `void`
  `delete(int startIndex, int endIndex)`
  Deletes the text between two indices
  `boolean`
  `doAccessibleAction(int i)`
  Performs the specified Action on the object
  `int`
  `getAccessibleActionCount()`
  Returns the number of accessible actions available in this object If there are more than one, the first one is considered the "default" action of the object.
  `String`
  `getAccessibleActionDescription(int i)`
  Returns a description of the specified action of the object.
  `AccessibleEditableText`
  `getAccessibleEditableText()`
  Returns the AccessibleEditableText interface for this text component.
  `AccessibleRole`
  `getAccessibleRole()`
  Gets the role of this object.
  `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.
  `Rectangle`
  `getTextBounds(int startIndex, int endIndex)`
  Returns the `Rectangle` enclosing the text between two indices.
  `String`
  `getTextRange(int startIndex, int endIndex)`
  Returns the text string 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`.
  `void`
  `insertTextAtIndex(int index, String s)`
  Inserts the specified string at the given index
  `void`
  `insertUpdate(DocumentEvent e)`
  Handles document insert (fire appropriate property change event which is AccessibleContext.ACCESSIBLE_TEXT_PROPERTY).
  `void`
  `paste(int startIndex)`
  Pastes the text from the system clipboard into the text starting at the specified index.
  `void`
  `removeUpdate(DocumentEvent e)`
  Handles document remove (fire appropriate property change event, which is AccessibleContext.ACCESSIBLE_TEXT_PROPERTY).
  `void`
  `replaceText(int startIndex, int endIndex, String s)`
  Replaces the text between two indices with the specified string.
  `void`
  `selectText(int startIndex, int endIndex)`
  Selects the text between two indices.
  `void`
  `setAttributes(int startIndex, int endIndex, AttributeSet as)`
  Sets attributes for the text between two indices.
  `void`
  `setTextContents(String s)`
  Sets the text contents to the specified string.

  ### Methods declared in class JComponent.AccessibleJComponent

  `addPropertyChangeListener, getAccessibleChild, getAccessibleChildrenCount, getAccessibleKeyBinding, getAccessibleName, getBorderTitle, getTitledBorderText, getToolTipText, removePropertyChangeListener`
  Modifier and Type
  Method
  Description
  `void`
  `addPropertyChangeListener(PropertyChangeListener listener)`
  Adds a PropertyChangeListener to the listener list.
  `Accessible`
  `getAccessibleChild(int i)`
  Returns the nth Accessible child of the object.
  `int`
  `getAccessibleChildrenCount()`
  Returns the number of accessible children in the object.
  `AccessibleKeyBinding`
  `getAccessibleKeyBinding()`
  Returns key bindings associated with this object
  `String`
  `getAccessibleName()`
  Gets the accessible name of this object.
  `protected String`
  `getBorderTitle(Border b)`
  Recursively search through the border hierarchy (if it exists) for a TitledBorder with a non-null title.
  `String`
  `getTitledBorderText()`
  Returns the titled border text
  `String`
  `getToolTipText()`
  Returns the tool tip text
  `void`
  `removePropertyChangeListener(PropertyChangeListener listener)`
  Removes a PropertyChangeListener from the listener list.

  ### Methods declared in class Container.AccessibleAWTContainer

  `getAccessibleAt`
  Modifier and Type
  Method
  Description
  `Accessible`
  `getAccessibleAt(Point p)`
  Returns the `Accessible` child, if one exists, contained at the local coordinate `Point`.

  ### Methods declared in class Component.AccessibleAWTComponent

  `addFocusListener, contains, getAccessibleComponent, getAccessibleIndexInParent, getAccessibleParent, getBackground, getBounds, getCursor, getFont, getFontMetrics, getForeground, getLocale, getLocation, getLocationOnScreen, getSize, isEnabled, isFocusTraversable, isShowing, isVisible, removeFocusListener, requestFocus, setBackground, setBounds, setCursor, setEnabled, setFont, setForeground, setLocation, setSize, setVisible`
  Modifier and Type
  Method
  Description
  `void`
  `addFocusListener(FocusListener l)`
  Adds the specified focus listener to receive focus events from this component.
  `boolean`
  `contains(Point p)`
  Checks whether the specified point is within this object's bounds, where the point's x and y coordinates are defined to be relative to the coordinate system of the object.
  `AccessibleComponent`
  `getAccessibleComponent()`
  Gets the `AccessibleComponent` associated with this object if one exists.
  `int`
  `getAccessibleIndexInParent()`
  Gets the index of this object in its accessible parent.
  `Accessible`
  `getAccessibleParent()`
  Gets the `Accessible` parent of this object.
  `Color`
  `getBackground()`
  Gets the background color of this object.
  `Rectangle`
  `getBounds()`
  Gets the bounds of this object in the form of a Rectangle object.
  `Cursor`
  `getCursor()`
  Gets the `Cursor` of this object.
  `Font`
  `getFont()`
  Gets the `Font` of this object.
  `FontMetrics`
  `getFontMetrics(Font f)`
  Gets the `FontMetrics` of this object.
  `Color`
  `getForeground()`
  Gets the foreground color of this object.
  `Locale`
  `getLocale()`
  Returns the locale of this object.
  `Point`
  `getLocation()`
  Gets the location of the object relative to the parent in the form of a point specifying the object's top-left corner in the screen's coordinate space.
  `Point`
  `getLocationOnScreen()`
  Returns the location of the object on the screen.
  `Dimension`
  `getSize()`
  Returns the size of this object in the form of a `Dimension` object.
  `boolean`
  `isEnabled()`
  Determines if the object is enabled.
  `boolean`
  `isFocusTraversable()`
  Returns whether this object can accept focus or not.
  `boolean`
  `isShowing()`
  Determines if the object is showing.
  `boolean`
  `isVisible()`
  Determines if the object is visible.
  `void`
  `removeFocusListener(FocusListener l)`
  Removes the specified focus listener so it no longer receives focus events from this component.
  `void`
  `requestFocus()`
  Requests focus for this object.
  `void`
  `setBackground(Color c)`
  Sets the background color of this object.
  `void`
  `setBounds(Rectangle r)`
  Sets the bounds of this object in the form of a `Rectangle` object.
  `void`
  `setCursor(Cursor cursor)`
  Sets the `Cursor` of this object.
  `void`
  `setEnabled(boolean b)`
  Sets the enabled state of the object.
  `void`
  `setFont(Font f)`
  Sets the `Font` of this object.
  `void`
  `setForeground(Color c)`
  Sets the foreground color of this object.
  `void`
  `setLocation(Point p)`
  Sets the location of the object relative to the parent.
  `void`
  `setSize(Dimension d)`
  Resizes this object so that it has width and height.
  `void`
  `setVisible(boolean b)`
  Sets the visible state of the object.

  ### Methods declared in class AccessibleContext

  `firePropertyChange, getAccessibleAction, getAccessibleIcon, getAccessibleRelationSet, getAccessibleSelection, getAccessibleTable, getAccessibleValue, setAccessibleDescription, setAccessibleName, setAccessibleParent`
  Modifier and Type
  Method
  Description
  `void`
  `firePropertyChange(String propertyName, Object oldValue, Object newValue)`
  Support for reporting bound property changes.
  `AccessibleAction`
  `getAccessibleAction()`
  Gets the `AccessibleAction` associated with this object that supports one or more actions.
  `AccessibleIcon[]`
  `getAccessibleIcon()`
  Gets the `AccessibleIcons` associated with an object that has one or more associated icons.
  `AccessibleRelationSet`
  `getAccessibleRelationSet()`
  Gets the `AccessibleRelationSet` associated with an object.
  `AccessibleSelection`
  `getAccessibleSelection()`
  Gets the `AccessibleSelection` associated with this object which allows its `Accessible` children to be selected.
  `AccessibleTable`
  `getAccessibleTable()`
  Gets the `AccessibleTable` associated with an object.
  `AccessibleValue`
  `getAccessibleValue()`
  Gets the `AccessibleValue` associated with this object that supports a `Numerical` value.
  `void`
  `setAccessibleDescription(String s)`
  Sets the accessible description of this object.
  `void`
  `setAccessibleName(String s)`
  Sets the localized accessible name of this object.
  `void`
  `setAccessibleParent(Accessible a)`
  Sets the `Accessible` parent of this object.

  ### Methods declared in class Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`
  Modifier and Type
  Method
  Description
  `protected Object`
  `clone()`
  Creates and returns a copy of this object.
  `boolean`
  `equals(Object obj)`
  Indicates whether some other object is "equal to" this one.
  `protected void`
  `finalize()`
  Deprecated, for removal: This API element is subject to removal in a future version.
  Finalization is deprecated and subject to removal in a future release.
  `final Class<?>`
  `getClass()`
  Returns the runtime class of this `Object`.
  `int`
  `hashCode()`
  Returns a hash code value for this object.
  `final void`
  `notify()`
  Wakes up a single thread that is waiting on this object's monitor.
  `final void`
  `notifyAll()`
  Wakes up all threads that are waiting on this object's monitor.
  `String`
  `toString()`
  Returns a string representation of the object.
  `final void`
  `wait()`
  Causes the current thread to wait until it is awakened, typically by being notified or interrupted.
  `final void`
  `wait(long timeoutMillis)`
  Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.
  `final void`
  `wait(long timeoutMillis, int nanos)`
  Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.

- ## Constructor Details

  - ### JEditorPaneAccessibleHypertextSupport

    public JEditorPaneAccessibleHypertextSupport()
    Constructs a `JEditorPaneAccessibleHypertextSupport`.

- ## Method Details

  - ### getLinkCount

    public int getLinkCount()
    Returns the number of links within this hypertext doc.
    Specified by:
      `getLinkCount` in interface `AccessibleHypertext`
    Returns:
      number of links in this hypertext doc.

  - ### getLinkIndex

    public int getLinkIndex(int charIndex)
    Returns the index into an array of hyperlinks that is associated with this character index, or -1 if there is no hyperlink associated with this index.
    Specified by:
      `getLinkIndex` in interface `AccessibleHypertext`
    Parameters:
      `charIndex` - index within the text
    Returns:
      index into the set of hyperlinks for this hypertext doc.

  - ### getLink

    public AccessibleHyperlink getLink(int linkIndex)
    Returns the index into an array of hyperlinks that index. If there is no hyperlink at this index, it returns null.
    Specified by:
      `getLink` in interface `AccessibleHypertext`
    Parameters:
      `linkIndex` - into the set of hyperlinks for this hypertext doc.
    Returns:
      string representation of the hyperlink

  - ### getLinkText

    public String getLinkText(int linkIndex)
    Returns the contiguous text within the document that is associated with this hyperlink.
    Parameters:
      `linkIndex` - into the set of hyperlinks for this hypertext doc.
    Returns:
      the contiguous text sharing the link at this index