|
@@ -35,7 +35,7 @@ import ui.controller.Control;
|
|
|
import ui.model.Model;
|
|
|
import ui.model.idCounter;
|
|
|
|
|
|
-class MyCanvas extends JPanel implements MouseListener, MouseMotionListener {
|
|
|
+public class MyCanvas extends JPanel implements MouseListener, MouseMotionListener {
|
|
|
|
|
|
*
|
|
|
*/
|
|
@@ -98,16 +98,6 @@ class MyCanvas extends JPanel implements MouseListener, MouseMotionListener {
|
|
|
RenderingHints rh = new RenderingHints(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
|
|
|
g2.setRenderingHints(rh);
|
|
|
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
- *
|
|
|
- * 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()); }
|
|
|
- */
|
|
|
|
|
|
|
|
|
if (drawEdge) {
|
|
@@ -176,16 +166,29 @@ class MyCanvas extends JPanel implements MouseListener, MouseMotionListener {
|
|
|
if (cps.getID() == model.getSelectedObjectID() && controller.searchByID(model.getSelectedObjectID()) != null
|
|
|
&& controller.searchByID(model.getSelectedObjectID()) instanceof CpsNode) {
|
|
|
img = new ImageIcon(this.getClass().getResource("/Images/node_selected.png")).getImage();
|
|
|
- } else {
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ if (cps instanceof HolonSwitch) {
|
|
|
+ if (((HolonSwitch) cps).getActiveAt()[model.getCurIteration()]) {
|
|
|
+ ((HolonSwitch) cps).setState(true);
|
|
|
+ } else {
|
|
|
+ ((HolonSwitch) cps).setState(false);
|
|
|
+ }
|
|
|
+ }
|
|
|
if (cps == tempCps) {
|
|
|
g2.setColor(Color.BLUE);
|
|
|
g2.fillRect((int) selectRect.getX(), (int) selectRect.getY(), (int) selectRect.getWidth(),
|
|
|
(int) selectRect.getHeight());
|
|
|
} else if (cps instanceof HolonObject) {
|
|
|
- g2.setColor(Color.GRAY);
|
|
|
+ if (((HolonObject) cps).getSupplied()) {
|
|
|
+ g2.setColor(Color.GREEN);
|
|
|
+ } else {
|
|
|
+ g2.setColor(Color.RED);
|
|
|
+ }
|
|
|
g2.fillRect(cps.getPosition().x - (controller.getScale() / 20),
|
|
|
- cps.getPosition().y - (controller.getScale() / 20), (int) selectRect.getWidth(),
|
|
|
- (int) selectRect.getHeight());
|
|
|
+ cps.getPosition().y - (controller.getScale() / 20),
|
|
|
+ controller.getScale() + ((controller.getScale() / 20) * 2),
|
|
|
+ controller.getScale() + ((controller.getScale() / 20) * 2));
|
|
|
}
|
|
|
File checkPath = new File(cps.getImage());
|
|
|
if (checkPath.exists()) {
|
|
@@ -202,11 +205,6 @@ class MyCanvas extends JPanel implements MouseListener, MouseMotionListener {
|
|
|
|
|
|
@Override
|
|
|
public void mouseClicked(MouseEvent e) {
|
|
|
-
|
|
|
- if (doubleClick() && tempCps != null && tempCps.getClass() == HolonSwitch.class) {
|
|
|
- ((HolonSwitch) tempCps).switchState();
|
|
|
- }
|
|
|
- repaint();
|
|
|
}
|
|
|
|
|
|
@Override
|
|
@@ -393,13 +391,12 @@ class MyCanvas extends JPanel implements MouseListener, MouseMotionListener {
|
|
|
}
|
|
|
if (newEdge) {
|
|
|
e = new CpsEdge(cps, tempCps);
|
|
|
-
|
|
|
-
|
|
|
+ controller.calculateStateForTimeStep(model.getCurIteration());
|
|
|
controller.AddEdgeOnCanvas(e);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
if (onEdge) {
|
|
|
CpsEdge p = mousePositionOnEdge(x, y);
|
|
|
if (p != null) {
|
|
@@ -419,17 +416,11 @@ class MyCanvas extends JPanel implements MouseListener, MouseMotionListener {
|
|
|
k = p.getB();
|
|
|
|
|
|
e = new CpsEdge(n, tempCps);
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
+
|
|
|
e1 = new CpsEdge(n, r);
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
+
|
|
|
e2 = new CpsEdge(n, k);
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
+
|
|
|
p.getA().getConnections().remove(p);
|
|
|
p.getB().getConnections().remove(p);
|
|
|
|