summaryrefslogtreecommitdiff
path: root/BJC-Utils2/src/main/java/bjc/utils/gui/SimpleJList.java
diff options
context:
space:
mode:
Diffstat (limited to 'BJC-Utils2/src/main/java/bjc/utils/gui/SimpleJList.java')
-rw-r--r--BJC-Utils2/src/main/java/bjc/utils/gui/SimpleJList.java36
1 files changed, 36 insertions, 0 deletions
diff --git a/BJC-Utils2/src/main/java/bjc/utils/gui/SimpleJList.java b/BJC-Utils2/src/main/java/bjc/utils/gui/SimpleJList.java
new file mode 100644
index 0000000..220ac7d
--- /dev/null
+++ b/BJC-Utils2/src/main/java/bjc/utils/gui/SimpleJList.java
@@ -0,0 +1,36 @@
+package bjc.utils.gui;
+
+import java.util.List;
+
+import javax.swing.DefaultListModel;
+import javax.swing.JList;
+import javax.swing.ListModel;
+
+/**
+ * Utility class for making JLists and their models.
+ * @author ben
+ *
+ */
+public class SimpleJList {
+ /**
+ * Create a new JList from a given list.
+ * @param ls The list to populate the JList with.
+ * @return A JList populated with the elements from ls.
+ */
+ public static <E> JList<E> buildFromList(List<E> ls) {
+ return new JList<E>(buildModel(ls));
+ }
+
+ /**
+ * Create a new list model from a given list.
+ * @param ls The list to fill the list model from.
+ * @return A list model populated with the elements from ls.
+ */
+ public static <E> ListModel<E> buildModel(List<E> ls) {
+ DefaultListModel<E> dlm = new DefaultListModel<>();
+
+ ls.forEach(dlm::addElement);
+
+ return dlm;
+ }
+}