From bdcf43067f613bdf3837e353e992faeb2c6316ba Mon Sep 17 00:00:00 2001 From: Niki Roo Date: Sat, 2 Apr 2016 14:20:25 +0200 Subject: [PATCH] Fix some default colours --- .../jvcard/resources/colors.properties | 4 +- src/be/nikiroo/jvcard/tui/UiColors.java | 76 ++++++++++++------- 2 files changed, 51 insertions(+), 29 deletions(-) diff --git a/src/be/nikiroo/jvcard/resources/colors.properties b/src/be/nikiroo/jvcard/resources/colors.properties index 7d0bd2c..3cf0b49 100644 --- a/src/be/nikiroo/jvcard/resources/colors.properties +++ b/src/be/nikiroo/jvcard/resources/colors.properties @@ -11,8 +11,8 @@ # (FORMAT: colour) -DEFAULT_FG = BLACK -DEFAULT_BG = WHITE +DEFAULT_FG = WHITE +DEFAULT_BG = BLACK # (FORMAT: colour) TITLE_MAIN_FG = WHITE TITLE_MAIN_BG = BLUE diff --git a/src/be/nikiroo/jvcard/tui/UiColors.java b/src/be/nikiroo/jvcard/tui/UiColors.java index 877c739..7d951c8 100644 --- a/src/be/nikiroo/jvcard/tui/UiColors.java +++ b/src/be/nikiroo/jvcard/tui/UiColors.java @@ -34,6 +34,55 @@ public class UiColors extends ColorBundle { colorMap = new HashMap(); } + /** + * Return a {@link Theme} following the colours defined in + * colors.properties. + * + * @return the {@link Theme} + */ + static public Theme getCustomTheme() { + // Create a properties-theme with our own custom values for some of it + Properties properties = new Properties(); + try { + ClassLoader classLoader = AbstractTextGUI.class.getClassLoader(); + InputStream resourceAsStream = classLoader + .getResourceAsStream("default-theme.properties"); + if (resourceAsStream == null) { + resourceAsStream = new FileInputStream( + "src/main/resources/default-theme.properties"); + } + properties.load(resourceAsStream); + resourceAsStream.close(); + } catch (IOException e) { + } + + // default colours: + String fg = getForegroundColor(ColorOption.DEFAULT).toString(); + String bg = getBackgroundColor(ColorOption.DEFAULT).toString(); + for (String def : new String[] { "com.googlecode.lanterna", + "com.googlecode.lanterna.gui2.TextBox", + "com.googlecode.lanterna.gui2.AbstractListBox", + "com.googlecode.lanterna.gui2.Borders$StandardBorder" }) { + properties.put(def + ".foreground", fg); + properties.put(def + ".background", bg); + } + + // no bold on borders prelight: + properties + .put("com.googlecode.lanterna.gui2.Borders$StandardBorder.sgr[PRELIGHT]", + ""); + + // line answers: + fg = getForegroundColor(ColorOption.LINE_MESSAGE_ANS).toString(); + bg = getBackgroundColor(ColorOption.LINE_MESSAGE_ANS).toString(); + String prop = "com.googlecode.lanterna.gui2.TextBox"; + properties.put(prop + ".foreground[ACTIVE]", fg); + properties.put(prop + ".background[ACTIVE]", bg); + + PropertiesTheme theme = new PropertiesTheme(properties); + return theme; + } + /** * Create a new {@link Label} with the colours of the given * {@link ColorOption}. @@ -113,33 +162,6 @@ public class UiColors extends ColorBundle { return getInstance().colorMap.get(el.name() + "_FG"); } - /** - * Return a {@link Theme} following the colours defined in - * display.properties. - * - * @return the {@link Theme} - */ - static Theme getCustomTheme() { - // Create a properties-theme with our own custom values for some of it - Properties properties = new Properties(); - try { - ClassLoader classLoader = AbstractTextGUI.class.getClassLoader(); - InputStream resourceAsStream = classLoader - .getResourceAsStream("default-theme.properties"); - if (resourceAsStream == null) { - resourceAsStream = new FileInputStream( - "src/main/resources/default-theme.properties"); - } - properties.load(resourceAsStream); - resourceAsStream.close(); - } catch (IOException e) { - } - properties.put("com.googlecode.lanterna.background", "black"); - PropertiesTheme theme = new PropertiesTheme(properties); - - return theme; - } - /** * Get the (unique) instance of this class. * -- 2.27.0