- java.lang.Object
-
- javax.accessibility.AccessibleContext
-
- java.awt.MenuComponent.AccessibleAWTMenuComponent
-
- All Implemented Interfaces:
Serializable
,AccessibleComponent
,AccessibleSelection
- Direct Known Subclasses:
MenuBar.AccessibleAWTMenuBar
,MenuItem.AccessibleAWTMenuItem
- Enclosing class:
- MenuComponent
protected abstract class MenuComponent.AccessibleAWTMenuComponent extends AccessibleContext implements Serializable, AccessibleComponent, AccessibleSelection
Inner class ofMenuComponent
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 menu component developers.The class used to obtain the accessible role for this object.
- Since:
- 1.3
- See Also:
- Serialized Form
-
-
Field Summary
-
Fields declared in class javax.accessibility.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
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
AccessibleAWTMenuComponent()
Although the class is abstract, this should be called by all sub-classes.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addAccessibleSelection(int i)
Adds the specifiedAccessible
child of the object to the object's selection.void
addFocusListener(FocusListener l)
Adds the specified focus listener to receive focus events from this component.void
clearAccessibleSelection()
Clears the selection in the object, so that no children in the object are selected.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 theAccessible
child, if one exists, contained at the local coordinatePoint
.Accessible
getAccessibleChild(int i)
Returns the nthAccessible
child of the object.int
getAccessibleChildrenCount()
Returns the number of accessible children in the object.AccessibleComponent
getAccessibleComponent()
Gets theAccessibleComponent
associated with this object if one exists.String
getAccessibleDescription()
Gets the accessible description of this object.int
getAccessibleIndexInParent()
Gets the index of this object in its accessible parent.String
getAccessibleName()
Gets the accessible name of this object.Accessible
getAccessibleParent()
Gets theAccessible
parent of this object.AccessibleRole
getAccessibleRole()
Gets the role of this object.AccessibleSelection
getAccessibleSelection()
Gets theAccessibleSelection
associated with this object which allows itsAccessible
children to be selected.Accessible
getAccessibleSelection(int i)
Returns anAccessible
representing the specified selected child in the object.int
getAccessibleSelectionCount()
Returns the number ofAccessible
children currently selected.AccessibleStateSet
getAccessibleStateSet()
Gets the state of this object.Color
getBackground()
Gets the background color of this object.Rectangle
getBounds()
Gets the bounds of this object in the form of aRectangle
object.Cursor
getCursor()
Gets theCursor
of this object.Font
getFont()
Gets theFont
of this object.FontMetrics
getFontMetrics(Font f)
Gets theFontMetrics
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 aDimension
object.boolean
isAccessibleChildSelected(int i)
Determines if the current child of this object is selected.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
removeAccessibleSelection(int i)
Removes the specified child of the object from the object's selection.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
selectAllAccessibleSelection()
Causes every child of the object to be selected if the object supports multiple selections.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 aRectangle
object.void
setCursor(Cursor cursor)
Sets theCursor
of this object.void
setEnabled(boolean b)
Sets the enabled state of the object.void
setFont(Font f)
Sets theFont
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.void
setVisible(boolean b)
Sets the visible state of the object.-
Methods declared in class javax.accessibility.AccessibleContext
addPropertyChangeListener, firePropertyChange, getAccessibleAction, getAccessibleEditableText, getAccessibleIcon, getAccessibleRelationSet, getAccessibleTable, getAccessibleText, getAccessibleValue, removePropertyChangeListener, setAccessibleDescription, setAccessibleName, setAccessibleParent
-
-
-
-
Method Detail
getAccessibleSelection
public AccessibleSelection getAccessibleSelection()
Gets theAccessibleSelection
associated with this object which allows itsAccessible
children to be selected.- Overrides:
getAccessibleSelection
in classAccessibleContext
- Returns:
AccessibleSelection
if supported by object; else returnnull
- See Also:
AccessibleSelection
getAccessibleName
public String getAccessibleName()
Gets the accessible name of this object. This should almost never returnjava.awt.MenuComponent.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 classAccessibleContext
- 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()
Gets the accessible description of this object. This should be a concise, localized description of what this object is - what is its 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 classAccessibleContext
- 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()
Gets the role of this object.- Specified by:
getAccessibleRole
in classAccessibleContext
- Returns:
-
an instance of
AccessibleRole
describing the role of the object - See Also:
AccessibleRole
getAccessibleStateSet
public AccessibleStateSet getAccessibleStateSet()
Gets the state of this object.- Specified by:
getAccessibleStateSet
in classAccessibleContext
- Returns:
-
an instance of
AccessibleStateSet
containing the current state set of the object - See Also:
AccessibleState
getAccessibleParent
public Accessible getAccessibleParent()
Gets theAccessible
parent of this object. If the parent of this object implementsAccessible
, this method should simply returngetParent
.- Overrides:
getAccessibleParent
in classAccessibleContext
- Returns:
-
the
Accessible
parent of this object -- can benull
if this object does not have anAccessible
parent
getAccessibleIndexInParent
public int getAccessibleIndexInParent()
Gets the index of this object in its accessible parent.- Specified by:
getAccessibleIndexInParent
in classAccessibleContext
- 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 implementAccessible
, then this method should return the number of children of this object.- Specified by:
getAccessibleChildrenCount
in classAccessibleContext
- Returns:
- the number of accessible children in the object
getAccessibleChild
public Accessible getAccessibleChild(int i)
Returns the nthAccessible
child of the object.- Specified by:
getAccessibleChild
in classAccessibleContext
- Parameters:
i
- zero-based index of child- Returns:
- the nth Accessible child of the object
- See Also:
AccessibleContext.getAccessibleChildrenCount()
getLocale
public Locale getLocale()
Returns the locale of this object.- Specified by:
getLocale
in classAccessibleContext
- Returns:
- the locale of this object
getAccessibleComponent
public AccessibleComponent getAccessibleComponent()
Gets theAccessibleComponent
associated with this object if one exists. Otherwise returnnull
.- Overrides:
getAccessibleComponent
in classAccessibleContext
- Returns:
- the component
- See Also:
AccessibleComponent
getBackground
public Color getBackground()
Gets the background color of this object.- Specified by:
getBackground
in interfaceAccessibleComponent
- Returns:
-
the background color, if supported, of the object; otherwise,
null
- See Also:
AccessibleComponent.setBackground(java.awt.Color)
setBackground
public void setBackground(Color c)
Sets the background color of this object. (For transparency, seeisOpaque
.)- Specified by:
setBackground
in interfaceAccessibleComponent
- Parameters:
c
- the newColor
for the background- See Also:
Component.isOpaque()
getForeground
public Color getForeground()
Gets the foreground color of this object.- Specified by:
getForeground
in interfaceAccessibleComponent
- Returns:
-
the foreground color, if supported, of the object; otherwise,
null
- See Also:
AccessibleComponent.setForeground(java.awt.Color)
setForeground
public void setForeground(Color c)
Sets the foreground color of this object.- Specified by:
setForeground
in interfaceAccessibleComponent
- Parameters:
c
- the newColor
for the foreground- See Also:
AccessibleComponent.getForeground()
getCursor
public Cursor getCursor()
Gets theCursor
of this object.- Specified by:
getCursor
in interfaceAccessibleComponent
- Returns:
-
the
Cursor
, if supported, of the object; otherwise,null
- See Also:
AccessibleComponent.setCursor(java.awt.Cursor)
setCursor
public void setCursor(Cursor cursor)
Sets theCursor
of this object.The method may have no visual effect if the Java platform implementation and/or the native system do not support changing the mouse cursor shape.
- Specified by:
setCursor
in interfaceAccessibleComponent
- Parameters:
cursor
- the newCursor
for the object- See Also:
AccessibleComponent.getCursor()
getFont
public Font getFont()
Gets theFont
of this object.- Specified by:
getFont
in interfaceAccessibleComponent
- Returns:
-
the
Font
,if supported, for the object; otherwise,null
- See Also:
AccessibleComponent.setFont(java.awt.Font)
setFont
public void setFont(Font f)
Sets theFont
of this object.- Specified by:
setFont
in interfaceAccessibleComponent
- Parameters:
f
- the newFont
for the object- See Also:
AccessibleComponent.getFont()
getFontMetrics
public FontMetrics getFontMetrics(Font f)
Gets theFontMetrics
of this object.- Specified by:
getFontMetrics
in interfaceAccessibleComponent
- Parameters:
f
- theFont
- Returns:
-
the FontMetrics, if supported, the object; otherwise,
null
- See Also:
getFont()
isEnabled
public boolean isEnabled()
Determines if the object is enabled.- Specified by:
isEnabled
in interfaceAccessibleComponent
- Returns:
- true if object is enabled; otherwise, false
- See Also:
AccessibleComponent.setEnabled(boolean)
,AccessibleContext.getAccessibleStateSet()
,AccessibleState.ENABLED
,AccessibleStateSet
setEnabled
public void setEnabled(boolean b)
Sets the enabled state of the object.- Specified by:
setEnabled
in interfaceAccessibleComponent
- Parameters:
b
- if true, enables this object; otherwise, disables it- See Also:
AccessibleComponent.isEnabled()
isVisible
public boolean isVisible()
Determines 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, useisShowing
.- Specified by:
isVisible
in interfaceAccessibleComponent
- Returns:
- true if object is visible; otherwise, false
- See Also:
AccessibleComponent.setVisible(boolean)
,AccessibleContext.getAccessibleStateSet()
,AccessibleState.VISIBLE
,AccessibleStateSet
setVisible
public void setVisible(boolean b)
Sets the visible state of the object.- Specified by:
setVisible
in interfaceAccessibleComponent
- Parameters:
b
- if true, shows this object; otherwise, hides it- See Also:
AccessibleComponent.isVisible()
isShowing
public boolean isShowing()
Determines 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 interfaceAccessibleComponent
- 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 interfaceAccessibleComponent
- Parameters:
p
- thePoint
relative to the coordinate system of the object- Returns:
-
true if object contains
Point
; otherwise false - See Also:
AccessibleComponent.getBounds()
getLocationOnScreen
public Point getLocationOnScreen()
Returns the location of the object on the screen.- Specified by:
getLocationOnScreen
in interfaceAccessibleComponent
- Returns:
-
location of object on screen -- can be
null
if this object is not on the screen - See Also:
AccessibleComponent.getBounds()
,AccessibleComponent.getLocation()
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 interfaceAccessibleComponent
- Returns:
-
an instance of
Point
representing the top-left corner of the object's bounds in the coordinate space of the screen;null
if this object or its parent are not on the screen - See Also:
AccessibleComponent.getBounds()
,AccessibleComponent.getLocationOnScreen()
setLocation
public void setLocation(Point p)
Sets the location of the object relative to the parent.- Specified by:
setLocation
in interfaceAccessibleComponent
- 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 aRectangle
object. The bounds specify this object's width, height, and location relative to its parent.- Specified by:
getBounds
in interfaceAccessibleComponent
- Returns:
-
a rectangle indicating this component's bounds;
null
if this object is not on the screen - See Also:
AccessibleComponent.contains(java.awt.Point)
setBounds
public void setBounds(Rectangle r)
Sets the bounds of this object in the form of aRectangle
object. The bounds specify this object's width, height, and location relative to its parent.- Specified by:
setBounds
in interfaceAccessibleComponent
- Parameters:
r
- a rectangle indicating this component's bounds- See Also:
AccessibleComponent.getBounds()
getSize
public Dimension getSize()
Returns the size of this object in the form of aDimension
object. The height field of theDimension
object contains this object's height, and the width field of theDimension
object contains this object's width.- Specified by:
getSize
in interfaceAccessibleComponent
- Returns:
-
a
Dimension
object that indicates the size of this component;null
if this object is not on the screen - See Also:
AccessibleComponent.setSize(java.awt.Dimension)
setSize
public void setSize(Dimension d)
Resizes this object.- Specified by:
setSize
in interfaceAccessibleComponent
- Parameters:
d
- theDimension
specifying the new size of the object- See Also:
AccessibleComponent.getSize()
getAccessibleAt
public Accessible getAccessibleAt(Point p)
Returns theAccessible
child, if one exists, contained at the local coordinatePoint
. If there is noAccessible
child,null
is returned.- Specified by:
getAccessibleAt
in interfaceAccessibleComponent
- Parameters:
p
- the point defining the top-left corner of theAccessible
, given in the coordinate space of the object's parent- Returns:
-
the
Accessible
, if it exists, at the specified location; elsenull
isFocusTraversable
public boolean isFocusTraversable()
Returns whether this object can accept focus or not.- Specified by:
isFocusTraversable
in interfaceAccessibleComponent
- Returns:
- true if object can accept focus; otherwise false
- See Also:
AccessibleContext.getAccessibleStateSet()
,AccessibleState.FOCUSABLE
,AccessibleState.FOCUSED
,AccessibleStateSet
requestFocus
public void requestFocus()
Requests focus for this object.- Specified by:
requestFocus
in interfaceAccessibleComponent
- 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 interfaceAccessibleComponent
- Parameters:
l
- the focus listener- See Also:
AccessibleComponent.removeFocusListener(java.awt.event.FocusListener)
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 interfaceAccessibleComponent
- Parameters:
l
- the focus listener- See Also:
AccessibleComponent.addFocusListener(java.awt.event.FocusListener)
getAccessibleSelectionCount
public int getAccessibleSelectionCount()
Returns the number ofAccessible
children currently selected. If no children are selected, the return value will be 0.- Specified by:
getAccessibleSelectionCount
in interfaceAccessibleSelection
- Returns:
- the number of items currently selected
getAccessibleSelection
public Accessible getAccessibleSelection(int i)
Returns anAccessible
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 benull
.Note that the index represents the i-th selected child, which is different from the i-th child.
- Specified by:
getAccessibleSelection
in interfaceAccessibleSelection
- 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 interfaceAccessibleSelection
- Parameters:
i
- the zero-based index of the child in thisAccessible
object- Returns:
- true if the current child of this object is selected; else false
- See Also:
AccessibleContext.getAccessibleChild(int)
addAccessibleSelection
public void addAccessibleSelection(int i)
Adds the specifiedAccessible
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.- Specified by:
addAccessibleSelection
in interfaceAccessibleSelection
- 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.- Specified by:
removeAccessibleSelection
in interfaceAccessibleSelection
- 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 interfaceAccessibleSelection
selectAllAccessibleSelection
public void selectAllAccessibleSelection()
Causes every child of the object to be selected if the object supports multiple selections.- Specified by:
selectAllAccessibleSelection
in interfaceAccessibleSelection
-