Browse Source

CpsNodes on Canvas

Kevin Trometer 8 years ago
parent
commit
2c44f8d66e
3 changed files with 15 additions and 4 deletions
  1. BIN
      res/Images/Thumbs.db
  2. 2 1
      src/classes/CpsNode.java
  3. 13 3
      src/ui/view/MyCanvas.java

BIN
res/Images/Thumbs.db


+ 2 - 1
src/classes/CpsNode.java

@@ -4,7 +4,8 @@ public class CpsNode extends CpsObject{
 
 	public CpsNode(String objName) {
 		super(objName);
-		// TODO Auto-generated constructor stub
+		this.setImage("/Images/node.png");
+		this.setID(-1);
 	}
 
 }

+ 13 - 3
src/ui/view/MyCanvas.java

@@ -21,6 +21,7 @@ import javax.swing.JPanel;
 import javax.swing.JPopupMenu;
 import javax.swing.JToolTip;
 
+import classes.CpsNode;
 import classes.CpsObject;
 import classes.HolonElement;
 import classes.HolonObject;
@@ -90,7 +91,6 @@ class MyCanvas extends JPanel implements MouseListener, MouseMotionListener {
 			g2.setColor(Color.GREEN);
 			g2.fillRect((int) selectRect.getX(), (int) selectRect.getY(), (int) selectRect.getWidth(),
 					(int) selectRect.getHeight());
-
 		}
 
 		// drawEdges
@@ -287,11 +287,13 @@ class MyCanvas extends JPanel implements MouseListener, MouseMotionListener {
 	 * Draws or Deletes an Edge
 	 */
 	private void drawDeleteEdge() {
+		boolean node = true;
+		CpsNode n = null;
 		for (CpsObject cps : model.getObjectsOnCanvas()) {
 			cx = cps.getPosition().x;
 			cy = cps.getPosition().y;
-			if (x - controller.getScale() <= cx && y - controller.getScale() <= cy && x >= cx && y >= cy) {
-
+			if (x - controller.getScale() <= cx && y - controller.getScale() <= cy && x >= cx && y >= cy && cps != tempCps) {
+				node = false;
 				if (!cps.getConnectedTo().contains(tempCps)) {
 					cps.AddConnection(tempCps);
 					tempCps.AddConnection(cps);
@@ -301,6 +303,14 @@ class MyCanvas extends JPanel implements MouseListener, MouseMotionListener {
 				}
 			}
 		}
+		if(node){			
+			n = new CpsNode("Node");
+			n.setPosition(x-model.getScaleDiv2(),y-model.getScaleDiv2());
+			controller.addObjectCanvas(n);
+			n.AddConnection(tempCps);
+			tempCps.AddConnection(n);
+			System.out.println("node ID: "+n.getID());
+		}
 	}
 
 	/**