Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| JavaTM 2 Platform Std. Ed. v1.4.2
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## javax.swing.text
Class JTextComponent.AccessibleJTextComponent

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

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

Direct Known Subclasses:
  JEditorPane.AccessibleJEditorPane, JTextArea.AccessibleJTextArea, JTextField.AccessibleJTextField

Enclosing class:
  JTextComponent

public class JTextComponent.AccessibleJTextComponent
extends JComponent.AccessibleJComponent
implements AccessibleText, CaretListener, DocumentListener, AccessibleAction, AccessibleEditableText

This class implements accessibility support for the `JTextComponent` class. It provides an implementation of the Java Accessibility API appropriate to menu user-interface elements.

Warning: Serialized objects of this class will not be compatible with future Swing releases. The current serialization support is appropriate for short term storage or RMI between applications running the same version of Swing. As of 1.4, support for long term storage of all JavaBeansTM has been added to the `java.beans` package. Please see `XMLEncoder`.

Nested Class Summary

Nested classes inherited from class javax.swing.JComponent.AccessibleJComponent
`JComponent.AccessibleJComponent.AccessibleContainerHandler, JComponent.AccessibleJComponent.AccessibleFocusHandler`

Nested classes inherited from class java.awt.Component.AccessibleAWTComponent
`Component.AccessibleAWTComponent.AccessibleAWTComponentHandler, Component.AccessibleAWTComponent.AccessibleAWTFocusHandler`

Field Summary

Fields inherited from class javax.swing.JComponent.AccessibleJComponent
`accessibleContainerHandler, accessibleFocusHandler`

Fields inherited from class java.awt.Component.AccessibleAWTComponent
`accessibleAWTComponentHandler, accessibleAWTFocusHandler`

Fields inherited from class javax.accessibility.AccessibleContext
`ACCESSIBLE_ACTION_PROPERTY, ACCESSIBLE_ACTIVE_DESCENDANT_PROPERTY, ACCESSIBLE_CARET_PROPERTY, ACCESSIBLE_CHILD_PROPERTY, ACCESSIBLE_DESCRIPTION_PROPERTY, ACCESSIBLE_HYPERTEXT_OFFSET, 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_PROPERTY, ACCESSIBLE_VALUE_PROPERTY, ACCESSIBLE_VISIBLE_DATA_PROPERTY, accessibleDescription, accessibleName, accessibleParent`

Fields inherited from interface javax.accessibility.AccessibleText
`CHARACTER, SENTENCE, WORD`

Constructor Summary
`JTextComponent.AccessibleJTextComponent()` Constructs an AccessibleJTextComponent.

Method Summary
`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
`AccessibleAction` | `getAccessibleAction()` Gets the AccessibleAction associated with this object that supports one or more actions.
`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.
`AccessibleStateSet` | `getAccessibleStateSet()` Gets the state set of the JTextComponent.
`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.
`String` | `getTextRange(int startIndex, int endIndex)` Returns the text string between two indices.
`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 inherited from class javax.swing.JComponent.AccessibleJComponent
`addPropertyChangeListener, getAccessibleChild, getAccessibleChildrenCount, getAccessibleDescription, getAccessibleKeyBinding, getAccessibleName, getBorderTitle, getTitledBorderText, getToolTipText, removePropertyChangeListener`

Methods inherited from class java.awt.Container.AccessibleAWTContainer
`getAccessibleAt`

