javax.swing

Class AbstractButton.AccessibleAbstractButton

Enclosing Class:
AbstractButton
Implemented Interfaces:
AccessibleAction, AccessibleComponent, AccessibleExtendedComponent, AccessibleText, AccessibleValue, Serializable
Known Direct Subclasses:
JButton.AccessibleJButton, JMenuItem.AccessibleJMenuItem, JToggleButton.AccessibleJToggleButton

protected abstract class AbstractButton.AccessibleAbstractButton
extends JComponent.AccessibleJComponent
implements AccessibleAction, AccessibleValue, AccessibleText

A Java Accessibility extension of the AbstractButton.
See Also:
Serialized Form

Nested Class Summary

Nested classes/interfaces inherited from class javax.swing.JComponent.AccessibleJComponent

JComponent.AccessibleJComponent.AccessibleContainerHandler, JComponent.AccessibleJComponent.AccessibleFocusHandler

Nested classes/interfaces inherited from class java.awt.Container.AccessibleAWTContainer

Container.AccessibleAWTContainer.AccessibleContainerHandler

Nested classes/interfaces 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.Container.AccessibleAWTContainer

accessibleContainerHandler

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_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

Fields inherited from interface javax.accessibility.AccessibleAction

CLICK, DECREMENT, INCREMENT, TOGGLE_EXPAND, TOGGLE_POPUP

Fields inherited from interface javax.accessibility.AccessibleText

CHARACTER, SENTENCE, WORD

Constructor Summary

AccessibleAbstractButton()
Creates a new AccessibleJComponent.

Method Summary

boolean
doAccessibleAction(int actionIndex)
Performs the acccessible action with the specified index on this object.
AccessibleAction
getAccessibleAction()
Returns the accessible action associated with this object.
int
getAccessibleActionCount()
Returns the number of accessible actions that are supported by this object.
String
getAccessibleActionDescription(int actionIndex)
Returns a description for the action with the specified index or null if such action does not exist.
AccessibleIcon[]
getAccessibleIcon()
Returns the accessible icons of this object.
String
getAccessibleName()
Returns the accessible name for the button.
AccessibleRelationSet
getAccessibleRelationSet()
Returns the accessible relations of this AccessibleAbstractButton.
AccessibleStateSet
getAccessibleStateSet()
Returns the accessible state set of this object.
AccessibleText
getAccessibleText()
Returns the accessible text for this AccessibleAbstractButton.
AccessibleValue
getAccessibleValue()
Returns the accessible value of this AccessibleAbstractButton, which is always this.
String
getAfterIndex(int part, int index)
Returns the character, word or sentence after the specified index.
String
getAtIndex(int part, int index)
Returns the character, word or sentence at the specified index.
String
getBeforeIndex(int part, int index)
Returns the character, word or sentence before the specified index.
int
getCaretPosition()
This always returns -1 since there is no caret in a button.
int
getCharCount()
Returns the number of characters in the button's label.
AttributeSet
getCharacterAttribute(int i)
Returns the text attribute for the character at the specified character index.
Rectangle
getCharacterBounds(int i)
Returns the bounds of the character at the specified index of the button's label.
Number
getCurrentAccessibleValue()
Returns the current value of this object as a number.
int
getIndexAtPoint(Point p)
Returns the index of the label's character at the specified point, relative to the local bounds of the button.
Number
getMaximumAccessibleValue()
Returns the maximum accessible value for the AccessibleAbstractButton, which is 1.
Number
getMinimumAccessibleValue()
Returns the minimum accessible value for the AccessibleAbstractButton, which is 0.
String
getSelectedText()
Returns the selected text.
int
getSelectionEnd()
This always returns -1 since button labels can't be selected.
int
getSelectionStart()
This always returns -1 since button labels can't be selected.
boolean
setCurrentAccessibleValue(Number value)
Sets the current accessible value as object.

Methods inherited from class javax.swing.JComponent.AccessibleJComponent

addPropertyChangeListener, getAccessibleChild, getAccessibleChildrenCount, getAccessibleDescription, getAccessibleKeyBinding, getAccessibleName, getAccessibleRole, getAccessibleStateSet, getBorderTitle, getTitledBorderText, getToolTipText, removePropertyChangeListener

Methods inherited from class java.awt.Container.AccessibleAWTContainer

getAccessibleAt, getAccessibleChild, getAccessibleChildrenCount

Methods inherited from class java.awt.Component.AccessibleAWTComponent

addFocusListener, addPropertyChangeListener, contains, getAccessibleAt, getAccessibleChild, getAccessibleChildrenCount, getAccessibleComponent, getAccessibleDescription, getAccessibleIndexInParent, getAccessibleName, getAccessibleParent, getAccessibleRole, getAccessibleStateSet, getBackground, getBounds, getCursor, getFont, getFontMetrics, getForeground, getLocale, getLocation, getLocationOnScreen, getSize, isEnabled, isFocusTraversable, isShowing, isVisible, removeFocusListener, removePropertyChangeListener, requestFocus, setBackground, setBounds, setCursor, setEnabled, setFont, setForeground, setLocation, setSize, setVisible

