JavaTM 2 Platform
Std. Ed. v1.3.1

javax.swing
Class JTable.AccessibleJTable

java.lang.Object
  |
  +--javax.accessibility.AccessibleContext
        |
        +--java.awt.Component.AccessibleAWTComponent
              |
              +--java.awt.Container.AccessibleAWTContainer
                    |
                    +--javax.swing.JComponent.AccessibleJComponent
                          |
                          +--javax.swing.JTable.AccessibleJTable
All Implemented Interfaces:
AccessibleComponent, AccessibleSelection, AccessibleTable, CellEditorListener, EventListener, ListSelectionListener, PropertyChangeListener, Serializable, TableColumnModelListener, TableModelListener
Enclosing class:
JTable

protected class JTable.AccessibleJTable
extends JComponent.AccessibleJComponent
implements AccessibleSelection, ListSelectionListener, TableModelListener, TableColumnModelListener, CellEditorListener, PropertyChangeListener, AccessibleTable

This class implements accessibility support for the JTable class. It provides an implementation of the Java Accessibility API appropriate to table 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. A future release of Swing will provide support for long term persistence.

See Also:
Serialized Form

Inner Class Summary
protected  class JTable.AccessibleJTable.AccessibleJTableCell
          The class provides an implementation of the Java Accessibility API appropriate to table cells.
protected  class JTable.AccessibleJTable.AccessibleJTableModelChange
           
 
Inner classes inherited from class javax.swing.JComponent.AccessibleJComponent
JComponent.AccessibleJComponent.AccessibleContainerHandler, JComponent.AccessibleJComponent.AccessibleFocusHandler
 
Inner classes inherited from class java.awt.Container.AccessibleAWTContainer
Container.AccessibleAWTContainer.AccessibleContainerHandler
 
Inner classes inherited from class java.awt.Component.AccessibleAWTComponent
Component.AccessibleAWTComponent.AccessibleAWTComponentHandler, Component.AccessibleAWTComponent.AccessibleAWTFocusHandler
 
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_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
 
