From 2480b55d9ab746990a40aff4909877e79ffa2f8e Mon Sep 17 00:00:00 2001 From: Adam Date: Mon, 28 May 2018 13:51:44 -0400 Subject: [PATCH] config panel: allow color configs with no value --- .../net/runelite/client/plugins/config/ConfigPanel.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/config/ConfigPanel.java b/runelite-client/src/main/java/net/runelite/client/plugins/config/ConfigPanel.java index 80ac7afd5f..bff19d4c23 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/config/ConfigPanel.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/config/ConfigPanel.java @@ -494,16 +494,19 @@ public class ConfigPanel extends PluginPanel if (cid.getType() == Color.class) { + String existing = configManager.getConfiguration(cd.getGroup().keyName(), cid.getItem().keyName()); + Color existingColor = existing == null ? Color.BLACK : Color.decode(existing); + JButton colorPicker = new JButton("Pick a color"); colorPicker.setFocusable(false); - colorPicker.setBackground(Color.decode(configManager.getConfiguration(cd.getGroup().keyName(), cid.getItem().keyName()))); + colorPicker.setBackground(existingColor); colorPicker.addMouseListener(new MouseAdapter() { @Override public void mouseClicked(MouseEvent e) { final JFrame parent = new JFrame(); - JColorChooser jColorChooser = new JColorChooser(Color.decode(configManager.getConfiguration(cd.getGroup().keyName(), cid.getItem().keyName()))); + JColorChooser jColorChooser = new JColorChooser(existingColor); jColorChooser.getSelectionModel().addChangeListener(e1 -> colorPicker.setBackground(jColorChooser.getColor())); parent.addWindowListener(new WindowAdapter() {