mirror of
https://github.com/JFormDesigner/FlatLaf.git
synced 2026-02-13 07:17:13 -06:00
Button and ToggleButton: added missing border colors for pressed and selected states (issue #848)
This commit is contained in:
@@ -42,6 +42,9 @@ import com.formdev.flatlaf.util.UIScale;
|
||||
* @uiDefault Button.disabledBorderColor Color
|
||||
* @uiDefault Button.focusedBorderColor Color
|
||||
* @uiDefault Button.hoverBorderColor Color optional
|
||||
* @uiDefault Button.pressedBorderColor Color optional
|
||||
* @uiDefault Button.selectedBorderColor Color optional
|
||||
* @uiDefault Button.disabledSelectedBorderColor Color optional
|
||||
*
|
||||
* @uiDefault Button.default.borderWidth int or float
|
||||
* @uiDefault Button.default.borderColor Color
|
||||
@@ -49,6 +52,7 @@ import com.formdev.flatlaf.util.UIScale;
|
||||
* @uiDefault Button.default.endBorderColor Color optional; if set, a gradient paint is used
|
||||
* @uiDefault Button.default.focusedBorderColor Color
|
||||
* @uiDefault Button.default.focusColor Color
|
||||
* @uiDefault Button.default.pressedBorderColor Color optional
|
||||
* @uiDefault Button.default.hoverBorderColor Color optional
|
||||
*
|
||||
* @uiDefault Button.toolbar.focusWidth int or float optional; default is 1.5
|
||||
@@ -65,6 +69,9 @@ public class FlatButtonBorder
|
||||
|
||||
protected Color endBorderColor = UIManager.getColor( "Button.endBorderColor" );
|
||||
@Styleable protected Color hoverBorderColor = UIManager.getColor( "Button.hoverBorderColor" );
|
||||
/** @since 3.5 */ @Styleable protected Color pressedBorderColor = UIManager.getColor( "Button.pressedBorderColor" );
|
||||
/** @since 3.5 */ @Styleable protected Color selectedBorderColor = UIManager.getColor( "Button.selectedBorderColor" );
|
||||
/** @since 3.5 */ @Styleable protected Color disabledSelectedBorderColor = UIManager.getColor( "Button.disabledSelectedBorderColor" );
|
||||
|
||||
@Styleable(dot=true) protected float defaultBorderWidth = FlatUIUtils.getUIFloat( "Button.default.borderWidth", 1 );
|
||||
@Styleable(dot=true) protected Color defaultBorderColor = FlatUIUtils.getUIColor( "Button.default.startBorderColor", "Button.default.borderColor" );
|
||||
@@ -72,6 +79,7 @@ public class FlatButtonBorder
|
||||
@Styleable(dot=true) protected Color defaultFocusedBorderColor = UIManager.getColor( "Button.default.focusedBorderColor" );
|
||||
@Styleable(dot=true) protected Color defaultFocusColor = UIManager.getColor( "Button.default.focusColor" );
|
||||
@Styleable(dot=true) protected Color defaultHoverBorderColor = UIManager.getColor( "Button.default.hoverBorderColor" );
|
||||
/** @since 3.5 */ @Styleable(dot=true) protected Color defaultPressedBorderColor = UIManager.getColor( "Button.default.pressedBorderColor" );
|
||||
|
||||
/** @since 1.4 */ @Styleable(dot=true) protected float toolbarFocusWidth = FlatUIUtils.getUIFloat( "Button.toolbar.focusWidth", 1.5f );
|
||||
/** @since 1.4 */ @Styleable(dot=true) protected Color toolbarFocusColor = UIManager.getColor( "Button.toolbar.focusColor" );
|
||||
@@ -139,12 +147,13 @@ public class FlatButtonBorder
|
||||
@Override
|
||||
protected Paint getBorderColor( Component c ) {
|
||||
boolean def = FlatButtonUI.isDefaultButton( c );
|
||||
boolean selected = (c instanceof AbstractButton && ((AbstractButton)c).isSelected());
|
||||
Paint color = FlatButtonUI.buttonStateColor( c,
|
||||
def ? defaultBorderColor : borderColor,
|
||||
disabledBorderColor,
|
||||
def ? defaultBorderColor : ((selected && selectedBorderColor != null) ? selectedBorderColor : borderColor),
|
||||
(selected && disabledSelectedBorderColor != null) ? disabledSelectedBorderColor : disabledBorderColor,
|
||||
def ? defaultFocusedBorderColor : focusedBorderColor,
|
||||
def ? defaultHoverBorderColor : hoverBorderColor,
|
||||
null );
|
||||
def ? defaultPressedBorderColor : pressedBorderColor );
|
||||
|
||||
// change to gradient paint if start/end colors are specified
|
||||
Color startBg = def ? defaultBorderColor : borderColor;
|
||||
|
||||
@@ -994,12 +994,16 @@ public class TestFlatStyleableInfo
|
||||
"disabledBorderColor", Color.class,
|
||||
"focusedBorderColor", Color.class,
|
||||
"hoverBorderColor", Color.class,
|
||||
"pressedBorderColor", Color.class,
|
||||
"selectedBorderColor", Color.class,
|
||||
"disabledSelectedBorderColor", Color.class,
|
||||
|
||||
"default.borderWidth", float.class,
|
||||
"default.borderColor", Color.class,
|
||||
"default.focusedBorderColor", Color.class,
|
||||
"default.focusColor", Color.class,
|
||||
"default.hoverBorderColor", Color.class,
|
||||
"default.pressedBorderColor", Color.class,
|
||||
|
||||
"toolbar.focusWidth", float.class,
|
||||
"toolbar.focusColor", Color.class,
|
||||
|
||||
@@ -956,12 +956,16 @@ public class TestFlatStyleableValue
|
||||
testColor( c, ui, "disabledBorderColor", 0x123456 );
|
||||
testColor( c, ui, "focusedBorderColor", 0x123456 );
|
||||
testColor( c, ui, "hoverBorderColor", 0x123456 );
|
||||
testColor( c, ui, "pressedBorderColor", 0x123456 );
|
||||
testColor( c, ui, "selectedBorderColor", 0x123456 );
|
||||
testColor( c, ui, "disabledSelectedBorderColor", 0x123456 );
|
||||
|
||||
testFloat( c, ui, "default.borderWidth", 1.23f );
|
||||
testColor( c, ui, "default.borderColor", 0x123456 );
|
||||
testColor( c, ui, "default.focusedBorderColor", 0x123456 );
|
||||
testColor( c, ui, "default.focusColor", 0x123456 );
|
||||
testColor( c, ui, "default.hoverBorderColor", 0x123456 );
|
||||
testColor( c, ui, "default.pressedBorderColor", 0x123456 );
|
||||
|
||||
testFloat( c, ui, "toolbar.focusWidth", 1.23f );
|
||||
testColor( c, ui, "toolbar.focusColor", 0x123456 );
|
||||
@@ -1026,12 +1030,16 @@ public class TestFlatStyleableValue
|
||||
testValue( border, "disabledBorderColor", Color.WHITE );
|
||||
testValue( border, "focusedBorderColor", Color.WHITE );
|
||||
testValue( border, "hoverBorderColor", Color.WHITE );
|
||||
testValue( border, "pressedBorderColor", Color.WHITE );
|
||||
testValue( border, "selectedBorderColor", Color.WHITE );
|
||||
testValue( border, "disabledSelectedBorderColor", Color.WHITE );
|
||||
|
||||
testValue( border, "default.borderWidth", 2f );
|
||||
testValue( border, "default.borderColor", Color.WHITE );
|
||||
testValue( border, "default.focusedBorderColor", Color.WHITE );
|
||||
testValue( border, "default.focusColor", Color.WHITE );
|
||||
testValue( border, "default.hoverBorderColor", Color.WHITE );
|
||||
testValue( border, "default.pressedBorderColor", Color.WHITE );
|
||||
|
||||
testValue( border, "toolbar.focusWidth", 1.5f );
|
||||
testValue( border, "toolbar.focusColor", Color.WHITE );
|
||||
|
||||
@@ -1295,12 +1295,16 @@ public class TestFlatStyling
|
||||
border.applyStyleProperty( "disabledBorderColor", Color.WHITE );
|
||||
border.applyStyleProperty( "focusedBorderColor", Color.WHITE );
|
||||
border.applyStyleProperty( "hoverBorderColor", Color.WHITE );
|
||||
border.applyStyleProperty( "pressedBorderColor", Color.WHITE );
|
||||
border.applyStyleProperty( "selectedBorderColor", Color.WHITE );
|
||||
border.applyStyleProperty( "disabledSelectedBorderColor", Color.WHITE );
|
||||
|
||||
border.applyStyleProperty( "default.borderWidth", 2 );
|
||||
border.applyStyleProperty( "default.borderColor", Color.WHITE );
|
||||
border.applyStyleProperty( "default.focusedBorderColor", Color.WHITE );
|
||||
border.applyStyleProperty( "default.focusColor", Color.WHITE );
|
||||
border.applyStyleProperty( "default.hoverBorderColor", Color.WHITE );
|
||||
border.applyStyleProperty( "default.pressedBorderColor", Color.WHITE );
|
||||
|
||||
border.applyStyleProperty( "toolbar.focusWidth", 1.5f );
|
||||
border.applyStyleProperty( "toolbar.focusColor", Color.WHITE );
|
||||
|
||||
Reference in New Issue
Block a user