Browse Source

Selected ID in Controllern und Model

Kevin Trometer 8 years ago
parent
commit
317f4c6f27

BIN
bin/ui/controller/Control.class


BIN
bin/ui/controller/ObjectControl.class


BIN
bin/ui/model/Model.class


BIN
bin/ui/view/GUI.class


BIN
bin/ui/view/MyCanvas.class


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

@@ -69,6 +69,10 @@ public class Control {
 		categoryController.deleteObjectInCat(toDelete, deleteIn);
 	}
 
+	public void setSelectedObjectID(int id){
+		objectControl.setSelectedObjectID(id);
+	}
+
 	////////// etc
 	/**
 	 * Getter for Model

+ 3 - 15
src/ui/controller/ObjectControl.java

@@ -19,7 +19,6 @@ public class ObjectControl {
 
 	private Model M;
 	private int ID;
-	private int selectedID = 0;
 
 	public ObjectControl(Model model) {
 		this.M = model;
@@ -139,24 +138,13 @@ public class ObjectControl {
 		return obj;
 	}
 	
-	/**
-	 * Set the ID of the selected Object
-	 * 0 = no Object is selected
-	 * 
-	 * @param ID
-	 * 
-	 */
-	public void setSelectedObjectID(int id){
-		this.selectedID = id;
-	}
-	
 	/**
 	 * Returns the ID of the selected Object
-	 * 0 = no Object is selecet
+	 * 0 = no Object is selected
 	 * 
 	 * @return ID
 	 */
-	public int getSelectedObjectID(){
-		return selectedID;
+	public void setSelectedObjectID(int id){
+		M.setSelectedObjectID(id);
 	}
 }

+ 23 - 0
src/ui/model/Model.java

@@ -13,6 +13,8 @@ import ui.controller.*;
 
 public class Model {
 
+	// ID of the Selected Object
+	private int selectedID = 0;
 	// eventuell wenn Canvasgröße gewählt werden kann
 	private int HEIGHT;
 	private int WIDTH;
@@ -119,5 +121,26 @@ public class Model {
 	public void setCategoryListeners(LinkedList<CategoryListener> linkedList) {
 		this.categoryListeners = linkedList;
 	}
+	
+	/**
+	 * Set the ID of the selected Object
+	 * 0 = no Object is selected
+	 * 
+	 * @param ID
+	 * 
+	 */
+	public void setSelectedObjectID(int id){
+		this.selectedID = id;
+	}
+	
+	/**
+	 * Returns the ID of the selected Object
+	 * 0 = no Object is selected
+	 * 
+	 * @return ID
+	 */
+	public int getSelectedObjectID(){
+		return selectedID;
+	}
 
 }

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

@@ -106,7 +106,7 @@ public class GUI implements CategoryListener {
 	public GUI(Control control) {
 		this.controller = control;
 		this.model = control.getModel();
-		this.canvas = new MyCanvas(model);
+		this.canvas = new MyCanvas(model, control);
 		control.initListener(this);
 		initialize();
 	}

+ 11 - 6
src/ui/view/MyCanvas.java

@@ -22,24 +22,27 @@ import classes.CpsObject;
 import classes.GlobalVariables;
 import classes.HolonElement;
 import classes.HolonObject;
+import ui.controller.Control;
 import ui.model.*;
 
 class MyCanvas extends JPanel implements MouseListener, MouseMotionListener {
 	private Image img = null; // Contains the image to draw on MyCanvas
 	private int x = 0;
 	private int y = 0;
-	Model model;
+	private Model model;
+	private final Control controller;
 	
 	boolean dragging = false;
 	boolean dropDelete = false;
-	CpsObject tempCps = null;
-	Rectangle selectRect = new Rectangle();
+	private CpsObject tempCps = null;
+	private Rectangle selectRect = new Rectangle();
 
 	// PopUpMenu
-	JPopupMenu popmenu = new JPopupMenu();
-	JMenuItem itemDelete = new JMenuItem("Delete Object");
+	private JPopupMenu popmenu = new JPopupMenu();
+	private JMenuItem itemDelete = new JMenuItem("Delete Object");
 
-	public MyCanvas(final Model model) {
+	public MyCanvas(final Model model, Control control) {
+		this.controller = control;
 		this.model = model;
 		popmenu.add(itemDelete);
 		itemDelete.setEnabled(false);
@@ -107,8 +110,10 @@ class MyCanvas extends JPanel implements MouseListener, MouseMotionListener {
 		}
 		if(tempCps != null){
 			selectRect.setBounds(tempCps.getPos().x-(GlobalVariables.SCALE/20), tempCps.getPos().y-(GlobalVariables.SCALE/20), GlobalVariables.SCALE+GlobalVariables.SCALE/10, GlobalVariables.SCALE+GlobalVariables.SCALE/10);
+			controller.setSelectedObjectID(tempCps.getID());
 			System.out.println("Select");
 		}else {
+			controller.setSelectedObjectID(0);
 			selectRect.setRect(0, 0, 0, 0);
 			System.out.println("Unselect");
 		}