mirror of
https://github.com/JFormDesigner/FlatLaf.git
synced 2025-12-07 14:30:56 +03:00
Button and ToggleButton: added missing border colors for pressed and selected states (issue #848)
This commit is contained in:
@@ -5,6 +5,8 @@ FlatLaf Change Log
|
|||||||
|
|
||||||
#### New features and improvements
|
#### New features and improvements
|
||||||
|
|
||||||
|
- Button and ToggleButton: Added missing border colors for pressed and selected
|
||||||
|
states. (issue #848)
|
||||||
- Label: Support painting background with rounded corners. (issue #842)
|
- Label: Support painting background with rounded corners. (issue #842)
|
||||||
- Popup: Fixed flicker of popups (e.g. tooltips) while they are moving (e.g.
|
- Popup: Fixed flicker of popups (e.g. tooltips) while they are moving (e.g.
|
||||||
following mouse pointer). (issues #832 and #672)
|
following mouse pointer). (issues #832 and #672)
|
||||||
|
|||||||
@@ -42,6 +42,9 @@ import com.formdev.flatlaf.util.UIScale;
|
|||||||
* @uiDefault Button.disabledBorderColor Color
|
* @uiDefault Button.disabledBorderColor Color
|
||||||
* @uiDefault Button.focusedBorderColor Color
|
* @uiDefault Button.focusedBorderColor Color
|
||||||
* @uiDefault Button.hoverBorderColor Color optional
|
* @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.borderWidth int or float
|
||||||
* @uiDefault Button.default.borderColor Color
|
* @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.endBorderColor Color optional; if set, a gradient paint is used
|
||||||
* @uiDefault Button.default.focusedBorderColor Color
|
* @uiDefault Button.default.focusedBorderColor Color
|
||||||
* @uiDefault Button.default.focusColor Color
|
* @uiDefault Button.default.focusColor Color
|
||||||
|
* @uiDefault Button.default.pressedBorderColor Color optional
|
||||||
* @uiDefault Button.default.hoverBorderColor Color optional
|
* @uiDefault Button.default.hoverBorderColor Color optional
|
||||||
*
|
*
|
||||||
* @uiDefault Button.toolbar.focusWidth int or float optional; default is 1.5
|
* @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" );
|
protected Color endBorderColor = UIManager.getColor( "Button.endBorderColor" );
|
||||||
@Styleable protected Color hoverBorderColor = UIManager.getColor( "Button.hoverBorderColor" );
|
@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 float defaultBorderWidth = FlatUIUtils.getUIFloat( "Button.default.borderWidth", 1 );
|
||||||
@Styleable(dot=true) protected Color defaultBorderColor = FlatUIUtils.getUIColor( "Button.default.startBorderColor", "Button.default.borderColor" );
|
@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 defaultFocusedBorderColor = UIManager.getColor( "Button.default.focusedBorderColor" );
|
||||||
@Styleable(dot=true) protected Color defaultFocusColor = UIManager.getColor( "Button.default.focusColor" );
|
@Styleable(dot=true) protected Color defaultFocusColor = UIManager.getColor( "Button.default.focusColor" );
|
||||||
@Styleable(dot=true) protected Color defaultHoverBorderColor = UIManager.getColor( "Button.default.hoverBorderColor" );
|
@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 float toolbarFocusWidth = FlatUIUtils.getUIFloat( "Button.toolbar.focusWidth", 1.5f );
|
||||||
/** @since 1.4 */ @Styleable(dot=true) protected Color toolbarFocusColor = UIManager.getColor( "Button.toolbar.focusColor" );
|
/** @since 1.4 */ @Styleable(dot=true) protected Color toolbarFocusColor = UIManager.getColor( "Button.toolbar.focusColor" );
|
||||||
@@ -139,12 +147,13 @@ public class FlatButtonBorder
|
|||||||
@Override
|
@Override
|
||||||
protected Paint getBorderColor( Component c ) {
|
protected Paint getBorderColor( Component c ) {
|
||||||
boolean def = FlatButtonUI.isDefaultButton( c );
|
boolean def = FlatButtonUI.isDefaultButton( c );
|
||||||
|
boolean selected = (c instanceof AbstractButton && ((AbstractButton)c).isSelected());
|
||||||
Paint color = FlatButtonUI.buttonStateColor( c,
|
Paint color = FlatButtonUI.buttonStateColor( c,
|
||||||
def ? defaultBorderColor : borderColor,
|
def ? defaultBorderColor : ((selected && selectedBorderColor != null) ? selectedBorderColor : borderColor),
|
||||||
disabledBorderColor,
|
(selected && disabledSelectedBorderColor != null) ? disabledSelectedBorderColor : disabledBorderColor,
|
||||||
def ? defaultFocusedBorderColor : focusedBorderColor,
|
def ? defaultFocusedBorderColor : focusedBorderColor,
|
||||||
def ? defaultHoverBorderColor : hoverBorderColor,
|
def ? defaultHoverBorderColor : hoverBorderColor,
|
||||||
null );
|
def ? defaultPressedBorderColor : pressedBorderColor );
|
||||||
|
|
||||||
// change to gradient paint if start/end colors are specified
|
// change to gradient paint if start/end colors are specified
|
||||||
Color startBg = def ? defaultBorderColor : borderColor;
|
Color startBg = def ? defaultBorderColor : borderColor;
|
||||||
|
|||||||
@@ -994,12 +994,16 @@ public class TestFlatStyleableInfo
|
|||||||
"disabledBorderColor", Color.class,
|
"disabledBorderColor", Color.class,
|
||||||
"focusedBorderColor", Color.class,
|
"focusedBorderColor", Color.class,
|
||||||
"hoverBorderColor", Color.class,
|
"hoverBorderColor", Color.class,
|
||||||
|
"pressedBorderColor", Color.class,
|
||||||
|
"selectedBorderColor", Color.class,
|
||||||
|
"disabledSelectedBorderColor", Color.class,
|
||||||
|
|
||||||
"default.borderWidth", float.class,
|
"default.borderWidth", float.class,
|
||||||
"default.borderColor", Color.class,
|
"default.borderColor", Color.class,
|
||||||
"default.focusedBorderColor", Color.class,
|
"default.focusedBorderColor", Color.class,
|
||||||
"default.focusColor", Color.class,
|
"default.focusColor", Color.class,
|
||||||
"default.hoverBorderColor", Color.class,
|
"default.hoverBorderColor", Color.class,
|
||||||
|
"default.pressedBorderColor", Color.class,
|
||||||
|
|
||||||
"toolbar.focusWidth", float.class,
|
"toolbar.focusWidth", float.class,
|
||||||
"toolbar.focusColor", Color.class,
|
"toolbar.focusColor", Color.class,
|
||||||
|
|||||||
@@ -956,12 +956,16 @@ public class TestFlatStyleableValue
|
|||||||
testColor( c, ui, "disabledBorderColor", 0x123456 );
|
testColor( c, ui, "disabledBorderColor", 0x123456 );
|
||||||
testColor( c, ui, "focusedBorderColor", 0x123456 );
|
testColor( c, ui, "focusedBorderColor", 0x123456 );
|
||||||
testColor( c, ui, "hoverBorderColor", 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 );
|
testFloat( c, ui, "default.borderWidth", 1.23f );
|
||||||
testColor( c, ui, "default.borderColor", 0x123456 );
|
testColor( c, ui, "default.borderColor", 0x123456 );
|
||||||
testColor( c, ui, "default.focusedBorderColor", 0x123456 );
|
testColor( c, ui, "default.focusedBorderColor", 0x123456 );
|
||||||
testColor( c, ui, "default.focusColor", 0x123456 );
|
testColor( c, ui, "default.focusColor", 0x123456 );
|
||||||
testColor( c, ui, "default.hoverBorderColor", 0x123456 );
|
testColor( c, ui, "default.hoverBorderColor", 0x123456 );
|
||||||
|
testColor( c, ui, "default.pressedBorderColor", 0x123456 );
|
||||||
|
|
||||||
testFloat( c, ui, "toolbar.focusWidth", 1.23f );
|
testFloat( c, ui, "toolbar.focusWidth", 1.23f );
|
||||||
testColor( c, ui, "toolbar.focusColor", 0x123456 );
|
testColor( c, ui, "toolbar.focusColor", 0x123456 );
|
||||||
@@ -1026,12 +1030,16 @@ public class TestFlatStyleableValue
|
|||||||
testValue( border, "disabledBorderColor", Color.WHITE );
|
testValue( border, "disabledBorderColor", Color.WHITE );
|
||||||
testValue( border, "focusedBorderColor", Color.WHITE );
|
testValue( border, "focusedBorderColor", Color.WHITE );
|
||||||
testValue( border, "hoverBorderColor", 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.borderWidth", 2f );
|
||||||
testValue( border, "default.borderColor", Color.WHITE );
|
testValue( border, "default.borderColor", Color.WHITE );
|
||||||
testValue( border, "default.focusedBorderColor", Color.WHITE );
|
testValue( border, "default.focusedBorderColor", Color.WHITE );
|
||||||
testValue( border, "default.focusColor", Color.WHITE );
|
testValue( border, "default.focusColor", Color.WHITE );
|
||||||
testValue( border, "default.hoverBorderColor", Color.WHITE );
|
testValue( border, "default.hoverBorderColor", Color.WHITE );
|
||||||
|
testValue( border, "default.pressedBorderColor", Color.WHITE );
|
||||||
|
|
||||||
testValue( border, "toolbar.focusWidth", 1.5f );
|
testValue( border, "toolbar.focusWidth", 1.5f );
|
||||||
testValue( border, "toolbar.focusColor", Color.WHITE );
|
testValue( border, "toolbar.focusColor", Color.WHITE );
|
||||||
|
|||||||
@@ -1295,12 +1295,16 @@ public class TestFlatStyling
|
|||||||
border.applyStyleProperty( "disabledBorderColor", Color.WHITE );
|
border.applyStyleProperty( "disabledBorderColor", Color.WHITE );
|
||||||
border.applyStyleProperty( "focusedBorderColor", Color.WHITE );
|
border.applyStyleProperty( "focusedBorderColor", Color.WHITE );
|
||||||
border.applyStyleProperty( "hoverBorderColor", 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.borderWidth", 2 );
|
||||||
border.applyStyleProperty( "default.borderColor", Color.WHITE );
|
border.applyStyleProperty( "default.borderColor", Color.WHITE );
|
||||||
border.applyStyleProperty( "default.focusedBorderColor", Color.WHITE );
|
border.applyStyleProperty( "default.focusedBorderColor", Color.WHITE );
|
||||||
border.applyStyleProperty( "default.focusColor", Color.WHITE );
|
border.applyStyleProperty( "default.focusColor", Color.WHITE );
|
||||||
border.applyStyleProperty( "default.hoverBorderColor", Color.WHITE );
|
border.applyStyleProperty( "default.hoverBorderColor", Color.WHITE );
|
||||||
|
border.applyStyleProperty( "default.pressedBorderColor", Color.WHITE );
|
||||||
|
|
||||||
border.applyStyleProperty( "toolbar.focusWidth", 1.5f );
|
border.applyStyleProperty( "toolbar.focusWidth", 1.5f );
|
||||||
border.applyStyleProperty( "toolbar.focusColor", Color.WHITE );
|
border.applyStyleProperty( "toolbar.focusColor", Color.WHITE );
|
||||||
|
|||||||
@@ -79,6 +79,7 @@ Button.default.hoverBackground #ffff00 HSL 60 100 50 javax.swing.plaf.Colo
|
|||||||
Button.default.hoverBorderColor #ff0000 HSL 0 100 50 javax.swing.plaf.ColorUIResource [UI]
|
Button.default.hoverBorderColor #ff0000 HSL 0 100 50 javax.swing.plaf.ColorUIResource [UI]
|
||||||
Button.default.hoverForeground #0000ff HSL 240 100 50 javax.swing.plaf.ColorUIResource [UI]
|
Button.default.hoverForeground #0000ff HSL 240 100 50 javax.swing.plaf.ColorUIResource [UI]
|
||||||
Button.default.pressedBackground #ffc800 HSL 47 100 50 javax.swing.plaf.ColorUIResource [UI]
|
Button.default.pressedBackground #ffc800 HSL 47 100 50 javax.swing.plaf.ColorUIResource [UI]
|
||||||
|
Button.default.pressedBorderColor #8888ff HSL 240 100 77 javax.swing.plaf.ColorUIResource [UI]
|
||||||
Button.default.pressedForeground #0080ff HSL 210 100 50 javax.swing.plaf.ColorUIResource [UI]
|
Button.default.pressedForeground #0080ff HSL 210 100 50 javax.swing.plaf.ColorUIResource [UI]
|
||||||
Button.default.startBackground #dddddd HSL 0 0 87 javax.swing.plaf.ColorUIResource [UI]
|
Button.default.startBackground #dddddd HSL 0 0 87 javax.swing.plaf.ColorUIResource [UI]
|
||||||
Button.default.startBorderColor #ff0000 HSL 0 100 50 javax.swing.plaf.ColorUIResource [UI]
|
Button.default.startBorderColor #ff0000 HSL 0 100 50 javax.swing.plaf.ColorUIResource [UI]
|
||||||
@@ -87,6 +88,7 @@ Button.disabledBackground #e0e0e0 HSL 0 0 88 javax.swing.plaf.Colo
|
|||||||
Button.disabledBorderColor #000088 HSL 240 100 27 javax.swing.plaf.ColorUIResource [UI]
|
Button.disabledBorderColor #000088 HSL 240 100 27 javax.swing.plaf.ColorUIResource [UI]
|
||||||
Button.disabledForeground #000088 HSL 240 100 27 javax.swing.plaf.ColorUIResource [UI]
|
Button.disabledForeground #000088 HSL 240 100 27 javax.swing.plaf.ColorUIResource [UI]
|
||||||
Button.disabledSelectedBackground #112233 HSL 210 50 13 javax.swing.plaf.ColorUIResource [UI]
|
Button.disabledSelectedBackground #112233 HSL 210 50 13 javax.swing.plaf.ColorUIResource [UI]
|
||||||
|
Button.disabledSelectedBorderColor #ffff00 HSL 60 100 50 javax.swing.plaf.ColorUIResource [UI]
|
||||||
Button.disabledSelectedForeground #ffcccc HSL 0 100 90 javax.swing.plaf.ColorUIResource [UI]
|
Button.disabledSelectedForeground #ffcccc HSL 0 100 90 javax.swing.plaf.ColorUIResource [UI]
|
||||||
Button.disabledText #000088 HSL 240 100 27 javax.swing.plaf.ColorUIResource [UI]
|
Button.disabledText #000088 HSL 240 100 27 javax.swing.plaf.ColorUIResource [UI]
|
||||||
Button.endBackground #bbbbbb HSL 0 0 73 javax.swing.plaf.ColorUIResource [UI]
|
Button.endBackground #bbbbbb HSL 0 0 73 javax.swing.plaf.ColorUIResource [UI]
|
||||||
@@ -106,9 +108,11 @@ Button.light #e3e3e3 HSL 0 0 89 javax.swing.plaf.Colo
|
|||||||
Button.margin 2,14,2,14 javax.swing.plaf.InsetsUIResource [UI]
|
Button.margin 2,14,2,14 javax.swing.plaf.InsetsUIResource [UI]
|
||||||
Button.minimumWidth 72
|
Button.minimumWidth 72
|
||||||
Button.pressedBackground #ffc800 HSL 47 100 50 javax.swing.plaf.ColorUIResource [UI]
|
Button.pressedBackground #ffc800 HSL 47 100 50 javax.swing.plaf.ColorUIResource [UI]
|
||||||
|
Button.pressedBorderColor #00ffff HSL 180 100 50 javax.swing.plaf.ColorUIResource [UI]
|
||||||
Button.pressedForeground #0080ff HSL 210 100 50 javax.swing.plaf.ColorUIResource [UI]
|
Button.pressedForeground #0080ff HSL 210 100 50 javax.swing.plaf.ColorUIResource [UI]
|
||||||
Button.rollover true
|
Button.rollover true
|
||||||
Button.selectedBackground #ffbbbb HSL 0 100 87 javax.swing.plaf.ColorUIResource [UI]
|
Button.selectedBackground #ffbbbb HSL 0 100 87 javax.swing.plaf.ColorUIResource [UI]
|
||||||
|
Button.selectedBorderColor #ff00ff HSL 300 100 50 javax.swing.plaf.ColorUIResource [UI]
|
||||||
Button.selectedForeground #332211 HSL 30 50 13 javax.swing.plaf.ColorUIResource [UI]
|
Button.selectedForeground #332211 HSL 30 50 13 javax.swing.plaf.ColorUIResource [UI]
|
||||||
Button.shadow #a0a0a0 HSL 0 0 63 javax.swing.plaf.ColorUIResource [UI]
|
Button.shadow #a0a0a0 HSL 0 0 63 javax.swing.plaf.ColorUIResource [UI]
|
||||||
Button.startBackground #ffffff HSL 0 0 100 javax.swing.plaf.ColorUIResource [UI]
|
Button.startBackground #ffffff HSL 0 0 100 javax.swing.plaf.ColorUIResource [UI]
|
||||||
|
|||||||
@@ -94,6 +94,9 @@ Button.endBorderColor = #f00
|
|||||||
Button.disabledBorderColor = #008
|
Button.disabledBorderColor = #008
|
||||||
Button.focusedBorderColor = #466d94
|
Button.focusedBorderColor = #466d94
|
||||||
Button.hoverBorderColor = #f00
|
Button.hoverBorderColor = #f00
|
||||||
|
Button.pressedBorderColor = #0ff
|
||||||
|
Button.selectedBorderColor = #f0f
|
||||||
|
Button.disabledSelectedBorderColor = #ff0
|
||||||
|
|
||||||
Button.innerFocusWidth = 1
|
Button.innerFocusWidth = 1
|
||||||
|
|
||||||
@@ -109,6 +112,7 @@ Button.default.pressedForeground = #0080ff
|
|||||||
Button.default.startBorderColor = #f00
|
Button.default.startBorderColor = #f00
|
||||||
Button.default.endBorderColor = #00f
|
Button.default.endBorderColor = #00f
|
||||||
Button.default.hoverBorderColor = #f00
|
Button.default.hoverBorderColor = #f00
|
||||||
|
Button.default.pressedBorderColor = #88f
|
||||||
Button.default.focusedBorderColor = #537699
|
Button.default.focusedBorderColor = #537699
|
||||||
Button.default.focusColor = #f00
|
Button.default.focusColor = #f00
|
||||||
|
|
||||||
|
|||||||
@@ -29,6 +29,7 @@ Button.default.hoverBackground
|
|||||||
Button.default.hoverBorderColor
|
Button.default.hoverBorderColor
|
||||||
Button.default.hoverForeground
|
Button.default.hoverForeground
|
||||||
Button.default.pressedBackground
|
Button.default.pressedBackground
|
||||||
|
Button.default.pressedBorderColor
|
||||||
Button.default.pressedForeground
|
Button.default.pressedForeground
|
||||||
Button.default.startBackground
|
Button.default.startBackground
|
||||||
Button.default.startBorderColor
|
Button.default.startBorderColor
|
||||||
@@ -37,6 +38,7 @@ Button.disabledBackground
|
|||||||
Button.disabledBorderColor
|
Button.disabledBorderColor
|
||||||
Button.disabledForeground
|
Button.disabledForeground
|
||||||
Button.disabledSelectedBackground
|
Button.disabledSelectedBackground
|
||||||
|
Button.disabledSelectedBorderColor
|
||||||
Button.disabledSelectedForeground
|
Button.disabledSelectedForeground
|
||||||
Button.disabledText
|
Button.disabledText
|
||||||
Button.endBackground
|
Button.endBackground
|
||||||
@@ -57,9 +59,11 @@ Button.light
|
|||||||
Button.margin
|
Button.margin
|
||||||
Button.minimumWidth
|
Button.minimumWidth
|
||||||
Button.pressedBackground
|
Button.pressedBackground
|
||||||
|
Button.pressedBorderColor
|
||||||
Button.pressedForeground
|
Button.pressedForeground
|
||||||
Button.rollover
|
Button.rollover
|
||||||
Button.selectedBackground
|
Button.selectedBackground
|
||||||
|
Button.selectedBorderColor
|
||||||
Button.selectedForeground
|
Button.selectedForeground
|
||||||
Button.shadow
|
Button.shadow
|
||||||
Button.startBackground
|
Button.startBackground
|
||||||
|
|||||||
Reference in New Issue
Block a user