JavaTM 2 Platform
Standard Edition

javax.swing
Class JComponent.AccessibleJComponent

java.lang.Object
  |
  +--javax.accessibility.AccessibleContext
        |
        +--javax.swing.JComponent.AccessibleJComponent
Direct Known Subclasses:
AbstractButton.AccessibleAbstractButton, JColorChooser.AccessibleJColorChooser, JComboBox.AccessibleJComboBox, JDesktopPane.AccessibleJDesktopPane, JFileChooser.AccessibleJFileChooser, JInternalFrame.AccessibleJInternalFrame, JInternalFrame.JDesktopIcon.AccessibleJDesktopIcon, JLabel.AccessibleJLabel, JLayeredPane.AccessibleJLayeredPane, JList.AccessibleJList, JMenuBar.AccessibleJMenuBar, JOptionPane.AccessibleJOptionPane, JPanel.AccessibleJPanel, JPopupMenu.AccessibleJPopupMenu, JProgressBar.AccessibleJProgressBar, JRootPane.AccessibleJRootPane, JScrollBar.AccessibleJScrollBar, JScrollPane.AccessibleJScrollPane, JSeparator.AccessibleJSeparator, JSlider.AccessibleJSlider, JSplitPane.AccessibleJSplitPane, JTabbedPane.AccessibleJTabbedPane, JTable.AccessibleJTable, JTableHeader.AccessibleJTableHeader, JTextComponent.AccessibleJTextComponent, JToolBar.AccessibleJToolBar, JToolTip.AccessibleJToolTip, JTree.AccessibleJTree, JViewport.AccessibleJViewport
Enclosing class:
JComponent

public abstract class JComponent.AccessibleJComponent
extends AccessibleContext
implements Serializable, AccessibleComponent

Inner class of JComponent used to provide default support for accessibility. This class is not meant to be used directly by application developers, but is instead meant only to be subclassed by component developers. Due to a restriction that protected inner classes cannot be subclassed outside of a package, this inner class has been made public. When this restriction is lifted for JDK1.1.7, this class will be made protected. The class used to obtain the accessible role for this object.

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 JComponent.AccessibleJComponent.AccessibleContainerHandler
          Fire PropertyChange listener, if one is registered, when children added/removed.
 
Field Summary
protected  ContainerListener accessibleContainerHandler
           
 
Fields inherited from class javax.accessibility.AccessibleContext
ACCESSIBLE_ACTIVE_DESCENDANT_PROPERTY, ACCESSIBLE_CARET_PROPERTY, ACCESSIBLE_CHILD_PROPERTY, ACCESSIBLE_DESCRIPTION_PROPERTY, ACCESSIBLE_NAME_PROPERTY, ACCESSIBLE_SELECTION_PROPERTY, ACCESSIBLE_STATE_PROPERTY, ACCESSIBLE_TEXT_PROPERTY, ACCESSIBLE_VALUE_PROPERTY, ACCESSIBLE_VISIBLE_DATA_PROPERTY, accessibleDescription, accessibleName, accessibleParent
 
Constructor Summary
protected JComponent.AccessibleJComponent()
          Though the class is abstract, this should be called by all sub-classes.
 
