com.jgoodies.binding.adapter
Class ColorSelectionAdapter
DefaultColorSelectionModel
com.jgoodies.binding.adapter.ColorSelectionAdapter
public final class ColorSelectionAdapter
extends DefaultColorSelectionModel
Converts ValueModels to the ColorSelectionModel interface. Useful to bind
JColorChooser and similar classes to a ValueModel.
Constraints: The subject ValueModel must be of type Color
and must allow read-access to its value. Also, it is strongly recommended
(though not required) that the underlying ValueModel provides only non-null
values. This is so because the ColorSelectionModel behavior is undefined
for
null
values and it may have unpredictable results.
Examples:
// Recommended binding style using a factory
ValueModel model = presentationModel.getModel(MyBean.PROPERTYNAME_COLOR);
JColorChooser colorChooser = BasicComponentFactory.createColorChooser(model);
// Binding using the Bindings class
ValueModel model = presentationModel.getModel(MyBean.PROPERTYNAME_COLOR);
JColorChooser colorChooser = new JColorChooser();
Bindings.bind(colorChooser, model);
// Hand-made binding
ValueModel model = presentationModel.getModel(MyBean.PROPERTYNAME_COLOR);
JColorChooser colorChooser = new JColorChooser(new ColorSelectionAdapter(model));
javax.swing.colorchooser.ColorSelectionModel
, javax.swing.JColorChooser
ColorSelectionAdapter
public ColorSelectionAdapter(ValueModel subject)
Constructs a ColorSelectionAdapter on the given subject ValueModel.
subject
- the subject that holds the value
ColorSelectionAdapter
public ColorSelectionAdapter(ValueModel subject,
Color defaultColor)
Constructs a ColorSelectionAdapter on the given subject ValueModel.
subject
- the subject that holds the valuedefaultColor
- an optional default color that is used as
selected color if the subject returns null
Color getSelectedColor
public @Override Color getSelectedColor()
Returns the selected Color which should be non-null
.
The return value is the subject value model's value, if non-null,
otherwise the default color. Note that the latter may be null too.
void setSelectedColor
public @Override void setSelectedColor(Color color)
Sets the selected color to color
.
Note that setting the color to null
is undefined and may have unpredictable results.
This method fires a state changed event if it sets the
current color to a new non-null
color.
Copyright © 2002-2007 JGoodies Karsten Lentzsch. All Rights Reserved.