public class DefaultBoundedRangeModel extends Object implements BoundedRangeModel, Serializable
A generic implementation of BoundedRangeModel.
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
.
BoundedRangeModel
protected transient ChangeEvent changeEvent
Only one ChangeEvent
is needed per model instance since the event's only (read-only) state is the source property. The source of events generated here is always "this".
protected EventListenerList listenerList
The listeners waiting for model changes.
public DefaultBoundedRangeModel()
Initializes all of the properties with default values. Those values are:
value
= 0 extent
= 0 minimum
= 0 maximum
= 100 adjusting
= false public DefaultBoundedRangeModel(int value, int extent, int min, int max)
Initializes value, extent, minimum and maximum. Adjusting is false. Throws an IllegalArgumentException
if the following constraints aren't satisfied:
min <= value <= value+extent <= max
public int getValue()
Returns the model's current value.
getValue
in interface BoundedRangeModel
setValue(int)
, BoundedRangeModel.getValue()
public int getExtent()
Returns the model's extent.
getExtent
in interface BoundedRangeModel
setExtent(int)
, BoundedRangeModel.getExtent()
public int getMinimum()
Returns the model's minimum.
getMinimum
in interface BoundedRangeModel
setMinimum(int)
, BoundedRangeModel.getMinimum()
public int getMaximum()
Returns the model's maximum.
getMaximum
in interface BoundedRangeModel
setMaximum(int)
, BoundedRangeModel.getMaximum()
public void setValue(int n)
Sets the current value of the model. For a slider, that determines where the knob appears. Ensures that the new value, n falls within the model's constraints:
minimum <= value <= value+extent <= maximum
setValue
in interface BoundedRangeModel
n
- the model's new valueBoundedRangeModel.setValue(int)
public void setExtent(int n)
Sets the extent to n after ensuring that n is greater than or equal to zero and falls within the model's constraints:
minimum <= value <= value+extent <= maximum
setExtent
in interface BoundedRangeModel
n
- the model's new extentBoundedRangeModel.setExtent(int)
public void setMinimum(int n)
Sets the minimum to n after ensuring that n that the other three properties obey the model's constraints:
minimum <= value <= value+extent <= maximum
setMinimum
in interface BoundedRangeModel
n
- the model's new minimumgetMinimum()
, BoundedRangeModel.setMinimum(int)
public void setMaximum(int n)
Sets the maximum to n after ensuring that n that the other three properties obey the model's constraints:
minimum <= value <= value+extent <= maximum
setMaximum
in interface BoundedRangeModel
n
- the model's new maximumBoundedRangeModel.setMaximum(int)
public void setValueIsAdjusting(boolean b)
Sets the valueIsAdjusting
property.
setValueIsAdjusting
in interface BoundedRangeModel
b
- true if the upcoming changes to the value property are part of a seriesgetValueIsAdjusting()
, setValue(int)
, BoundedRangeModel.setValueIsAdjusting(boolean)
public boolean getValueIsAdjusting()
Returns true if the value is in the process of changing as a result of actions being taken by the user.
getValueIsAdjusting
in interface BoundedRangeModel
valueIsAdjusting
propertysetValue(int)
, BoundedRangeModel.getValueIsAdjusting()
public void setRangeProperties(int newValue, int newExtent, int newMin, int newMax, boolean adjusting)
Sets all of the BoundedRangeModel
properties after forcing the arguments to obey the usual constraints:
minimum <= value <= value+extent <= maximum
At most, one ChangeEvent
is generated.
setRangeProperties
in interface BoundedRangeModel
newValue
- an int giving the current valuenewExtent
- an int giving the amount by which the value can "jump"newMin
- an int giving the minimum valuenewMax
- an int giving the maximum valueadjusting
- a boolean, true if a series of changes are in progressBoundedRangeModel.setRangeProperties(int, int, int, int, boolean)
, setValue(int)
, setExtent(int)
, setMinimum(int)
, setMaximum(int)
, setValueIsAdjusting(boolean)
public void addChangeListener(ChangeListener l)
Adds a ChangeListener
. The change listeners are run each time any one of the Bounded Range model properties changes.
addChangeListener
in interface BoundedRangeModel
l
- the ChangeListener to addremoveChangeListener(javax.swing.event.ChangeListener)
, BoundedRangeModel.addChangeListener(javax.swing.event.ChangeListener)
public void removeChangeListener(ChangeListener l)
Removes a ChangeListener
.
removeChangeListener
in interface BoundedRangeModel
l
- the ChangeListener
to removeaddChangeListener(javax.swing.event.ChangeListener)
, BoundedRangeModel.removeChangeListener(javax.swing.event.ChangeListener)
public ChangeListener[] getChangeListeners()
Returns an array of all the change listeners registered on this DefaultBoundedRangeModel
.
ChangeListener
s or an empty array if no change listeners are currently registeredaddChangeListener(javax.swing.event.ChangeListener)
, removeChangeListener(javax.swing.event.ChangeListener)
protected void fireStateChanged()
Runs each ChangeListener
's stateChanged
method.
public String toString()
Returns a string that displays all of the BoundedRangeModel
properties.
public <T extends EventListener> T[] getListeners(Class<T> listenerType)
Returns an array of all the objects currently registered as FooListener
s upon this model. FooListener
s are registered using the addFooListener
method.
You can specify the listenerType
argument with a class literal, such as FooListener.class
. For example, you can query a DefaultBoundedRangeModel
instance m
for its change listeners with the following code:
ChangeListener[] cls = (ChangeListener[])(m.getListeners(ChangeListener.class));If no such listeners exist, this method returns an empty array.
listenerType
- the type of listeners requested; this parameter should specify an interface that descends from java.util.EventListener
FooListener
s on this model, or an empty array if no such listeners have been addedClassCastException
- if listenerType
doesn't specify a class or interface that implements java.util.EventListener
getChangeListeners()
© 1993–2017, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.