com.jgoodies.binding.adapter

Class 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));
 
Version:
$Revision: 1.9 $
Author:
Karsten Lentzsch
Since:
1.0.3
See Also:
javax.swing.colorchooser.ColorSelectionModel, javax.swing.JColorChooser

Constructor Summary

ColorSelectionAdapter(ValueModel subject)
Constructs a ColorSelectionAdapter on the given subject ValueModel.
ColorSelectionAdapter(ValueModel subject, Color defaultColor)
Constructs a ColorSelectionAdapter on the given subject ValueModel.

Method Summary

@Override
Color getSelectedColor()
Returns the selected Color which should be non-null.
@Override
void setSelectedColor(Color color)
Sets the selected color to color.

Constructor Details

ColorSelectionAdapter

public ColorSelectionAdapter(ValueModel subject)
Constructs a ColorSelectionAdapter on the given subject ValueModel.
Parameters:
subject - the subject that holds the value

ColorSelectionAdapter

public ColorSelectionAdapter(ValueModel subject,
                             Color defaultColor)
Constructs a ColorSelectionAdapter on the given subject ValueModel.
Parameters:
subject - the subject that holds the value
defaultColor - an optional default color that is used as selected color if the subject returns null

Method Details

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.
Returns:
the selected Color
See Also:
setSelectedColor(Color)

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.
Parameters:
color - the new Color
See Also:
getSelectedColor()

Copyright © 2002-2008 JGoodies Karsten Lentzsch. All Rights Reserved.