Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLaurent Redor2017-09-01 10:21:08 +0000
committerLaurent Redor2017-09-01 10:32:23 +0000
commit7fc71d3d5236d530f4d71528b10806aa0e502795 (patch)
treedb79dd30f6730a459ea8c44e55d4b42058a7f894
parent4341f0696be97b3e075f37cd6ccfb6b0af52772f (diff)
downloadorg.eclipse.sirius-7fc71d3d5236d530f4d71528b10806aa0e502795.tar.gz
org.eclipse.sirius-7fc71d3d5236d530f4d71528b10806aa0e502795.tar.xz
org.eclipse.sirius-7fc71d3d5236d530f4d71528b10806aa0e502795.zip
Revert "[521356] Fix bug when resizing an Execution to the parent limit
bounds" This reverts commit 53ac4e417ad148254376b2ff489a6a32d6946ae4 as the bug 521356 is finally invalid. Bug: 521356 Change-Id: I5e90231a90ebaeb7cde2e880957aa5b55f109ebc Signed-off-by: Laurent Redor <laurent.redor@obeo.fr>
-rw-r--r--plugins/org.eclipse.sirius.diagram.sequence.ui/src/org/eclipse/sirius/diagram/sequence/ui/tool/internal/edit/validator/AbstractInteractionFrameValidator.java7
-rw-r--r--plugins/org.eclipse.sirius.diagram.sequence.ui/src/org/eclipse/sirius/diagram/sequence/ui/tool/internal/edit/validator/AbstractNodeEventResizeSelectionValidator.java2
-rw-r--r--plugins/org.eclipse.sirius.diagram.sequence/src/org/eclipse/sirius/diagram/sequence/business/internal/elements/Lifeline.java4
-rw-r--r--plugins/org.eclipse.sirius.diagram.sequence/src/org/eclipse/sirius/diagram/sequence/util/Range.java21
-rw-r--r--plugins/org.eclipse.sirius.tests.junit/src/org/eclipse/sirius/tests/unit/diagram/sequence/util/RangeTests.java46
5 files changed, 10 insertions, 70 deletions
diff --git a/plugins/org.eclipse.sirius.diagram.sequence.ui/src/org/eclipse/sirius/diagram/sequence/ui/tool/internal/edit/validator/AbstractInteractionFrameValidator.java b/plugins/org.eclipse.sirius.diagram.sequence.ui/src/org/eclipse/sirius/diagram/sequence/ui/tool/internal/edit/validator/AbstractInteractionFrameValidator.java
index 20ec5d74f4..4e7944d0ad 100644
--- a/plugins/org.eclipse.sirius.diagram.sequence.ui/src/org/eclipse/sirius/diagram/sequence/ui/tool/internal/edit/validator/AbstractInteractionFrameValidator.java
+++ b/plugins/org.eclipse.sirius.diagram.sequence.ui/src/org/eclipse/sirius/diagram/sequence/ui/tool/internal/edit/validator/AbstractInteractionFrameValidator.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2010, 2017 THALES GLOBAL SERVICES.
+ * Copyright (c) 2010 THALES GLOBAL SERVICES.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -24,6 +24,7 @@ import org.eclipse.sirius.diagram.sequence.business.internal.elements.Interactio
import org.eclipse.sirius.diagram.sequence.business.internal.elements.Lifeline;
import org.eclipse.sirius.diagram.sequence.business.internal.elements.Operand;
import org.eclipse.sirius.diagram.sequence.business.internal.elements.State;
+import org.eclipse.sirius.diagram.sequence.business.internal.layout.LayoutConstants;
import org.eclipse.sirius.diagram.sequence.ui.tool.internal.util.RequestQuery;
import org.eclipse.sirius.diagram.sequence.util.Range;
@@ -231,7 +232,7 @@ public abstract class AbstractInteractionFrameValidator {
Iterator<ISequenceEvent> iterator = unMovedParents.iterator();
while (checked && iterator.hasNext()) {
ISequenceEvent parent = iterator.next();
- Range parentRange = parent.getValidSubEventsRange();
+ Range parentRange = parent.getVerticalRange();
if (expansionZone != null && !expansionZone.isEmpty()) {
parentRange = new Range(parentRange.getLowerBound(), parentRange.getUpperBound() + expansionZone.width());
@@ -240,7 +241,7 @@ public abstract class AbstractInteractionFrameValidator {
* We make two tests separately so that is is easier when debugging
* to determine which of the conditions went wrong, if any.
*/
- boolean interactionInRange = parentRange.includes(finalRange);
+ boolean interactionInRange = parentRange.includes(finalRange.grown(LayoutConstants.EXECUTION_CHILDREN_MARGIN));
checked = checked && interactionInRange;
}
diff --git a/plugins/org.eclipse.sirius.diagram.sequence.ui/src/org/eclipse/sirius/diagram/sequence/ui/tool/internal/edit/validator/AbstractNodeEventResizeSelectionValidator.java b/plugins/org.eclipse.sirius.diagram.sequence.ui/src/org/eclipse/sirius/diagram/sequence/ui/tool/internal/edit/validator/AbstractNodeEventResizeSelectionValidator.java
index 0592e58ca0..2bbd2f670b 100644
--- a/plugins/org.eclipse.sirius.diagram.sequence.ui/src/org/eclipse/sirius/diagram/sequence/ui/tool/internal/edit/validator/AbstractNodeEventResizeSelectionValidator.java
+++ b/plugins/org.eclipse.sirius.diagram.sequence.ui/src/org/eclipse/sirius/diagram/sequence/ui/tool/internal/edit/validator/AbstractNodeEventResizeSelectionValidator.java
@@ -188,7 +188,7 @@ public class AbstractNodeEventResizeSelectionValidator {
if (requestQuery.isResize()) {
if (parent instanceof Operand) {
okForParent = validateNewBounds(self, newBounds, (Operand) parent);
- } else if (!parent.getValidSubEventsRange().includes(RangeHelper.verticalRange(newBounds))) {
+ } else if (!parent.getVerticalRange().includes(RangeHelper.verticalRange(newBounds))) {
okForParent = false;
}
}
diff --git a/plugins/org.eclipse.sirius.diagram.sequence/src/org/eclipse/sirius/diagram/sequence/business/internal/elements/Lifeline.java b/plugins/org.eclipse.sirius.diagram.sequence/src/org/eclipse/sirius/diagram/sequence/business/internal/elements/Lifeline.java
index d75c872d12..0314d05ea9 100644
--- a/plugins/org.eclipse.sirius.diagram.sequence/src/org/eclipse/sirius/diagram/sequence/business/internal/elements/Lifeline.java
+++ b/plugins/org.eclipse.sirius.diagram.sequence/src/org/eclipse/sirius/diagram/sequence/business/internal/elements/Lifeline.java
@@ -187,8 +187,8 @@ public class Lifeline extends AbstractSequenceNode implements ISequenceEvent {
@Override
public Range getValidSubEventsRange() {
Range result = getVerticalRange();
- if (result.width() > LayoutConstants.TIME_START_MIN_OFFSET) {
- result = result.shifted(LayoutConstants.TIME_START_MIN_OFFSET).reduced(LayoutConstants.TIME_START_MIN_OFFSET);
+ if (result.width() > 2 * LayoutConstants.EXECUTION_CHILDREN_MARGIN) {
+ result = result.shrinked(LayoutConstants.EXECUTION_CHILDREN_MARGIN);
}
return result;
}
diff --git a/plugins/org.eclipse.sirius.diagram.sequence/src/org/eclipse/sirius/diagram/sequence/util/Range.java b/plugins/org.eclipse.sirius.diagram.sequence/src/org/eclipse/sirius/diagram/sequence/util/Range.java
index 24a50ffb4a..acaffaefbe 100644
--- a/plugins/org.eclipse.sirius.diagram.sequence/src/org/eclipse/sirius/diagram/sequence/util/Range.java
+++ b/plugins/org.eclipse.sirius.diagram.sequence/src/org/eclipse/sirius/diagram/sequence/util/Range.java
@@ -360,7 +360,7 @@ public class Range {
*
* @param distance
* the positive distance to shrink this range.
- * @return the new shrinked range.
+ * @return the new grown range.
*/
public Range shrinked(int distance) {
Preconditions.checkArgument(distance >= 0);
@@ -373,25 +373,6 @@ public class Range {
}
/**
- * Returns a new range corresponding to this range reduced by the specified size (which must be positive). Reducing
- * an empty range produces an empty range. Otherwise the resulting range has a smaller width than original (- size).
- * The lower bound value of this range is kept constant.
- *
- * @param size
- * the positive size to reduce this range.
- * @return the new reduced range.
- */
- public Range reduced(int size) {
- Preconditions.checkArgument(size >= 0);
- if (isEmpty()) {
- return Range.EMPTY_RANGE;
- } else {
- Preconditions.checkArgument(width() - size >= 0);
- return new Range(lower, upper - size);
- }
- }
-
- /**
* Returns a percentage of how much the given absolute number is inside this
* range.
*
diff --git a/plugins/org.eclipse.sirius.tests.junit/src/org/eclipse/sirius/tests/unit/diagram/sequence/util/RangeTests.java b/plugins/org.eclipse.sirius.tests.junit/src/org/eclipse/sirius/tests/unit/diagram/sequence/util/RangeTests.java
index a3a5733c5b..0683db7123 100644
--- a/plugins/org.eclipse.sirius.tests.junit/src/org/eclipse/sirius/tests/unit/diagram/sequence/util/RangeTests.java
+++ b/plugins/org.eclipse.sirius.tests.junit/src/org/eclipse/sirius/tests/unit/diagram/sequence/util/RangeTests.java
@@ -15,11 +15,11 @@ import java.util.Collections;
import java.util.List;
import java.util.Random;
+import junit.framework.TestCase;
+
import org.eclipse.sirius.diagram.sequence.business.internal.RangeHelper;
import org.eclipse.sirius.diagram.sequence.util.Range;
-import junit.framework.TestCase;
-
/**
* Tests for the {@link Range} utility class.
*
@@ -310,48 +310,6 @@ public class RangeTests extends TestCase {
assertEquals(new Range(0, 1), result);
}
- public void testReduceEmptyRange() {
- Range r = Range.emptyRange();
- Range result = r.reduced(10);
- assertNotNull(result);
- assertTrue(result.isEmpty());
- }
-
- public void testReduceRangeByZero() {
- Range r = new Range(1, 2);
- Range result = r.reduced(0);
- assertNotNull(result);
- assertEquals(r, result);
- }
-
- public void testReduceRangeByPositivSize() {
- Range r = new Range(1, 10);
- Range result = r.reduced(1);
- assertNotNull(result);
- assertEquals(new Range(1, 9), result);
- }
-
- public void testReduceRangeByNegativeSize() {
- Range r = new Range(1, 10);
- try {
- r.reduced(-1);
- fail("An illegal argument exception is expected");
- } catch (IllegalArgumentException e) {
- // ok
- }
- }
-
- public void testReduceRangeByIllegalDistance() {
- Range r = new Range(1, 2);
-
- try {
- r.reduced(2);
- fail("An illegal argument exception is expected");
- } catch (IllegalArgumentException e) {
- // ok
- }
- }
-
public void testRangeOrderingByLowerBound() {
Range r1 = new Range(1, 2);
Range r2 = new Range(2, 3);

Back to the top