From 4a8ca1d1e58970c921d9eef6fb47e9e797dbbfaf Mon Sep 17 00:00:00 2001 From: Tomas Slusny Date: Sat, 12 May 2018 12:39:30 +0200 Subject: [PATCH] Change config TextField to TextArea For better readability of text configurations, change TextField to TextArea that can span multiple lines. Signed-off-by: Tomas Slusny --- .../client/plugins/config/ConfigPanel.java | 25 ++++++++----------- 1 file changed, 11 insertions(+), 14 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 6bd408f108..80ac7afd5f 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 @@ -44,6 +44,7 @@ import java.util.Map; import java.util.TreeMap; import java.util.concurrent.ScheduledExecutorService; import javax.imageio.ImageIO; +import javax.swing.BorderFactory; import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JCheckBox; @@ -57,7 +58,7 @@ import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.JSpinner; -import javax.swing.JTextField; +import javax.swing.JTextArea; import javax.swing.SpinnerModel; import javax.swing.SpinnerNumberModel; import javax.swing.SwingConstants; @@ -86,7 +87,6 @@ import net.runelite.client.util.SwingUtil; @Slf4j public class ConfigPanel extends PluginPanel { - private static final int TEXT_FIELD_WIDTH = 7; private static final int SPINNER_FIELD_WIDTH = 6; private static final ImageIcon CONFIG_ICON; @@ -402,9 +402,9 @@ public class ConfigPanel extends PluginPanel configManager.setConfiguration(cd.getGroup().keyName(), cid.getItem().keyName(), "" + spinner.getValue()); } - if (component instanceof JTextField) + if (component instanceof JTextArea) { - JTextField textField = (JTextField) component; + JTextArea textField = (JTextArea) component; configManager.setConfiguration(cd.getGroup().keyName(), cid.getItem().keyName(), textField.getText()); } @@ -426,10 +426,10 @@ public class ConfigPanel extends PluginPanel scrollBarPosition = getScrollPane().getVerticalScrollBar().getValue(); removeAll(); String name = cd.getGroup().name() + " Configuration"; - JLabel title = new JLabel(name); + JLabel title = new JLabel(name, SwingConstants.CENTER); title.setForeground(Color.WHITE); title.setToolTipText(cd.getGroup().description()); - add(title, SwingConstants.CENTER); + add(title); for (ConfigItemDescriptor cid : cd.getItems()) { @@ -472,7 +472,10 @@ public class ConfigPanel extends PluginPanel if (cid.getType() == String.class) { - JTextField textField = new JTextField("", TEXT_FIELD_WIDTH); + JTextArea textField = new JTextArea(); + textField.setLineWrap(true); + textField.setWrapStyleWord(true); + textField.setBorder(BorderFactory.createEmptyBorder(5, 5, 5, 5)); textField.setText(configManager.getConfiguration(cd.getGroup().keyName(), cid.getItem().keyName())); textField.addFocusListener(new FocusAdapter() @@ -485,14 +488,8 @@ public class ConfigPanel extends PluginPanel } }); - textField.addActionListener(e -> - { - changeConfiguration(config, textField, cd, cid); - textField.setToolTipText(textField.getText()); - }); - textField.setToolTipText(textField.getText()); - item.add(textField, BorderLayout.EAST); + item.add(textField, BorderLayout.SOUTH); } if (cid.getType() == Color.class)