Method Summary
 void addAccessibleSelection(int i)
          Adds the specified Accessible child of the object to the object's selection.
 void clearAccessibleSelection()
          Clears the selection in the object, so that no children in the object are selected.
 void columnAdded(TableColumnModelEvent e)
          Track changes to the table contents (column insertions)
 void columnMarginChanged(ChangeEvent e)
          Track changes of a column moving due to margin changes.
 void columnMoved(TableColumnModelEvent e)
          Track changes of a column repositioning.
 void columnRemoved(TableColumnModelEvent e)
          Track changes to the table contents (column deletions)
 void columnSelectionChanged(ListSelectionEvent e)
          Track that the selection model of the TableColumnModel changed.
 void editingCanceled(ChangeEvent e)
          Invoked when editing is canceled.
 void editingStopped(ChangeEvent e)
          Track changes to a cell's contents.
 Accessible getAccessibleAt(int r, int c)
          Returns the Accessible at a specified row and column in the table.
 Accessible getAccessibleAt(Point p)
          Returns the Accessible child, if one exists, contained at the local coordinate Point.
 Accessible getAccessibleCaption()
          Returns the caption for the table.
 Accessible getAccessibleChild(int i)
          Return the nth Accessible child of the object.
 int getAccessibleChildrenCount()
          Returns the number of accessible children in the object.
 int getAccessibleColumnAtIndex(int i)
           
 int getAccessibleColumnCount()
          Returns the number of columns in the table.
 Accessible getAccessibleColumnDescription(int c)
          Return the description of the specified column in the table.
 int getAccessibleColumnExtentAt(int r, int c)
          Returns the number of columns occupied by the Accessible at a given (row, column)
 AccessibleTable getAccessibleColumnHeader()
          Return the column headers as an AccessibleTable.
 int getAccessibleIndexAt(int r, int c)
          Returns the index at a given (row, column) in the table
 AccessibleRole getAccessibleRole()
          Gets the role of this object.
 int getAccessibleRowAtIndex(int i)
           
 int getAccessibleRowCount()
          Returns the number of rows in the table.
 Accessible getAccessibleRowDescription(int r)
          Return the description of the specified row in the table.
 int getAccessibleRowExtentAt(int r, int c)
          Returns the number of rows occupied by the Accessible at a specified row and column in the table.
 AccessibleTable getAccessibleRowHeader()
          Return the row headers as an AccessibleTable.
 AccessibleSelection getAccessibleSelection()
          Get the AccessibleSelection associated with this object.
 Accessible getAccessibleSelection(int i)
          Returns an Accessible representing the specified selected child in the object.
 int getAccessibleSelectionCount()
          Returns the number of Accessible children currently selected.
 Accessible getAccessibleSummary()
          Returns the summary description of the table.
 AccessibleTable getAccessibleTable()
          Get the AccessibleTable associated with this object.
 int[] getSelectedAccessibleColumns()
          Returns the selected columns in a table.
 int[] getSelectedAccessibleRows()
          Returns the selected rows in a table.
 boolean isAccessibleChildSelected(int i)
          Determines if the current child of this object is selected.
 boolean isAccessibleColumnSelected(int c)
          Returns a boolean value indicating whether the specified column is selected
 boolean isAccessibleRowSelected(int r)
          Returns a boolean value indicating whether the specified row is selected
 boolean isAccessibleSelected(int r, int c)
          Returns a boolean value indicating whether the accessible at a given (row, column) is selected
 void propertyChange(PropertyChangeEvent e)
          Track changes to selection model, column model, etc.
 void removeAccessibleSelection(int i)
          Removes the specified child of the object from the object's selection.
 void selectAllAccessibleSelection()
          Causes every child of the object to be selected, but only if the JTable supports multiple selections, and if individual cell selection is enabled.
 void setAccessibleCaption(Accessible a)
          Sets the caption for the table.
 void setAccessibleColumnDescription(int c, Accessible a)
          Sets the description text of the specified column of the table.
 void setAccessibleColumnHeader(AccessibleTable a)
          Return the column headers as an AccessibleTable.
 void setAccessibleRowDescription(int r, Accessible a)
          Sets the description text of the specified row of the table.
 void setAccessibleRowHeader(AccessibleTable a)
          Return the row headers as an AccessibleTable.
 void setAccessibleSummary(Accessible a)
          Sets the summary description of the table.
 void tableChanged(TableModelEvent e)
          Track changes to the table contents
 void tableRowsDeleted(TableModelEvent e)
          Track changes to the table contents (row deletions)
 void tableRowsInserted(TableModelEvent e)
          Track changes to the table contents (row insertions)
 void valueChanged(ListSelectionEvent e)
          Track changes to table cell selections
 
Methods inherited from class javax.swing.JComponent.AccessibleJComponent
addPropertyChangeListener, getAccessibleDescription, getAccessibleName, getAccessibleStateSet, getBorderTitle, removePropertyChangeListener
 
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, getAccessibleAction, getAccessibleIcon, getAccessibleRelationSet, getAccessibleText, getAccessibleValue, setAccessibleDescription, setAccessibleName, setAccessibleParent
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

propertyChange

public void propertyChange(PropertyChangeEvent e)
Track changes to selection model, column model, etc. so as to be able to re-place listeners on those in order to pass on information to the Accessibility PropertyChange mechanism
Specified by:
propertyChange in interface PropertyChangeListener
Following copied from interface: java.beans.PropertyChangeListener
Parameters:
evt - A PropertyChangeEvent object describing the event source and the property that has changed.

tableChanged

public void tableChanged(TableModelEvent e)
Track changes to the table contents
Specified by:
tableChanged in interface TableModelListener

tableRowsInserted

public void tableRowsInserted(TableModelEvent e)
Track changes to the table contents (row insertions)

tableRowsDeleted

public void tableRowsDeleted(TableModelEvent e)
Track changes to the table contents (row deletions)

columnAdded

