Class CheckBoxProvider
- All Implemented Interfaces:
Serializable
,UIDependent
This implementation respects a BooleanValue and a StringValue to configure the button's selected and text property. By default, the selected is mapped to a Boolean-type value and the text is empty.
To allow mapping to different types, client code can supply a custom StringValue which also implements BooleanValue. F.i. to render a cell value of type TableColumnExt with the column's visibility mapped to the selected and the column's title to the text:
BooleanValue bv = new BooleanValue(){
public boolean getBoolean(Object value) {
if (value instanceof TableColumnExt)
return ((TableColumnExt) value).isVisible();
return false;
}
};
StringValue sv = new StringValue() {
public String getString(Object value) {
if (value instanceof TableColumnExt)
return ((TableColumnExt) value).getTitle();
return "";
}
};
list.setCellRenderer(new DefaultListRenderer(
new CheckBoxProvider(new MappedValue(sv, null, bv), JLabel.LEADING)));
- Author:
- Jeanette Winzenburg
- See Also:
-
Field Summary
Fields inherited from class org.jdesktop.swingx.renderer.ComponentProvider
alignment, defaultVisuals, iconValue, rendererComponent, stringValue
-
Constructor Summary
ConstructorsConstructorDescriptionInstantiates a CheckBoxProvider with default properties.CheckBoxProvider
(StringValue stringValue) Instantiates a CheckBoxProvider with the given StringValue and default alignment.CheckBoxProvider
(StringValue stringValue, int alignment) Instantiates a CheckBoxProvider with the given StringValue and alignment. -
Method Summary
Modifier and TypeMethodDescriptionprotected void
configureState
(CellContext context) Configures the rendering component's state from the given cell context.protected AbstractButton
Factory method to create and return the component to use for rendering.protected void
format
(CellContext context) Formats the renderering component's content from the given cell context.protected boolean
getValueAsBoolean
(CellContext context) Returns a boolean representation of the content.boolean
Returns the border painted flag.void
setBorderPainted
(boolean borderPainted) Sets the border painted flag.Methods inherited from class org.jdesktop.swingx.renderer.ComponentProvider
configureContent, configureVisuals, createDefaultVisuals, getDefaultVisuals, getHorizontalAlignment, getRendererComponent, getString, getStringValue, getValueAsIcon, getValueAsString, setHorizontalAlignment, setIconValue, setStringValue, updateUI
-
Constructor Details
-
CheckBoxProvider
public CheckBoxProvider()Instantiates a CheckBoxProvider with default properties. -
CheckBoxProvider
Instantiates a CheckBoxProvider with the given StringValue and default alignment.- Parameters:
stringValue
- the StringValue to use for formatting.
-
CheckBoxProvider
Instantiates a CheckBoxProvider with the given StringValue and alignment.- Parameters:
stringValue
- the StringValue to use for formatting.alignment
- the horizontalAlignment.
-
-
Method Details
-
isBorderPainted
public boolean isBorderPainted()Returns the border painted flag.- Returns:
- the borderpainted flag to use on the checkbox.
- See Also:
-
setBorderPainted
public void setBorderPainted(boolean borderPainted) Sets the border painted flag. The underlying checkbox is configured with this value on every request.The default value is true.
- Parameters:
borderPainted
- the borderPainted property to configure the underlying checkbox with.- See Also:
-
format
Formats the renderering component's content from the given cell context.Overridden to set the button's selected state and text.
PENDING: set icon?
- Specified by:
format
in classComponentProvider<AbstractButton>
- Parameters:
context
- the cell context to configure from, must not be null.- See Also:
-
getValueAsBoolean
Returns a boolean representation of the content.This method messages the
BooleanValue
to get the boolean rep. If none available, checks for Boolean type directly and returns its value. Returns false otherwise.PENDING: fallback to check for boolean is convenient .. could cleanup to use a default BooleanValue instead.
- Parameters:
context
- the cell context, must not be null.- Returns:
- the boolean representation of the cell's content, or false if none if available.
-
configureState
Configures the rendering component's state from the given cell context.Here: set's the buttons horizontal alignment and borderpainted properties to this provider's properties.
- Specified by:
configureState
in classComponentProvider<AbstractButton>
- Parameters:
context
- the cell context to configure from, must not be null.
-
createRendererComponent
Factory method to create and return the component to use for rendering.Here: returns a JCheckBox as rendering component.
- Specified by:
createRendererComponent
in classComponentProvider<AbstractButton>
- Returns:
- the component to use for rendering.
-