AccessibleSelection (Java SE 12 & JDK 12 )
Keywords: javax.accessibility.AccessibleSelection interface

Module java.desktop
Package javax.accessibility

## Interface AccessibleSelection

- All Known Implementing Classes:
    `CheckboxMenuItem.AccessibleAWTCheckboxMenuItem`, `JComboBox.AccessibleJComboBox`, `JList.AccessibleJList`, `JMenu.AccessibleJMenu`, `JMenuBar.AccessibleJMenuBar`, `JTabbedPane.AccessibleJTabbedPane`, `JTable.AccessibleJTable`, `JTree.AccessibleJTree`, `JTree.AccessibleJTree.AccessibleJTreeNode`, `List.AccessibleAWTList`, `Menu.AccessibleAWTMenu`, `MenuBar.AccessibleAWTMenuBar`, `MenuComponent.AccessibleAWTMenuComponent`, `MenuItem.AccessibleAWTMenuItem`, `PopupMenu.AccessibleAWTPopupMenu`

      public interface AccessibleSelection

  This `AccessibleSelection` interface provides the standard mechanism for an assistive technology to determine what the current selected children are, as well as modify the selection set. Any object that has children that can be selected should support the `AccessibleSelection` interface. Applications can determine if an object supports the `AccessibleSelection` interface by first obtaining its `AccessibleContext` (see `Accessible`) and then calling the `AccessibleContext.getAccessibleSelection()` method. If the return value is not `null`, the object supports this interface.
  See Also:
    `Accessible`, `Accessible.getAccessibleContext()`, `AccessibleContext`, `AccessibleContext.getAccessibleSelection()`

- - ### Method Summary

    Modifier and Type | Method | Description
    --- | --- | ---
    `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.
    `Accessible` | `getAccessibleSelection​(int i)` | Returns an `Accessible` representing the specified selected child of the object.
    `int` | `getAccessibleSelectionCount()` | Returns the number of `Accessible` children currently selected.
    `boolean` | `isAccessibleChildSelected​(int i)` | Determines if the current child of this object is selected.
    `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 if the object supports multiple selections.

- - ### Method Detail

    - #### getAccessibleSelectionCount

          int getAccessibleSelectionCount()

      Returns the number of `Accessible` children currently selected. If no children are selected, the return value will be 0.
      Returns:
        the number of items currently selected

    - #### getAccessibleSelection

          Accessible getAccessibleSelection​(int i)

      Returns an `Accessible` representing the specified selected child of 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.

      Parameters:
        `i` - the zero-based index of selected children
      Returns:
        the i-th selected child
      See Also:
        `getAccessibleSelectionCount()`

    - #### isAccessibleChildSelected

          boolean isAccessibleChildSelected​(int i)

      Determines if the current child of this object is selected.
      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

          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.
      Parameters:
        `i` - the zero-based index of the child
      See Also:
        `AccessibleContext.getAccessibleChild(int)`

    - #### removeAccessibleSelection

          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.
      Parameters:
        `i` - the zero-based index of the child
      See Also:
        `AccessibleContext.getAccessibleChild(int)`

    - #### clearAccessibleSelection

          void clearAccessibleSelection()

      Clears the selection in the object, so that no children in the object are selected.

    - #### selectAllAccessibleSelection

          void selectAllAccessibleSelection()

      Causes every child of the object to be selected if the object supports multiple selections.