123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163 |
- package ui.view;
- import classes.AbstractCpsObject;
- import classes.Category;
- import classes.HolonElement;
- import classes.HolonObject;
- import classes.Pair;
- import ui.controller.Control;
- import ui.model.Model;
- import javax.swing.*;
- import javax.swing.border.EmptyBorder;
- import javax.swing.filechooser.FileNameExtensionFilter;
- import java.awt.*;
- import java.awt.event.KeyEvent;
- import java.awt.event.KeyListener;
- import java.awt.event.MouseAdapter;
- import java.awt.event.MouseEvent;
- import java.io.*;
- import java.util.ArrayList;
- import java.awt.event.ActionListener;
- import java.awt.event.ActionEvent;
- public class CreateTemplatePopUp extends JDialog {
- private static final long serialVersionUID = 1L;
-
- private AbstractCpsObject originalObject;
-
- private String givenCategory;
-
- private Control controller;
- private JTextField textField_name;
- private JTextField textField_imagePath;
-
-
- public CreateTemplatePopUp(AbstractCpsObject obj, Model model,
- JFrame parentFrame) {
-
-
- originalObject = obj;
-
-
- setIconImage(Util.loadImage(this, "/Images/Dummy_House.png", 30, 30));
- setBounds(100, 100, 476, 344);
- setLocationRelativeTo(parentFrame);
- getContentPane().setLayout(new BorderLayout());
-
- JPanel contentPanel = new JPanel();
- contentPanel.setBorder(new EmptyBorder(5, 5, 5, 5));
- getContentPane().add(contentPanel, BorderLayout.CENTER);
- contentPanel.setLayout(null);
-
- Choice choice = new Choice();
- choice.setBounds(86, 13, 172, 36);
- contentPanel.add(choice);
-
- for(Category c: model.getCategories())
- choice.add(c.getName());
-
- JLabel lblCategory = new JLabel("Category:");
- lblCategory.setBounds(12, 13, 68, 22);
- contentPanel.add(lblCategory);
-
- JButton btnCancel = new JButton("Cancel");
- btnCancel.setBounds(349, 257, 97, 25);
- contentPanel.add(btnCancel);
- btnCancel.addActionListener(e -> dispose());
-
- JButton btnAddTemplate = new JButton("Add Template");
- btnAddTemplate.setBounds(235, 257, 113, 25);
- contentPanel.add(btnAddTemplate);
-
- JLabel lblName = new JLabel("Name:");
- lblName.setBounds(12, 48, 56, 16);
- contentPanel.add(lblName);
-
- textField_name = new JTextField();
- textField_name.setBounds(86, 48, 172, 22);
- contentPanel.add(textField_name);
- textField_name.setColumns(10);
- textField_name.setText(obj.getName());
-
- JLabel lblImage = new JLabel("Image:");
- lblImage.setBounds(12, 89, 56, 16);
- contentPanel.add(lblImage);
-
- textField_imagePath = new JTextField();
- textField_imagePath.setBounds(86, 86, 172, 22);
- contentPanel.add(textField_imagePath);
- textField_imagePath.setColumns(10);
- textField_imagePath.setText(obj.getImage());
-
- JButton btnBrowseImage = new JButton("BrowseImage");
- btnBrowseImage.setBounds(268, 85, 117, 25);
- contentPanel.add(btnBrowseImage);
-
- JList list = new JList(((HolonObject)obj).getElements().toArray());
- list.setBounds(12, 118, 221, 166);
- contentPanel.add(list);
-
- JLabel lblNewLabel = new JLabel("New label");
- lblNewLabel.setIcon(new ImageIcon(Util.loadImage(this, obj.getImage(),62,62)));
- lblNewLabel.setBounds(298, 13, 62, 62);
- contentPanel.add(lblNewLabel);
-
- JButton btnDeleteElement = new JButton("Delete Element");
- btnDeleteElement.setBounds(245, 199, 140, 25);
- contentPanel.add(btnDeleteElement);
-
- JButton btnEditElement = new JButton("Edit Element");
- btnEditElement.setBounds(245, 161, 140, 25);
- contentPanel.add(btnEditElement);
-
- JButton btnAddElement = new JButton("Add Element");
- btnAddElement.setBounds(245, 123, 140, 25);
- contentPanel.add(btnAddElement);
-
- setTitle("Create Template Menu");
- }
-
- public void setController(Control controller) {
- this.controller = controller;
- }
- }
|