Methods inherited from class java.awt.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`

Methods inherited from class javax.accessibility.AccessibleContext
`firePropertyChange, getAccessibleIcon, getAccessibleRelationSet, getAccessibleSelection, getAccessibleTable, getAccessibleValue, setAccessibleDescription, setAccessibleName, setAccessibleParent`

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

Methods inherited from interface javax.accessibility.AccessibleComponent
`addFocusListener, contains, getAccessibleAt, getBackground, getBounds, getCursor, getFont, getFontMetrics, getForeground, getLocation, getLocationOnScreen, getSize, isEnabled, isFocusTraversable, isShowing, isVisible, removeFocusListener, requestFocus, setBackground, setBounds, setCursor, setEnabled, setFont, setForeground, setLocation, setSize, setVisible`

Constructor Detail

### JTextComponent.AccessibleJTextComponent

    public JTextComponent.AccessibleJTextComponent()

  Constructs an AccessibleJTextComponent. Adds a listener to track caret change.

Method Detail

### caretUpdate

    public void caretUpdate(CaretEvent e)

  Handles caret updates (fire appropriate property change event, which are AccessibleContext.ACCESSIBLE_CARET_PROPERTY and AccessibleContext.ACCESSIBLE_SELECTION_PROPERTY). This keeps track of the dot position internally. When the caret moves, the internal position is updated after firing the event.

  Specified by:
    `caretUpdate` in interface `CaretListener`
  Parameters:
    `e` - the CaretEvent

### insertUpdate

    public void insertUpdate(DocumentEvent e)

  Handles document insert (fire appropriate property change event which is AccessibleContext.ACCESSIBLE_TEXT_PROPERTY). This tracks the changed offset via the event.

  Specified by:
    `insertUpdate` in interface `DocumentListener`
  Parameters:
    `e` - the DocumentEvent

### removeUpdate

    public void removeUpdate(DocumentEvent e)

  Handles document remove (fire appropriate property change event, which is AccessibleContext.ACCESSIBLE_TEXT_PROPERTY). This tracks the changed offset via the event.

  Specified by:
    `removeUpdate` in interface `DocumentListener`
  Parameters:
    `e` - the DocumentEvent

### changedUpdate

    public void changedUpdate(DocumentEvent e)

  Handles document remove (fire appropriate property change event, which is AccessibleContext.ACCESSIBLE_TEXT_PROPERTY). This tracks the changed offset via the event.

  Specified by:
    `changedUpdate` in interface `DocumentListener`
  Parameters:
    `e` - the DocumentEvent

### getAccessibleStateSet

    public AccessibleStateSet getAccessibleStateSet()

  Gets the state set of the JTextComponent. The AccessibleStateSet of an object is composed of a set of unique AccessibleState's. 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 `JComponent.AccessibleJComponent`
  Returns:
    an instance of AccessibleStateSet containing the current state set of the object
  See Also:
    `AccessibleStateSet`, `AccessibleState`, `JComponent.AccessibleJComponent.addPropertyChangeListener(java.beans.PropertyChangeListener)`

### getAccessibleRole

    public AccessibleRole getAccessibleRole()

  Gets the role of this object.

  Overrides:
    `getAccessibleRole` in class `JComponent.AccessibleJComponent`
  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. The screen coordinates returned are "unscrolled coordinates" if the JTextComponent is contained in a JScrollPane in which case the resulting rectangle should be composed with the parent coordinates. A good algorithm to use is: Accessible a: AccessibleText at = a.getAccessibleText(); AccessibleComponent ac = a.getAccessibleComponent(); Rectangle r = at.getCharacterBounds(); Point p = ac.getLocation(); r.x += p.x; r.y += p.y; Note: the JTextComponent must have a valid size (e.g. have been added to a parent container whose ancestor container is a valid top-level window) for this method to be able to return a meaningful (non-null) value.

  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 teh 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)

  Description copied from interface: `AccessibleText`
  Returns the String at a given index.

  Specified by:
    `getAtIndex` in interface `AccessibleText`
  Parameters:
    `part` - the CHARACTER, WORD, or SENTENCE to retrieve
    `index` - an index within the text
  Returns:
    the letter, word, or sentence

### getAfterIndex

    public String getAfterIndex(int part,
                                int index)

  Description copied from interface: `AccessibleText`
  Returns the String after a given index.

  Specified by:
    `getAfterIndex` in interface `AccessibleText`
  Parameters:
    `part` - the CHARACTER, WORD, or SENTENCE to retrieve
    `index` - an index within the text
  Returns:
    the letter, word, or sentence

### getBeforeIndex

    public String getBeforeIndex(int part,
                                 int index)

  Description copied from interface: `AccessibleText`
  Returns the String before a given index.

  Specified by:
    `getBeforeIndex` in interface `AccessibleText`
  Parameters:
    `part` - the CHARACTER, WORD, or SENTENCE to retrieve
    `index` - an index within the text
  Returns:
    the letter, word, or sentence

### getAccessibleEditableText

    public AccessibleEditableText getAccessibleEditableText()

  Returns the AccessibleEditableText interface for this text component.

  Overrides:
    `getAccessibleEditableText` in class `AccessibleContext`
  Returns:
    the AccessibleEditableText interface
  See Also:
    `AccessibleEditableText`

### setTextContents

    public void setTextContents(String s)

  Sets the text contents to the specified string.

  Specified by:
    `setTextContents` in interface `AccessibleEditableText`
  Parameters:
    `s` - the string to set the text contents

### insertTextAtIndex

    public void insertTextAtIndex(int index,
                                  String s)

  Inserts the specified string at the given index

  Specified by:
    `insertTextAtIndex` in interface `AccessibleEditableText`
  Parameters:
    `index` - the index in the text where the string will be inserted
    `s` - the string to insert in the text

### getTextRange

    public String getTextRange(int startIndex,
                               int endIndex)

  Returns the text string between two indices.

  Specified by:
    `getTextRange` in interface `AccessibleEditableText`
  Parameters:
    `startIndex` - the starting index in the text
    `endIndex` - the ending index in the text
  Returns:
    the text string between the indices

### delete

    public void delete(int startIndex,
                       int endIndex)

  Deletes the text between two indices

  Specified by:
    `delete` in interface `AccessibleEditableText`
  Parameters:
    `startIndex` - the starting index in the text
    `endIndex` - the ending index in the text

### cut

    public void cut(int startIndex,
                    int endIndex)

  Cuts the text between two indices into the system clipboard.

  Specified by:
    `cut` in interface `AccessibleEditableText`
  Parameters:
    `startIndex` - the starting index in the text
    `endIndex` - the ending index in the text

### paste

    public void paste(int startIndex)

  Pastes the text from the system clipboard into the text starting at the specified index.

  Specified by:
    `paste` in interface `AccessibleEditableText`
  Parameters:
    `startIndex` - the starting index in the text

### replaceText

    public void replaceText(int startIndex,
                            int endIndex,
                            String s)

  Replaces the text between two indices with the specified string.

  Specified by:
    `replaceText` in interface `AccessibleEditableText`
  Parameters:
    `startIndex` - the starting index in the text
    `endIndex` - the ending index in the text
    `s` - the string to replace the text between two indices

### selectText

    public void selectText(int startIndex,
                           int endIndex)

  Selects the text between two indices.

  Specified by:
    `selectText` in interface `AccessibleEditableText`
  Parameters:
    `startIndex` - the starting index in the text
    `endIndex` - the ending index in the text

### setAttributes

    public void setAttributes(int startIndex,
                              int endIndex,
                              AttributeSet as)

  Sets attributes for the text between two indices.

  Specified by:
    `setAttributes` in interface `AccessibleEditableText`
  Parameters:
    `startIndex` - the starting index in the text
    `endIndex` - the ending index in the text
    `as` - the attribute set
  See Also:
    `AttributeSet`

### getAccessibleAction

    public AccessibleAction getAccessibleAction()

  Description copied from class: `AccessibleContext`
  Gets the AccessibleAction associated with this object that supports one or more actions.

  Overrides:
    `getAccessibleAction` in class `AccessibleContext`
  Returns:
    AccessibleAction if supported by object; else return null
  See Also:
    `AccessibleAction`

### getAccessibleActionCount

    public 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.

  Specified by:
    `getAccessibleActionCount` in interface `AccessibleAction`
  Returns:
    the zero-based number of Actions in this object

### getAccessibleActionDescription

    public String getAccessibleActionDescription(int i)

  Returns a description of the specified action of the object.

  Specified by:
    `getAccessibleActionDescription` in interface `AccessibleAction`
  Parameters:
    `i` - zero-based index of the actions
  Returns:
    a String description of the action
  See Also:
    `getAccessibleActionCount()`

### doAccessibleAction

    public boolean doAccessibleAction(int i)

  Performs the specified Action on the object

  Specified by:
    `doAccessibleAction` in interface `AccessibleAction`
  Parameters:
    `i` - zero-based index of actions
  Returns:
    true if the action was performed; otherwise false.
  See Also:
    `getAccessibleActionCount()`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| JavaTM 2 Platform Std. Ed. v1.4.2
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Submit a bug or feature
For further API reference and developer documentation, see Java 2 SDK SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Copyright 2003 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.