Browse Source

paar autosaves mehr

Teh-Hai Julian Zheng 7 years ago
parent
commit
1e5b39ded4
1 changed files with 89 additions and 39 deletions
  1. 89 39
      src/ui/controller/Control.java

+ 89 - 39
src/ui/controller/Control.java

@@ -298,6 +298,46 @@ public class Control {
 
 	/* Operations for Canvas */
 
+	/**
+	 * Add a new Object.
+	 * 
+	 * @param object
+	 *            the Object
+	 */
+	public void addObjectCanvas(AbstractCpsObject object) {
+		canvasController.addNewObject(object);
+		simulationManager.calculateStateForTimeStep(model.getCurIteration());
+		if (!(object instanceof CpsNode)) {
+			try {
+				autoSave();
+			} catch (IOException e) {
+				// TODO Auto-generated catch block
+				e.printStackTrace();
+			}
+		}
+	}
+
+	/**
+	 * Deletes an CpsObject on the Canvas and its connections.
+	 * 
+	 * @param obj
+	 *            AbstractCpsObject
+	 * @param save
+	 */
+	public void delCanvasObject(AbstractCpsObject obj, boolean save) {
+		canvasController.deleteObjectOnCanvas(obj);
+		calculateStateForCurrentTimeStep();
+		if (obj instanceof CpsUpperNode)
+			canvasController.bfsNodeCleaner((CpsUpperNode) obj);
+		if (save)
+			try {
+				autoSave();
+			} catch (IOException e) {
+				// TODO Auto-generated catch block
+				e.printStackTrace();
+			}
+	}
+
 	/**
 	 * Add an edge to the Canvas.
 	 * 
@@ -340,25 +380,6 @@ public class Control {
 		model.setSelectedEdge(edge);
 	}
 
-	/**
-	 * Add a new Object.
-	 * 
-	 * @param object
-	 *            the Object
-	 */
-	public void addObjectCanvas(AbstractCpsObject object) {
-		canvasController.addNewObject(object);
-		simulationManager.calculateStateForTimeStep(model.getCurIteration());
-		if (!(object instanceof CpsNode)) {
-			try {
-				autoSave();
-			} catch (IOException e) {
-				// TODO Auto-generated catch block
-				e.printStackTrace();
-			}
-		}
-	}
-
 	/**
 	 * Returns the ID of the selected Object 0 = no Object is selected.
 	 * 
@@ -369,26 +390,7 @@ public class Control {
 		objectController.setSelectedObjectID(id);
 	}
 
-	/**
-	 * Deletes an CpsObject on the Canvas and its connections.
-	 * 
-	 * @param obj
-	 *            AbstractCpsObject
-	 * @param save
-	 */
-	public void delCanvasObject(AbstractCpsObject obj, boolean save) {
-		canvasController.deleteObjectOnCanvas(obj);
-		calculateStateForCurrentTimeStep();
-		if (obj instanceof CpsUpperNode)
-			canvasController.bfsNodeCleaner((CpsUpperNode) obj);
-		if (save)
-			try {
-				autoSave();
-			} catch (IOException e) {
-				// TODO Auto-generated catch block
-				e.printStackTrace();
-			}
-	}
+	
 
 	/* Operations for Objects and Elements */
 
@@ -406,6 +408,12 @@ public class Control {
 	 */
 	public void addElementCanvasObject(int id, String ele, int amount, float energy) {
 		objectController.addNewElementIntoCanvasObject(id, ele, amount, energy);
+		try {
+			autoSave();
+		} catch (IOException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+		}
 	}
 
 	/**
@@ -436,6 +444,12 @@ public class Control {
 	 */
 	public void deleteElementCanvas(int id, int elementid) {
 		objectController.deleteElementInCanvas(id, elementid);
+		try {
+			autoSave();
+		} catch (IOException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+		}
 	}
 
 	/* Global Operations */
@@ -695,6 +709,12 @@ public class Control {
 	 */
 	public void setCanvasX(int canvasX) {
 		globalController.setCanvasX(canvasX);
+		try {
+			autoSave();
+		} catch (IOException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+		}
 	}
 
 	/**
@@ -705,6 +725,12 @@ public class Control {
 	 */
 	public void setCanvasY(int canvasY) {
 		globalController.setCanvasY(canvasY);
+		try {
+			autoSave();
+		} catch (IOException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+		}
 	}
 
 	public void setMaxCapacity(float cap) {
@@ -742,10 +768,22 @@ public class Control {
 
 	public void addTrackingObj(AbstractCpsObject obj) {
 		statsController.addTrackingObj(obj);
+		try {
+			autoSave();
+		} catch (IOException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+		}
 	}
 
 	public void removeTrackingObj(AbstractCpsObject obj) {
 		statsController.removeTrackingObj(obj);
+		try {
+			autoSave();
+		} catch (IOException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+		}
 	}
 
 	// ========================== MANAGING TRACKED OBJECTS END ================
@@ -895,10 +933,22 @@ public class Control {
 	public void paste(CpsUpperNode upperNode, Point point)
 			throws JsonParseException, UnsupportedFlavorException, IOException {
 		clipboardController.paste(upperNode, point);
+		try {
+			autoSave();
+		} catch (IOException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+		}
 	}
 
 	public void cut(CpsUpperNode upperNode) {
 		clipboardController.cut(upperNode);
+		try {
+			autoSave();
+		} catch (IOException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+		}
 	}
 
 	public void getObjectsInDepth() {