public void columnAdded(TableColumnModelEvent e)
Track changes to the table contents (column insertions)
Specified by:
columnAdded in interface TableColumnModelListener

columnRemoved

public void columnRemoved(TableColumnModelEvent e)
Track changes to the table contents (column deletions)
Specified by:
columnRemoved in interface TableColumnModelListener

columnMoved

public void columnMoved(TableColumnModelEvent e)
Track changes of a column repositioning.
Specified by:
columnMoved in interface TableColumnModelListener
See Also:
TableColumnModelListener

columnMarginChanged

public void columnMarginChanged(ChangeEvent e)
Track changes of a column moving due to margin changes.
Specified by:
columnMarginChanged in interface TableColumnModelListener
See Also:
TableColumnModelListener

columnSelectionChanged

public void columnSelectionChanged(ListSelectionEvent e)
Track that the selection model of the TableColumnModel changed.
Specified by:
columnSelectionChanged in interface TableColumnModelListener
See Also:
TableColumnModelListener

editingStopped

public void editingStopped(ChangeEvent e)
Track changes to a cell's contents. Invoked when editing is finished. The changes are saved, the editor object is discarded, and the cell is rendered once again.
Specified by:
editingStopped in interface CellEditorListener
See Also:
CellEditorListener

editingCanceled

public void editingCanceled(ChangeEvent e)
Invoked when editing is canceled. The editor object is discarded and the cell is rendered once again.
Specified by:
editingCanceled in interface CellEditorListener
See Also:
CellEditorListener

valueChanged

public void valueChanged(ListSelectionEvent e)
Track changes to table cell selections
Specified by:
valueChanged in interface ListSelectionListener
Following copied from interface: javax.swing.event.ListSelectionListener
Parameters:
e - the event that characterizes the change.

getAccessibleSelection

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

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
See Also:
AccessibleRole

getAccessibleAt

public Accessible getAccessibleAt(Point p)
Returns the Accessible child, if one exists, contained at the local coordinate Point.
Overrides:
getAccessibleAt in class Container.AccessibleAWTContainer
Parameters:
p - the point defining the top-left corner of the Accessible, given in the coordinate space of the object's parent.
Returns:
the Accessible, if it exists, at the specified location; else null

getAccessibleChildrenCount

public int getAccessibleChildrenCount()
Returns the number of accessible children in the object. If all of the children of this object implement Accessible, than this method should return the number of children of this object.
Overrides:
getAccessibleChildrenCount in class JComponent.AccessibleJComponent
Returns:
the number of accessible children in the object.

getAccessibleChild

public Accessible getAccessibleChild(int i)
Return the nth Accessible child of the object.
Overrides:
getAccessibleChild in class JComponent.AccessibleJComponent
Parameters:
i - zero-based index of child
Returns:
the nth Accessible child of the object

getAccessibleSelectionCount

public int getAccessibleSelectionCount()
Returns the number of Accessible children currently selected. If no children are selected, the return value will be 0.
Specified by:
getAccessibleSelectionCount in interface AccessibleSelection
Returns:
the number of items currently selected.

getAccessibleSelection

public Accessible getAccessibleSelection(int i)
Returns an Accessible representing the specified selected child in the object. If there isn't a selection, or there are fewer children selected than the integer passed in, the return value will be null.

Note that the index represents the i-th selected child, which is different from the i-th child.

Specified by:
getAccessibleSelection in interface AccessibleSelection
Parameters:
i - the zero-based index of selected children
Returns:
the i-th selected child
See Also:
getAccessibleSelectionCount()

isAccessibleChildSelected

public boolean isAccessibleChildSelected(int i)
Determines if the current child of this object is selected.
Specified by:
isAccessibleChildSelected in interface AccessibleSelection
Parameters:
i - the zero-based index of the child in this Accessible object.
Returns:
true if the current child of this object is selected
See Also:
AccessibleContext.getAccessibleChild(int)

addAccessibleSelection

