Browse Source

nodes blau wenn seleted

Kevin Trometer 7 years ago
parent
commit
d4d38f913a
4 changed files with 29 additions and 23 deletions
  1. BIN
      res/Images/Thumbs.db
  2. BIN
      res/Images/node_selected.png
  3. 1 1
      src/ui/model/Model.java
  4. 28 22
      src/ui/view/MyCanvas.java

BIN
res/Images/Thumbs.db


BIN
res/Images/node_selected.png


+ 1 - 1
src/ui/model/Model.java

@@ -22,7 +22,7 @@ public class Model {
 	private static final int ITERATIONS = 100;
 	private int CUR_ITERATION = 0;
 	// ID of the Selected Object
-	private CpsObject selectedCpsObject;
+	private CpsObject selectedCpsObject = null;
 	private HolonElement selectedHolonElement;
 	private CpsEdge selectedEdge;
 

+ 28 - 22
src/ui/view/MyCanvas.java

@@ -59,11 +59,11 @@ class MyCanvas extends JPanel implements MouseListener, MouseMotionListener {
 	private JPopupMenu popmenu = new JPopupMenu();
 	private JMenuItem itemDelete = new JMenuItem("Delete Object");
 	private JToolTip objectTT = new JToolTip();
-	
+
 	public MyCanvas(final Model model, Control control) {
 		this.add(objectTT);
 		this.controller = control;
-		this.model = model;		
+		this.model = model;
 
 		popmenu.add(itemDelete);
 		itemDelete.setEnabled(false);
@@ -96,7 +96,8 @@ class MyCanvas extends JPanel implements MouseListener, MouseMotionListener {
 		g2.setRenderingHints(rh);
 
 		// Selection
-		if (selectRect != null) {
+		if (selectRect != null && controller.searchByID(model.getSelectedObjectID()) != null
+				&& controller.searchByID(model.getSelectedObjectID()).getClass() != CpsNode.class) {
 			g2.setColor(Color.BLUE);
 			g2.fillRect((int) selectRect.getX(), (int) selectRect.getY(), (int) selectRect.getWidth(),
 					(int) selectRect.getHeight());
@@ -104,15 +105,16 @@ class MyCanvas extends JPanel implements MouseListener, MouseMotionListener {
 
 		// drawEdges
 		g2.setColor(Color.BLACK);
-		g2.setStroke(new BasicStroke(2));
-		if (drawEdge)
+		if (drawEdge) {
+			g2.setStroke(new BasicStroke(2));
 			g2.drawLine(tempCps.getPosition().x + controller.getScaleDiv2(),
 					tempCps.getPosition().y + controller.getScaleDiv2(), x, y);
-	
+		}
+
 		for (CpsEdge con : model.getEdgesOnCanvas()) {
 			if (con.getA().getID() != model.getSelectedObjectID() && con.getB().getID() != model.getSelectedObjectID()
 					&& con != edgeHighlight) {
-				g2.setStroke(new BasicStroke(Math.min((con.getFlow()/con.getCapacity()*4),4)));
+				g2.setStroke(new BasicStroke(Math.min((con.getFlow() / con.getCapacity() * 4), 4)));
 				g2.drawLine(con.getA().getPosition().x + controller.getScaleDiv2(),
 						con.getA().getPosition().y + controller.getScaleDiv2(),
 						con.getB().getPosition().x + controller.getScaleDiv2(),
@@ -153,12 +155,16 @@ class MyCanvas extends JPanel implements MouseListener, MouseMotionListener {
 
 		// Objects
 		for (CpsObject cps : model.getObjectsOnCanvas()) {
-			File checkPath = new File(cps.getImage());
-			if (checkPath.exists()) {
-				img = new ImageIcon(cps.getImage()).getImage();
-				
+			if (cps.getID() == model.getSelectedObjectID() && controller.searchByID(model.getSelectedObjectID()) != null
+					&& controller.searchByID(model.getSelectedObjectID()).getClass() == CpsNode.class) {
+				img = new ImageIcon(this.getClass().getResource("/Images/node_selected.png")).getImage();
 			} else {
-				img = new ImageIcon(this.getClass().getResource(cps.getImage())).getImage();
+				File checkPath = new File(cps.getImage());
+				if (checkPath.exists()) {
+					img = new ImageIcon(cps.getImage()).getImage();
+				} else {
+					img = new ImageIcon(this.getClass().getResource(cps.getImage())).getImage();
+				}
 			}
 			g2.drawImage(img, cps.getPosition().x, cps.getPosition().y, controller.getScale(), controller.getScale(),
 					null);
@@ -368,8 +374,8 @@ class MyCanvas extends JPanel implements MouseListener, MouseMotionListener {
 				}
 				if (newEdge) {
 					e = new CpsEdge(cps, tempCps);
-//					cps.AddConnection(e);
-//					tempCps.AddConnection(e);
+					// cps.AddConnection(e);
+					// tempCps.AddConnection(e);
 					controller.AddEdgeOnCanvas(e);
 				}
 			}
@@ -394,16 +400,16 @@ class MyCanvas extends JPanel implements MouseListener, MouseMotionListener {
 				k = p.getB();
 
 				e = new CpsEdge(n, tempCps);
-//				n.AddConnection(e);
-//				tempCps.AddConnection(e);
+				// n.AddConnection(e);
+				// tempCps.AddConnection(e);
 
 				e1 = new CpsEdge(n, r);
-//				n.AddConnection(e1);
-//				r.AddConnection(e1);
+				// n.AddConnection(e1);
+				// r.AddConnection(e1);
 
 				e2 = new CpsEdge(n, k);
-//				n.AddConnection(e2);
-//				k.AddConnection(e2);
+				// n.AddConnection(e2);
+				// k.AddConnection(e2);
 
 				p.getA().getConnections().remove(p);
 				p.getB().getConnections().remove(p);
@@ -425,8 +431,8 @@ class MyCanvas extends JPanel implements MouseListener, MouseMotionListener {
 
 			e = new CpsEdge(n, tempCps);
 
-//			n.AddConnection(e);
-//			tempCps.AddConnection(e);
+			// n.AddConnection(e);
+			// tempCps.AddConnection(e);
 			controller.AddEdgeOnCanvas(e);
 			System.out.println("node ID: " + n.getID());
 		}