Method Summary
 void addFocusListener(FocusListener l)
          Adds the specified focus listener to receive focus events from this component.
 void addPropertyChangeListener(PropertyChangeListener listener)
          Add a PropertyChangeListener to the listener list.
 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.
 Accessible getAccessibleAt(Point p)
          Returns the Accessible child, if one exists, contained at the local coordinate Point.
 Accessible getAccessibleChild(int i)
          Return the nth Accessible child of the object.
 int getAccessibleChildrenCount()
          Returns the number of accessible children in the object.
 AccessibleComponent getAccessibleComponent()
          Get the AccessibleComponent associated with this object if one exists.
 String getAccessibleDescription()
          Get the accessible description of this object.
 int getAccessibleIndexInParent()
          Get the index of this object in its accessible parent.
 String getAccessibleName()
          Get the accessible name of this object.
 Accessible getAccessibleParent()
          Get the Accessible parent of this object.
 AccessibleRole getAccessibleRole()
          Get the role of this object.
 AccessibleStateSet getAccessibleStateSet()
          Get the state of this object.
 Color getBackground()
          Get the background color 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.
 Rectangle getBounds()
          Gets the bounds of this object in the form of a Rectangle object.
 Cursor getCursor()
          Get the Cursor of this object.
 Font getFont()
          Get the Font of this object.
 FontMetrics getFontMetrics(Font f)
          Get the FontMetrics of this object.
 Color getForeground()
          Get the foreground color of this object.
 Locale getLocale()
          Return 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()
          Determine if the object is enabled.
 boolean isFocusTraversable()
          Returns whether this object can accept focus or not.
 boolean isShowing()
          Determine if the object is showing.
 boolean isVisible()
          Determine 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 removePropertyChangeListener(PropertyChangeListener listener)
          Remove a PropertyChangeListener from the listener list.
 void requestFocus()
          Requests focus for this object.
 void setBackground(Color c)
          Set 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)
          Set the Cursor of this object.
 void setEnabled(boolean b)
          Set the enabled state of the object.
 void setFont(Font f)
          Set the Font of this object.
 void setForeground(Color c)
          Set 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 width and height.
 void setVisible(boolean b)
          Set the visible state of the object.
 
Methods inherited from class javax.accessibility.AccessibleContext
firePropertyChange, getAccessibleAction, getAccessibleSelection, getAccessibleText, getAccessibleValue, setAccessibleDescription, setAccessibleName, setAccessibleParent
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

accessibleContainerHandler

protected ContainerListener accessibleContainerHandler
Constructor Detail

JComponent.AccessibleJComponent

protected JComponent.AccessibleJComponent()
Though the class is abstract, this should be called by all sub-classes.
Method Detail

addPropertyChangeListener

public void addPropertyChangeListener(PropertyChangeListener listener)
Add a PropertyChangeListener to the listener list.
Overrides:
addPropertyChangeListener in class AccessibleContext
Parameters:
listener - The PropertyChangeListener to be added

removePropertyChangeListener

public void removePropertyChangeListener(PropertyChangeListener listener)
Remove a PropertyChangeListener from the listener list. This removes a PropertyChangeListener that was registered for all properties.
Overrides:
removePropertyChangeListener in class AccessibleContext
Parameters:
listener - The PropertyChangeListener to be removed

getBorderTitle

protected String getBorderTitle(Border b)
Recursively search through the border hierarchy (if it exists) for a TitledBorder with a non-null title. This does a depth first search on first the inside borders then the outside borders. The assumption is that titles make really pretty inside borders but not very pretty outside borders in compound border situations. It's rather arbitrary, but hopefully decent UI programmers will not create multiple titled borders for the same component.

getAccessibleName

public String getAccessibleName()
Get the accessible name of this object. This should almost never return java.awt.Component.getName(), as that generally isn't a localized name, and doesn't have meaning for the user. If the object is fundamentally a text object (e.g. a menu item), the accessible name should be the text of the object (e.g. "save"). If the object has a tooltip, the tooltip text may also be an appropriate String to return.
Overrides:
getAccessibleName in class AccessibleContext
Returns:
the localized name of the object -- can be null if this object does not have a name
See Also:
AccessibleContext.setAccessibleName(java.lang.String)

getAccessibleDescription

public String getAccessibleDescription()
Get the accessible description of this object. This should be a concise, localized description of what this object is - what is it's meaning to the user. If the object has a tooltip, the tooltip text may be an appropriate string to return, assuming it contains a concise description of the object (instead of just the name of the object - e.g. a "Save" icon on a toolbar that had "save" as the tooltip text shouldn't return the tooltip text as the description, but something like "Saves the current text document" instead).
Overrides:
getAccessibleDescription in class AccessibleContext
Returns:
the localized description of the object -- can be null if this object does not have a description
See Also:
AccessibleContext.setAccessibleDescription(java.lang.String)

