Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.sequence/custom-src/org/eclipse/papyrus/uml/diagram/sequence/edit/parts/CLifeLineEditPart.java')
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.sequence/custom-src/org/eclipse/papyrus/uml/diagram/sequence/edit/parts/CLifeLineEditPart.java27
1 files changed, 13 insertions, 14 deletions
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.sequence/custom-src/org/eclipse/papyrus/uml/diagram/sequence/edit/parts/CLifeLineEditPart.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.sequence/custom-src/org/eclipse/papyrus/uml/diagram/sequence/edit/parts/CLifeLineEditPart.java
index 386bb347b38..d53628f7baf 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.sequence/custom-src/org/eclipse/papyrus/uml/diagram/sequence/edit/parts/CLifeLineEditPart.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.sequence/custom-src/org/eclipse/papyrus/uml/diagram/sequence/edit/parts/CLifeLineEditPart.java
@@ -294,15 +294,13 @@ public class CLifeLineEditPart extends LifelineEditPart {
.filter(MessageEnd::isReceive)
.filter(end -> end.getMessage().getMessageSort() == MessageSort.CREATE_MESSAGE_LITERAL);
- return createEnd.map(this::getCreateMessageIncomingSide)
- .filter(OptionalInt::isPresent)
- .map(side -> {
- getBorderedFigure().getBorderItemContainer()
- .add(((IGraphicalEditPart) childEditPart).getFigure(),
- new TimeElementLocator(getMainFigure(), this::getTimeElementSide));
-
- return true;
- }).orElseGet(() -> super.addFixedChild(childEditPart));
+ return createEnd.map(__ -> {
+ getBorderedFigure().getBorderItemContainer()
+ .add(((IGraphicalEditPart) childEditPart).getFigure(),
+ new TimeElementLocator(getMainFigure(), this::getTimeElementSide));
+
+ return true;
+ }).orElseGet(() -> super.addFixedChild(childEditPart));
}
public OptionalInt getCreateMessageIncomingSide(Point where) {
@@ -350,10 +348,11 @@ public class CLifeLineEditPart extends LifelineEditPart {
}
int getTimeElementSide(Rectangle proposedBounds) {
- int incoming = getCreateMessageIncomingSide(proposedBounds.getTopLeft())
- .orElse(PositionConstants.WEST);
-
- // Put the time element on the side opposite to the incoming create message
- return PositionConstants.EAST_WEST ^ incoming;
+ OptionalInt incoming = getCreateMessageIncomingSide(proposedBounds.getTopLeft());
+ return incoming.isPresent()
+ // Put the time element on the side opposite to the incoming create message
+ ? PositionConstants.EAST_WEST ^ incoming.getAsInt()
+ // Center it on the lifeline
+ : PositionConstants.CENTER;
}
}

Back to the top