SingleSelectionModel (Java SE 13 & JDK 13 )
Description: declaration: module: java.desktop, package: javax.swing, interface: SingleSelectionModel
Keywords: javax.swing.SingleSelectionModel interface

Module java.desktop
Package javax.swing

# Interface SingleSelectionModel

All Known Implementing Classes:
  `DefaultSingleSelectionModel`

    public interface SingleSelectionModel

A model that supports at most one indexed selection.

Since:
  1.2

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `void` | `addChangeListener​(ChangeListener listener)` | Adds listener as a listener to changes in the model.
  `void` | `clearSelection()` | Clears the selection (to -1).
  `int` | `getSelectedIndex()` | Returns the model's selection.
  `boolean` | `isSelected()` | Returns true if the selection model currently has a selected value.
  `void` | `removeChangeListener​(ChangeListener listener)` | Removes listener as a listener to changes in the model.
  `void` | `setSelectedIndex​(int index)` | Sets the model's selected index to index.

- ## Method Details

  - ### getSelectedIndex

    int getSelectedIndex()
    Returns the model's selection.
    Returns:
      the model's selection, or -1 if there is no selection
    See Also:
      `setSelectedIndex(int)`

  - ### setSelectedIndex

    void setSelectedIndex​(int index)
    Sets the model's selected index to index. Notifies any listeners if the model changes
    Parameters:
      `index` - an int specifying the model selection
    See Also:
      `getSelectedIndex()`, `addChangeListener(javax.swing.event.ChangeListener)`

  - ### clearSelection

    void clearSelection()
    Clears the selection (to -1).

  - ### isSelected

    boolean isSelected()
    Returns true if the selection model currently has a selected value.
    Returns:
      true if a value is currently selected

  - ### addChangeListener

    void addChangeListener​(ChangeListener listener)
    Adds listener as a listener to changes in the model.
    Parameters:
      `listener` - the ChangeListener to add

  - ### removeChangeListener

    void removeChangeListener​(ChangeListener listener)
    Removes listener as a listener to changes in the model.
    Parameters:
      `listener` - the ChangeListener to remove