getAccessibleRole

public AccessibleRole getAccessibleRole()
Get the role of this object.
Overrides:
getAccessibleRole in class AccessibleContext
Returns:
an instance of AccessibleRole describing the role of the object
See Also:
AccessibleRole

getAccessibleStateSet

public AccessibleStateSet getAccessibleStateSet()
Get the state of this object.
Overrides:
getAccessibleStateSet in class AccessibleContext
Returns:
an instance of AccessibleStateSet containing the current state set of the object
See Also:
AccessibleState

getAccessibleParent

public Accessible getAccessibleParent()
Get the Accessible parent of this object. If the parent of this object implements Accessible, this method should simply return getParent().
Overrides:
getAccessibleParent in class AccessibleContext
Returns:
the Accessible parent of this object -- can be null if this object does not have an Accessible parent

getAccessibleIndexInParent

public int getAccessibleIndexInParent()
Get the index of this object in its accessible parent.
Overrides:
getAccessibleIndexInParent in class AccessibleContext
Returns:
the index of this object in its parent; -1 if this object does not have an accessible parent.
See Also:
getAccessibleParent()

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 AccessibleContext
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 AccessibleContext
Parameters:
i - zero-based index of child
Returns:
the nth Accessible child of the object

getLocale

public Locale getLocale()
Return the locale of this object.
Overrides:
getLocale in class AccessibleContext
Returns:
the locale of this object

getAccessibleComponent

public AccessibleComponent getAccessibleComponent()
Get the AccessibleComponent associated with this object if one exists. Otherwise return null.
Overrides:
getAccessibleComponent in class AccessibleContext
Returns:
the component

getBackground

public Color getBackground()
Get the background color of this object.
Specified by:
getBackground in interface AccessibleComponent
Returns:
the background color, if supported, of the object; otherwise, null

setBackground

public void setBackground(Color c)
Set the background color of this object. (For transparency, see isOpaque.)
Specified by:
setBackground in interface AccessibleComponent
Parameters:
c - the new Color for the background
See Also:
JComponent.isOpaque()

getForeground

public Color getForeground()
Get the foreground color of this object.
Specified by:
getForeground in interface AccessibleComponent
Returns:
the foreground color, if supported, of the object; otherwise, null

setForeground

public void setForeground(Color c)
Set the foreground color of this object.
Specified by:
setForeground in interface AccessibleComponent
Parameters:
c - the new Color for the foreground

getCursor

public Cursor getCursor()
Get the Cursor of this object.
Specified by:
getCursor in interface AccessibleComponent
Returns:
the Cursor, if supported, of the object; otherwise, null

setCursor

public void setCursor(Cursor cursor)
Set the Cursor of this object.
Specified by:
setCursor in interface AccessibleComponent
Parameters:
c - the new Cursor for the object

getFont

public Font getFont()
Get the Font of this object.
Specified by:
getFont in interface AccessibleComponent
Returns:
the Font,if supported, for the object; otherwise, null

setFont

public void setFont(Font f)
Set the Font of this object.
Specified by:
setFont in interface AccessibleComponent
Parameters:
f - the new Font for the object

getFontMetrics

public FontMetrics getFontMetrics(Font f)
Get the FontMetrics of this object.
Specified by:
getFontMetrics in interface AccessibleComponent
Parameters:
f - the Font
Returns:
the FontMetrics, if supported, the object; otherwise, null
See Also:
getFont()

isEnabled

public boolean isEnabled()
Determine if the object is enabled.
Specified by:
isEnabled in interface AccessibleComponent
Returns:
true if object is enabled; otherwise, false

setEnabled

public void setEnabled(boolean b)
Set the enabled state of the object.
Specified by:
setEnabled in interface AccessibleComponent
Parameters:
b - if true, enables this object; otherwise, disables it

isVisible

