From 15ae5e21fcb395279587dd2a03d3b84ef308bd65 Mon Sep 17 00:00:00 2001 From: Juuxel Date: Thu, 18 Mar 2021 22:56:21 +0200 Subject: Don't use custom editor fonts when they aren't enabled --- .../src/main/java/cuchaz/enigma/gui/EnigmaSyntaxKit.java | 5 ++++- .../src/main/java/cuchaz/enigma/gui/config/UiConfig.java | 16 +++++++++++++++- .../java/cuchaz/enigma/gui/dialog/JavadocDialog.java | 2 +- 3 files changed, 20 insertions(+), 3 deletions(-) (limited to 'enigma-swing/src/main/java') diff --git a/enigma-swing/src/main/java/cuchaz/enigma/gui/EnigmaSyntaxKit.java b/enigma-swing/src/main/java/cuchaz/enigma/gui/EnigmaSyntaxKit.java index 27c866c..b500e4b 100644 --- a/enigma-swing/src/main/java/cuchaz/enigma/gui/EnigmaSyntaxKit.java +++ b/enigma-swing/src/main/java/cuchaz/enigma/gui/EnigmaSyntaxKit.java @@ -7,6 +7,8 @@ import de.sciss.syntaxpane.util.Configuration; import cuchaz.enigma.gui.config.UiConfig; +import java.awt.Font; + public class EnigmaSyntaxKit extends JavaSyntaxKit { private static Configuration configuration = null; @@ -53,7 +55,8 @@ public class EnigmaSyntaxKit extends JavaSyntaxKit { configuration.put("Action.quick-find", "cuchaz.enigma.gui.QuickFindAction, menu F"); - configuration.put("DefaultFont", UiConfig.encodeFont(UiConfig.getEditorFont())); + Font editorFont = UiConfig.shouldUseCustomFonts() ? UiConfig.getEditorFont() : UiConfig.getFallbackEditorFont(); + configuration.put("DefaultFont", UiConfig.encodeFont(editorFont)); } /** diff --git a/enigma-swing/src/main/java/cuchaz/enigma/gui/config/UiConfig.java b/enigma-swing/src/main/java/cuchaz/enigma/gui/config/UiConfig.java index 828da11..bab50df 100644 --- a/enigma-swing/src/main/java/cuchaz/enigma/gui/config/UiConfig.java +++ b/enigma-swing/src/main/java/cuchaz/enigma/gui/config/UiConfig.java @@ -220,13 +220,27 @@ public final class UiConfig { } public static Font getEditorFont() { - return getFont("Editor").orElseGet(() -> ScaleUtil.scaleFont(Font.decode(Font.MONOSPACED))); + return getFont("Editor").orElseGet(UiConfig::getFallbackEditorFont); } public static void setEditorFont(Font font) { setFont("Editor", font); } + /** + * Gets the fallback editor font. + * It is used + * + * + * @return the fallback editor font + */ + public static Font getFallbackEditorFont() { + return ScaleUtil.scaleFont(Font.decode(Font.MONOSPACED)); + } + public static String encodeFont(Font font) { int style = font.getStyle(); String s = style == (Font.BOLD | Font.ITALIC) ? "bolditalic" : style == Font.ITALIC ? "italic" : style == Font.BOLD ? "bold" : "plain"; diff --git a/enigma-swing/src/main/java/cuchaz/enigma/gui/dialog/JavadocDialog.java b/enigma-swing/src/main/java/cuchaz/enigma/gui/dialog/JavadocDialog.java index 3435012..8a5a376 100644 --- a/enigma-swing/src/main/java/cuchaz/enigma/gui/dialog/JavadocDialog.java +++ b/enigma-swing/src/main/java/cuchaz/enigma/gui/dialog/JavadocDialog.java @@ -79,7 +79,7 @@ public class JavadocDialog { } } }); - this.text.setFont(UiConfig.getEditorFont()); + this.text.setFont(UiConfig.shouldUseCustomFonts() ? UiConfig.getEditorFont() : UiConfig.getFallbackEditorFont()); // buttons panel JPanel buttonsPanel = new JPanel(); -- cgit v1.2.3