Class DefaultVisuals<T extends JComponent>
- All Implemented Interfaces:
Serializable
CellContext
. It's
basically re-usable across all types of renderees (JTable, JList, JTree).
Guarantees to completely configure the default visual properties (listed
below) of a given component. As a consequence, client code (f.i. in
Highlighter
s) can safely change them without long-lasting
visual artefacts.
- foreground and background, depending on selected and focused state
- border
- font
- Painter (if applicable)
- enabled
- componentOrientation
- toolTipText
- minimum-, maximum-, preferredSize
- name
PENDING: allow mutators for overruling the CellContext
s
defaults? Would prefer not to, as in the context of SwingX visual config on
the renderer level is discouraged (the way to go are Highlighter
s.
PENDING: not yet quite decided whether the toolTipText property belongs into the visual default config. Doing so gives client code the choice to set it either in a Highlighter or a custom ComponentProvider.
- Author:
- Jeanette Winzenburg
- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected void
configureBorder
(T renderingComponent, CellContext context) Configures the rendering component's border from the given cell context.protected void
configureColors
(T renderingComponent, CellContext context) Configures colors of rendering component from the given cell context.protected void
configureFocusColors
(T renderingComponent, CellContext context) Configures focus-related colors form given cell context.protected void
configurePainter
(T renderingComponent, CellContext context) Configures the default Painter if applicable.protected void
configureSizes
(T renderingComponent, CellContext context) Configures min-, max, preferredSize properties of the renderingComponent.protected void
configureState
(T renderingComponent, CellContext context) Configure "divers" visual state of the rendering component from the given cell context.void
configureVisuals
(T renderingComponent, CellContext context) Configures all default visual state of the rendering component from the given cell context.protected Color
getBackground
(CellContext context) Returns the unselected background to use for the rendering component.protected Color
getForeground
(CellContext context) Returns the unselected foreground to use for the rendering component.void
Sets the renderer's unselected-background color to the specified color.void
Sets the renderer's unselected-foreground color to the specified color.
-
Constructor Details
-
DefaultVisuals
public DefaultVisuals()
-
-
Method Details
-
setForeground
Sets the renderer's unselected-foreground color to the specified color. Ifnot null
this color will overrule the default color of the CellContext.- Parameters:
c
- set the foreground color to this value
-
setBackground
Sets the renderer's unselected-background color to the specified color. Ifnot null
this color will overrule the default color of the CellContext.- Parameters:
c
- set the background color to this value
-
configureVisuals
Configures all default visual state of the rendering component from the given cell context.- Parameters:
renderingComponent
- the component to configure, must not be nullcontext
- the cell context to configure from, must not be null- Throws:
NullPointerException
- if either renderingComponent or cellContext is null
-
configurePainter
Configures the default Painter if applicable. Here: set's to null.- Parameters:
renderingComponent
- the component to configure, must not be nullcontext
- the cell context to configure from, must not be null
-
configureState
Configure "divers" visual state of the rendering component from the given cell context.Here: synch
Font
,ComponentOrientation
andenabled
to context's component. Resets toolTipText to null. Calls configureSizes to reset xxSize if appropriate. Resets the component's name property.PENDING: not fully defined - "divers" means everything that's not
Color
s norBorder
norPainter
.- Parameters:
renderingComponent
- the component to configure, must not be nullcontext
- the cell context to configure from, must not be null
-
configureSizes
Configures min-, max, preferredSize properties of the renderingComponent. Here: set all to null.- Parameters:
renderingComponent
- the component to configure, must not be nullcontext
- the cell context to configure from, must not be null
-
configureColors
Configures colors of rendering component from the given cell context.- Parameters:
renderingComponent
- the component to configure, must not be nullcontext
- the cell context to configure from, must not be null
-
configureFocusColors
Configures focus-related colors form given cell context.PENDING: move to context as well? - it's the only comp with focus specifics? Problem is the parameter type...
- Parameters:
renderingComponent
- the component to configure, must not be nullcontext
- the cell context to configure from, must not be null
-
configureBorder
Configures the rendering component's border from the given cell context.- Parameters:
renderingComponent
- the component to configure, must not be nullcontext
- the cell context to configure from, must not be null
-
getForeground
Returns the unselected foreground to use for the rendering component.Here: returns this renderer's unselected foreground is not null, returns the foreground from the given context. In other words: the renderer's foreground takes precedence if set.
- Parameters:
context
- the cell context.- Returns:
- the unselected foreground.
-
getBackground
Returns the unselected background to use for the rendering component.Here: returns this renderer's unselected background is not null, returns the background from the given context. In other words: the renderer's background takes precedence if set.
- Parameters:
context
- the cell context.- Returns:
- the unselected background.
-