Class CheckBoxProvider
- java.lang.Object
-
- org.jdesktop.swingx.renderer.ComponentProvider<javax.swing.AbstractButton>
-
- org.jdesktop.swingx.renderer.CheckBoxProvider
-
- All Implemented Interfaces:
java.io.Serializable,UIDependent
public class CheckBoxProvider extends ComponentProvider<javax.swing.AbstractButton>
A component provider which uses a JCheckBox.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:
BooleanValue,StringValue,MappedValue, Serialized Form
-
-
Field Summary
-
Fields inherited from class org.jdesktop.swingx.renderer.ComponentProvider
alignment, defaultVisuals, formatter, rendererComponent
-
-
Constructor Summary
Constructors Constructor Description CheckBoxProvider()Instantiates 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
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidconfigureState(CellContext context)Configures the rendering component's state from the given cell context.protected javax.swing.AbstractButtoncreateRendererComponent()Factory method to create and return the component to use for rendering.protected voidformat(CellContext context)Formats the renderering component's content from the given cell context.protected booleangetValueAsBoolean(CellContext context)Returns a boolean representation of the content.booleanisBorderPainted()Returns the border painted flag.voidsetBorderPainted(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, setStringValue, updateUI
-
-
-
-
Constructor Detail
-
CheckBoxProvider
public CheckBoxProvider()
Instantiates a CheckBoxProvider with default properties.
-
CheckBoxProvider
public CheckBoxProvider(StringValue stringValue)
Instantiates a CheckBoxProvider with the given StringValue and default alignment.- Parameters:
stringValue- the StringValue to use for formatting.
-
CheckBoxProvider
public CheckBoxProvider(StringValue stringValue, int alignment)
Instantiates a CheckBoxProvider with the given StringValue and alignment.- Parameters:
stringValue- the StringValue to use for formatting.alignment- the horizontalAlignment.
-
-
Method Detail
-
isBorderPainted
public boolean isBorderPainted()
Returns the border painted flag.- Returns:
- the borderpainted flag to use on the checkbox.
- See Also:
setBorderPainted(boolean)
-
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:
isBorderPainted()
-
format
protected void format(CellContext context)
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:
formatin classComponentProvider<javax.swing.AbstractButton>- Parameters:
context- the cell context to configure from, must not be null.- See Also:
getValueAsBoolean(CellContext),ComponentProvider.getValueAsString(CellContext)
-
getValueAsBoolean
protected boolean getValueAsBoolean(CellContext context)
Returns a boolean representation of the content.This method messages the
BooleanValueto 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
protected void configureState(CellContext context)
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:
configureStatein classComponentProvider<javax.swing.AbstractButton>- Parameters:
context- the cell context to configure from, must not be null.
-
createRendererComponent
protected javax.swing.AbstractButton createRendererComponent()
Factory method to create and return the component to use for rendering.Here: returns a JCheckBox as rendering component.
- Specified by:
createRendererComponentin classComponentProvider<javax.swing.AbstractButton>- Returns:
- the component to use for rendering.
-
-