From c43ae92cb650b4b72f1849237e15462c19928daf Mon Sep 17 00:00:00 2001 From: Nils Vreman <nils.vreman@gmail.com> Date: Tue, 21 Aug 2018 15:03:00 +0200 Subject: [PATCH] Fixed problem with text disappearing when list option pressed --- gui/menu/help/HelpMenuPane.java | 2 +- gui/menu/help/ScheduleTab.java | 13 +++++++------ gui/menu/help/TabPanel.java | 13 ++++++++++--- 3 files changed, 18 insertions(+), 10 deletions(-) diff --git a/gui/menu/help/HelpMenuPane.java b/gui/menu/help/HelpMenuPane.java index f863106..8396539 100644 --- a/gui/menu/help/HelpMenuPane.java +++ b/gui/menu/help/HelpMenuPane.java @@ -18,7 +18,7 @@ public class HelpMenuPane extends JFrame { tabbedPane.addTab("Schedule", new ScheduleTab()); tabbedPane.setTabLayoutPolicy(JTabbedPane.SCROLL_TAB_LAYOUT); - tabbedPane.setPreferredSize(new Dimension(400, 400)); + tabbedPane.setPreferredSize(new Dimension(500, 400)); add(CENTER, tabbedPane); diff --git a/gui/menu/help/ScheduleTab.java b/gui/menu/help/ScheduleTab.java index 383cc37..74e39f5 100644 --- a/gui/menu/help/ScheduleTab.java +++ b/gui/menu/help/ScheduleTab.java @@ -5,16 +5,17 @@ public class ScheduleTab extends TabPanel { private static final String[] listOptions = new String[] { "Schedule", "Solution", - "Checking Solution", - "Clearing Cells", - "Clearing Strategy"}; + "Check Solution", + "Clear Cells", + "Clear Strategy"}; + private static final String[] helpTexts = new String[] { "Schedule", "Solution", - "Checking Solution", - "Clearing Cells", - "Clearing Strategy"}; + "Check Solution", + "Clear Cells", + "Clear Strategy"}; public ScheduleTab() { super(listOptions, helpTexts); diff --git a/gui/menu/help/TabPanel.java b/gui/menu/help/TabPanel.java index 9cdfa1a..30d1aaa 100644 --- a/gui/menu/help/TabPanel.java +++ b/gui/menu/help/TabPanel.java @@ -3,20 +3,23 @@ package gui.menu.help; import javax.swing.JPanel; import javax.swing.JTextField; import java.awt.BorderLayout; +import java.awt.Dimension; import java.util.Map; import java.util.HashMap; public abstract class TabPanel extends JPanel implements EventListener { private final String[] listOptions; + private OptionList list; private Map<String, JTextField> helpTexts = new HashMap<>(); public TabPanel(String[] listOptions, String[] fieldTexts) { super(new BorderLayout()); this.listOptions = listOptions; - OptionList list = new OptionList(listOptions); + list = new OptionList(listOptions); list.addListener(this); + list.setPreferredSize(new Dimension(120, 400)); for (int i = 0; i < listOptions.length; i++) { JTextField htf = new HelpTextField(fieldTexts[i]); @@ -28,10 +31,14 @@ public abstract class TabPanel extends JPanel implements EventListener { } public void update(String tab) { + removeAll(); + add(BorderLayout.WEST, list); + if (helpTexts.containsKey(tab)) { add(BorderLayout.CENTER, helpTexts.get(tab)); - revalidate(); - repaint(); } + + revalidate(); + repaint(); } } -- GitLab