public boolean isVisible()
Determine if the object is visible. Note: this means that the object intends to be visible; however, it may not in fact be showing on the screen because one of the objects that this object is contained by is not visible. To determine if an object is showing on the screen, use isShowing().
Specified by:
isVisible in interface AccessibleComponent
Returns:
true if object is visible; otherwise, false

setVisible

public void setVisible(boolean b)
Set the visible state of the object.
Specified by:
setVisible in interface AccessibleComponent
Parameters:
b - if true, shows this object; otherwise, hides it

isShowing

public boolean isShowing()
Determine if the object is showing. This is determined by checking the visibility of the object and ancestors of the object. Note: this will return true even if the object is obscured by another (for example, it happens to be underneath a menu that was pulled down).
Specified by:
isShowing in interface AccessibleComponent
Returns:
true if object is showing; otherwise, false

contains

public 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.
Specified by:
contains in interface AccessibleComponent
Parameters:
p - the Point relative to the coordinate system of the object
Returns:
true if object contains Point; otherwise false

getLocationOnScreen

public Point getLocationOnScreen()
Returns the location of the object on the screen.
Specified by:
getLocationOnScreen in interface AccessibleComponent
Returns:
location of object on screen -- can be null if this object is not on the screen

getLocation

public 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.
Specified by:
getLocation in interface AccessibleComponent
Returns:
An instance of Point representing the top-left corner of the objects's bounds in the coordinate space of the screen; null if this object or its parent are not on the screen

setLocation

public void setLocation(Point p)
Sets the location of the object relative to the parent.
Specified by:
setLocation in interface AccessibleComponent
Tags copied from interface: AccessibleComponent
Parameters:
p - the new position for the top-left corner
See Also:
AccessibleComponent.getLocation()

getBounds

public Rectangle getBounds()
Gets the bounds of this object in the form of a Rectangle object. The bounds specify this object's width, height, and location relative to its parent.
Specified by:
getBounds in interface AccessibleComponent
Returns:
A rectangle indicating this component's bounds; null if this object is not on the screen.

setBounds

public void setBounds(Rectangle r)
Sets the bounds of this object in the form of a Rectangle object. The bounds specify this object's width, height, and location relative to its parent.
Specified by:
setBounds in interface AccessibleComponent
Parameters:
A - rectangle indicating this component's bounds

getSize

public Dimension getSize()
Returns the size of this object in the form of a Dimension object. The height field of the Dimension object contains this objects's height, and the width field of the Dimension object contains this object's width.
Specified by:
getSize in interface AccessibleComponent
Returns:
A Dimension object that indicates the size of this component; null if this object is not on the screen

setSize

public void setSize(Dimension d)
Resizes this object so that it has width width and height.
Specified by:
setSize in interface AccessibleComponent
Parameters:
d - - The dimension specifying the new size of the object.

getAccessibleAt

public Accessible getAccessibleAt(Point p)
Returns the Accessible child, if one exists, contained at the local coordinate Point.
Specified by:
getAccessibleAt in interface AccessibleComponent
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

isFocusTraversable

public boolean isFocusTraversable()
Returns whether this object can accept focus or not.
Specified by:
isFocusTraversable in interface AccessibleComponent
Returns:
true if object can accept focus; otherwise false

requestFocus

public void requestFocus()
Requests focus for this object.
Specified by:
requestFocus in interface AccessibleComponent
Tags copied from interface: AccessibleComponent
See Also:
AccessibleComponent.isFocusTraversable()

addFocusListener

public void addFocusListener(FocusListener l)
Adds the specified focus listener to receive focus events from this component.
Specified by:
addFocusListener in interface AccessibleComponent
Parameters:
l - the focus listener

removeFocusListener

public void removeFocusListener(FocusListener l)
Removes the specified focus listener so it no longer receives focus events from this component.
Specified by:
removeFocusListener in interface AccessibleComponent
Parameters:
l - the focus listener

JavaTM 2 Platform
Standard Edition

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