|
@@ -393,10 +393,24 @@ public class GUI<E> implements CategoryListener {
|
|
|
@Override
|
|
|
public void actionPerformed(ActionEvent e) {
|
|
|
model.getSelectedCpsObjects().clear();
|
|
|
- for (AbstractCpsObject cps : model.getObjectsOnCanvas()) {
|
|
|
- controller.addSelectedObject(cps);
|
|
|
+ // Uppernode Canvas?
|
|
|
+ if (((JScrollPane) tabbedPane.getSelectedComponent()).getViewport()
|
|
|
+ .getComponent(0) instanceof UpperNodeCanvas) {
|
|
|
+ UpperNodeCanvas uNC = (UpperNodeCanvas) ((JScrollPane) tabbedPane.getSelectedComponent())
|
|
|
+ .getViewport().getComponent(0);
|
|
|
+ for (AbstractCpsObject cps : uNC.upperNode.getNodes()) {
|
|
|
+ controller.addSelectedObject(cps);
|
|
|
+ }
|
|
|
+ uNC.repaint();
|
|
|
+ // or Canvas?
|
|
|
+ } else if (((JScrollPane) tabbedPane.getSelectedComponent()).getViewport()
|
|
|
+ .getComponent(0) instanceof MyCanvas) {
|
|
|
+ for (AbstractCpsObject cps : model.getObjectsOnCanvas()) {
|
|
|
+ controller.addSelectedObject(cps);
|
|
|
+ }
|
|
|
+ canvas.repaint();
|
|
|
}
|
|
|
- canvas.repaint();
|
|
|
+
|
|
|
}
|
|
|
});
|
|
|
|
|
@@ -408,11 +422,37 @@ public class GUI<E> implements CategoryListener {
|
|
|
|
|
|
@Override
|
|
|
public void actionPerformed(ActionEvent e) {
|
|
|
- for (AbstractCpsObject cps : model.getSelectedCpsObjects()) {
|
|
|
- controller.delCanvasObject(cps);
|
|
|
+ // Uppernode Canvas?
|
|
|
+ if (((JScrollPane) tabbedPane.getSelectedComponent()).getViewport()
|
|
|
+ .getComponent(0) instanceof UpperNodeCanvas) {
|
|
|
+ UpperNodeCanvas uNC = (UpperNodeCanvas) ((JScrollPane) tabbedPane.getSelectedComponent())
|
|
|
+ .getViewport().getComponent(0);
|
|
|
+ for (AbstractCpsObject cps : model.getSelectedCpsObjects()) {
|
|
|
+ if (uNC.upperNode.getNodes().contains(cps)) {
|
|
|
+ controller.delObjUpperNode(cps, uNC.upperNode);
|
|
|
+ // Remove UpperNodeTab if UpperNode deleted
|
|
|
+ if (cps instanceof CpsUpperNode) {
|
|
|
+ for (int i = 3; i < tabbedPane.getTabCount(); i++) {
|
|
|
+ if (((UpperNodeCanvas) ((JScrollPane) tabbedPane.getComponentAt(i)).getViewport()
|
|
|
+ .getComponent(0)).upperNode.getID() == cps.getID()) {
|
|
|
+ tabbedPane.remove(i);
|
|
|
+ i = tabbedPane.getTabCount();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ uNC.repaint();
|
|
|
+
|
|
|
+ // or Canvas?
|
|
|
+ } else if (((JScrollPane) tabbedPane.getSelectedComponent()).getViewport()
|
|
|
+ .getComponent(0) instanceof MyCanvas) {
|
|
|
+ for (AbstractCpsObject cps : model.getSelectedCpsObjects()) {
|
|
|
+ controller.delCanvasObject(cps);
|
|
|
+ }
|
|
|
+ canvas.repaint();
|
|
|
}
|
|
|
model.getSelectedCpsObjects().clear();
|
|
|
- canvas.repaint();
|
|
|
unitGraph.empty();
|
|
|
}
|
|
|
});
|
|
@@ -619,7 +659,7 @@ public class GUI<E> implements CategoryListener {
|
|
|
canvas.setPreferredSize(new Dimension(model.getCanvasX(), model.getCanvasY()));
|
|
|
holonCanvas.setBackground(Color.WHITE);
|
|
|
holonCanvas.setPreferredSize(new Dimension(model.getCanvasX(), model.getCanvasY()));
|
|
|
-
|
|
|
+
|
|
|
/********************
|
|
|
* RIGHT CONTAINER (INFORMATION)
|
|
|
**********************/
|
|
@@ -1584,10 +1624,10 @@ public class GUI<E> implements CategoryListener {
|
|
|
int dialogResult = JOptionPane.showConfirmDialog(null, "Old autosave file was found, should it be loaded?",
|
|
|
warningText, dialogButton);
|
|
|
if (dialogResult == JOptionPane.YES_OPTION) {
|
|
|
- if(dest.exists()){
|
|
|
- model.setAutoSaveNr(dest.listFiles().length - 1);
|
|
|
- mntmRedo.doClick();
|
|
|
- }else{
|
|
|
+ if (dest.exists()) {
|
|
|
+ model.setAutoSaveNr(dest.listFiles().length - 1);
|
|
|
+ mntmRedo.doClick();
|
|
|
+ } else {
|
|
|
JOptionPane.showMessageDialog(frmCyberPhysical, "Autosave could not be loaded.");
|
|
|
setUpAutoSave(dest);
|
|
|
}
|
|
@@ -1596,14 +1636,14 @@ public class GUI<E> implements CategoryListener {
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
/**
|
|
|
* Sets up autosave if no old one is loaded at the beginning
|
|
|
*
|
|
|
* @param dest
|
|
|
- * path to save-folder
|
|
|
+ * path to save-folder
|
|
|
*/
|
|
|
- public void setUpAutoSave(File dest){
|
|
|
+ public void setUpAutoSave(File dest) {
|
|
|
controller.deleteDirectory(dest);
|
|
|
dest.mkdirs();
|
|
|
try {
|