mirror of
https://github.com/JFormDesigner/FlatLaf.git
synced 2025-12-06 22:10:54 +03:00
Styling: MenuItem: support styling acceleratorFont
Theme Editor: - support font keys in auto-completion - ignore Menu.acceleratorFont, CheckBoxMenuItem.acceleratorFont and RadioButtonMenuItem.acceleratorFont because they are never used (keep UI values for backward compatibility)
This commit is contained in:
@@ -78,7 +78,7 @@ public class FlatMenuItemRenderer
|
||||
protected final JMenuItem menuItem;
|
||||
protected Icon checkIcon;
|
||||
protected Icon arrowIcon;
|
||||
protected final Font acceleratorFont;
|
||||
@Styleable protected Font acceleratorFont;
|
||||
protected final String acceleratorDelimiter;
|
||||
|
||||
/** @since 2 */ @Styleable protected boolean verticallyAlignText = FlatUIUtils.getUIBoolean( "MenuItem.verticallyAlignText", true );
|
||||
|
||||
@@ -20,6 +20,7 @@ import static org.junit.jupiter.api.Assertions.assertTrue;
|
||||
import static com.formdev.flatlaf.ui.TestUtils.assertMapEquals;
|
||||
import java.awt.Color;
|
||||
import java.awt.Dimension;
|
||||
import java.awt.Font;
|
||||
import java.awt.Insets;
|
||||
import java.util.LinkedHashMap;
|
||||
import java.util.Map;
|
||||
@@ -335,7 +336,8 @@ public class TestFlatStyleableInfo
|
||||
"selectionForeground", Color.class,
|
||||
"disabledForeground", Color.class,
|
||||
"acceleratorForeground", Color.class,
|
||||
"acceleratorSelectionForeground", Color.class
|
||||
"acceleratorSelectionForeground", Color.class,
|
||||
"acceleratorFont", Font.class
|
||||
);
|
||||
|
||||
menuItemRenderer( expected );
|
||||
|
||||
@@ -483,6 +483,7 @@ public class TestFlatStyling
|
||||
applyStyle.accept( "disabledForeground: #fff" );
|
||||
applyStyle.accept( "acceleratorForeground: #fff" );
|
||||
applyStyle.accept( "acceleratorSelectionForeground: #fff" );
|
||||
applyStyle.accept( "acceleratorFont: italic 12 monospaced" );
|
||||
|
||||
menuItemRenderer( applyStyle );
|
||||
|
||||
@@ -770,6 +771,8 @@ public class TestFlatStyling
|
||||
ui.applyStyle( "foreground: #fff" );
|
||||
ui.applyStyle( "border: 2,2,2,2,#f00" );
|
||||
ui.applyStyle( "font: italic 12 monospaced" );
|
||||
|
||||
// JSlider properties
|
||||
ui.applyStyle( "minimum: 0" );
|
||||
ui.applyStyle( "maximum: 50" );
|
||||
ui.applyStyle( "value: 20" );
|
||||
@@ -781,12 +784,6 @@ public class TestFlatStyling
|
||||
ui.applyStyle( "paintTicks: true" );
|
||||
ui.applyStyle( "paintTrack: true" );
|
||||
ui.applyStyle( "snapToTicks: true" );
|
||||
|
||||
// JSlider properties
|
||||
ui.applyStyle( "paintLabels: true" );
|
||||
ui.applyStyle( "paintTicks: true" );
|
||||
ui.applyStyle( "paintTrack: true" );
|
||||
ui.applyStyle( "snapToTicks: true" );
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
@@ -87,8 +87,15 @@ public class UIDefaultsKeysDump
|
||||
UIDefaults defaults = UIManager.getLookAndFeel().getDefaults();
|
||||
|
||||
for( Object key : defaults.keySet() ) {
|
||||
if( key instanceof String && !((String)key).startsWith( "FlatLaf.internal." ) )
|
||||
if( key instanceof String && !ignoreKey( (String) key ) )
|
||||
keys.add( (String) key );
|
||||
}
|
||||
}
|
||||
|
||||
private static boolean ignoreKey( String key ) {
|
||||
return key.startsWith( "FlatLaf.internal." ) ||
|
||||
key.equals( "Menu.acceleratorFont" ) ||
|
||||
key.equals( "CheckBoxMenuItem.acceleratorFont" ) ||
|
||||
key.equals( "RadioButtonMenuItem.acceleratorFont" );
|
||||
}
|
||||
}
|
||||
|
||||
@@ -193,9 +193,7 @@ class FlatCompletionProvider
|
||||
}
|
||||
|
||||
private boolean isIgnored( String key ) {
|
||||
return key.endsWith( ".font" ) ||
|
||||
key.endsWith( "Font" ) ||
|
||||
key.endsWith( "InputMap" );
|
||||
return key.endsWith( "InputMap" );
|
||||
}
|
||||
|
||||
private void setCompletions( Set<String> keys ) {
|
||||
|
||||
@@ -139,7 +139,6 @@ CheckBox.margin
|
||||
CheckBox.rollover
|
||||
CheckBox.textIconGap
|
||||
CheckBox.textShiftOffset
|
||||
CheckBoxMenuItem.acceleratorFont
|
||||
CheckBoxMenuItem.acceleratorForeground
|
||||
CheckBoxMenuItem.acceleratorSelectionForeground
|
||||
CheckBoxMenuItem.arrowIcon
|
||||
@@ -430,7 +429,6 @@ List.selectionInactiveForeground
|
||||
List.showCellFocusIndicator
|
||||
List.timeFactor
|
||||
ListUI
|
||||
Menu.acceleratorFont
|
||||
Menu.acceleratorForeground
|
||||
Menu.acceleratorSelectionForeground
|
||||
Menu.arrowIcon
|
||||
@@ -614,7 +612,6 @@ RadioButton.rollover
|
||||
RadioButton.shadow
|
||||
RadioButton.textIconGap
|
||||
RadioButton.textShiftOffset
|
||||
RadioButtonMenuItem.acceleratorFont
|
||||
RadioButtonMenuItem.acceleratorForeground
|
||||
RadioButtonMenuItem.acceleratorSelectionForeground
|
||||
RadioButtonMenuItem.arrowIcon
|
||||
|
||||
Reference in New Issue
Block a user