Merge PR #414: CheckBox and RadioButton improvements

This commit is contained in:
Karl Tauber
2021-11-04 00:08:07 +01:00
19 changed files with 285 additions and 135 deletions

View File

@@ -34,8 +34,14 @@ FlatLaf Change Log
- if moving focus into the toolbar, focus recently focused toolbar button
- ComboBox, Spinner, TextField and subclasses: Support specifying width of
border (see UI value `Component.borderWidth`).
- CheckBox and RadioButton: Support specifying width of icon border (see UI
value `CheckBox.icon.borderWidth`).
- CheckBox and RadioButton:
- Made selected icon better recognizable in **FlatLaf Light** (use blue
border), **Dark** and **Darcula** (use lighter border) themes. **IntelliJ**
theme is not changed.
- Support specifying width of icon border (see UI value
`CheckBox.icon.borderWidth`).
- Reworked icon UI defaults and added missing ones. **Note**: There are minor
incompatible changes in FlatLaf properties files.
- Slider: Support specifying width of thumb border (see UI value
`Slider.thumbBorderWidth`).
- Added more color functions to class `ColorFunctions` for easy use in

View File

@@ -504,7 +504,7 @@ public class IntelliJTheme
// for filled checkbox/radiobutton used in light themes
defaults.remove( "CheckBox.icon[filled].focusWidth" );
defaults.put( "CheckBox.icon[filled].hoverBorderColor", defaults.get( "CheckBox.icon[filled].focusedBorderColor" ) );
defaults.put( "CheckBox.icon[filled].selectedFocusedBackground", defaults.get( "CheckBox.icon[filled].selectedBackground" ) );
defaults.put( "CheckBox.icon[filled].focusedSelectedBackground", defaults.get( "CheckBox.icon[filled].selectedBackground" ) );
if( dark ) {
// IDEA Darcula checkBoxFocused.svg, checkBoxSelectedFocused.svg,
@@ -513,9 +513,9 @@ public class IntelliJTheme
// --> add alpha to focused border colors
String[] focusedBorderColorKeys = new String[] {
"CheckBox.icon.focusedBorderColor",
"CheckBox.icon.selectedFocusedBorderColor",
"CheckBox.icon.focusedSelectedBorderColor",
"CheckBox.icon[filled].focusedBorderColor",
"CheckBox.icon[filled].selectedFocusedBorderColor",
"CheckBox.icon[filled].focusedSelectedBorderColor",
};
for( String key : focusedBorderColorKeys ) {
Color color = defaults.getColor( key );
@@ -624,7 +624,7 @@ public class IntelliJTheme
checkboxKeyMapping.put( "Checkbox.Background.Selected", "CheckBox.icon.selectedBackground" );
checkboxKeyMapping.put( "Checkbox.Border.Selected", "CheckBox.icon.selectedBorderColor" );
checkboxKeyMapping.put( "Checkbox.Foreground.Selected", "CheckBox.icon.checkmarkColor" );
checkboxKeyMapping.put( "Checkbox.Focus.Thin.Selected", "CheckBox.icon.selectedFocusedBorderColor" );
checkboxKeyMapping.put( "Checkbox.Focus.Thin.Selected", "CheckBox.icon.focusedSelectedBorderColor" );
checkboxDuplicateColors.put( "Checkbox.Background.Default.Dark", "Checkbox.Background.Selected.Dark" );
checkboxDuplicateColors.put( "Checkbox.Border.Default.Dark", "Checkbox.Border.Selected.Dark" );

View File

@@ -44,8 +44,11 @@ import com.formdev.flatlaf.ui.FlatUIUtils;
* @uiDefault Component.focusWidth int
* @uiDefault Component.borderWidth int
* @uiDefault Component.focusColor Color
* @uiDefault CheckBox.icon.focusWidth int optional; defaults to Component.focusWidth
* @uiDefault CheckBox.icon.focusWidth int or float optional; defaults to Component.focusWidth
* @uiDefault CheckBox.icon.borderWidth int or float optional; defaults to Component.borderWidth
* @uiDefault CheckBox.icon.selectedBorderWidth int or float optional; defaults to CheckBox.icon.borderWidth
* @uiDefault CheckBox.icon.disabledSelectedBorderWidth int or float optional; defaults to CheckBox.icon.selectedBorderWidth
* @uiDefault CheckBox.arc int
*
* @uiDefault CheckBox.icon.focusColor Color optional; defaults to Component.focusColor
* @uiDefault CheckBox.icon.borderColor Color
@@ -53,33 +56,42 @@ import com.formdev.flatlaf.ui.FlatUIUtils;
* @uiDefault CheckBox.icon.selectedBorderColor Color
* @uiDefault CheckBox.icon.selectedBackground Color
* @uiDefault CheckBox.icon.checkmarkColor Color
*
* @uiDefault CheckBox.icon.disabledBorderColor Color
* @uiDefault CheckBox.icon.disabledBackground Color
* @uiDefault CheckBox.icon.disabledSelectedBorderColor Color optional; CheckBox.icon.disabledBorderColor is used if not specified
* @uiDefault CheckBox.icon.disabledSelectedBackground Color optional; CheckBox.icon.disabledBackground is used if not specified
* @uiDefault CheckBox.icon.disabledCheckmarkColor Color
*
* @uiDefault CheckBox.icon.focusedBorderColor Color optional
* @uiDefault CheckBox.icon.focusedBackground Color optional
* @uiDefault CheckBox.icon.selectedFocusedBorderColor Color optional; CheckBox.icon.focusedBorderColor is used if not specified
* @uiDefault CheckBox.icon.selectedFocusedBackground Color optional; CheckBox.icon.focusedBackground is used if not specified
* @uiDefault CheckBox.icon.selectedFocusedCheckmarkColor Color optional; CheckBox.icon.checkmarkColor is used if not specified
* @uiDefault CheckBox.icon.focusedSelectedBorderColor Color optional; CheckBox.icon.focusedBorderColor is used if not specified
* @uiDefault CheckBox.icon.focusedSelectedBackground Color optional; CheckBox.icon.focusedBackground is used if not specified
* @uiDefault CheckBox.icon.focusedCheckmarkColor Color optional; CheckBox.icon.checkmarkColor is used if not specified
*
* @uiDefault CheckBox.icon.hoverBorderColor Color optional
* @uiDefault CheckBox.icon.hoverBackground Color optional
* @uiDefault CheckBox.icon.selectedHoverBackground Color optional; CheckBox.icon.hoverBackground is used if not specified
* @uiDefault CheckBox.icon.hoverSelectedBorderColor Color optional; CheckBox.icon.hoverBorderColor is used if not specified
* @uiDefault CheckBox.icon.hoverSelectedBackground Color optional; CheckBox.icon.hoverBackground is used if not specified
* @uiDefault CheckBox.icon.hoverCheckmarkColor Color optional; CheckBox.icon.checkmarkColor is used if not specified
*
* @uiDefault CheckBox.icon.pressedBorderColor Color optional
* @uiDefault CheckBox.icon.pressedBackground Color optional
* @uiDefault CheckBox.icon.selectedPressedBackground Color optional; CheckBox.icon.pressedBackground is used if not specified
* @uiDefault CheckBox.arc int
* @uiDefault CheckBox.icon.pressedSelectedBorderColor Color optional; CheckBox.icon.pressedBorderColor is used if not specified
* @uiDefault CheckBox.icon.pressedSelectedBackground Color optional; CheckBox.icon.pressedBackground is used if not specified
* @uiDefault CheckBox.icon.pressedCheckmarkColor Color optional; CheckBox.icon.checkmarkColor is used if not specified
*
* @author Karl Tauber
*/
public class FlatCheckBoxIcon
extends FlatAbstractIcon
{
protected final String style = UIManager.getString( "CheckBox.icon.style" );
@Styleable public int focusWidth = getUIInt( "CheckBox.icon.focusWidth",
UIManager.getInt( "Component.focusWidth" ), style );
@Styleable protected Color focusColor = FlatUIUtils.getUIColor( "CheckBox.icon.focusColor",
UIManager.getColor( "Component.focusColor" ) );
/** @since 2 */ @Styleable protected float borderWidth = getUIFloat( "CheckBox.icon.borderWidth",
FlatUIUtils.getUIFloat( "Component.borderWidth", 1 ), style );
protected final String style = UIManager.getString( getPropertyPrefix() + "icon.style" );
@Styleable protected float focusWidth = getUIFloat( "CheckBox.icon.focusWidth", UIManager.getInt( "Component.focusWidth" ), style );
@Styleable protected Color focusColor = FlatUIUtils.getUIColor( "CheckBox.icon.focusColor", UIManager.getColor( "Component.focusColor" ) );
/** @since 2 */ @Styleable protected float borderWidth = getUIFloat( "CheckBox.icon.borderWidth", FlatUIUtils.getUIFloat( "Component.borderWidth", 1 ), style );
/** @since 2 */ @Styleable protected float selectedBorderWidth = getUIFloat( "CheckBox.icon.selectedBorderWidth", Float.MIN_VALUE, style );
/** @since 2 */ @Styleable protected float disabledSelectedBorderWidth = getUIFloat( "CheckBox.icon.disabledSelectedBorderWidth", Float.MIN_VALUE, style );
@Styleable protected int arc = FlatUIUtils.getUIInt( "CheckBox.arc", 2 );
// enabled
@@ -92,23 +104,34 @@ public class FlatCheckBoxIcon
// disabled
@Styleable protected Color disabledBorderColor = getUIColor( "CheckBox.icon.disabledBorderColor", style );
@Styleable protected Color disabledBackground = getUIColor( "CheckBox.icon.disabledBackground", style );
/** @since 2 */ @Styleable protected Color disabledSelectedBorderColor = getUIColor( "CheckBox.icon.disabledSelectedBorderColor", style );
/** @since 2 */ @Styleable protected Color disabledSelectedBackground = getUIColor( "CheckBox.icon.disabledSelectedBackground", style );
@Styleable protected Color disabledCheckmarkColor = getUIColor( "CheckBox.icon.disabledCheckmarkColor", style );
// focused
@Styleable protected Color focusedBorderColor = getUIColor( "CheckBox.icon.focusedBorderColor", style );
@Styleable protected Color focusedBackground = getUIColor( "CheckBox.icon.focusedBackground", style );
@Styleable protected Color selectedFocusedBorderColor = getUIColor( "CheckBox.icon.selectedFocusedBorderColor", style );
@Styleable protected Color selectedFocusedBackground = getUIColor( "CheckBox.icon.selectedFocusedBackground", style );
@Styleable protected Color selectedFocusedCheckmarkColor = getUIColor( "CheckBox.icon.selectedFocusedCheckmarkColor", style );
/** @since 2 */ @Styleable protected Color focusedSelectedBorderColor = getUIColor( "CheckBox.icon.focusedSelectedBorderColor", style );
/** @since 2 */ @Styleable protected Color focusedSelectedBackground = getUIColor( "CheckBox.icon.focusedSelectedBackground", style );
/** @since 2 */ @Styleable protected Color focusedCheckmarkColor = getUIColor( "CheckBox.icon.focusedCheckmarkColor", style );
// hover
@Styleable protected Color hoverBorderColor = getUIColor( "CheckBox.icon.hoverBorderColor", style );
@Styleable protected Color hoverBackground = getUIColor( "CheckBox.icon.hoverBackground", style );
@Styleable protected Color selectedHoverBackground = getUIColor( "CheckBox.icon.selectedHoverBackground", style );
/** @since 2 */ @Styleable protected Color hoverSelectedBorderColor = getUIColor( "CheckBox.icon.hoverSelectedBorderColor", style );
/** @since 2 */ @Styleable protected Color hoverSelectedBackground = getUIColor( "CheckBox.icon.hoverSelectedBackground", style );
/** @since 2 */ @Styleable protected Color hoverCheckmarkColor = getUIColor( "CheckBox.icon.hoverCheckmarkColor", style );
// pressed
/** @since 2 */ @Styleable protected Color pressedBorderColor = getUIColor( "CheckBox.icon.pressedBorderColor", style );
@Styleable protected Color pressedBackground = getUIColor( "CheckBox.icon.pressedBackground", style );
@Styleable protected Color selectedPressedBackground = getUIColor( "CheckBox.icon.selectedPressedBackground", style );
/** @since 2 */ @Styleable protected Color pressedSelectedBorderColor = getUIColor( "CheckBox.icon.pressedSelectedBorderColor", style );
/** @since 2 */ @Styleable protected Color pressedSelectedBackground = getUIColor( "CheckBox.icon.pressedSelectedBackground", style );
/** @since 2 */ @Styleable protected Color pressedCheckmarkColor = getUIColor( "CheckBox.icon.pressedCheckmarkColor", style );
protected String getPropertyPrefix() {
return "CheckBox.";
}
protected static Color getUIColor( String key, String style ) {
if( style != null ) {
@@ -119,15 +142,6 @@ public class FlatCheckBoxIcon
return UIManager.getColor( key );
}
protected static int getUIInt( String key, int defaultValue, String style ) {
if( style != null ) {
int value = FlatUIUtils.getUIInt( styleKey( key, style ), Integer.MIN_VALUE );
if( value != Integer.MIN_VALUE )
return value;
}
return FlatUIUtils.getUIInt( key, defaultValue );
}
/** @since 2 */
protected static float getUIFloat( String key, float defaultValue, String style ) {
if( style != null ) {
@@ -163,6 +177,11 @@ public class FlatCheckBoxIcon
boolean indeterminate = isIndeterminate( c );
boolean selected = indeterminate || isSelected( c );
boolean isFocused = FlatUIUtils.isPermanentFocusOwner( c );
float bw = selected
? (disabledSelectedBorderWidth != Float.MIN_VALUE && !c.isEnabled()
? disabledSelectedBorderWidth
: (selectedBorderWidth != Float.MIN_VALUE ? selectedBorderWidth : borderWidth))
: borderWidth;
// paint focused border
if( isFocused && focusWidth > 0 && FlatButtonUI.isFocusPainted( c ) ) {
@@ -172,7 +191,7 @@ public class FlatCheckBoxIcon
// paint border
g.setColor( getBorderColor( c, selected ) );
paintBorder( c, g );
paintBorder( c, g, bw );
// paint background
Color bg = FlatUIUtils.deriveColor( getBackground( c, selected ),
@@ -180,14 +199,14 @@ public class FlatCheckBoxIcon
if( bg.getAlpha() < 255 ) {
// fill background with default color before filling with non-opaque background
g.setColor( selected ? selectedBackground : background );
paintBackground( c, g );
paintBackground( c, g, bw );
}
g.setColor( bg );
paintBackground( c, g );
paintBackground( c, g, bw );
// paint checkmark
if( selected || indeterminate ) {
g.setColor( getCheckmarkColor( c, selected, isFocused ) );
if( selected ) {
g.setColor( getCheckmarkColor( c ) );
if( indeterminate )
paintIndeterminate( c, g );
else
@@ -197,20 +216,23 @@ public class FlatCheckBoxIcon
protected void paintFocusBorder( Component c, Graphics2D g ) {
// the outer focus border is painted outside of the icon
int wh = ICON_SIZE - 1 + (focusWidth * 2);
int arcwh = arc + (focusWidth * 2);
g.fillRoundRect( -focusWidth + 1, -focusWidth, wh, wh, arcwh, arcwh );
float wh = ICON_SIZE - 1 + (focusWidth * 2);
float arcwh = arc + (focusWidth * 2);
g.fill( new RoundRectangle2D.Float( -focusWidth + 1, -focusWidth, wh, wh, arcwh, arcwh ) );
}
protected void paintBorder( Component c, Graphics2D g ) {
protected void paintBorder( Component c, Graphics2D g, float borderWidth ) {
if( borderWidth == 0 )
return;
int arcwh = arc;
g.fillRoundRect( 1, 0, 14, 14, arcwh, arcwh );
}
protected void paintBackground( Component c, Graphics2D g ) {
protected void paintBackground( Component c, Graphics2D g, float borderWidth ) {
float xy = borderWidth;
float wh = 14 - (borderWidth * 2);
int arcwh = arc - 1;
float arcwh = arc - borderWidth;
g.fill( new RoundRectangle2D.Float( 1 + xy, xy, wh, wh, arcwh, arcwh ) );
}
@@ -236,6 +258,11 @@ public class FlatCheckBoxIcon
return c instanceof AbstractButton && ((AbstractButton)c).isSelected();
}
/** @since 2 */
public float getFocusWidth() {
return focusWidth;
}
protected Color getFocusColor( Component c ) {
return focusColor;
}
@@ -243,26 +270,27 @@ public class FlatCheckBoxIcon
protected Color getBorderColor( Component c, boolean selected ) {
return FlatButtonUI.buttonStateColor( c,
selected ? selectedBorderColor : borderColor,
disabledBorderColor,
selected && selectedFocusedBorderColor != null ? selectedFocusedBorderColor : focusedBorderColor,
hoverBorderColor,
null );
(selected && disabledSelectedBorderColor != null) ? disabledSelectedBorderColor : disabledBorderColor,
(selected && focusedSelectedBorderColor != null) ? focusedSelectedBorderColor : focusedBorderColor,
(selected && hoverSelectedBorderColor != null) ? hoverSelectedBorderColor : hoverBorderColor,
(selected && pressedSelectedBorderColor != null) ? pressedSelectedBorderColor : pressedBorderColor );
}
protected Color getBackground( Component c, boolean selected ) {
return FlatButtonUI.buttonStateColor( c,
selected ? selectedBackground : background,
disabledBackground,
(selected && selectedFocusedBackground != null) ? selectedFocusedBackground : focusedBackground,
(selected && selectedHoverBackground != null) ? selectedHoverBackground : hoverBackground,
(selected && selectedPressedBackground != null) ? selectedPressedBackground : pressedBackground );
(selected && disabledSelectedBackground != null) ? disabledSelectedBackground : disabledBackground,
(selected && focusedSelectedBackground != null) ? focusedSelectedBackground : focusedBackground,
(selected && hoverSelectedBackground != null) ? hoverSelectedBackground : hoverBackground,
(selected && pressedSelectedBackground != null) ? pressedSelectedBackground : pressedBackground );
}
protected Color getCheckmarkColor( Component c, boolean selected, boolean isFocused ) {
return c.isEnabled()
? ((selected && isFocused && selectedFocusedCheckmarkColor != null)
? selectedFocusedCheckmarkColor
: checkmarkColor)
: disabledCheckmarkColor;
protected Color getCheckmarkColor( Component c ) {
return FlatButtonUI.buttonStateColor( c,
checkmarkColor,
disabledCheckmarkColor,
focusedCheckmarkColor,
hoverCheckmarkColor,
pressedCheckmarkColor );
}
}

View File

@@ -29,6 +29,7 @@ import com.formdev.flatlaf.ui.FlatStylingSupport.Styleable;
* is painted outside of the icon bounds. Make sure that the radiobutton
* has margins, which are equal or greater than focusWidth.
*
* @uiDefault RadioButton.icon.style String optional; "outlined"/null (default) or "filled"
* @uiDefault RadioButton.icon.centerDiameter int or float
*
* @author Karl Tauber
@@ -39,19 +40,27 @@ public class FlatRadioButtonIcon
@Styleable protected float centerDiameter = getUIFloat( "RadioButton.icon.centerDiameter", 8, style );
@Override
protected void paintFocusBorder( Component c, Graphics2D g ) {
// the outer focus border is painted outside of the icon
int wh = ICON_SIZE + (focusWidth * 2);
g.fillOval( -focusWidth, -focusWidth, wh, wh );
protected String getPropertyPrefix() {
return "RadioButton.";
}
@Override
protected void paintBorder( Component c, Graphics2D g ) {
protected void paintFocusBorder( Component c, Graphics2D g ) {
// the outer focus border is painted outside of the icon
float wh = ICON_SIZE + (focusWidth * 2);
g.fill( new Ellipse2D.Float( -focusWidth, -focusWidth, wh, wh ) );
}
@Override
protected void paintBorder( Component c, Graphics2D g, float borderWidth ) {
if( borderWidth == 0 )
return;
g.fillOval( 0, 0, 15, 15 );
}
@Override
protected void paintBackground( Component c, Graphics2D g ) {
protected void paintBackground( Component c, Graphics2D g, float borderWidth ) {
float xy = borderWidth;
float wh = 15 - (borderWidth * 2);
g.fill( new Ellipse2D.Float( xy, xy, wh, wh ) );

View File

@@ -28,6 +28,7 @@ import java.util.Map;
import java.util.Objects;
import javax.swing.AbstractButton;
import javax.swing.CellRendererPane;
import javax.swing.Icon;
import javax.swing.JComponent;
import javax.swing.LookAndFeel;
import javax.swing.UIManager;
@@ -279,8 +280,12 @@ public class FlatRadioButtonUI
private int getIconFocusWidth( JComponent c ) {
AbstractButton b = (AbstractButton) c;
return (b.getIcon() == null && getDefaultIcon() instanceof FlatCheckBoxIcon)
? UIScale.scale( ((FlatCheckBoxIcon)getDefaultIcon()).focusWidth )
Icon icon = b.getIcon();
if( icon == null )
icon = getDefaultIcon();
return (icon instanceof FlatCheckBoxIcon)
? Math.round( UIScale.scale( ((FlatCheckBoxIcon)icon).getFocusWidth() ) )
: 0;
}

View File

@@ -46,6 +46,7 @@ Button.default.boldText = true
#---- CheckBox ----
CheckBox.icon.focusWidth = null
CheckBox.icon.focusedBackground = null

View File

@@ -128,10 +128,12 @@ Button.toolbar.selectedBackground = lighten($Button.background,7%,derived)
#---- CheckBox ----
CheckBox.icon.focusWidth = 1
# enabled
CheckBox.icon.borderColor = tint($Component.borderColor,5%)
CheckBox.icon.background = tint(@background,5%)
CheckBox.icon.selectedBorderColor = $CheckBox.icon.borderColor
CheckBox.icon.selectedBorderColor = tint($CheckBox.icon.borderColor,20%)
CheckBox.icon.selectedBackground = $CheckBox.icon.background
CheckBox.icon.checkmarkColor = shade(@foreground,10%)
@@ -149,18 +151,19 @@ CheckBox.icon.hoverBorderColor = $CheckBox.icon.focusedBorderColor
CheckBox.icon.hoverBackground = lighten($CheckBox.icon.background,3%,derived)
# pressed
CheckBox.icon.pressedBorderColor = $CheckBox.icon.focusedBorderColor
CheckBox.icon.pressedBackground = lighten($CheckBox.icon.background,6%,derived)
# used if CheckBox.icon.style = filled
# used if CheckBox.icon.style or RadioButton.icon.style = filled
# enabled
CheckBox.icon[filled].selectedBorderColor = $CheckBox.icon.checkmarkColor
CheckBox.icon[filled].selectedBackground = $CheckBox.icon.checkmarkColor
CheckBox.icon[filled].checkmarkColor = $CheckBox.icon.background
# hover
CheckBox.icon[filled].selectedHoverBackground = darken($CheckBox.icon[filled].selectedBackground,3%,derived)
CheckBox.icon[filled].hoverSelectedBackground = darken($CheckBox.icon[filled].selectedBackground,3%,derived)
# pressed
CheckBox.icon[filled].selectedPressedBackground = darken($CheckBox.icon[filled].selectedBackground,6%,derived)
CheckBox.icon[filled].pressedSelectedBackground = darken($CheckBox.icon[filled].selectedBackground,6%,derived)
#---- CheckBoxMenuItem ----

View File

@@ -54,6 +54,7 @@ Button.default.borderWidth = 1
#---- CheckBox ----
CheckBox.icon.style = filled
CheckBox.icon.focusWidth = null
CheckBox.icon.focusedBackground = null
@@ -63,3 +64,8 @@ Component.focusWidth = 2
Component.innerFocusWidth = 0
Component.innerOutlineWidth = 0
Component.arrowType = triangle
#---- RadioButton ----
RadioButton.icon.style = filled

View File

@@ -131,17 +131,19 @@ Button.toolbar.selectedBackground = $Button.selectedBackground
#---- CheckBox ----
CheckBox.icon.focusWidth = 1
# enabled
CheckBox.icon.borderColor = shade($Component.borderColor,10%)
CheckBox.icon.background = @buttonBackground
CheckBox.icon.selectedBorderColor = $CheckBox.icon.borderColor
CheckBox.icon.selectedBorderColor = $CheckBox.icon.checkmarkColor
CheckBox.icon.selectedBackground = $CheckBox.icon.background
CheckBox.icon.checkmarkColor = @accentCheckmarkColor
# disabled
CheckBox.icon.disabledBorderColor = tint($CheckBox.icon.borderColor,20%)
CheckBox.icon.disabledBackground = @disabledBackground
CheckBox.icon.disabledCheckmarkColor = shade(@background,30%)
CheckBox.icon.disabledCheckmarkColor = lighten(changeSaturation($CheckBox.icon.checkmarkColor,0%),5%)
# focused
CheckBox.icon.focusedBorderColor = shade($Component.focusedBorderColor,10%)
@@ -152,22 +154,23 @@ CheckBox.icon.hoverBorderColor = $CheckBox.icon.focusedBorderColor
CheckBox.icon.hoverBackground = darken($CheckBox.icon.background,3%,derived)
# pressed
CheckBox.icon.pressedBorderColor = $CheckBox.icon.focusedBorderColor
CheckBox.icon.pressedBackground = darken($CheckBox.icon.background,10%,derived)
# used if CheckBox.icon.style = filled
# used if CheckBox.icon.style or RadioButton.icon.style = filled
# enabled
CheckBox.icon[filled].selectedBorderColor = shade($CheckBox.icon[filled].selectedBackground,5%)
CheckBox.icon[filled].selectedBackground = @accentCheckmarkColor
CheckBox.icon[filled].checkmarkColor = @buttonBackground
# focused
CheckBox.icon[filled].selectedFocusedBorderColor = tint($CheckBox.icon[filled].selectedBackground,50%)
CheckBox.icon[filled].selectedFocusedBackground = $CheckBox.icon[filled].selectedBackground
CheckBox.icon[filled].selectedFocusedCheckmarkColor = $CheckBox.icon.focusedBackground
CheckBox.icon[filled].focusedSelectedBorderColor = tint($CheckBox.icon[filled].selectedBackground,50%)
CheckBox.icon[filled].focusedSelectedBackground = $CheckBox.icon[filled].selectedBackground
CheckBox.icon[filled].focusedCheckmarkColor = $CheckBox.icon.focusedBackground
# hover
CheckBox.icon[filled].selectedHoverBackground = darken($CheckBox.icon[filled].selectedBackground,5%,derived)
CheckBox.icon[filled].hoverSelectedBackground = darken($CheckBox.icon[filled].selectedBackground,5%,derived)
# pressed
CheckBox.icon[filled].selectedPressedBackground = darken($CheckBox.icon[filled].selectedBackground,10%,derived)
CheckBox.icon[filled].pressedSelectedBackground = darken($CheckBox.icon[filled].selectedBackground,10%,derived)
#---- CheckBoxMenuItem ----

View File

@@ -469,9 +469,11 @@ public class TestFlatStyleableInfo
//---- icon ----
"icon.focusWidth", int.class,
"icon.focusWidth", float.class,
"icon.focusColor", Color.class,
"icon.borderWidth", float.class,
"icon.selectedBorderWidth", float.class,
"icon.disabledSelectedBorderWidth", float.class,
"icon.arc", int.class,
// enabled
@@ -484,23 +486,30 @@ public class TestFlatStyleableInfo
// disabled
"icon.disabledBorderColor", Color.class,
"icon.disabledBackground", Color.class,
"icon.disabledSelectedBorderColor", Color.class,
"icon.disabledSelectedBackground", Color.class,
"icon.disabledCheckmarkColor", Color.class,
// focused
"icon.focusedBorderColor", Color.class,
"icon.focusedBackground", Color.class,
"icon.selectedFocusedBorderColor", Color.class,
"icon.selectedFocusedBackground", Color.class,
"icon.selectedFocusedCheckmarkColor", Color.class,
"icon.focusedSelectedBorderColor", Color.class,
"icon.focusedSelectedBackground", Color.class,
"icon.focusedCheckmarkColor", Color.class,
// hover
"icon.hoverBorderColor", Color.class,
"icon.hoverBackground", Color.class,
"icon.selectedHoverBackground", Color.class,
"icon.hoverSelectedBorderColor", Color.class,
"icon.hoverSelectedBackground", Color.class,
"icon.hoverCheckmarkColor", Color.class,
// pressed
"icon.pressedBorderColor", Color.class,
"icon.pressedBackground", Color.class,
"icon.selectedPressedBackground", Color.class
"icon.pressedSelectedBorderColor", Color.class,
"icon.pressedSelectedBackground", Color.class,
"icon.pressedCheckmarkColor", Color.class
);
}
@@ -1040,9 +1049,11 @@ public class TestFlatStyleableInfo
private void flatCheckBoxIcon( Map<String, Class<?>> expected ) {
expectedMap( expected,
"focusWidth", int.class,
"focusWidth", float.class,
"focusColor", Color.class,
"borderWidth", float.class,
"selectedBorderWidth", float.class,
"disabledSelectedBorderWidth", float.class,
"arc", int.class,
// enabled
@@ -1055,23 +1066,30 @@ public class TestFlatStyleableInfo
// disabled
"disabledBorderColor", Color.class,
"disabledBackground", Color.class,
"disabledSelectedBorderColor", Color.class,
"disabledSelectedBackground", Color.class,
"disabledCheckmarkColor", Color.class,
// focused
"focusedBorderColor", Color.class,
"focusedBackground", Color.class,
"selectedFocusedBorderColor", Color.class,
"selectedFocusedBackground", Color.class,
"selectedFocusedCheckmarkColor", Color.class,
"focusedSelectedBorderColor", Color.class,
"focusedSelectedBackground", Color.class,
"focusedCheckmarkColor", Color.class,
// hover
"hoverBorderColor", Color.class,
"hoverBackground", Color.class,
"selectedHoverBackground", Color.class,
"hoverSelectedBorderColor", Color.class,
"hoverSelectedBackground", Color.class,
"hoverCheckmarkColor", Color.class,
// pressed
"pressedBorderColor", Color.class,
"pressedBackground", Color.class,
"selectedPressedBackground", Color.class
"pressedSelectedBorderColor", Color.class,
"pressedSelectedBackground", Color.class,
"pressedCheckmarkColor", Color.class
);
}

View File

@@ -608,9 +608,11 @@ public class TestFlatStyling
//---- icon ----
ui.applyStyle( b, "icon.focusWidth: 2" );
ui.applyStyle( b, "icon.focusWidth: 1.5" );
ui.applyStyle( b, "icon.focusColor: #fff" );
ui.applyStyle( b, "icon.borderWidth: 1" );
ui.applyStyle( b, "icon.borderWidth: 1.5" );
ui.applyStyle( b, "icon.selectedBorderWidth: 1.5" );
ui.applyStyle( b, "icon.disabledSelectedBorderWidth: 1.5" );
ui.applyStyle( b, "icon.arc: 5" );
// enabled
@@ -623,23 +625,30 @@ public class TestFlatStyling
// disabled
ui.applyStyle( b, "icon.disabledBorderColor: #fff" );
ui.applyStyle( b, "icon.disabledBackground: #fff" );
ui.applyStyle( b, "icon.disabledSelectedBorderColor: #fff" );
ui.applyStyle( b, "icon.disabledSelectedBackground: #fff" );
ui.applyStyle( b, "icon.disabledCheckmarkColor: #fff" );
// focused
ui.applyStyle( b, "icon.focusedBorderColor: #fff" );
ui.applyStyle( b, "icon.focusedBackground: #fff" );
ui.applyStyle( b, "icon.selectedFocusedBorderColor: #fff" );
ui.applyStyle( b, "icon.selectedFocusedBackground: #fff" );
ui.applyStyle( b, "icon.selectedFocusedCheckmarkColor: #fff" );
ui.applyStyle( b, "icon.focusedSelectedBorderColor: #fff" );
ui.applyStyle( b, "icon.focusedSelectedBackground: #fff" );
ui.applyStyle( b, "icon.focusedCheckmarkColor: #fff" );
// hover
ui.applyStyle( b, "icon.hoverBorderColor: #fff" );
ui.applyStyle( b, "icon.hoverBackground: #fff" );
ui.applyStyle( b, "icon.selectedHoverBackground: #fff" );
ui.applyStyle( b, "icon.hoverSelectedBorderColor: #fff" );
ui.applyStyle( b, "icon.hoverSelectedBackground: #fff" );
ui.applyStyle( b, "icon.hoverCheckmarkColor: #fff" );
// pressed
ui.applyStyle( b, "icon.pressedBorderColor: #fff" );
ui.applyStyle( b, "icon.pressedBackground: #fff" );
ui.applyStyle( b, "icon.selectedPressedBackground: #fff" );
ui.applyStyle( b, "icon.pressedSelectedBorderColor: #fff" );
ui.applyStyle( b, "icon.pressedSelectedBackground: #fff" );
ui.applyStyle( b, "icon.pressedCheckmarkColor: #fff" );
}
@Test
@@ -1263,9 +1272,11 @@ public class TestFlatStyling
}
private void flatCheckBoxIcon( FlatCheckBoxIcon icon ) {
icon.applyStyleProperty( "focusWidth", 2 );
icon.applyStyleProperty( "focusWidth", 1.5f );
icon.applyStyleProperty( "focusColor", Color.WHITE );
icon.applyStyleProperty( "borderWidth", 1.5f );
icon.applyStyleProperty( "selectedBorderWidth", 1.5f );
icon.applyStyleProperty( "disabledSelectedBorderWidth", 1.5f );
icon.applyStyleProperty( "arc", 5 );
// enabled
@@ -1278,23 +1289,30 @@ public class TestFlatStyling
// disabled
icon.applyStyleProperty( "disabledBorderColor", Color.WHITE );
icon.applyStyleProperty( "disabledBackground", Color.WHITE );
icon.applyStyleProperty( "disabledSelectedBorderColor", Color.WHITE );
icon.applyStyleProperty( "disabledSelectedBackground", Color.WHITE );
icon.applyStyleProperty( "disabledCheckmarkColor", Color.WHITE );
// focused
icon.applyStyleProperty( "focusedBorderColor", Color.WHITE );
icon.applyStyleProperty( "focusedBackground", Color.WHITE );
icon.applyStyleProperty( "selectedFocusedBorderColor", Color.WHITE );
icon.applyStyleProperty( "selectedFocusedBackground", Color.WHITE );
icon.applyStyleProperty( "selectedFocusedCheckmarkColor", Color.WHITE );
icon.applyStyleProperty( "focusedSelectedBorderColor", Color.WHITE );
icon.applyStyleProperty( "focusedSelectedBackground", Color.WHITE );
icon.applyStyleProperty( "focusedCheckmarkColor", Color.WHITE );
// hover
icon.applyStyleProperty( "hoverBorderColor", Color.WHITE );
icon.applyStyleProperty( "hoverBackground", Color.WHITE );
icon.applyStyleProperty( "selectedHoverBackground", Color.WHITE );
icon.applyStyleProperty( "hoverSelectedBorderColor", Color.WHITE );
icon.applyStyleProperty( "hoverSelectedBackground", Color.WHITE );
icon.applyStyleProperty( "hoverCheckmarkColor", Color.WHITE );
// pressed
icon.applyStyleProperty( "pressedBorderColor", Color.WHITE );
icon.applyStyleProperty( "pressedBackground", Color.WHITE );
icon.applyStyleProperty( "selectedPressedBackground", Color.WHITE );
icon.applyStyleProperty( "pressedSelectedBorderColor", Color.WHITE );
icon.applyStyleProperty( "pressedSelectedBackground", Color.WHITE );
icon.applyStyleProperty( "pressedCheckmarkColor", Color.WHITE );
}
@Test

View File

@@ -58,17 +58,17 @@ CheckBox.icon.disabledBackground = CheckBox.icon.background
CheckBox.icon.focusedBackground = CheckBox.icon.background
CheckBox.icon.hoverBackground = CheckBox.icon.background
CheckBox.icon.pressedBackground = CheckBox.icon.background
CheckBox.icon.selectedFocusedBackground = CheckBox.icon.selectedBackground
CheckBox.icon.selectedHoverBackground = CheckBox.icon.selectedBackground
CheckBox.icon.selectedPressedBackground = CheckBox.icon.selectedBackground
CheckBox.icon.focusedSelectedBackground = CheckBox.icon.selectedBackground
CheckBox.icon.hoverSelectedBackground = CheckBox.icon.selectedBackground
CheckBox.icon.pressedSelectedBackground = CheckBox.icon.selectedBackground
CheckBox.icon[filled].disabledBackground = CheckBox.icon[filled].background
CheckBox.icon[filled].focusedBackground = CheckBox.icon[filled].background
CheckBox.icon[filled].hoverBackground = CheckBox.icon[filled].background
CheckBox.icon[filled].pressedBackground = CheckBox.icon[filled].background
CheckBox.icon[filled].selectedFocusedBackground = CheckBox.icon[filled].selectedBackground
CheckBox.icon[filled].selectedHoverBackground = CheckBox.icon[filled].selectedBackground
CheckBox.icon[filled].selectedPressedBackground = CheckBox.icon[filled].selectedBackground
CheckBox.icon[filled].focusedSelectedBackground = CheckBox.icon[filled].selectedBackground
CheckBox.icon[filled].hoverSelectedBackground = CheckBox.icon[filled].selectedBackground
CheckBox.icon[filled].pressedSelectedBackground = CheckBox.icon[filled].selectedBackground
#---- CheckBoxMenuItem ----

View File

@@ -18,6 +18,7 @@
#---- CheckBox ----
- CheckBox.icon.focusWidth 1
- CheckBox.icon.focusedBackground #446e9e4d 30% HSLA 212 40 44 30 javax.swing.plaf.ColorUIResource [UI]

View File

@@ -128,20 +128,22 @@ CheckBox.icon.checkmarkColor #a8a8a8 HSL 0 0 66 javax.swing.plaf.Colo
CheckBox.icon.disabledBackground #3c3f41 HSL 204 4 25 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon.disabledBorderColor #545657 HSL 200 2 34 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon.disabledCheckmarkColor #686868 HSL 0 0 41 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon.focusWidth 1
CheckBox.icon.focusedBackground #446e9e4d 30% HSLA 212 40 44 30 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon.focusedBorderColor #446e9e HSL 212 40 44 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon.hoverBackground #4d5153 HSL 200 4 31 com.formdev.flatlaf.util.DerivedColor [UI] lighten(3% autoInverse)
CheckBox.icon.hoverBorderColor #446e9e HSL 212 40 44 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon.pressedBackground #55585b HSL 210 3 35 com.formdev.flatlaf.util.DerivedColor [UI] lighten(6% autoInverse)
CheckBox.icon.pressedBorderColor #446e9e HSL 212 40 44 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon.selectedBackground #46494b HSL 204 3 28 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon.selectedBorderColor #696b6d HSL 210 2 42 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon.selectedBorderColor #87898a HSL 200 1 54 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon [lazy] 15,15 com.formdev.flatlaf.icons.FlatCheckBoxIcon [UI]
CheckBox.iconTextGap 4
CheckBox.icon[filled].checkmarkColor #46494b HSL 204 3 28 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon[filled].hoverSelectedBackground #a0a0a0 HSL 0 0 63 com.formdev.flatlaf.util.DerivedColor [UI] darken(3% autoInverse)
CheckBox.icon[filled].pressedSelectedBackground #999999 HSL 0 0 60 com.formdev.flatlaf.util.DerivedColor [UI] darken(6% autoInverse)
CheckBox.icon[filled].selectedBackground #a8a8a8 HSL 0 0 66 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon[filled].selectedBorderColor #a8a8a8 HSL 0 0 66 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon[filled].selectedHoverBackground #a0a0a0 HSL 0 0 63 com.formdev.flatlaf.util.DerivedColor [UI] darken(3% autoInverse)
CheckBox.icon[filled].selectedPressedBackground #999999 HSL 0 0 60 com.formdev.flatlaf.util.DerivedColor [UI] darken(6% autoInverse)
CheckBox.margin 2,2,2,2 javax.swing.plaf.InsetsUIResource [UI]
CheckBox.rollover true
CheckBox.textIconGap 4

View File

@@ -45,11 +45,12 @@
#---- CheckBox ----
- CheckBox.icon.focusWidth 1
- CheckBox.icon.focusedBackground #eaf3fb HSL 208 68 95 javax.swing.plaf.ColorUIResource [UI]
+ CheckBox.icon.style filled
- CheckBox.icon[filled].selectedFocusedCheckmarkColor #eaf3fb HSL 208 68 95 javax.swing.plaf.ColorUIResource [UI]
- CheckBox.icon[filled].focusedCheckmarkColor #eaf3fb HSL 208 68 95 javax.swing.plaf.ColorUIResource [UI]
#---- ComboBox ----
@@ -99,6 +100,11 @@
+ PasswordField.border [lazy] 3,3,3,3 false com.formdev.flatlaf.ui.FlatTextBorder [UI]
#---- RadioButton ----
+ RadioButton.icon.style filled
#---- ScrollPane ----
- ScrollPane.border [lazy] 1,1,1,1 false com.formdev.flatlaf.ui.FlatBorder [UI]

View File

@@ -128,24 +128,26 @@ CheckBox.icon.borderColor #afafaf HSL 0 0 69 javax.swing.plaf.Colo
CheckBox.icon.checkmarkColor #4e9de7 HSL 209 76 61 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon.disabledBackground #f2f2f2 HSL 0 0 95 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon.disabledBorderColor #bfbfbf HSL 0 0 75 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon.disabledCheckmarkColor #a9a9a9 HSL 0 0 66 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon.disabledCheckmarkColor #a8a8a8 HSL 0 0 66 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon.focusWidth 1
CheckBox.icon.focusedBackground #eaf3fb HSL 208 68 95 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon.focusedBorderColor #7b9ebf HSL 209 35 62 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon.hoverBackground #f7f7f7 HSL 0 0 97 com.formdev.flatlaf.util.DerivedColor [UI] darken(3% autoInverse)
CheckBox.icon.hoverBorderColor #7b9ebf HSL 209 35 62 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon.pressedBackground #e6e6e6 HSL 0 0 90 com.formdev.flatlaf.util.DerivedColor [UI] darken(10% autoInverse)
CheckBox.icon.pressedBorderColor #7b9ebf HSL 209 35 62 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon.selectedBackground #ffffff HSL 0 0 100 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon.selectedBorderColor #afafaf HSL 0 0 69 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon.selectedBorderColor #4e9de7 HSL 209 76 61 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon [lazy] 15,15 com.formdev.flatlaf.icons.FlatCheckBoxIcon [UI]
CheckBox.iconTextGap 4
CheckBox.icon[filled].checkmarkColor #ffffff HSL 0 0 100 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon[filled].focusedCheckmarkColor #eaf3fb HSL 208 68 95 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon[filled].focusedSelectedBackground #4e9de7 HSL 209 76 61 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon[filled].focusedSelectedBorderColor #a7cef3 HSL 209 76 80 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon[filled].hoverSelectedBackground #3891e4 HSL 209 76 56 com.formdev.flatlaf.util.DerivedColor [UI] darken(5% autoInverse)
CheckBox.icon[filled].pressedSelectedBackground #2184e1 HSL 209 76 51 com.formdev.flatlaf.util.DerivedColor [UI] darken(10% autoInverse)
CheckBox.icon[filled].selectedBackground #4e9de7 HSL 209 76 61 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon[filled].selectedBorderColor #4a95db HSL 209 67 57 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon[filled].selectedFocusedBackground #4e9de7 HSL 209 76 61 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon[filled].selectedFocusedBorderColor #a7cef3 HSL 209 76 80 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon[filled].selectedFocusedCheckmarkColor #eaf3fb HSL 208 68 95 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon[filled].selectedHoverBackground #3891e4 HSL 209 76 56 com.formdev.flatlaf.util.DerivedColor [UI] darken(5% autoInverse)
CheckBox.icon[filled].selectedPressedBackground #2184e1 HSL 209 76 51 com.formdev.flatlaf.util.DerivedColor [UI] darken(10% autoInverse)
CheckBox.margin 2,2,2,2 javax.swing.plaf.InsetsUIResource [UI]
CheckBox.rollover true
CheckBox.textIconGap 4

View File

@@ -133,14 +133,24 @@ CheckBox.icon.checkmarkColor #ffffff HSL 0 0 100 javax.swing.plaf.Colo
CheckBox.icon.disabledBackground #f2f2f2 HSL 0 0 95 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon.disabledBorderColor #bdbdbd HSL 0 0 74 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon.disabledCheckmarkColor #ababab HSL 0 0 67 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon.disabledSelectedBackground #f2f2f2 HSL 0 0 95 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon.disabledSelectedBorderColor #dbdbdb HSL 0 0 86 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon.disabledSelectedBorderWidth 2
CheckBox.icon.focusedBackground #00ffff HSL 180 100 50 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon.focusedBorderColor #7b9fc7 HSL 212 40 63 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon.focusedSelectedBorderColor #accff7 HSL 212 82 82 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon.hoverBackground #ffff00 HSL 60 100 50 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon.hoverBorderColor #ff0000 HSL 0 100 50 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon.pressedBackground #ffc800 HSL 47 100 50 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon.hoverCheckmarkColor #00ff00 HSL 120 100 50 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon.hoverSelectedBackground #ff88ff HSL 300 100 77 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon.hoverSelectedBorderColor #0000ff HSL 240 100 50 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon.pressedBackground #ffe99e HSL 46 100 81 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon.pressedBorderColor #ffc800 HSL 47 100 50 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon.pressedCheckmarkColor #0000ff HSL 240 100 50 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon.pressedSelectedBackground #88ffff HSL 180 100 77 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon.pressedSelectedBorderColor #ff0000 HSL 0 100 50 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon.selectedBackground #4d89c9 HSL 211 53 55 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon.selectedBorderColor #4982cc HSL 214 56 54 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon.selectedFocusedBorderColor #accff7 HSL 212 82 82 javax.swing.plaf.ColorUIResource [UI]
CheckBox.icon [lazy] 15,15 com.formdev.flatlaf.icons.FlatCheckBoxIcon [UI]
CheckBox.iconTextGap 4
CheckBox.margin 2,2,2,2 javax.swing.plaf.InsetsUIResource [UI]

View File

@@ -110,6 +110,8 @@ Button.toolbar.selectedBackground = #ddd
#---- CheckBox ----
CheckBox.icon.disabledSelectedBorderWidth = 2
# enabled
CheckBox.icon.borderColor = #878787
CheckBox.icon.background = #fff
@@ -120,19 +122,28 @@ CheckBox.icon.checkmarkColor = #fff
# disabled
CheckBox.icon.disabledBorderColor = #BDBDBD
CheckBox.icon.disabledBackground = #F2F2F2
CheckBox.icon.disabledSelectedBorderColor = #dbdbdb
CheckBox.icon.disabledSelectedBackground = #F2F2F2
CheckBox.icon.disabledCheckmarkColor = #ABABAB
# focused
CheckBox.icon.focusedBorderColor = #7B9FC7
CheckBox.icon.focusedBackground = #0ff
CheckBox.icon.selectedFocusedBorderColor = #ACCFF7
CheckBox.icon.focusedSelectedBorderColor = #ACCFF7
# hover
CheckBox.icon.hoverBorderColor = #f00
CheckBox.icon.hoverBackground = #ff0
CheckBox.icon.hoverSelectedBorderColor = #00f
CheckBox.icon.hoverSelectedBackground = #f8f
CheckBox.icon.hoverCheckmarkColor = #0f0
# pressed
CheckBox.icon.pressedBackground = #FFC800
CheckBox.icon.pressedBorderColor = #FFC800
CheckBox.icon.pressedBackground = #ffe99e
CheckBox.icon.pressedSelectedBorderColor = #f00
CheckBox.icon.pressedSelectedBackground = #8ff
CheckBox.icon.pressedCheckmarkColor = #00f
#---- CheckBoxMenuItem ----

View File

@@ -81,40 +81,60 @@ CheckBox.icon.checkmarkColor
CheckBox.icon.disabledBackground
CheckBox.icon.disabledBorderColor
CheckBox.icon.disabledCheckmarkColor
CheckBox.icon.disabledSelectedBackground
CheckBox.icon.disabledSelectedBorderColor
CheckBox.icon.disabledSelectedBorderWidth
CheckBox.icon.focusColor
CheckBox.icon.focusWidth
CheckBox.icon.focusedBackground
CheckBox.icon.focusedBorderColor
CheckBox.icon.focusedCheckmarkColor
CheckBox.icon.focusedSelectedBackground
CheckBox.icon.focusedSelectedBorderColor
CheckBox.icon.hoverBackground
CheckBox.icon.hoverBorderColor
CheckBox.icon.hoverCheckmarkColor
CheckBox.icon.hoverSelectedBackground
CheckBox.icon.hoverSelectedBorderColor
CheckBox.icon.pressedBackground
CheckBox.icon.pressedBorderColor
CheckBox.icon.pressedCheckmarkColor
CheckBox.icon.pressedSelectedBackground
CheckBox.icon.pressedSelectedBorderColor
CheckBox.icon.selectedBackground
CheckBox.icon.selectedBorderColor
CheckBox.icon.selectedFocusedBackground
CheckBox.icon.selectedFocusedBorderColor
CheckBox.icon.selectedFocusedCheckmarkColor
CheckBox.icon.selectedHoverBackground
CheckBox.icon.selectedPressedBackground
CheckBox.icon.selectedBorderWidth
CheckBox.icon.style
CheckBox.iconTextGap
CheckBox.icon[filled].background
CheckBox.icon[filled].borderColor
CheckBox.icon[filled].borderWidth
CheckBox.icon[filled].checkmarkColor
CheckBox.icon[filled].disabledBackground
CheckBox.icon[filled].disabledBorderColor
CheckBox.icon[filled].disabledCheckmarkColor
CheckBox.icon[filled].disabledSelectedBackground
CheckBox.icon[filled].disabledSelectedBorderColor
CheckBox.icon[filled].disabledSelectedBorderWidth
CheckBox.icon[filled].focusWidth
CheckBox.icon[filled].focusedBackground
CheckBox.icon[filled].focusedBorderColor
CheckBox.icon[filled].focusedCheckmarkColor
CheckBox.icon[filled].focusedSelectedBackground
CheckBox.icon[filled].focusedSelectedBorderColor
CheckBox.icon[filled].hoverBackground
CheckBox.icon[filled].hoverBorderColor
CheckBox.icon[filled].hoverCheckmarkColor
CheckBox.icon[filled].hoverSelectedBackground
CheckBox.icon[filled].hoverSelectedBorderColor
CheckBox.icon[filled].pressedBackground
CheckBox.icon[filled].pressedBorderColor
CheckBox.icon[filled].pressedCheckmarkColor
CheckBox.icon[filled].pressedSelectedBackground
CheckBox.icon[filled].pressedSelectedBorderColor
CheckBox.icon[filled].selectedBackground
CheckBox.icon[filled].selectedBorderColor
CheckBox.icon[filled].selectedFocusedBackground
CheckBox.icon[filled].selectedFocusedBorderColor
CheckBox.icon[filled].selectedFocusedCheckmarkColor
CheckBox.icon[filled].selectedHoverBackground
CheckBox.icon[filled].selectedPressedBackground
CheckBox.icon[filled].selectedBorderWidth
CheckBox.margin
CheckBox.rollover
CheckBox.textIconGap
@@ -581,6 +601,7 @@ RadioButton.foreground
RadioButton.highlight
RadioButton.icon
RadioButton.icon.centerDiameter
RadioButton.icon.style
RadioButton.iconTextGap
RadioButton.icon[filled].centerDiameter
RadioButton.light