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 necessarily 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 preceding element or null if
value
is the first element of the sequence.
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
Modifier and Type | Method | Description |
---|---|---|
void | addChangeListener(ChangeListener l) | Adds a |
Object | getNextValue() | Return the object in the sequence that comes after the object returned by |
Object | getPreviousValue() | Return the object in the sequence that comes before the object returned by |
Object | getValue() | The current element of the sequence. |
void | removeChangeListener(ChangeListener l) | Removes a |
void | setValue(Object value) | Changes current value of the model, typically this value is displayed by the |
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.
- Parameters:
-
value
- new value for the spinner - Throws:
-
IllegalArgumentException
- ifvalue
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)