Methods inherited from class javax.accessibility.AccessibleContext

addPropertyChangeListener, firePropertyChange, getAccessibleAction, getAccessibleChild, getAccessibleChildrenCount, getAccessibleComponent, getAccessibleDescription, getAccessibleEditableText, getAccessibleIcon, getAccessibleIndexInParent, getAccessibleName, getAccessibleParent, getAccessibleRelationSet, getAccessibleRole, getAccessibleSelection, getAccessibleStateSet, getAccessibleTable, getAccessibleText, getAccessibleValue, getLocale, removePropertyChangeListener, setAccessibleDescription, setAccessibleName, setAccessibleParent

Methods inherited from class java.lang.Object

clone, equals, extends Object> getClass, finalize, hashCode, notify, notifyAll, toString, wait, wait, wait

Constructor Details

AccessibleAbstractButton

protected AccessibleAbstractButton()
Creates a new AccessibleJComponent.

Method Details

doAccessibleAction

public boolean doAccessibleAction(int actionIndex)
Performs the acccessible action with the specified index on this object. Since buttons have only one action by default (which is to press the button), this method performs a 'press button' when the specified index is 0 and nothing otherwise.
Specified by:
doAccessibleAction in interface AccessibleAction
Parameters:
actionIndex - a zero based index into the actions of this button
Returns:
true if the specified action has been performed successfully, false otherwise

getAccessibleAction

public AccessibleAction getAccessibleAction()
Returns the accessible action associated with this object. For buttons, this will be this.
Overrides:
getAccessibleAction in interface AccessibleContext
Returns:
this

getAccessibleActionCount

public int getAccessibleActionCount()
Returns the number of accessible actions that are supported by this object. Buttons support one action by default ('press button'), so this method always returns 1.
Specified by:
getAccessibleActionCount in interface AccessibleAction
Returns:
1, the number of supported accessible actions

getAccessibleActionDescription

public String getAccessibleActionDescription(int actionIndex)
Returns a description for the action with the specified index or null if such action does not exist.
Specified by:
getAccessibleActionDescription in interface AccessibleAction
Parameters:
actionIndex - the zero based index to the actions
Returns:
a description for the action with the specified index or null if such action does not exist

getAccessibleIcon

public AccessibleIcon[] getAccessibleIcon()
Returns the accessible icons of this object. If the AbstractButton's icon is an Accessible, and it's AccessibleContext is an AccessibleIcon, then this AccessibleIcon is returned, otherwise null.
Overrides:
getAccessibleIcon in interface AccessibleContext
Returns:
the accessible icons of this object, or null if there is no accessible icon

getAccessibleName

public String getAccessibleName()
Returns the accessible name for the button.
Overrides:
getAccessibleName in interface JComponent.AccessibleJComponent

getAccessibleRelationSet

public AccessibleRelationSet getAccessibleRelationSet()
Returns the accessible relations of this AccessibleAbstractButton. If the AbstractButton is part of a ButtonGroup, then all the buttons in this button group are added as targets in a MEMBER_OF relation, otherwise an empty relation set is returned (from super).
Overrides:
getAccessibleRelationSet in interface AccessibleContext
Returns:
the accessible relations of this AccessibleAbstractButton

getAccessibleStateSet

public AccessibleStateSet getAccessibleStateSet()
Returns the accessible state set of this object. In addition to the superclass's states, the AccessibleAbstractButton supports the following states: AccessibleState.ARMED, AccessibleState.FOCUSED, AccessibleState.PRESSED and AccessibleState.CHECKED.
Overrides:
getAccessibleStateSet in interface JComponent.AccessibleJComponent
Returns:
the current state of this accessible object

getAccessibleText

public AccessibleText getAccessibleText()
Returns the accessible text for this AccessibleAbstractButton. This will be null if the button has a non-HTML label, otherwise this.
Overrides:
getAccessibleText in interface AccessibleContext
Returns:
the accessible text for this AccessibleAbstractButton

getAccessibleValue

public AccessibleValue getAccessibleValue()
Returns the accessible value of this AccessibleAbstractButton, which is always this.
Overrides:
getAccessibleValue in interface AccessibleContext
Returns:
the accessible value of this AccessibleAbstractButton, which is always this

getAfterIndex

public String getAfterIndex(int part,
                            int index)
Returns the character, word or sentence after the specified index. The part parameter determines what is returned, the character, word or sentence after the index.
Specified by:
getAfterIndex in interface AccessibleText
Parameters:
part - one of AccessibleText.CHARACTER, AccessibleText.WORD or AccessibleText.SENTENCE, specifying what is returned
index - the index
Returns:
the character, word or sentence after index

