Browse Source

canvas in simulation manager

dominik.rieder 7 years ago
parent
commit
96cb17edef

+ 5 - 0
src/ui/controller/Control.java

@@ -11,6 +11,7 @@ import classes.CpsObject;
 import classes.HolonElement;
 import classes.HolonObject;
 import ui.model.Model;
+import ui.view.MyCanvas;
 
 public class Control {
 
@@ -159,6 +160,10 @@ public class Control {
 		simulationManager.reset();
 		simulationManager.calculateStateForTimeStep(x);
 	}
+	
+	public void setCanvas(MyCanvas can){
+		simulationManager.setCanvas(can);
+	}
 
 	/**
 	 * Getter for Model

+ 8 - 1
src/ui/controller/SimulationManager.java

@@ -8,13 +8,16 @@ import classes.CpsObject;
 import classes.HolonObject;
 import classes.subNet;
 import ui.model.Model;
+import ui.view.MyCanvas;
 
 public class SimulationManager {
 	private Model model;
 	private ArrayList<CpsObject> objectsToHandle;
 	private ArrayList<subNet> subNets;
+	private MyCanvas canvas;
 	
 	public SimulationManager(Model m){
+		canvas = null;
 		model = m;
 		subNets = new ArrayList<subNet>();
 	}
@@ -49,7 +52,7 @@ public class SimulationManager {
 				System.out.println(hl.getName() + "is supplied:" + hl.getSupplied());
 			}
 		}
-		
+		canvas.repaint();
 	}
 	
 	/**
@@ -180,6 +183,10 @@ public class SimulationManager {
 		}
 	}
 	
+	public void setCanvas(MyCanvas can){
+		canvas = can;
+	}
+	
 	public void reset(){
 		copyObjects(model.getObjectsOnCanvas());
 	}

+ 2 - 1
src/ui/view/GUI.java

@@ -188,10 +188,10 @@ public class GUI<E> implements CategoryListener {
 		this.model = control.getModel();
 		this.canvas = new MyCanvas(model, control);
 		this.unitGraph = new UnitGraph(model, control);
-
 		control.initListener(this);
 		initialize();
 		updateCategories(model.getCategories());
+		controller.setCanvas(canvas);
 	}
 
 	/**
@@ -1150,6 +1150,7 @@ public class GUI<E> implements CategoryListener {
 			private void showMenu(MouseEvent e) {
 				popup.show(e.getComponent(), e.getX(), e.getY());
 			}
+			
 		});
 	}
 

+ 1 - 1
src/ui/view/MyCanvas.java

@@ -35,7 +35,7 @@ import ui.controller.Control;
 import ui.model.Model;
 import ui.model.idCounter;
 
-class MyCanvas extends JPanel implements MouseListener, MouseMotionListener {
+public class MyCanvas extends JPanel implements MouseListener, MouseMotionListener {
 	/**
 	 * 
 	 */