# Class JList.AccessibleJList

java.lang.Object
javax.accessibility.AccessibleContext
java.awt.Component.AccessibleAWTComponent
java.awt.Container.AccessibleAWTContainer
javax.swing.JComponent.AccessibleJComponent
javax.swing.JList.AccessibleJList

All Implemented Interfaces:
  `PropertyChangeListener, Serializable, EventListener, AccessibleComponent, AccessibleExtendedComponent, AccessibleSelection, ListDataListener, ListSelectionListener`

Enclosing class:
  `JList<E>`

protected class JList.AccessibleJList extends JComponent.AccessibleJComponent implements AccessibleSelection, PropertyChangeListener, ListSelectionListener, ListDataListener
This class implements accessibility support for the `JList` class. It provides an implementation of the Java Accessibility API appropriate to list 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 JavaBeans has been added to the `java.beans` package. Please see `XMLEncoder`.

Since:
  1.2

## Nested Class Summary

Nested Classes
Modifier and Type
Class
Description
`protected class`
`JList.AccessibleJList.AccessibleJListChild`
This class implements accessibility support appropriate for list children.

### Nested classes/interfaces declared in class JComponent.AccessibleJComponent

`JComponent.AccessibleJComponent.AccessibleContainerHandler, JComponent.AccessibleJComponent.AccessibleFocusHandler`

### Nested classes/interfaces declared in class Component.AccessibleAWTComponent

`Component.AccessibleAWTComponent.AccessibleAWTComponentHandler, Component.AccessibleAWTComponent.AccessibleAWTFocusHandler`

## Field Summary

### Fields declared in class JComponent.AccessibleJComponent

`accessibleFocusHandler`

### Fields declared in class Container.AccessibleAWTContainer

`accessibleContainerHandler`

### Fields declared in class Component.AccessibleAWTComponent

`accessibleAWTComponentHandler, accessibleAWTFocusHandler`

### Fields declared in class 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
Constructor
Description
`AccessibleJList()`
Constructs an `AccessibleJList`.

## Method Summary

Modifier and Type
Method
Description
`void`
`addAccessibleSelection(int i)`
Adds the specified selected item in the object to the object's selection.
`void`
`clearAccessibleSelection()`
Clears the selection in the object, so that nothing in the object is selected.
`void`
`contentsChanged(ListDataEvent e)`
List Data Listener contents changed method.
`Accessible`
`getAccessibleAt(Point p)`
Returns the `Accessible` child contained at the local coordinate `Point`, if one exists.
`Accessible`
`getAccessibleChild(int i)`
Return the nth Accessible child of the object.
`int`
`getAccessibleChildrenCount()`
Returns the number of accessible children in the object.
`AccessibleRole`
`getAccessibleRole()`
Get the role of this object.
`AccessibleSelection`
`getAccessibleSelection()`
Get the AccessibleSelection associated with this object.
`Accessible`
`getAccessibleSelection(int i)`
Returns an Accessible representing the specified selected item in the object.
`int`
`getAccessibleSelectionCount()`
Returns the number of items currently selected.
`AccessibleStateSet`
`getAccessibleStateSet()`
Get the state set of this object.
`void`
`intervalAdded(ListDataEvent e)`
List Data Listener interval added method.
`void`
`intervalRemoved(ListDataEvent e)`
List Data Listener interval removed method.
`boolean`
`isAccessibleChildSelected(int i)`
Returns true if the current child of this object is selected.
`void`
`propertyChange(PropertyChangeEvent e)`
Property Change Listener change method.
`void`
`removeAccessibleSelection(int i)`
Removes the specified selected item in the object from the object's selection.
`void`
`selectAllAccessibleSelection()`
Causes every selected item in the object to be selected if the object supports multiple selections.
`void`
`valueChanged(ListSelectionEvent e)`
List Selection Listener value change method.

### Methods declared in class JComponent.AccessibleJComponent

`addPropertyChangeListener, getAccessibleDescription, getAccessibleKeyBinding, getAccessibleName, getBorderTitle, getTitledBorderText, getToolTipText, removePropertyChangeListener`

### Methods declared in class 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 declared in class AccessibleContext

`firePropertyChange, getAccessibleAction, getAccessibleEditableText, getAccessibleIcon, getAccessibleRelationSet, getAccessibleTable, getAccessibleText, getAccessibleValue, setAccessibleDescription, setAccessibleName, setAccessibleParent`

### Methods declared in class Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Methods declared in interface AccessibleComponent

