Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Java™ Platform Standard Ed. 6
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## javax.swing
Interface SpinnerModel

All Known Implementing Classes:
  AbstractSpinnerModel, SpinnerDateModel, SpinnerListModel, SpinnerNumberModel

    public interface SpinnerModel

A model for a potentially unbounded sequence of object values. This model is similar to `ListModel` however there are some important differences:

- The number of sequence elements isn't neccessarily bounded.
- The model doesn't support indexed random access to sequence elements. Only three sequence values are accessible at a time: current, next and previous.
- The current sequence element, can be set.

A `SpinnerModel` has three properties, only the first is read/write.

`value`
  The current element of the sequence.
`nextValue`
  The following element or null if `value` is the last element of the sequence.
`previousValue`
  The preceeding element or null if `value` is the first element of the sequence.

When the the `value` property changes, `ChangeListeners` are notified. `SpinnerModel` may choose to notify the `ChangeListeners` under other circumstances.

Since:
  1.4
See Also:
  `JSpinner`, `AbstractSpinnerModel`, `SpinnerListModel`, `SpinnerNumberModel`, `SpinnerDateModel`

Method Summary
`void` | `addChangeListener(ChangeListener l)` Adds a `ChangeListener` to the model's listener list.
`Object` | `getNextValue()` Return the object in the sequence that comes after the object returned by `getValue()`.
`Object` | `getPreviousValue()` Return the object in the sequence that comes before the object returned by `getValue()`.
`Object` | `getValue()` The current element of the sequence.
`void` | `removeChangeListener(ChangeListener l)` Removes a `ChangeListener` from the model's listener list.
`void` | `setValue(Object value)` Changes current value of the model, typically this value is displayed by the `editor` part of a `JSpinner`.

Method Detail

### getValue

    Object getValue()

  The current element of the sequence. This element is usually displayed by the `editor` part of a `JSpinner`.

  Returns:
    the current spinner value.
  See Also:
    `setValue(java.lang.Object)`

### setValue

    void setValue(Object value)

  Changes current value of the model, typically this value is displayed by the `editor` part of a `JSpinner`. If the `SpinnerModel` implementation doesn't support the specified value then an `IllegalArgumentException` is thrown. For example a `SpinnerModel` for numbers might only support values that are integer multiples of ten. In that case, `model.setValue(new Number(11))` would throw an exception.

  Throws:
    `IllegalArgumentException` - if `value` isn't allowed
  See Also:
    `getValue()`

### getNextValue

    Object getNextValue()

  Return the object in the sequence that comes after the object returned by `getValue()`. If the end of the sequence has been reached then return null. Calling this method does not effect `value`.

  Returns:
    the next legal value or null if one doesn't exist
  See Also:
    `getValue()`, `getPreviousValue()`

### getPreviousValue

    Object getPreviousValue()

  Return the object in the sequence that comes before the object returned by `getValue()`. If the end of the sequence has been reached then return null. Calling this method does not effect `value`.

  Returns:
    the previous legal value or null if one doesn't exist
  See Also:
    `getValue()`, `getNextValue()`

### addChangeListener

    void addChangeListener(ChangeListener l)

  Adds a `ChangeListener` to the model's listener list. The `ChangeListeners` must be notified when models `value` changes.

  Parameters:
    `l` - the ChangeListener to add
  See Also:
    `removeChangeListener(javax.swing.event.ChangeListener)`

### removeChangeListener

    void removeChangeListener(ChangeListener l)

  Removes a `ChangeListener` from the model's listener list.

  Parameters:
    `l` - the ChangeListener to remove
  See Also:
    `addChangeListener(javax.swing.event.ChangeListener)`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Java™ Platform Standard Ed. 6
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Submit a bug or feature
For further API reference and developer documentation, see Java SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Copyright 2008 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.