|
@@ -41,7 +41,7 @@ public class UpperNodeCanvas extends AbstractCanvas implements MouseListener, Mo
|
|
|
|
|
|
private static final long serialVersionUID = 1L;
|
|
|
|
|
|
- public CpsUpperNode upperNode;
|
|
|
+ public GroupNode upperNode;
|
|
|
|
|
|
protected String path;
|
|
|
int code;
|
|
@@ -57,7 +57,7 @@ public class UpperNodeCanvas extends AbstractCanvas implements MouseListener, Mo
|
|
|
* @param control the Controller
|
|
|
* @param unitGraph
|
|
|
*/
|
|
|
- UpperNodeCanvas(Model mod, Control control, UnitGraph unitGraph, CpsUpperNode UpperNode, String parentPath, Component parentComponent) {
|
|
|
+ UpperNodeCanvas(Model mod, Control control, UnitGraph unitGraph, GroupNode UpperNode, String parentPath, Component parentComponent) {
|
|
|
toolTip = false;
|
|
|
|
|
|
this.controller = control;
|
|
@@ -74,7 +74,7 @@ public class UpperNodeCanvas extends AbstractCanvas implements MouseListener, Mo
|
|
|
|
|
|
|
|
|
upperNode.setLeftBorder( 0);
|
|
|
- for (AbstractCpsObject cps : upperNode.getNodes()) {
|
|
|
+ for (AbstractCanvasObject cps : upperNode.getNodes()) {
|
|
|
if (cps.getPosition().x < model.getScaleDiv2() + upperNode.getLeftBorder() + 5) {
|
|
|
cps.setPosition(
|
|
|
new Position(upperNode.getLeftBorder() + 5 + model.getScaleDiv2(), cps.getPosition().y));
|
|
@@ -110,7 +110,7 @@ public class UpperNodeCanvas extends AbstractCanvas implements MouseListener, Mo
|
|
|
updCon = new UpdateController(model, controller);
|
|
|
|
|
|
itemAlign.addActionListener(actionEvent -> {
|
|
|
- for(AbstractCpsObject cps: model.getSelectedCpsObjects())
|
|
|
+ for(AbstractCanvasObject cps: model.getSelectedCpsObjects())
|
|
|
align(cps, model.getScaleDiv2());
|
|
|
repaint();
|
|
|
});
|
|
@@ -119,7 +119,7 @@ public class UpperNodeCanvas extends AbstractCanvas implements MouseListener, Mo
|
|
|
|
|
|
unPos = new Position(0, 0);
|
|
|
animCps = new ArrayList<>();
|
|
|
- for (AbstractCpsObject cps : model.getSelectedCpsObjects()) {
|
|
|
+ for (AbstractCanvasObject cps : model.getSelectedCpsObjects()) {
|
|
|
animCps.add(cps);
|
|
|
unPos.x += cps.getPosition().x;
|
|
|
unPos.y += cps.getPosition().y;
|
|
@@ -137,7 +137,7 @@ public class UpperNodeCanvas extends AbstractCanvas implements MouseListener, Mo
|
|
|
|
|
|
animT = new javax.swing.Timer(animDelay, actionEvent1 -> {
|
|
|
if (animDuration - animDelay > 0 && animCps.size() > 1) {
|
|
|
- for (AbstractCpsObject currentAnimCps : animCps) {
|
|
|
+ for (AbstractCanvasObject currentAnimCps : animCps) {
|
|
|
double x1 = currentAnimCps.getPosition().x - unPos.x;
|
|
|
double y1 = currentAnimCps.getPosition().y - unPos.y;
|
|
|
currentAnimCps.getPosition().x -= x1 / animSteps;
|
|
@@ -167,15 +167,15 @@ public class UpperNodeCanvas extends AbstractCanvas implements MouseListener, Mo
|
|
|
closeUpperNodeTab(tempCps.getId());
|
|
|
|
|
|
savePos = new ArrayList<>();
|
|
|
- animCps = ((CpsUpperNode) tempCps).getNodes();
|
|
|
- controller.delUpperNode((CpsUpperNode) tempCps, upperNode);
|
|
|
+ animCps = ((GroupNode) tempCps).getNodes();
|
|
|
+ controller.delUpperNode((GroupNode) tempCps, upperNode);
|
|
|
|
|
|
for (int i = 0; i < animCps.size(); i++) {
|
|
|
savePos.add(new Position(0, 0));
|
|
|
savePos.get(i).x = animCps.get(i).getPosition().x;
|
|
|
savePos.get(i).y = animCps.get(i).getPosition().y;
|
|
|
}
|
|
|
- for (AbstractCpsObject cps : animCps) {
|
|
|
+ for (AbstractCanvasObject cps : animCps) {
|
|
|
int x = tempCps.getPosition().x;
|
|
|
int y = tempCps.getPosition().y;
|
|
|
|
|
@@ -210,11 +210,11 @@ public class UpperNodeCanvas extends AbstractCanvas implements MouseListener, Mo
|
|
|
});
|
|
|
|
|
|
itemTrack.addActionListener(actionEvent -> {
|
|
|
- for (AbstractCpsObject o : model.getSelectedCpsObjects()) {
|
|
|
+ for (AbstractCanvasObject o : model.getSelectedCpsObjects()) {
|
|
|
if (o instanceof HolonObject) {
|
|
|
boolean found = false;
|
|
|
if (controller.getTrackingObj() != null) {
|
|
|
- for (AbstractCpsObject obj : controller.getTrackingObj()) {
|
|
|
+ for (AbstractCanvasObject obj : controller.getTrackingObj()) {
|
|
|
if (obj instanceof HolonObject) {
|
|
|
if (obj.getId() == o.getId()) {
|
|
|
found = true;
|
|
@@ -231,11 +231,11 @@ public class UpperNodeCanvas extends AbstractCanvas implements MouseListener, Mo
|
|
|
});
|
|
|
|
|
|
itemUntrack.addActionListener(actionEvent -> {
|
|
|
- for (AbstractCpsObject o : model.getSelectedCpsObjects()) {
|
|
|
+ for (AbstractCanvasObject o : model.getSelectedCpsObjects()) {
|
|
|
if (o instanceof HolonObject) {
|
|
|
boolean found = false;
|
|
|
if (controller.getTrackingObj() != null) {
|
|
|
- for (AbstractCpsObject obj : controller.getTrackingObj()) {
|
|
|
+ for (AbstractCanvasObject obj : controller.getTrackingObj()) {
|
|
|
if (obj instanceof HolonObject) {
|
|
|
if (obj.getId() == o.getId()) {
|
|
|
found = true;
|
|
@@ -257,14 +257,14 @@ public class UpperNodeCanvas extends AbstractCanvas implements MouseListener, Mo
|
|
|
|
|
|
itemDelete.addActionListener(actionEvent -> {
|
|
|
|
|
|
- for (AbstractCpsObject cps : model.getSelectedCpsObjects()) {
|
|
|
+ for (AbstractCanvasObject cps : model.getSelectedCpsObjects()) {
|
|
|
if (upperNode.getNodes().contains(cps)) {
|
|
|
controller.delObjUpperNode(cps, upperNode);
|
|
|
|
|
|
|
|
|
controller.removeTrackingObj(cps);
|
|
|
|
|
|
- if (cps instanceof CpsUpperNode) {
|
|
|
+ if (cps instanceof GroupNode) {
|
|
|
JSplitPane tempSplit = (JSplitPane) getParent().getParent().getParent().getParent();
|
|
|
JTabbedPane tabbedPane;
|
|
|
JTabbedPane tabbedPane2;
|
|
@@ -315,7 +315,7 @@ public class UpperNodeCanvas extends AbstractCanvas implements MouseListener, Mo
|
|
|
});
|
|
|
|
|
|
itemCopy.addActionListener(actionEvent -> {
|
|
|
- if(tempCps instanceof CpsUpperNode)
|
|
|
+ if(tempCps instanceof GroupNode)
|
|
|
controller.getObjectsInDepth();
|
|
|
controller.copy(upperNode);
|
|
|
itemPaste.setEnabled(true);
|
|
@@ -589,9 +589,9 @@ public class UpperNodeCanvas extends AbstractCanvas implements MouseListener, Mo
|
|
|
}
|
|
|
|
|
|
|
|
|
- HashSet<CpsEdge> selectedEdges = new HashSet<CpsEdge>();
|
|
|
- for(AbstractCpsObject aCps: model.getSelectedCpsObjects()) {
|
|
|
- for(CpsEdge edge: aCps.getConnections()) {
|
|
|
+ HashSet<Edge> selectedEdges = new HashSet<Edge>();
|
|
|
+ for(AbstractCanvasObject aCps: model.getSelectedCpsObjects()) {
|
|
|
+ for(Edge edge: aCps.getConnections()) {
|
|
|
selectedEdges.add(edge);
|
|
|
}
|
|
|
}
|
|
@@ -623,7 +623,7 @@ public class UpperNodeCanvas extends AbstractCanvas implements MouseListener, Mo
|
|
|
for(DecoratedSwitch dSwitch : actualGroupNode.getSwitchList()) {
|
|
|
paintSwitch(g2d, dSwitch);
|
|
|
}
|
|
|
- for(CpsNode node : actualGroupNode.getNodeList()) {
|
|
|
+ for(Node node : actualGroupNode.getNodeList()) {
|
|
|
drawCanvasObject(g2d, "/Images/node.png" , node.getPosition());
|
|
|
}
|
|
|
|
|
@@ -638,8 +638,8 @@ public class UpperNodeCanvas extends AbstractCanvas implements MouseListener, Mo
|
|
|
g2d.setColor(Color.BLUE);
|
|
|
g2d.setStroke(new BasicStroke(1));
|
|
|
Color transparentGrey = new Color(128, 174, 247, 40);
|
|
|
- for(AbstractCpsObject aCps: model.getSelectedCpsObjects()) {
|
|
|
- if(aCps instanceof CpsNode) {
|
|
|
+ for(AbstractCanvasObject aCps: model.getSelectedCpsObjects()) {
|
|
|
+ if(aCps instanceof Node) {
|
|
|
Position pos = aCps.getPosition();
|
|
|
g2d.setColor(transparentGrey);
|
|
|
g2d.fillOval(pos.x - (int) (controller.getScaleDiv2()), pos.y - (int) (controller.getScaleDiv2()), controller.getScale(), controller.getScale());
|
|
@@ -705,7 +705,7 @@ public class UpperNodeCanvas extends AbstractCanvas implements MouseListener, Mo
|
|
|
}
|
|
|
|
|
|
if (e.getX() > upperNode.getLeftBorder()) {
|
|
|
- for (AbstractCpsObject cps : upperNode.getNodes()) {
|
|
|
+ for (AbstractCanvasObject cps : upperNode.getNodes()) {
|
|
|
cx = cps.getPosition().x - model.getScaleDiv2();
|
|
|
cy = cps.getPosition().y - model.getScaleDiv2();
|
|
|
if (x - controller.getScale() <= cx && y - controller.getScale() <= cy && x >= cx && y >= cy) {
|
|
@@ -718,7 +718,7 @@ public class UpperNodeCanvas extends AbstractCanvas implements MouseListener, Mo
|
|
|
controller.deleteSelectedObject(tempCps);
|
|
|
} else {
|
|
|
controller.addSelectedObject(tempCps);
|
|
|
- if(tempCps instanceof CpsUpperNode)
|
|
|
+ if(tempCps instanceof GroupNode)
|
|
|
controller.getObjectsInDepth();
|
|
|
}
|
|
|
}
|
|
@@ -738,8 +738,8 @@ public class UpperNodeCanvas extends AbstractCanvas implements MouseListener, Mo
|
|
|
} else {
|
|
|
|
|
|
int count = 0;
|
|
|
- for (CpsEdge ed : upperNode.getConnections()) {
|
|
|
- AbstractCpsObject cps;
|
|
|
+ for (Edge ed : upperNode.getConnections()) {
|
|
|
+ AbstractCanvasObject cps;
|
|
|
if (ed.getA().equals(this.upperNode)) {
|
|
|
cps = ed.getB();
|
|
|
} else {
|
|
@@ -827,7 +827,7 @@ public class UpperNodeCanvas extends AbstractCanvas implements MouseListener, Mo
|
|
|
|
|
|
* if UpperNode would be replaced, close its tabs
|
|
|
*/
|
|
|
- if(mayBeReplaced instanceof CpsUpperNode)
|
|
|
+ if(mayBeReplaced instanceof GroupNode)
|
|
|
closeUpperNodeTab(mayBeReplaced.getId());
|
|
|
|
|
|
* replace on canvas
|
|
@@ -840,7 +840,7 @@ public class UpperNodeCanvas extends AbstractCanvas implements MouseListener, Mo
|
|
|
if (!e.isControlDown() && !dragged && tempCps != null && MouseEvent.BUTTON3 != e.getButton()) {
|
|
|
model.getSelectedCpsObjects().clear();
|
|
|
controller.addSelectedObject(tempCps);
|
|
|
- if(tempCps instanceof CpsUpperNode)
|
|
|
+ if(tempCps instanceof GroupNode)
|
|
|
controller.getObjectsInDepth();
|
|
|
}
|
|
|
|
|
@@ -907,7 +907,7 @@ public class UpperNodeCanvas extends AbstractCanvas implements MouseListener, Mo
|
|
|
toolTipPos.y = tempCps.getPosition().y + model.getScaleDiv2();
|
|
|
|
|
|
|
|
|
- for (AbstractCpsObject cps : model.getSelectedCpsObjects()) {
|
|
|
+ for (AbstractCanvasObject cps : model.getSelectedCpsObjects()) {
|
|
|
if (cps != tempCps) {
|
|
|
x = (int) (cps.getPosition().x + xDist);
|
|
|
y = (int) (cps.getPosition().y + yDist);
|
|
@@ -942,7 +942,7 @@ public class UpperNodeCanvas extends AbstractCanvas implements MouseListener, Mo
|
|
|
|
|
|
if (doMark) {
|
|
|
tempSelected.clear();
|
|
|
- for (AbstractCpsObject cps : upperNode.getNodes()) {
|
|
|
+ for (AbstractCanvasObject cps : upperNode.getNodes()) {
|
|
|
int x1 = sx, x2 = x, y1 = sy, y2 = y;
|
|
|
|
|
|
if (sx >= x) {
|
|
@@ -960,8 +960,8 @@ public class UpperNodeCanvas extends AbstractCanvas implements MouseListener, Mo
|
|
|
}
|
|
|
}
|
|
|
int count = 0;
|
|
|
- for (CpsEdge ed : upperNode.getConnections()) {
|
|
|
- AbstractCpsObject cps;
|
|
|
+ for (Edge ed : upperNode.getConnections()) {
|
|
|
+ AbstractCanvasObject cps;
|
|
|
if (ed.getA().equals(upperNode)) {
|
|
|
cps = ed.getB();
|
|
|
} else {
|
|
@@ -1001,7 +1001,7 @@ public class UpperNodeCanvas extends AbstractCanvas implements MouseListener, Mo
|
|
|
y = e.getY();
|
|
|
|
|
|
boolean on = false;
|
|
|
- for (AbstractCpsObject cps : upperNode.getNodes()) {
|
|
|
+ for (AbstractCanvasObject cps : upperNode.getNodes()) {
|
|
|
|
|
|
cx = cps.getPosition().x - controller.getScaleDiv2();
|
|
|
cy = cps.getPosition().y - controller.getScaleDiv2();
|
|
@@ -1009,9 +1009,9 @@ public class UpperNodeCanvas extends AbstractCanvas implements MouseListener, Mo
|
|
|
on = setToolTipInfoAndPosition(on, cps);
|
|
|
}
|
|
|
int count = 0;
|
|
|
- for (CpsEdge ed : upperNode.getConnections()) {
|
|
|
+ for (Edge ed : upperNode.getConnections()) {
|
|
|
|
|
|
- AbstractCpsObject cps;
|
|
|
+ AbstractCanvasObject cps;
|
|
|
if (ed.getA().equals(this.upperNode)) {
|
|
|
cps = ed.getB();
|
|
|
} else {
|
|
@@ -1047,8 +1047,8 @@ public class UpperNodeCanvas extends AbstractCanvas implements MouseListener, Mo
|
|
|
boolean outsideCon = !upperNode.getNodes().contains(tempCps);
|
|
|
boolean found = false;
|
|
|
|
|
|
- CpsEdge e = null;
|
|
|
- for (AbstractCpsObject cps : upperNode.getNodes()) {
|
|
|
+ Edge e = null;
|
|
|
+ for (AbstractCanvasObject cps : upperNode.getNodes()) {
|
|
|
|
|
|
cx = cps.getPosition().x - controller.getScaleDiv2();
|
|
|
cy = cps.getPosition().y - controller.getScaleDiv2();
|
|
@@ -1058,7 +1058,7 @@ public class UpperNodeCanvas extends AbstractCanvas implements MouseListener, Mo
|
|
|
found = true;
|
|
|
node = false;
|
|
|
onEdge = false;
|
|
|
- for (CpsEdge p : tempCps.getConnections()) {
|
|
|
+ for (Edge p : tempCps.getConnections()) {
|
|
|
if ((p.getA() == tempCps && p.getB() == cps) || (p.getB() == tempCps && p.getA() == cps)) {
|
|
|
newEdge = false;
|
|
|
e = p;
|
|
@@ -1066,42 +1066,37 @@ public class UpperNodeCanvas extends AbstractCanvas implements MouseListener, Mo
|
|
|
}
|
|
|
if (!newEdge) {
|
|
|
if (outsideCon) {
|
|
|
- controller.disconnectNodes(e, upperNode);
|
|
|
} else {
|
|
|
- controller.delEdgeUpperNode(e, upperNode);
|
|
|
+ controller.removeEdgesOnCanvas(e);
|
|
|
}
|
|
|
|
|
|
- if (e.getA().getClass() == CpsNode.class && e.getA().getConnections().isEmpty()) {
|
|
|
+ if (e.getA().getClass() == Node.class && e.getA().getConnections().isEmpty()) {
|
|
|
tempCps = e.getA();
|
|
|
deleteNode = true;
|
|
|
}
|
|
|
- if (e.getB().getClass() == CpsNode.class && e.getB().getConnections().isEmpty()) {
|
|
|
+ if (e.getB().getClass() == Node.class && e.getB().getConnections().isEmpty()) {
|
|
|
deleteNode = true;
|
|
|
}
|
|
|
} else {
|
|
|
- if(!(cps instanceof CpsUpperNode || tempCps instanceof CpsUpperNode)) {
|
|
|
- e = new CpsEdge(cps, tempCps, model.getMaxCapacity());
|
|
|
- if (outsideCon) {
|
|
|
- controller.connectNodes(e, upperNode);
|
|
|
- } else {
|
|
|
- controller.addEdgeUpperNode(e, upperNode);
|
|
|
- }
|
|
|
- }else if (cps instanceof CpsUpperNode && !(tempCps instanceof CpsUpperNode)){
|
|
|
- CpsUpperNode thisUpperNode = (CpsUpperNode)cps;
|
|
|
- Object[] possibilities = thisUpperNode.getNodes().stream().map(aCps -> new ACpsHandle(aCps)).filter(aCpsHandle -> !(aCpsHandle.object instanceof CpsUpperNode)).toArray();
|
|
|
+ if(!(cps instanceof GroupNode || tempCps instanceof GroupNode)) {
|
|
|
+ e = new Edge(cps, tempCps, model.getMaxCapacity());
|
|
|
+ controller.addEdgeOnCanvas(e);
|
|
|
+ }else if (cps instanceof GroupNode && !(tempCps instanceof GroupNode)){
|
|
|
+ GroupNode thisUpperNode = (GroupNode)cps;
|
|
|
+ Object[] possibilities = thisUpperNode.getNodes().stream().map(aCps -> new ACpsHandle(aCps)).filter(aCpsHandle -> !(aCpsHandle.object instanceof GroupNode)).toArray();
|
|
|
if(possibilities.length != 0) {
|
|
|
ACpsHandle selected = (ACpsHandle) JOptionPane.showInputDialog(this, "Select a inside Object:", "Connection To?", JOptionPane.OK_OPTION,new ImageIcon(new BufferedImage(1, 1, BufferedImage.TYPE_INT_ARGB)) , possibilities, "");
|
|
|
if(selected != null) {
|
|
|
- e = new CpsEdge(selected.object, tempCps, model.getMaxCapacity());
|
|
|
- controller.addEdgeUpperNode(e, (CpsUpperNode)cps);
|
|
|
+ e = new Edge(selected.object, tempCps, model.getMaxCapacity());
|
|
|
+ controller.addEdgeOnCanvas(e);
|
|
|
}
|
|
|
}else {
|
|
|
- CpsNode n = new CpsNode("Node");
|
|
|
+ Node n = new Node("Node");
|
|
|
|
|
|
n.setPosition(x, y);
|
|
|
controller.addObjUpperNode(n, thisUpperNode);
|
|
|
- e = new CpsEdge(n, tempCps, model.getMaxCapacity());
|
|
|
- controller.addEdgeUpperNode(e, (CpsUpperNode)cps);
|
|
|
+ e = new Edge(n, tempCps, model.getMaxCapacity());
|
|
|
+ controller.addEdgeOnCanvas(e);
|
|
|
}
|
|
|
|
|
|
}
|
|
@@ -1110,8 +1105,8 @@ public class UpperNodeCanvas extends AbstractCanvas implements MouseListener, Mo
|
|
|
}
|
|
|
if (!found && !outsideCon) {
|
|
|
int count = 0;
|
|
|
- for (CpsEdge ed : upperNode.getConnections()) {
|
|
|
- AbstractCpsObject cps;
|
|
|
+ for (Edge ed : upperNode.getConnections()) {
|
|
|
+ AbstractCanvasObject cps;
|
|
|
if (ed.getA().equals(upperNode)) {
|
|
|
cps = ed.getB();
|
|
|
} else {
|
|
@@ -1126,32 +1121,27 @@ public class UpperNodeCanvas extends AbstractCanvas implements MouseListener, Mo
|
|
|
outsideCon = true;
|
|
|
node = false;
|
|
|
onEdge = false;
|
|
|
- for (CpsEdge p : tempCps.getConnections()) {
|
|
|
+ for (Edge p : tempCps.getConnections()) {
|
|
|
if ((p.getA() == tempCps && p.getB() == cps) || (p.getB() == tempCps && p.getA() == cps)) {
|
|
|
newEdge = false;
|
|
|
e = p;
|
|
|
}
|
|
|
}
|
|
|
if (!newEdge) {
|
|
|
- if (outsideCon) {
|
|
|
- controller.disconnectNodes(e, upperNode);
|
|
|
- } else {
|
|
|
- controller.delEdgeUpperNode(e, upperNode);
|
|
|
- }
|
|
|
+
|
|
|
|
|
|
- if (e.getA().getClass() == CpsNode.class && e.getA().getConnections().isEmpty()) {
|
|
|
+ if (e.getA().getClass() == Node.class && e.getA().getConnections().isEmpty()) {
|
|
|
tempCps = e.getA();
|
|
|
deleteNode = true;
|
|
|
}
|
|
|
- if (e.getB().getClass() == CpsNode.class && e.getB().getConnections().isEmpty()) {
|
|
|
+ if (e.getB().getClass() == Node.class && e.getB().getConnections().isEmpty()) {
|
|
|
deleteNode = true;
|
|
|
}
|
|
|
} else {
|
|
|
- CpsEdge edge = new CpsEdge(cps, tempCps, model.getMaxCapacity());
|
|
|
+ Edge edge = new Edge(cps, tempCps, model.getMaxCapacity());
|
|
|
if (outsideCon) {
|
|
|
- controller.connectNodes(edge, upperNode);
|
|
|
} else {
|
|
|
- controller.addEdgeUpperNode(edge, upperNode);
|
|
|
+ controller.addEdgeOnCanvas(edge);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -1161,37 +1151,30 @@ public class UpperNodeCanvas extends AbstractCanvas implements MouseListener, Mo
|
|
|
|
|
|
|
|
|
if (onEdge && !checkForReplacement(x, y)) {
|
|
|
- CpsEdge p = mousePositionOnEdge(x, y);
|
|
|
+ Edge p = mousePositionOnEdge(x, y);
|
|
|
if (p != null) {
|
|
|
- CpsEdge e1;
|
|
|
- CpsEdge e2;
|
|
|
+ Edge e1;
|
|
|
+ Edge e2;
|
|
|
|
|
|
node = false;
|
|
|
|
|
|
- CpsNode n = new CpsNode("Node");
|
|
|
+ Node n = new Node("Node");
|
|
|
|
|
|
n.setPosition(x, y);
|
|
|
controller.addObjUpperNode(n, upperNode);
|
|
|
|
|
|
- AbstractCpsObject r, k;
|
|
|
+ AbstractCanvasObject r, k;
|
|
|
r = p.getA();
|
|
|
k = p.getB();
|
|
|
|
|
|
- e = new CpsEdge(n, tempCps, model.getMaxCapacity());
|
|
|
-
|
|
|
- e1 = new CpsEdge(n, r, model.getMaxCapacity());
|
|
|
+ e = new Edge(n, tempCps, model.getMaxCapacity());
|
|
|
|
|
|
- e2 = new CpsEdge(n, k, model.getMaxCapacity());
|
|
|
+ e1 = new Edge(n, r, model.getMaxCapacity());
|
|
|
|
|
|
- controller.delEdgeUpperNode(p, upperNode);
|
|
|
- if (outsideCon) {
|
|
|
- controller.connectNodes(e, upperNode);
|
|
|
- } else {
|
|
|
- controller.addEdgeUpperNode(e, upperNode);
|
|
|
- }
|
|
|
+ e2 = new Edge(n, k, model.getMaxCapacity());
|
|
|
|
|
|
- controller.addEdgeUpperNode(e1, upperNode);
|
|
|
- controller.addEdgeUpperNode(e2, upperNode);
|
|
|
+ controller.addEdgeOnCanvas(e1);
|
|
|
+ controller.addEdgeOnCanvas(e2);
|
|
|
}
|
|
|
}else{
|
|
|
mayBeReplaced = null;
|
|
@@ -1199,18 +1182,13 @@ public class UpperNodeCanvas extends AbstractCanvas implements MouseListener, Mo
|
|
|
|
|
|
|
|
|
if (node && x > upperNode.getLeftBorder() && !checkForReplacement(x, y)) {
|
|
|
- CpsNode n = new CpsNode("Node");
|
|
|
+ Node n = new Node("Node");
|
|
|
|
|
|
n.setPosition(x, y);
|
|
|
controller.addObjUpperNode(n, upperNode);
|
|
|
|
|
|
- e = new CpsEdge(n, tempCps, model.getMaxCapacity());
|
|
|
+ e = new Edge(n, tempCps, model.getMaxCapacity());
|
|
|
|
|
|
- if (outsideCon) {
|
|
|
- controller.connectNodes(e, upperNode);
|
|
|
- } else {
|
|
|
- controller.addEdgeUpperNode(e, upperNode);
|
|
|
- }
|
|
|
}else{
|
|
|
mayBeReplaced = null;
|
|
|
}
|
|
@@ -1229,41 +1207,41 @@ public class UpperNodeCanvas extends AbstractCanvas implements MouseListener, Mo
|
|
|
* @param y Position of the Mouse
|
|
|
* @return CpsEdge the Mouse is on, null if the mouse is not on an Edge
|
|
|
*/
|
|
|
- private CpsEdge mousePositionOnEdge(int x, int y) {
|
|
|
+ private Edge mousePositionOnEdge(int x, int y) {
|
|
|
x += controller.getScaleDiv2();
|
|
|
y += controller.getScaleDiv2();
|
|
|
int lx, ly, hx, hy;
|
|
|
|
|
|
-
|
|
|
- for (CpsEdge p : upperNode.getNodeEdges()) {
|
|
|
- Line2D l = new Line2D.Float(p.getA().getPosition().x, p.getA().getPosition().y, p.getB().getPosition().x,
|
|
|
- p.getB().getPosition().y);
|
|
|
-
|
|
|
- int[] positions = determineMousePositionOnEdge(p);
|
|
|
- lx = positions[0];
|
|
|
- ly = positions[1];
|
|
|
- hx = positions[2];
|
|
|
- hy = positions[3];
|
|
|
-
|
|
|
-
|
|
|
- if (l.ptLineDistSq(x - model.getScaleDiv2(), y - model.getScaleDiv2()) < 20 && x > lx && x < hx && y > ly
|
|
|
- && y < hy) {
|
|
|
- return p;
|
|
|
- }
|
|
|
- }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
|
|
|
|
|
|
|
|
|
int count = 0;
|
|
|
- for (CpsEdge e : upperNode.getConnections()) {
|
|
|
- AbstractCpsObject cps;
|
|
|
+ for (Edge e : upperNode.getConnections()) {
|
|
|
+ AbstractCanvasObject cps;
|
|
|
if (e.getA().equals(this.upperNode)) {
|
|
|
cps = e.getB();
|
|
|
} else {
|
|
|
cps = e.getA();
|
|
|
}
|
|
|
- for (CpsEdge p : cps.getConnections()) {
|
|
|
- AbstractCpsObject obj = null;
|
|
|
+ for (Edge p : cps.getConnections()) {
|
|
|
+ AbstractCanvasObject obj = null;
|
|
|
boolean doTest = false;
|
|
|
if (upperNode.getNodes().contains(p.getA())) {
|
|
|
obj = p.getA();
|
|
@@ -1348,7 +1326,7 @@ public class UpperNodeCanvas extends AbstractCanvas implements MouseListener, Mo
|
|
|
|
|
|
* Align all Objects
|
|
|
*/
|
|
|
- for(AbstractCpsObject cps: upperNode.getNodes())
|
|
|
+ for(AbstractCanvasObject cps: upperNode.getNodes())
|
|
|
align(cps,3*model.getScaleDiv2());
|
|
|
|
|
|
|