diff options
| author | Laurent Redor | 2017-09-01 10:21:08 +0000 |
|---|---|---|
| committer | Laurent Redor | 2017-09-01 10:32:23 +0000 |
| commit | 7fc71d3d5236d530f4d71528b10806aa0e502795 (patch) | |
| tree | db79dd30f6730a459ea8c44e55d4b42058a7f894 | |
| parent | 4341f0696be97b3e075f37cd6ccfb6b0af52772f (diff) | |
| download | org.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>
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); |