public void addAccessibleSelection(int i)
Adds the specified Accessible child of the object to the object's selection. If the object supports multiple selections, the specified child is added to any existing selection, otherwise it replaces any existing selection in the object. If the specified child is already selected, this method has no effect. This method only works on JTables which have individual cell selection enabled.
Specified by:
addAccessibleSelection in interface AccessibleSelection
Parameters:
i - the zero-based index of the child
See Also:
AccessibleContext.getAccessibleChild(int)

removeAccessibleSelection

public void removeAccessibleSelection(int i)
Removes the specified child of the object from the object's selection. If the specified item isn't currently selected, this method has no effect. This method only works on JTables which have individual cell selection enabled.
Specified by:
removeAccessibleSelection in interface AccessibleSelection
Parameters:
i - the zero-based index of the child
See Also:
AccessibleContext.getAccessibleChild(int)

clearAccessibleSelection

public void clearAccessibleSelection()
Clears the selection in the object, so that no children in the object are selected.
Specified by:
clearAccessibleSelection in interface AccessibleSelection

selectAllAccessibleSelection

public void selectAllAccessibleSelection()
Causes every child of the object to be selected, but only if the JTable supports multiple selections, and if individual cell selection is enabled.
Specified by:
selectAllAccessibleSelection in interface AccessibleSelection

getAccessibleTable

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

getAccessibleCaption

public Accessible getAccessibleCaption()
Returns the caption for the table.
Specified by:
getAccessibleCaption in interface AccessibleTable
Returns:
the caption for the table

setAccessibleCaption

public void setAccessibleCaption(Accessible a)
Sets the caption for the table.
Specified by:
setAccessibleCaption in interface AccessibleTable
Parameters:
a - the caption for the table

getAccessibleSummary

public Accessible getAccessibleSummary()
Returns the summary description of the table.
Specified by:
getAccessibleSummary in interface AccessibleTable
Returns:
the summary description of the table

setAccessibleSummary

public void setAccessibleSummary(Accessible a)
Sets the summary description of the table.
Specified by:
setAccessibleSummary in interface AccessibleTable
Parameters:
a - the summary description of the table

getAccessibleRowCount

public int getAccessibleRowCount()
Description copied from interface: AccessibleTable
Returns the number of rows in the table.
Specified by:
getAccessibleRowCount in interface AccessibleTable
Following copied from interface: javax.accessibility.AccessibleTable
Returns:
the number of rows in the table

getAccessibleColumnCount

public int getAccessibleColumnCount()
Description copied from interface: AccessibleTable
Returns the number of columns in the table.
Specified by:
getAccessibleColumnCount in interface AccessibleTable
Following copied from interface: javax.accessibility.AccessibleTable
Returns:
the number of columns in the table

getAccessibleAt

public Accessible getAccessibleAt(int r,
                                  int c)
Description copied from interface: AccessibleTable
Returns the Accessible at a specified row and column in the table.
Specified by:
getAccessibleAt in interface AccessibleTable
Following copied from interface: javax.accessibility.AccessibleTable
Parameters:
r - zero-based row of the table
c - zero-based column of the table
Returns:
the Accessible at the specified row and column

getAccessibleRowExtentAt

public int getAccessibleRowExtentAt(int r,
                                    int c)
Returns the number of rows occupied by the Accessible at a specified row and column in the table.
Specified by:
getAccessibleRowExtentAt in interface AccessibleTable
Returns:
the number of rows occupied by the Accessible at a specified row and column in the table.

getAccessibleColumnExtentAt

public int getAccessibleColumnExtentAt(int r,
                                       int c)
Returns the number of columns occupied by the Accessible at a given (row, column)
Specified by:
getAccessibleColumnExtentAt in interface AccessibleTable
Returns:
the number of columns occupied by the Accessible at a specified row and column in the table.

getAccessibleRowHeader

public AccessibleTable getAccessibleRowHeader()
Return the row headers as an AccessibleTable.
Specified by:
getAccessibleRowHeader in interface AccessibleTable
Returns:
an AccessibleTable representing the row headers

setAccessibleRowHeader

