summaryrefslogtreecommitdiff
path: root/BJC-Utils2/src/main/java/bjc/utils/gui/SimpleListPanel.java
diff options
context:
space:
mode:
authorbculkin2442 <bjculkin@mix.wvu.edu>2016-08-19 11:02:03 -0400
committerbculkin2442 <bjculkin@mix.wvu.edu>2016-08-19 11:02:03 -0400
commit6d454caf2bfa5207957b5da775ece2a249857ddd (patch)
tree130df7ff143f1dfce694d25e9537f3b0396c63fd /BJC-Utils2/src/main/java/bjc/utils/gui/SimpleListPanel.java
parent092975de0acbe682a317b97c17c0fcc3933e88ee (diff)
GUI reorganization
Diffstat (limited to 'BJC-Utils2/src/main/java/bjc/utils/gui/SimpleListPanel.java')
-rw-r--r--BJC-Utils2/src/main/java/bjc/utils/gui/SimpleListPanel.java81
1 files changed, 0 insertions, 81 deletions
diff --git a/BJC-Utils2/src/main/java/bjc/utils/gui/SimpleListPanel.java b/BJC-Utils2/src/main/java/bjc/utils/gui/SimpleListPanel.java
deleted file mode 100644
index 3e4e0ad..0000000
--- a/BJC-Utils2/src/main/java/bjc/utils/gui/SimpleListPanel.java
+++ /dev/null
@@ -1,81 +0,0 @@
-package bjc.utils.gui;
-
-import java.awt.BorderLayout;
-import java.util.function.Consumer;
-import java.util.function.Predicate;
-
-import javax.swing.DefaultListModel;
-import javax.swing.JButton;
-import javax.swing.JList;
-import javax.swing.JPanel;
-import javax.swing.JScrollPane;
-import javax.swing.JTextField;
-import javax.swing.ListSelectionModel;
-
-import bjc.utils.gui.layout.AutosizeLayout;
-import bjc.utils.gui.layout.HLayout;
-
-public class SimpleListPanel extends JPanel {
- private static final long serialVersionUID = 2719963952350133541L;
-
- public SimpleListPanel(String itemType,
- DefaultListModel<String> listModel,
- Predicate<String> itemVerifier,
- Consumer<String> onVerificationFailure) {
- setLayout(new AutosizeLayout());
-
- JPanel itemInputPanel = new JPanel();
- itemInputPanel.setLayout(new BorderLayout());
-
- JPanel addItemPanel = new JPanel();
- addItemPanel.setLayout(new HLayout(2));
-
- JTextField addItemField = new JTextField(255);
- JButton addItemButton = new JButton("Add " + itemType);
-
- addItemPanel.add(addItemField);
- addItemPanel.add(addItemButton);
-
- JList<String> itemList = new JList<>(listModel);
- itemList.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
-
- JScrollPane listScroller = new JScrollPane(itemList);
-
- JButton removeItemButton = new JButton("Remove " + itemType);
-
- addItemButton.addActionListener((ev) -> {
- addItem(listModel, itemVerifier, onVerificationFailure,
- addItemField);
- });
-
- addItemField.addActionListener((ev) -> {
- addItem(listModel, itemVerifier, onVerificationFailure,
- addItemField);
- });
-
- removeItemButton.addActionListener((ev) -> {
- listModel.remove(itemList.getSelectedIndex());
- });
-
- itemInputPanel.add(addItemPanel, BorderLayout.PAGE_START);
- itemInputPanel.add(listScroller, BorderLayout.CENTER);
- itemInputPanel.add(removeItemButton, BorderLayout.PAGE_END);
-
- add(itemInputPanel);
- }
-
- private static void addItem(DefaultListModel<String> listModel,
- Predicate<String> itemVerifier,
- Consumer<String> onVerificationFailure,
- JTextField addItemField) {
- String potentialItem = addItemField.getText();
-
- if (itemVerifier == null || itemVerifier.test(potentialItem)) {
- listModel.addElement(potentialItem);
- } else {
- onVerificationFailure.accept(potentialItem);
- }
-
- addItemField.setText("");
- }
-}