From 8e6bade42b0b2042c9c002dd4ff85e1ab0740a5a Mon Sep 17 00:00:00 2001 From: str4d <str4d@mail.i2p> Date: Sun, 22 Jul 2012 06:53:43 +0000 Subject: [PATCH] Added checkbox to console to set theme universally across all apps --- .../net/i2p/router/web/ConfigUIHandler.java | 24 +++++++++++++------ .../net/i2p/router/web/ConfigUIHelper.java | 3 +++ 2 files changed, 20 insertions(+), 7 deletions(-) diff --git a/apps/routerconsole/java/src/net/i2p/router/web/ConfigUIHandler.java b/apps/routerconsole/java/src/net/i2p/router/web/ConfigUIHandler.java index e364f00ab3..a9d1c4a04c 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/ConfigUIHandler.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/ConfigUIHandler.java @@ -1,10 +1,12 @@ package net.i2p.router.web; +import java.util.Iterator; import java.util.Properties; /** set the theme */ public class ConfigUIHandler extends FormHandler { private boolean _shouldSave; + private boolean _universalTheming; private String _config; @Override @@ -14,7 +16,9 @@ public class ConfigUIHandler extends FormHandler { } public void setShouldsave(String moo) { _shouldSave = true; } - + + public void setUniversalTheming(String baa) { _universalTheming = true; } + public void setTheme(String val) { _config = val; } @@ -25,12 +29,18 @@ public class ConfigUIHandler extends FormHandler { return; Properties props = _context.readConfigFile(CSSHelper.THEME_CONFIG_FILE); String oldTheme = props.getProperty(CSSHelper.PROP_THEME_NAME, CSSHelper.DEFAULT_THEME); - boolean ok; - if (_config.equals("default")) // obsolete - props.put(CSSHelper.PROP_THEME_NAME, null); - else - props.put(CSSHelper.PROP_THEME_NAME, _config); - ok = _context.writeConfigFile(CSSHelper.THEME_CONFIG_FILE, props); + if (_universalTheming) { + for (Iterator it = props.keySet().iterator(); it.hasNext();) { + String key = (String) it.next(); + props.put(key, _config); + } + } else { + if (_config.equals("default")) // obsolete + props.put(CSSHelper.PROP_THEME_NAME, null); + else + props.put(CSSHelper.PROP_THEME_NAME, _config); + } + boolean ok = _context.writeConfigFile(CSSHelper.THEME_CONFIG_FILE, props); if (ok) { if (!oldTheme.equals(_config)) addFormNotice(_("Theme change saved.") + diff --git a/apps/routerconsole/java/src/net/i2p/router/web/ConfigUIHelper.java b/apps/routerconsole/java/src/net/i2p/router/web/ConfigUIHelper.java index e4ac8019bf..fcb19bc38b 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/ConfigUIHelper.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/ConfigUIHelper.java @@ -17,6 +17,9 @@ public class ConfigUIHelper extends HelperBase { buf.append("checked=\"checked\" "); buf.append("value=\"").append(theme).append("\">").append(_(theme)).append("<br>\n"); } + buf.append("<input type=\"checkbox\" name=\"universalTheming\" value=\"1\">") + .append(_("Set theme universally across all apps")) + .append("<br>\n"); return buf.toString(); } -- GitLab