java.lang.Object
   ↳ javax.accessibility.AccessibleContext
     ↳ java.awt.Component.AccessibleAWTComponent
       ↳ java.awt.Container.AccessibleAWTContainer
         ↳ javax.swing.JComponent.AccessibleJComponent
           ↳ javax.swing.text.JTextComponent.AccessibleJTextComponent
Known Direct Subclasses
Known Indirect Subclasses

Class Overview

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.

Summary

[Expand]
Inherited Constants
From class javax.accessibility.AccessibleContext
From interface javax.accessibility.AccessibleExtendedText
From interface javax.accessibility.AccessibleText
[Expand]
Inherited Fields
From class javax.swing.JComponent.AccessibleJComponent
From class java.awt.Container.AccessibleAWTContainer
From class java.awt.Component.AccessibleAWTComponent
From class javax.accessibility.AccessibleContext
From interface javax.accessibility.AccessibleAction
Public Constructors
JTextComponent.AccessibleJTextComponent()
Constructs an AccessibleJTextComponent.
Public Methods
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.
int getCharCount()
Returns the number of characters (valid indices)
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 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 indicies.
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.
[Expand]
Inherited Methods
From class javax.swing.JComponent.AccessibleJComponent
From class java.awt.Container.AccessibleAWTContainer
From class java.awt.Component.AccessibleAWTComponent
From class javax.accessibility.AccessibleContext
From class java.lang.Object
From interface javax.accessibility.AccessibleAction
From interface javax.accessibility.AccessibleComponent
From interface javax.accessibility.AccessibleEditableText
From interface javax.accessibility.AccessibleExtendedComponent
From interface javax.accessibility.AccessibleExtendedText
From interface javax.accessibility.AccessibleText
From interface javax.swing.event.CaretListener
From interface javax.swing.event.DocumentListener

Public Constructors

public JTextComponent.AccessibleJTextComponent ()

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

Public Methods

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.

Parameters
e the CaretEvent

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.

Parameters
e the DocumentEvent

public void cut (int startIndex, int endIndex)

Cuts the text between two indices into the system clipboard.

Parameters
startIndex the starting index in the text
endIndex the ending index in the text

public void delete (int startIndex, int endIndex)

Deletes the text between two indices

Parameters
startIndex the starting index in the text
endIndex the ending index in the text

public boolean doAccessibleAction (int i)

Performs the specified Action on the object

Parameters
i zero-based index of actions
Returns
  • true if the action was performed; otherwise false.

public AccessibleAction getAccessibleAction ()

Gets the AccessibleAction associated with this object that supports one or more actions.

Returns
  • AccessibleAction if supported by object; else return null

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.

Returns
  • the zero-based number of Actions in this object

public String getAccessibleActionDescription (int i)

Returns a description of the specified action of the object.

Parameters
i zero-based index of the actions
Returns
  • a String description of the action

public AccessibleEditableText getAccessibleEditableText ()

Returns the AccessibleEditableText interface for this text component.

Returns
  • the AccessibleEditableText interface

public AccessibleRole getAccessibleRole ()

Gets the role of this object.

Returns
  • an instance of AccessibleRole describing the role of the object (AccessibleRole.TEXT)
See Also

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.

Returns
  • an instance of AccessibleStateSet containing the current state set of the object

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.

Returns
  • this object

public String getAfterIndex (int part, int index)

Returns the String after a given index. Whitespace between words is treated as a word.

Parameters
part the CHARACTER, WORD, or SENTENCE to retrieve
index an index within the text
Returns
  • the letter, word, or sentence.

public String getAtIndex (int part, int index)

Returns the String at a given index. Whitespace between words is treated as a word.

Parameters
part the CHARACTER, WORD, or SENTENCE to retrieve
index an index within the text
Returns
  • the letter, word, or sentence.

public String getBeforeIndex (int part, int index)

Returns the String before a given index. Whitespace between words is treated a word.

Parameters
part the CHARACTER, WORD, or SENTENCE to retrieve
index an index within the text
Returns
  • the letter, word, or sentence.

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

Returns
  • the zero-based offset of the caret.

public int getCharCount ()

Returns the number of characters (valid indices)

Returns
  • the number of characters >= 0

public AttributeSet getCharacterAttribute (int i)

Returns the AttributeSet for a given character (at a given index).

Parameters
i the zero-based index into the text
Returns
  • the AttributeSet of the character

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.

Parameters
i the index into the String >= 0
Returns
  • the screen coordinates of the character's bounding box

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.

Parameters
p the Point in local coordinates
Returns
  • the zero-based index of the character under Point p.

public String getSelectedText ()

Returns the portion of the text that is selected.

Returns
  • the text, null if no selection

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.

Returns
  • the index into teh text of the end of the selection >= 0

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.

Returns
  • the index into the text of the start of the selection >= 0

public Rectangle getTextBounds (int startIndex, int endIndex)

Returns the Rectangle enclosing the text between two indicies.

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

public String getTextRange (int startIndex, int endIndex)

Returns the text string between two indices.

Parameters
startIndex the starting index in the text
endIndex the ending index in the text
Returns
  • the text string between the indices

public 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

public 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

public 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

public void insertTextAtIndex (int index, String s)

Inserts the specified string at the given index

Parameters
index the index in the text where the string will be inserted
s the string to insert in the text

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.

Parameters
e the DocumentEvent

public void paste (int startIndex)

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

Parameters
startIndex the starting index in the text

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.

Parameters
e the DocumentEvent

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

Replaces the text between two indices with the specified string.

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

public void selectText (int startIndex, int endIndex)

Selects the text between two indices.

Parameters
startIndex the starting index in the text
endIndex the ending index in the text

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

Sets attributes for the text between two indices.

Parameters
startIndex the starting index in the text
endIndex the ending index in the text
as the attribute set
See Also

public void setTextContents (String s)

Sets the text contents to the specified string.

Parameters
s the string to set the text contents