getAtIndex

public String getAtIndex(int part,
                         int index)
Returns the character, word or sentence at the specified index. The part parameter determines what is returned, the character, word or sentence after the index.
Specified by:
getAtIndex in interface AccessibleText
Parameters:
part - one of AccessibleText.CHARACTER, AccessibleText.WORD or AccessibleText.SENTENCE, specifying what is returned
index - the index
Returns:
the character, word or sentence after index

getBeforeIndex

public String getBeforeIndex(int part,
                             int index)
Returns the character, word or sentence before the specified index. The part parameter determines what is returned, the character, word or sentence before the index.
Specified by:
getBeforeIndex in interface AccessibleText
Parameters:
part - one of AccessibleText.CHARACTER, AccessibleText.WORD or AccessibleText.SENTENCE, specifying what is returned
index - the index
Returns:
the character, word or sentence before index

getCaretPosition

public int getCaretPosition()
This always returns -1 since there is no caret in a button.
Specified by:
getCaretPosition in interface AccessibleText
Returns:
-1 since there is no caret in a button

getCharCount

public int getCharCount()
Returns the number of characters in the button's label.
Specified by:
getCharCount in interface AccessibleText
Returns:
the bounds of the character at the specified index of the button's label

getCharacterAttribute

public AttributeSet getCharacterAttribute(int i)
Returns the text attribute for the character at the specified character index.
Specified by:
getCharacterAttribute in interface AccessibleText
Parameters:
i - the character index
Returns:
the character attributes for the specified character or null if the character has no attributes

getCharacterBounds

public Rectangle getCharacterBounds(int i)
Returns the bounds of the character at the specified index of the button's label. This will only work for HTML labels.
Specified by:
getCharacterBounds in interface AccessibleText
Parameters:
i - the index of the character of the label
Returns:
the bounds of the character at the specified index of the button's label

getCurrentAccessibleValue

public Number getCurrentAccessibleValue()
Returns the current value of this object as a number. This implementation returns an Integer(1) if the button is selected, Integer(0) if the button is not selected.
Specified by:
getCurrentAccessibleValue in interface AccessibleValue
Returns:
the current value of this object as a number

getIndexAtPoint

public int getIndexAtPoint(Point p)
Returns the index of the label's character at the specified point, relative to the local bounds of the button. This only works for HTML labels.
Specified by:
getIndexAtPoint in interface AccessibleText
Parameters:
p - the point, relative to the buttons local bounds
Returns:
the index of the label's character at the specified point

getMaximumAccessibleValue

public Number getMaximumAccessibleValue()
Returns the maximum accessible value for the AccessibleAbstractButton, which is 1.
Specified by:
getMaximumAccessibleValue in interface AccessibleValue
Returns:
the maximum accessible value for the AccessibleAbstractButton, which is 1

getMinimumAccessibleValue

public Number getMinimumAccessibleValue()
Returns the minimum accessible value for the AccessibleAbstractButton, which is 0.
Specified by:
getMinimumAccessibleValue in interface AccessibleValue
Returns:
the minimimum accessible value for the AccessibleAbstractButton, which is 0

getSelectedText

public String getSelectedText()
Returns the selected text. This always returns null since button labels can't be selected.
Specified by:
getSelectedText in interface AccessibleText
Returns:
null, button labels can't be selected

getSelectionEnd

public int getSelectionEnd()
This always returns -1 since button labels can't be selected.
Specified by:
getSelectionEnd in interface AccessibleText
Returns:
-1, button labels can't be selected

getSelectionStart

public int getSelectionStart()
This always returns -1 since button labels can't be selected.
Specified by:
getSelectionStart in interface AccessibleText
Returns:
-1, button labels can't be selected

setCurrentAccessibleValue

public boolean setCurrentAccessibleValue(Number value)
Sets the current accessible value as object. If the specified number is 0 the button will be deselected, otherwise the button will be selected.
Specified by:
setCurrentAccessibleValue in interface AccessibleValue
Parameters:
value - 0 for deselected button, other for selected button
Returns:
true if the value has been set, false otherwise

AbstractButton.java -- Provides basic button functionality. Copyright (C) 2002, 2004, 2006, Free Software Foundation, Inc. This file is part of GNU Classpath. GNU Classpath is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Classpath is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Classpath; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. Linking this library statically or dynamically with other modules is making a combined work based on this library. Thus, the terms and conditions of the GNU General Public License cover the whole combination. As a special exception, the copyright holders of this library give you permission to link this library with independent modules to produce an executable, regardless of the license terms of these independent modules, and to copy and distribute the resulting executable under terms of your choice, provided that you also meet, for each linked independent module, the terms and conditions of the license of that module. An independent module is a module which is not derived from or based on this library. If you modify this library, you may extend this exception to your version of the library, but you are not obligated to do so. If you do not wish to do so, delete this exception statement from your version.