|
@@ -57,6 +57,7 @@ import javax.swing.border.LineBorder;
|
|
|
import javax.swing.event.ChangeEvent;
|
|
|
import javax.swing.event.ChangeListener;
|
|
|
import javax.swing.filechooser.FileNameExtensionFilter;
|
|
|
+import javax.swing.plaf.FileChooserUI;
|
|
|
import javax.swing.table.DefaultTableModel;
|
|
|
import javax.swing.tree.DefaultMutableTreeNode;
|
|
|
import javax.swing.tree.DefaultTreeModel;
|
|
@@ -74,7 +75,9 @@ import classes.HolonSwitch;
|
|
|
import classes.HolonTransformer;
|
|
|
import classes.Position;
|
|
|
import ui.controller.Control;
|
|
|
-import ui.model.Model;;
|
|
|
+import ui.model.Model;
|
|
|
+import javax.swing.JList;
|
|
|
+import javax.swing.Box;;
|
|
|
|
|
|
public class GUI<E> implements CategoryListener {
|
|
|
|
|
@@ -183,8 +186,6 @@ public class GUI<E> implements CategoryListener {
|
|
|
private TimePanel timePanel;
|
|
|
private final JMenu mnAlgorithm = new JMenu("Algorithm");
|
|
|
private final JCheckBoxMenuItem chckbxmntmUseAlgorithm = new JCheckBoxMenuItem("Use Algorithm");
|
|
|
- private final JSplitPane splitPane_2 = new JSplitPane();
|
|
|
- private final JLabel lblSelect = new JLabel("Select");
|
|
|
private final JComboBox comboBoxAlgo = new JComboBox();
|
|
|
private int yTHIS;
|
|
|
private int xTHIS;
|
|
@@ -198,6 +199,7 @@ public class GUI<E> implements CategoryListener {
|
|
|
private final JMenuItem mntmFindReplace = new JMenuItem("Find/ Replace");
|
|
|
private final JMenuItem mntmEditShowedInformation = new JMenuItem("Edit showed Information");
|
|
|
private final JMenuItem mntmResetCategory = new JMenuItem("Reset Categories");
|
|
|
+ private final JMenuItem mntmSetFolder = new JMenuItem("Set Folder");
|
|
|
private final JMenu mnSimulationSpeed = new JMenu("Simulation Speed");
|
|
|
private final JTextField simulationSpeedField = new JTextField();
|
|
|
private final JButton btnApply = new JButton("Apply");
|
|
@@ -505,13 +507,9 @@ public class GUI<E> implements CategoryListener {
|
|
|
|
|
|
menuBar.add(mnAlgorithm);
|
|
|
|
|
|
- mnAlgorithm.add(chckbxmntmUseAlgorithm);
|
|
|
-
|
|
|
- mnAlgorithm.add(splitPane_2);
|
|
|
+ mnAlgorithm.add(mntmSetFolder);
|
|
|
|
|
|
- splitPane_2.setLeftComponent(lblSelect);
|
|
|
-
|
|
|
- splitPane_2.setRightComponent(comboBoxAlgo);
|
|
|
+ mnAlgorithm.add(chckbxmntmUseAlgorithm);
|
|
|
|
|
|
canvas.setBackground(Color.WHITE);
|
|
|
canvas.setPreferredSize(new Dimension(1000, 1000));
|
|
@@ -1349,11 +1347,11 @@ public class GUI<E> implements CategoryListener {
|
|
|
@Override
|
|
|
public void actionPerformed(java.awt.event.ActionEvent evt) {
|
|
|
|
|
|
- menuUndoActionPerformed(evt);
|
|
|
+ menuRedoActionPerformed(evt);
|
|
|
|
|
|
}
|
|
|
|
|
|
- private void menuUndoActionPerformed(java.awt.event.ActionEvent evt) {
|
|
|
+ private void menuRedoActionPerformed(java.awt.event.ActionEvent evt) {
|
|
|
try {
|
|
|
controller.loadFile(controller.getRedoSave());
|
|
|
canvas.repaint();
|
|
@@ -1380,6 +1378,33 @@ public class GUI<E> implements CategoryListener {
|
|
|
|
|
|
});
|
|
|
|
|
|
+ mntmSetFolder.addActionListener(new java.awt.event.ActionListener() {
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void actionPerformed(java.awt.event.ActionEvent evt) {
|
|
|
+
|
|
|
+ menuSetFolderActionPerformed(evt);
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ private void menuSetFolderActionPerformed(java.awt.event.ActionEvent evt) {
|
|
|
+ JFileChooser fileChooser = new JFileChooser();
|
|
|
+ JFrame test = new JFrame();
|
|
|
+ fileChooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
|
|
|
+ fileChooser.setAcceptAllFileFilterUsed(false);
|
|
|
+
|
|
|
+ if (fileChooser.showOpenDialog(test) == JFileChooser.APPROVE_OPTION) {
|
|
|
+ File[] files = fileChooser.getSelectedFile().listFiles();
|
|
|
+ for (int i = 0; i < files.length; i++) {
|
|
|
+ if (files[i].toString().endsWith(".java") || files[i].toString().endsWith(".class")) {
|
|
|
+ comboBoxAlgo.addItem(files[i]);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ });
|
|
|
+
|
|
|
timePanel = new TimePanel(model, controller);
|
|
|
timePanel.setBorder(null);
|
|
|
((JSlider) (timePanel.getComponent(1))).addChangeListener(new ChangeListener() {
|
|
@@ -1430,6 +1455,7 @@ public class GUI<E> implements CategoryListener {
|
|
|
});
|
|
|
|
|
|
mnSimulationSpeed.add(btnApply);
|
|
|
+ menuBar.add(comboBoxAlgo);
|
|
|
}
|
|
|
|
|
|
/*
|