|
@@ -603,9 +603,10 @@ public class MyCanvas extends AbstractCanvas implements MouseListener,
|
|
|
try {
|
|
|
|
|
|
/**
|
|
|
- * check if tempCps could replace an Object on the canvas
|
|
|
+ * check if a unique tempCps could replace an Object on the canvas
|
|
|
*/
|
|
|
- if(checkForReplacement(model.getObjectsOnCanvas(), tempCps, tempCps.getPosition().x, tempCps.getPosition().y)){
|
|
|
+ if(model.getSelectedCpsObjects().size()==1
|
|
|
+ && checkForReplacement(model.getObjectsOnCanvas(), tempCps, tempCps.getPosition().x, tempCps.getPosition().y)){
|
|
|
/**
|
|
|
* replace on canvas
|
|
|
*/
|
|
@@ -651,7 +652,7 @@ public class MyCanvas extends AbstractCanvas implements MouseListener,
|
|
|
// If Edge is drawn
|
|
|
x = e.getX();
|
|
|
y = e.getY();
|
|
|
- checkForReplacement(0, 0);
|
|
|
+
|
|
|
if (!model.getSelectedCpsObjects().contains(tempCps) && !doMark) {
|
|
|
model.getSelectedCpsObjects().clear();
|
|
|
if (tempCps != null) {
|
|
@@ -715,7 +716,8 @@ public class MyCanvas extends AbstractCanvas implements MouseListener,
|
|
|
/**
|
|
|
* check if something might be replaced
|
|
|
*/
|
|
|
- checkForReplacement(model.getObjectsOnCanvas(), tempCps, x, y);
|
|
|
+ if(model.getSelectedCpsObjects().size()==1)
|
|
|
+ checkForReplacement(model.getObjectsOnCanvas(), tempCps, x, y);
|
|
|
|
|
|
repaint();
|
|
|
} catch (Exception eex) {
|