Skip to content

Commit

Permalink
Buttons: made iconTextGap configurable in properties files and scale it
Browse files Browse the repository at this point in the history
  • Loading branch information
DevCharly committed Sep 15, 2019
1 parent bf03f57 commit eff9c50
Show file tree
Hide file tree
Showing 3 changed files with 17 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@
import javax.swing.JButton;
import javax.swing.JComponent;
import javax.swing.JToolBar;
import javax.swing.LookAndFeel;
import javax.swing.UIManager;
import javax.swing.border.Border;
import javax.swing.plaf.ComponentUI;
Expand All @@ -44,6 +45,7 @@
* @uiDefault Component.focusWidth int
* @uiDefault Button.arc int
* @uiDefault Button.minimumWidth int
* @uiDefault Button.iconTextGap int
* @uiDefault Button.focusedBackground Color optional
* @uiDefault Button.hoverBackground Color optional
* @uiDefault Button.pressedBackground Color optional
Expand All @@ -64,6 +66,7 @@ public class FlatButtonUI
protected int focusWidth;
protected int arc;
protected int minimumWidth;
protected int iconTextGap;

protected Color focusedBackground;
protected Color hoverBackground;
Expand Down Expand Up @@ -101,6 +104,7 @@ protected void installDefaults( AbstractButton b ) {
focusWidth = UIManager.getInt( "Component.focusWidth" );
arc = UIManager.getInt( prefix + "arc" );
minimumWidth = UIManager.getInt( prefix + "minimumWidth" );
iconTextGap = FlatUIUtils.getUIInt( prefix + "iconTextGap", 4 );

focusedBackground = UIManager.getColor( prefix + "focusedBackground" );
hoverBackground = UIManager.getColor( prefix + "hoverBackground" );
Expand All @@ -121,6 +125,8 @@ protected void installDefaults( AbstractButton b ) {
defaults_initialized = true;
}

LookAndFeel.installProperty( b, "iconTextGap", scale( iconTextGap ) );

MigLayoutVisualPadding.install( b, focusWidth );
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,11 +16,13 @@

package com.formdev.flatlaf.ui;

import static com.formdev.flatlaf.util.UIScale.scale;
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Rectangle;
import javax.swing.AbstractButton;
import javax.swing.JComponent;
import javax.swing.LookAndFeel;
import javax.swing.UIManager;
import javax.swing.plaf.ComponentUI;
import javax.swing.plaf.basic.BasicRadioButtonUI;
Expand All @@ -30,13 +32,15 @@
*
* TODO document used UI defaults of superclass
*
* @uiDefault Button.iconTextGap int
* @uiDefault Button.disabledText Color
*
* @author Karl Tauber
*/
public class FlatRadioButtonUI
extends BasicRadioButtonUI
{
protected int iconTextGap;
protected Color disabledText;

private boolean defaults_initialized = false;
Expand All @@ -56,11 +60,14 @@ public void installDefaults( AbstractButton b ) {
if( !defaults_initialized ) {
String prefix = getPropertyPrefix();

iconTextGap = FlatUIUtils.getUIInt( prefix + "iconTextGap", 4 );
disabledText = UIManager.getColor( prefix + "disabledText" );

defaults_initialized = true;
}

LookAndFeel.installProperty( b, "iconTextGap", scale( iconTextGap ) );

MigLayoutVisualPadding.install( b, null );
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,7 @@ Button.border=com.formdev.flatlaf.ui.FlatButtonBorder
Button.arc=6
Button.minimumWidth=72
Button.margin=2,14,2,14
Button.iconTextGap=4
Button.rollover=true
Button.defaultButtonFollowsFocus=false

Expand All @@ -75,6 +76,7 @@ Button.defaultButtonFollowsFocus=false
CheckBox.border=com.formdev.flatlaf.ui.FlatMarginBorder
CheckBox.icon=com.formdev.flatlaf.icons.FlatCheckBoxIcon
CheckBox.margin=2,2,2,2
CheckBox.iconTextGap=4
CheckBox.rollover=true


Expand Down Expand Up @@ -249,6 +251,7 @@ RadioButton.border=com.formdev.flatlaf.ui.FlatMarginBorder
RadioButton.icon=com.formdev.flatlaf.icons.FlatRadioButtonIcon
RadioButton.icon.centerDiameter=8
RadioButton.margin=2,2,2,2
RadioButton.iconTextGap=4
RadioButton.rollover=true


Expand Down Expand Up @@ -373,6 +376,7 @@ TitledBorder.border=1,1,1,1,@@Separator.foreground
ToggleButton.border=com.formdev.flatlaf.ui.FlatButtonBorder
ToggleButton.arc=6
ToggleButton.margin=2,14,2,14
ToggleButton.iconTextGap=4
ToggleButton.rollover=true

ToggleButton.background=@@Button.background
Expand Down

0 comments on commit eff9c50

Please sign in to comment.