|
@@ -63,7 +63,6 @@ public class UpperNodeCanvas extends JPanel implements MouseListener, MouseMotio
|
|
private int cx, cy;
|
|
private int cx, cy;
|
|
private int sx, sy; // Mark Coords
|
|
private int sx, sy; // Mark Coords
|
|
private float scalediv20;
|
|
private float scalediv20;
|
|
- public int borderPos = 0; // Border Position
|
|
|
|
|
|
|
|
// Path
|
|
// Path
|
|
public String path;
|
|
public String path;
|
|
@@ -118,7 +117,6 @@ public class UpperNodeCanvas extends JPanel implements MouseListener, MouseMotio
|
|
private int animSteps = animDuration / animDelay; // animation Steps;
|
|
private int animSteps = animDuration / animDelay; // animation Steps;
|
|
private Position unPos;
|
|
private Position unPos;
|
|
private ArrayList<Position> savePos;
|
|
private ArrayList<Position> savePos;
|
|
- private UnitGraph unitGraph;
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
* Constructor.
|
|
* Constructor.
|
|
@@ -134,8 +132,6 @@ public class UpperNodeCanvas extends JPanel implements MouseListener, MouseMotio
|
|
|
|
|
|
this.controller = control;
|
|
this.controller = control;
|
|
this.model = mod;
|
|
this.model = mod;
|
|
- this.unitGraph = unitGraph;
|
|
|
|
-
|
|
|
|
this.upperNode = UpperNode;
|
|
this.upperNode = UpperNode;
|
|
this.path = parentPath + upperNode.getName();
|
|
this.path = parentPath + upperNode.getName();
|
|
this.breadCrumb = new JLabel(path);
|
|
this.breadCrumb = new JLabel(path);
|
|
@@ -143,10 +139,11 @@ public class UpperNodeCanvas extends JPanel implements MouseListener, MouseMotio
|
|
scalediv20 = model.getScale() / 20;
|
|
scalediv20 = model.getScale() / 20;
|
|
|
|
|
|
// Cps objecte aus dem border links schieben
|
|
// Cps objecte aus dem border links schieben
|
|
- borderPos = (int) (50 + scalediv20 + scalediv20 + 10);
|
|
|
|
|
|
+ upperNode.setLeftBorder((int) (50 + scalediv20 + scalediv20 + 10));
|
|
for (AbstractCpsObject cps : upperNode.getNodes()) {
|
|
for (AbstractCpsObject cps : upperNode.getNodes()) {
|
|
- if (cps.getPosition().x < model.getScaleDiv2() + borderPos + 5) {
|
|
|
|
- cps.setPosition(new Position(borderPos + 5 + model.getScaleDiv2(), cps.getPosition().y));
|
|
|
|
|
|
+ if (cps.getPosition().x < model.getScaleDiv2() + upperNode.getLeftBorder() + 5) {
|
|
|
|
+ cps.setPosition(
|
|
|
|
+ new Position(upperNode.getLeftBorder() + 5 + model.getScaleDiv2(), cps.getPosition().y));
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
@@ -460,13 +457,14 @@ public class UpperNodeCanvas extends JPanel implements MouseListener, MouseMotio
|
|
img = new ImageIcon(upperNode.getImagePath()).getImage();
|
|
img = new ImageIcon(upperNode.getImagePath()).getImage();
|
|
switch (upperNode.getBackgroundMode()) {
|
|
switch (upperNode.getBackgroundMode()) {
|
|
case BackgroundPopUp.IMAGE_PIXELS:
|
|
case BackgroundPopUp.IMAGE_PIXELS:
|
|
- g2.drawImage(img, borderPos, 0, img.getWidth(null), img.getHeight(null), null);
|
|
|
|
|
|
+ g2.drawImage(img, upperNode.getLeftBorder(), 0, img.getWidth(null), img.getHeight(null), null);
|
|
break;
|
|
break;
|
|
case BackgroundPopUp.STRETCHED:
|
|
case BackgroundPopUp.STRETCHED:
|
|
- g2.drawImage(img, borderPos, 0, model.getCanvasX(), model.getCanvasY(), null);
|
|
|
|
|
|
+ g2.drawImage(img, upperNode.getLeftBorder(), 0, model.getCanvasX(), model.getCanvasY(), null);
|
|
break;
|
|
break;
|
|
case BackgroundPopUp.CUSTOM:
|
|
case BackgroundPopUp.CUSTOM:
|
|
- g2.drawImage(img, borderPos, 0, upperNode.getImageWidht(), upperNode.getImageHeight(), null);
|
|
|
|
|
|
+ g2.drawImage(img, upperNode.getLeftBorder(), 0, upperNode.getImageWidht(), upperNode.getImageHeight(),
|
|
|
|
+ null);
|
|
break;
|
|
break;
|
|
default:
|
|
default:
|
|
break;
|
|
break;
|
|
@@ -475,7 +473,7 @@ public class UpperNodeCanvas extends JPanel implements MouseListener, MouseMotio
|
|
|
|
|
|
// Draw Left Border
|
|
// Draw Left Border
|
|
g2.setColor(new Color(230, 230, 230));
|
|
g2.setColor(new Color(230, 230, 230));
|
|
- g2.fillRect(0, 0, borderPos, this.getHeight());
|
|
|
|
|
|
+ g2.fillRect(0, 0, upperNode.getLeftBorder(), this.getHeight());
|
|
g2.setColor(Color.BLACK);
|
|
g2.setColor(Color.BLACK);
|
|
g2.drawLine(0, 0, this.getWidth(), 0);
|
|
g2.drawLine(0, 0, this.getWidth(), 0);
|
|
|
|
|
|
@@ -504,10 +502,10 @@ public class UpperNodeCanvas extends JPanel implements MouseListener, MouseMotio
|
|
int count = 0;
|
|
int count = 0;
|
|
for (CpsEdge e : upperNode.getConnections()) {
|
|
for (CpsEdge e : upperNode.getConnections()) {
|
|
if (e.getA().equals(tempCps)) {
|
|
if (e.getA().equals(tempCps)) {
|
|
- g2.drawLine(borderPos >> 1, (int) (model.getScaleDiv2() + scalediv20 + 5
|
|
|
|
|
|
+ g2.drawLine(upperNode.getLeftBorder() >> 1, (int) (model.getScaleDiv2() + scalediv20 + 5
|
|
+ (model.getScale() + scalediv20 + 10) * count), x, y);
|
|
+ (model.getScale() + scalediv20 + 10) * count), x, y);
|
|
} else if (e.getB().equals(tempCps)) {
|
|
} else if (e.getB().equals(tempCps)) {
|
|
- g2.drawLine(borderPos >> 1, (int) (model.getScaleDiv2() + scalediv20 + 5
|
|
|
|
|
|
+ g2.drawLine(upperNode.getLeftBorder() >> 1, (int) (model.getScaleDiv2() + scalediv20 + 5
|
|
+ (model.getScale() + scalediv20 + 10) * count), x, y);
|
|
+ (model.getScale() + scalediv20 + 10) * count), x, y);
|
|
}
|
|
}
|
|
count++;
|
|
count++;
|
|
@@ -724,15 +722,17 @@ public class UpperNodeCanvas extends JPanel implements MouseListener, MouseMotio
|
|
g2.setColor(Color.DARK_GRAY);
|
|
g2.setColor(Color.DARK_GRAY);
|
|
g2.setStroke(new BasicStroke(2));
|
|
g2.setStroke(new BasicStroke(2));
|
|
}
|
|
}
|
|
- g2.drawLine(obj.getPosition().x, obj.getPosition().y, (borderPos >> 1),
|
|
|
|
|
|
+ g2.drawLine(obj.getPosition().x, obj.getPosition().y, (upperNode.getLeftBorder() >> 1),
|
|
(int) (scalediv20 + 5 + (50 + scalediv20 + 10) * count) + 25);
|
|
(int) (scalediv20 + 5 + (50 + scalediv20 + 10) * count) + 25);
|
|
if (showedInformation[0]) {
|
|
if (showedInformation[0]) {
|
|
if (ed.getConnected() == 0 || ed.getConnected() == 1) {
|
|
if (ed.getConnected() == 0 || ed.getConnected() == 1) {
|
|
g2.drawString(ed.getFlow() + "/" + ed.getCapacity(),
|
|
g2.drawString(ed.getFlow() + "/" + ed.getCapacity(),
|
|
- (obj.getPosition().x + (borderPos >> 1)) / 2, (obj.getPosition().y
|
|
|
|
- + (int) (scalediv20 + 5 + (50 + scalediv20 + 10) * count) + 25) / 2);
|
|
|
|
|
|
+ (obj.getPosition().x + (upperNode.getLeftBorder() >> 1)) / 2,
|
|
|
|
+ (obj.getPosition().y + (int) (scalediv20 + 5 + (50 + scalediv20 + 10) * count)
|
|
|
|
+ + 25) / 2);
|
|
} else {
|
|
} else {
|
|
- g2.drawString("not connected", (obj.getPosition().x + (borderPos >> 1)) / 2,
|
|
|
|
|
|
+ g2.drawString("not connected",
|
|
|
|
+ (obj.getPosition().x + (upperNode.getLeftBorder() >> 1)) / 2,
|
|
(obj.getPosition().y + (int) (scalediv20 + 5 + (50 + scalediv20 + 10) * count)
|
|
(obj.getPosition().y + (int) (scalediv20 + 5 + (50 + scalediv20 + 10) * count)
|
|
+ 25) / 2);
|
|
+ 25) / 2);
|
|
}
|
|
}
|
|
@@ -745,7 +745,7 @@ public class UpperNodeCanvas extends JPanel implements MouseListener, MouseMotio
|
|
if (showedInformation[3]) {
|
|
if (showedInformation[3]) {
|
|
g2.setColor(cps.getBorderColor());
|
|
g2.setColor(cps.getBorderColor());
|
|
if (g2.getColor() != Color.WHITE) {
|
|
if (g2.getColor() != Color.WHITE) {
|
|
- g2.fillRect((int) ((borderPos >> 1) - 25 - scalediv20) - 3,
|
|
|
|
|
|
+ g2.fillRect((int) ((upperNode.getLeftBorder() >> 1) - 25 - scalediv20) - 3,
|
|
(int) (scalediv20 + 5 + (25 + scalediv20 + 10) * count - scalediv20) - 3,
|
|
(int) (scalediv20 + 5 + (25 + scalediv20 + 10) * count - scalediv20) - 3,
|
|
(int) (50 + ((scalediv20 + 3) * 2)), (int) (50 + ((scalediv20 + 3) * 2)));
|
|
(int) (50 + ((scalediv20 + 3) * 2)), (int) (50 + ((scalediv20 + 3) * 2)));
|
|
}
|
|
}
|
|
@@ -767,13 +767,13 @@ public class UpperNodeCanvas extends JPanel implements MouseListener, MouseMotio
|
|
if ((cps == tempCps && model.getSelectedCpsObjects().size() == 0 && tempSelected.size() == 0)
|
|
if ((cps == tempCps && model.getSelectedCpsObjects().size() == 0 && tempSelected.size() == 0)
|
|
|| model.getSelectedCpsObjects().contains(cps) || tempSelected.contains(cps)) {
|
|
|| model.getSelectedCpsObjects().contains(cps) || tempSelected.contains(cps)) {
|
|
g2.setColor(Color.BLUE);
|
|
g2.setColor(Color.BLUE);
|
|
- g2.fillRect((int) ((borderPos >> 1) - 25 - scalediv20),
|
|
|
|
|
|
+ g2.fillRect((int) ((upperNode.getLeftBorder() >> 1) - 25 - scalediv20),
|
|
(int) (scalediv20 + 5 + (50 + scalediv20 + 10) * count - scalediv20),
|
|
(int) (scalediv20 + 5 + (50 + scalediv20 + 10) * count - scalediv20),
|
|
(int) (50 + (scalediv20 * 2)), (int) (50 + (scalediv20 * 2)));
|
|
(int) (50 + (scalediv20 * 2)), (int) (50 + (scalediv20 * 2)));
|
|
} else if (cps instanceof HolonObject) {
|
|
} else if (cps instanceof HolonObject) {
|
|
g2.setColor(((HolonObject) cps).getColor());
|
|
g2.setColor(((HolonObject) cps).getColor());
|
|
|
|
|
|
- g2.fillRect((int) ((borderPos >> 1) - 25 - scalediv20),
|
|
|
|
|
|
+ g2.fillRect((int) ((upperNode.getLeftBorder() >> 1) - 25 - scalediv20),
|
|
(int) (scalediv20 + 5 + (50 + scalediv20 + 10) * count - scalediv20),
|
|
(int) (scalediv20 + 5 + (50 + scalediv20 + 10) * count - scalediv20),
|
|
(int) (50 + (scalediv20 * 2)), (int) (50 + (scalediv20 * 2)));
|
|
(int) (50 + (scalediv20 * 2)), (int) (50 + (scalediv20 * 2)));
|
|
}
|
|
}
|
|
@@ -785,8 +785,8 @@ public class UpperNodeCanvas extends JPanel implements MouseListener, MouseMotio
|
|
img = new ImageIcon(this.getClass().getResource(cps.getImage())).getImage();
|
|
img = new ImageIcon(this.getClass().getResource(cps.getImage())).getImage();
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- g2.drawImage(img, (borderPos >> 1) - 25, (int) (scalediv20 + 5 + (50 + scalediv20 + 10) * count), 50, 50,
|
|
|
|
- null);
|
|
|
|
|
|
+ g2.drawImage(img, (upperNode.getLeftBorder() >> 1) - 25,
|
|
|
|
+ (int) (scalediv20 + 5 + (50 + scalediv20 + 10) * count), 50, 50, null);
|
|
count++;
|
|
count++;
|
|
}
|
|
}
|
|
|
|
|
|
@@ -807,7 +807,7 @@ public class UpperNodeCanvas extends JPanel implements MouseListener, MouseMotio
|
|
|
|
|
|
// Border Line
|
|
// Border Line
|
|
g2.setColor(Color.BLACK);
|
|
g2.setColor(Color.BLACK);
|
|
- g2.drawLine(borderPos, 0, borderPos, this.getHeight());
|
|
|
|
|
|
+ g2.drawLine(upperNode.getLeftBorder(), 0, upperNode.getLeftBorder(), this.getHeight());
|
|
|
|
|
|
// Tooltip
|
|
// Tooltip
|
|
if (toolTip) {
|
|
if (toolTip) {
|
|
@@ -868,7 +868,7 @@ public class UpperNodeCanvas extends JPanel implements MouseListener, MouseMotio
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
- if (e.getX() > borderPos) {
|
|
|
|
|
|
+ if (e.getX() > upperNode.getLeftBorder()) {
|
|
for (AbstractCpsObject cps : upperNode.getNodes()) {
|
|
for (AbstractCpsObject cps : upperNode.getNodes()) {
|
|
cx = cps.getPosition().x - model.getScaleDiv2();
|
|
cx = cps.getPosition().x - model.getScaleDiv2();
|
|
cy = cps.getPosition().y - model.getScaleDiv2();
|
|
cy = cps.getPosition().y - model.getScaleDiv2();
|
|
@@ -909,9 +909,9 @@ public class UpperNodeCanvas extends JPanel implements MouseListener, MouseMotio
|
|
} else {
|
|
} else {
|
|
cps = ed.getA();
|
|
cps = ed.getA();
|
|
}
|
|
}
|
|
- if (x - controller.getScale() <= ((borderPos >> 1) - model.getScaleDiv2())
|
|
|
|
|
|
+ if (x - controller.getScale() <= ((upperNode.getLeftBorder() >> 1) - model.getScaleDiv2())
|
|
&& y - controller.getScale() <= (scalediv20 + 5 + (model.getScale() + scalediv20 + 10) * count)
|
|
&& y - controller.getScale() <= (scalediv20 + 5 + (model.getScale() + scalediv20 + 10) * count)
|
|
- && x >= (borderPos >> 1) - model.getScaleDiv2()
|
|
|
|
|
|
+ && x >= (upperNode.getLeftBorder() >> 1) - model.getScaleDiv2()
|
|
&& y >= (scalediv20 + 5 + (model.getScale() + scalediv20 + 10) * count)) {
|
|
&& y >= (scalediv20 + 5 + (model.getScale() + scalediv20 + 10) * count)) {
|
|
tempCps = cps;
|
|
tempCps = cps;
|
|
controller.addTextToConsole("Selected: ", Color.BLACK, 12, false, false, false);
|
|
controller.addTextToConsole("Selected: ", Color.BLACK, 12, false, false, false);
|
|
@@ -1071,8 +1071,8 @@ public class UpperNodeCanvas extends JPanel implements MouseListener, MouseMotio
|
|
y = e.getY();
|
|
y = e.getY();
|
|
|
|
|
|
// Make sure its in bounds
|
|
// Make sure its in bounds
|
|
- if (e.getX() < controller.getScaleDiv2() + borderPos + 5)
|
|
|
|
- x = controller.getScaleDiv2() + borderPos + 5;
|
|
|
|
|
|
+ if (e.getX() < controller.getScaleDiv2() + upperNode.getLeftBorder() + 5)
|
|
|
|
+ x = controller.getScaleDiv2() + upperNode.getLeftBorder() + 5;
|
|
else if (e.getX() > this.getWidth() - controller.getScaleDiv2())
|
|
else if (e.getX() > this.getWidth() - controller.getScaleDiv2())
|
|
x = this.getWidth() - controller.getScaleDiv2();
|
|
x = this.getWidth() - controller.getScaleDiv2();
|
|
if (e.getY() < controller.getScaleDiv2())
|
|
if (e.getY() < controller.getScaleDiv2())
|
|
@@ -1099,8 +1099,8 @@ public class UpperNodeCanvas extends JPanel implements MouseListener, MouseMotio
|
|
y = (int) (cps.getPosition().y + yDist);
|
|
y = (int) (cps.getPosition().y + yDist);
|
|
|
|
|
|
// Make sure its in bounds
|
|
// Make sure its in bounds
|
|
- if (x < borderPos + 5 + controller.getScaleDiv2())
|
|
|
|
- x = controller.getScaleDiv2() + borderPos + 5;
|
|
|
|
|
|
+ if (x < upperNode.getLeftBorder() + 5 + controller.getScaleDiv2())
|
|
|
|
+ x = controller.getScaleDiv2() + upperNode.getLeftBorder() + 5;
|
|
else if (x > this.getWidth() - controller.getScaleDiv2())
|
|
else if (x > this.getWidth() - controller.getScaleDiv2())
|
|
x = this.getWidth() - controller.getScaleDiv2();
|
|
x = this.getWidth() - controller.getScaleDiv2();
|
|
if (y <= controller.getScaleDiv2())
|
|
if (y <= controller.getScaleDiv2())
|
|
@@ -1158,9 +1158,10 @@ public class UpperNodeCanvas extends JPanel implements MouseListener, MouseMotio
|
|
y2 = sy;
|
|
y2 = sy;
|
|
}
|
|
}
|
|
|
|
|
|
- if (x1 <= borderPos >> 1
|
|
|
|
|
|
+ if (x1 <= upperNode.getLeftBorder() >> 1
|
|
&& y1 <= (int) (5 + (model.getScale() + scalediv20 + 10) * count) + model.getScaleDiv2()
|
|
&& y1 <= (int) (5 + (model.getScale() + scalediv20 + 10) * count) + model.getScaleDiv2()
|
|
- && x2 >= borderPos >> 1 && y2 >= (int) (5 + (model.getScale() + scalediv20 + 10) * count)) {
|
|
|
|
|
|
+ && x2 >= upperNode.getLeftBorder() >> 1
|
|
|
|
+ && y2 >= (int) (5 + (model.getScale() + scalediv20 + 10) * count)) {
|
|
tempSelected.add(cps);
|
|
tempSelected.add(cps);
|
|
|
|
|
|
}
|
|
}
|
|
@@ -1200,7 +1201,7 @@ public class UpperNodeCanvas extends JPanel implements MouseListener, MouseMotio
|
|
cps = ed.getA();
|
|
cps = ed.getA();
|
|
}
|
|
}
|
|
|
|
|
|
- cx = borderPos >> 1;
|
|
|
|
|
|
+ cx = upperNode.getLeftBorder() >> 1;
|
|
cy = (int) (scalediv20 + 5 + (50 + scalediv20 + 10) * count);
|
|
cy = (int) (scalediv20 + 5 + (50 + scalediv20 + 10) * count);
|
|
if (x - 50 <= cx && y - 50 <= cy && x >= cx && y >= cy) {
|
|
if (x - 50 <= cx && y - 50 <= cy && x >= cx && y >= cy) {
|
|
|
|
|
|
@@ -1287,7 +1288,7 @@ public class UpperNodeCanvas extends JPanel implements MouseListener, MouseMotio
|
|
cps = ed.getA();
|
|
cps = ed.getA();
|
|
}
|
|
}
|
|
|
|
|
|
- cx = borderPos >> 1;
|
|
|
|
|
|
+ cx = upperNode.getLeftBorder() >> 1;
|
|
cy = (int) (scalediv20 + 5 + (model.getScale() + scalediv20 + 10) * count);
|
|
cy = (int) (scalediv20 + 5 + (model.getScale() + scalediv20 + 10) * count);
|
|
|
|
|
|
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
|
|
@@ -1366,7 +1367,7 @@ public class UpperNodeCanvas extends JPanel implements MouseListener, MouseMotio
|
|
}
|
|
}
|
|
|
|
|
|
// ins leere Gedragged
|
|
// ins leere Gedragged
|
|
- if (node && x > borderPos) {
|
|
|
|
|
|
+ if (node && x > upperNode.getLeftBorder()) {
|
|
CpsNode n = new CpsNode("Node");
|
|
CpsNode n = new CpsNode("Node");
|
|
|
|
|
|
n.setPosition(x, y);
|
|
n.setPosition(x, y);
|
|
@@ -1450,14 +1451,14 @@ public class UpperNodeCanvas extends JPanel implements MouseListener, MouseMotio
|
|
// g2.drawImage(img, (borderPos >> 1) - 25, (int) (scalediv20 +
|
|
// g2.drawImage(img, (borderPos >> 1) - 25, (int) (scalediv20 +
|
|
// 5 + (50 + scalediv20 + 10) * count), 50, 50, null);
|
|
// 5 + (50 + scalediv20 + 10) * count), 50, 50, null);
|
|
if (doTest) {
|
|
if (doTest) {
|
|
- Line2D l = new Line2D.Float((borderPos >> 1) - 25,
|
|
|
|
|
|
+ Line2D l = new Line2D.Float((upperNode.getLeftBorder() >> 1) - 25,
|
|
(int) (scalediv20 + 5 + 25 + (50 + scalediv20 + 10) * count), obj.getPosition().x,
|
|
(int) (scalediv20 + 5 + 25 + (50 + scalediv20 + 10) * count), obj.getPosition().x,
|
|
obj.getPosition().y);
|
|
obj.getPosition().y);
|
|
- if ((borderPos >> 1) > obj.getPosition().x) {
|
|
|
|
- hx = (borderPos >> 1) - 25 + model.getScaleDiv2() + 7;
|
|
|
|
|
|
+ if ((upperNode.getLeftBorder() >> 1) > obj.getPosition().x) {
|
|
|
|
+ hx = (upperNode.getLeftBorder() >> 1) - 25 + model.getScaleDiv2() + 7;
|
|
lx = obj.getPosition().x + model.getScaleDiv2() - 7;
|
|
lx = obj.getPosition().x + model.getScaleDiv2() - 7;
|
|
} else {
|
|
} else {
|
|
- lx = (borderPos >> 1) - 25 + model.getScaleDiv2() - 7;
|
|
|
|
|
|
+ lx = (upperNode.getLeftBorder() >> 1) - 25 + model.getScaleDiv2() - 7;
|
|
hx = obj.getPosition().x + model.getScaleDiv2() + 7;
|
|
hx = obj.getPosition().x + model.getScaleDiv2() + 7;
|
|
}
|
|
}
|
|
if ((int) (scalediv20 + 5 + (50 + scalediv20 + 10) * count) > obj.getPosition().y) {
|
|
if ((int) (scalediv20 + 5 + (50 + scalediv20 + 10) * count) > obj.getPosition().y) {
|