public void setAccessibleRowHeader(AccessibleTable a)
Return the row headers as an AccessibleTable.
Specified by:
setAccessibleRowHeader in interface AccessibleTable
Returns:
an AccessibleTable representing the row headers

getAccessibleColumnHeader

public AccessibleTable getAccessibleColumnHeader()
Return the column headers as an AccessibleTable.
Specified by:
getAccessibleColumnHeader in interface AccessibleTable
Returns:
an AccessibleTable representing the column headers

setAccessibleColumnHeader

public void setAccessibleColumnHeader(AccessibleTable a)
Return the column headers as an AccessibleTable.
Specified by:
setAccessibleColumnHeader in interface AccessibleTable
Returns:
an AccessibleTable representing the column headers

getAccessibleRowDescription

public Accessible getAccessibleRowDescription(int r)
Return the description of the specified row in the table.
Specified by:
getAccessibleRowDescription in interface AccessibleTable
Parameters:
r - zero-based row of the table
Returns:
the description of the row

setAccessibleRowDescription

public void setAccessibleRowDescription(int r,
                                        Accessible a)
Sets the description text of the specified row of the table.
Specified by:
setAccessibleRowDescription in interface AccessibleTable
Parameters:
r - zero-based row of the table
a - the description of the row

getAccessibleColumnDescription

public Accessible getAccessibleColumnDescription(int c)
Return the description of the specified column in the table.
Specified by:
getAccessibleColumnDescription in interface AccessibleTable
Parameters:
c - zero-based column of the table
Returns:
the description of the column

setAccessibleColumnDescription

public void setAccessibleColumnDescription(int c,
                                           Accessible a)
Sets the description text of the specified column of the table.
Specified by:
setAccessibleColumnDescription in interface AccessibleTable
Parameters:
c - zero-based column of the table
a - the description of the column

isAccessibleSelected

public boolean isAccessibleSelected(int r,
                                    int c)
Returns a boolean value indicating whether the accessible at a given (row, column) is selected
Specified by:
isAccessibleSelected in interface AccessibleTable
Parameters:
r - zero-based row of the table
c - zero-based column of the table
Returns:
the boolean value true if the accessible at (row, column) is selected. Otherwise, the boolean value false

isAccessibleRowSelected

public boolean isAccessibleRowSelected(int r)
Returns a boolean value indicating whether the specified row is selected
Specified by:
isAccessibleRowSelected in interface AccessibleTable
Parameters:
r - zero-based row of the table
Returns:
the boolean value true if the specified row is selected. Otherwise, false.

isAccessibleColumnSelected

public boolean isAccessibleColumnSelected(int c)
Returns a boolean value indicating whether the specified column is selected
Specified by:
isAccessibleColumnSelected in interface AccessibleTable
Parameters:
r - zero-based column of the table
Returns:
the boolean value true if the specified column is selected. Otherwise, false.

getSelectedAccessibleRows

public int[] getSelectedAccessibleRows()
Returns the selected rows in a table.
Specified by:
getSelectedAccessibleRows in interface AccessibleTable
Returns:
an array of selected rows where each element is a zero-based row of the table

getSelectedAccessibleColumns

public int[] getSelectedAccessibleColumns()
Returns the selected columns in a table.
Specified by:
getSelectedAccessibleColumns in interface AccessibleTable
Returns:
an array of selected columns where each element is a zero-based column of the table

getAccessibleRowAtIndex

public int getAccessibleRowAtIndex(int i)

getAccessibleColumnAtIndex

public int getAccessibleColumnAtIndex(int i)

getAccessibleIndexAt

public int getAccessibleIndexAt(int r,
                                int c)
Returns the index at a given (row, column) in the table
Parameters:
r - zero-based row of the table
c - zero-based column of the table
Returns:
the index into the table

JavaTM 2 Platform
Std. Ed. v1.3.1

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.

Java, Java 2D, and JDBC are trademarks or registered trademarks of Sun Microsystems, Inc. in the US and other countries.
Copyright 1993-2001 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.