From 43886afd0f95b90c43863f8d939246850b59560a Mon Sep 17 00:00:00 2001 From: Benjamin Culkin Date: Thu, 26 Apr 2018 06:35:16 -0700 Subject: More stages Added a stage to load images from files, and one to execute sub-pipelines. --- src/bjc/imgchain/ImgPicker.java | 63 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 src/bjc/imgchain/ImgPicker.java (limited to 'src/bjc/imgchain/ImgPicker.java') diff --git a/src/bjc/imgchain/ImgPicker.java b/src/bjc/imgchain/ImgPicker.java new file mode 100644 index 0000000..bc93089 --- /dev/null +++ b/src/bjc/imgchain/ImgPicker.java @@ -0,0 +1,63 @@ +package bjc.imgchain; + +import java.awt.BorderLayout; +import java.awt.GridLayout; + +import javax.swing.DefaultListModel; +import javax.swing.JButton; +import javax.swing.JDialog; +import javax.swing.JList; +import javax.swing.JPanel; +import javax.swing.JScrollPane; + +import bjc.imgchain.ImgChain; + +public class ImgPicker extends JDialog { + private static final long serialVersionUID = 1L; + + public String imageName; + + public ImgPicker() { + super(); + + setModalityType(ModalityType.APPLICATION_MODAL); + setTitle("Recall an Image"); + + setupGUI(); + } + + private void setupGUI() { + setLayout(new BorderLayout()); + + DefaultListModel imgModel = new DefaultListModel<>(); + for (String imgName : ImgChain.chan.imageRepo.keySet()) { + imgModel.addElement(imgName); + } + + JList imgList = new JList<>(imgModel); + JScrollPane listScroll = new JScrollPane(imgList); + + JPanel buttonPanel = new JPanel(); + buttonPanel.setLayout(new GridLayout(2, 1)); + + JButton addStage = new JButton("Recall Image"); + addStage.addActionListener((ev) -> { + imageName = imgList.getSelectedValue(); + + setVisible(false); + dispose(); + }); + + JButton cancel = new JButton("Cancel"); + cancel.addActionListener((ev) -> { + setVisible(false); + dispose(); + }); + + buttonPanel.add(addStage); + buttonPanel.add(cancel); + + add(listScroll, BorderLayout.CENTER); + add(buttonPanel, BorderLayout.PAGE_END); + } +} -- cgit v1.2.3