`addFocusListener, contains, getBackground, getBounds, getCursor, getFont, getFontMetrics, getForeground, getLocation, getLocationOnScreen, getSize, isEnabled, isFocusTraversable, isShowing, isVisible, removeFocusListener, requestFocus, setBackground, setBounds, setCursor, setEnabled, setFont, setForeground, setLocation, setSize, setVisible`

## Constructor Details

### AccessibleJList

public AccessibleJList()
Constructs an `AccessibleJList`.

## Method Details

### propertyChange

public void propertyChange(PropertyChangeEvent e)
Property Change Listener change method. Used to track changes to the DataModel and ListSelectionModel, in order to re-set listeners to those for reporting changes there via the Accessibility PropertyChange mechanism.

Specified by:
  `propertyChange` in interface `PropertyChangeListener`
Parameters:
  `e` - PropertyChangeEvent

### valueChanged

public void valueChanged(ListSelectionEvent e)
List Selection Listener value change method. Used to fire the property change

Specified by:
  `valueChanged` in interface `ListSelectionListener`
Parameters:
  `e` - ListSelectionEvent

### intervalAdded

public void intervalAdded(ListDataEvent e)
List Data Listener interval added method. Used to fire the visible data property change

Specified by:
  `intervalAdded` in interface `ListDataListener`
Parameters:
  `e` - ListDataEvent

### intervalRemoved

public void intervalRemoved(ListDataEvent e)
List Data Listener interval removed method. Used to fire the visible data property change

Specified by:
  `intervalRemoved` in interface `ListDataListener`
Parameters:
  `e` - ListDataEvent

### contentsChanged

public void contentsChanged(ListDataEvent e)
List Data Listener contents changed method. Used to fire the visible data property change

Specified by:
  `contentsChanged` in interface `ListDataListener`
Parameters:
  `e` - ListDataEvent

### getAccessibleStateSet

public AccessibleStateSet getAccessibleStateSet()
Get the state set of this object.

Overrides:
  `getAccessibleStateSet` in class `JComponent.AccessibleJComponent`
Returns:
  an instance of AccessibleState containing the current state of the object
See Also:
  - `AccessibleState`

### getAccessibleRole

public AccessibleRole getAccessibleRole()
Get 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 contained at the local coordinate `Point`, if one exists. Otherwise returns `null`.

Specified by:
  `getAccessibleAt` in interface `AccessibleComponent`
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` at the specified location, if it exists

### 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
See Also:
  - `AccessibleContext.getAccessibleChildrenCount()`

### 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
See Also:
  - `AccessibleSelection`

### getAccessibleSelectionCount

public int getAccessibleSelectionCount()
Returns the number of items currently selected. If no items 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 item in the object. If there isn't a selection, or there are fewer items selected than the integer passed in, the return value will be `null`.

Specified by:
  `getAccessibleSelection` in interface `AccessibleSelection`
Parameters:
  `i` - the zero-based index of selected items
Returns:
  an Accessible containing the selected item
See Also:
  - `AccessibleSelection.getAccessibleSelectionCount()`

### isAccessibleChildSelected

public boolean isAccessibleChildSelected(int i)
Returns true 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; else `false`
See Also:
  - `AccessibleContext.getAccessibleChild(int)`

### addAccessibleSelection

public void addAccessibleSelection(int i)
Adds the specified selected item in the object to the object's selection. If the object supports multiple selections, the specified item is added to any existing selection, otherwise it replaces any existing selection in the object. If the specified item is already selected, this method has no effect.

Specified by:
  `addAccessibleSelection` in interface `AccessibleSelection`
Parameters:
  `i` - the zero-based index of selectable items
See Also:
  - `AccessibleContext.getAccessibleChild(int)`

### removeAccessibleSelection

public void removeAccessibleSelection(int i)
Removes the specified selected item in the object from the object's selection. If the specified item isn't currently selected, this method has no effect.

Specified by:
  `removeAccessibleSelection` in interface `AccessibleSelection`
Parameters:
  `i` - the zero-based index of selectable items
See Also:
  - `AccessibleContext.getAccessibleChild(int)`

### clearAccessibleSelection

public void clearAccessibleSelection()
Clears the selection in the object, so that nothing in the object is selected.

Specified by:
  `clearAccessibleSelection` in interface `AccessibleSelection`

### selectAllAccessibleSelection

public void selectAllAccessibleSelection()
Causes every selected item in the object to be selected if the object supports multiple selections.

Specified by:
  `selectAllAccessibleSelection` in interface `AccessibleSelection`