From 577a5f5f70b426f69b76bf22674b88e361b7c151 Mon Sep 17 00:00:00 2001 From: Tiziano Munaro <munaro@fortiss.org> Date: Tue, 4 Feb 2020 17:18:44 +0100 Subject: [PATCH] Fix inversion of arrows for curved links Issue-Ref: 3873 Issue-Url: https://af3-developer.fortiss.org/issues/3873 Signed-off-by: Tiziano Munaro <munaro@fortiss.org> --- .../fortiss/tooling/base/ui/editor/fx/controller/.ratings | 2 +- .../CurvedLinkLayoutedContentAnchorangeController.java | 8 ++++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/org.fortiss.tooling.base.ui/src/org/fortiss/tooling/base/ui/editor/fx/controller/.ratings b/org.fortiss.tooling.base.ui/src/org/fortiss/tooling/base/ui/editor/fx/controller/.ratings index c7471afbf..6333724d4 100644 --- a/org.fortiss.tooling.base.ui/src/org/fortiss/tooling/base/ui/editor/fx/controller/.ratings +++ b/org.fortiss.tooling.base.ui/src/org/fortiss/tooling/base/ui/editor/fx/controller/.ratings @@ -1,5 +1,5 @@ ContextMenuUtil.java 405387151d45b09dffb3b6ba44f980313c8edcaf GREEN -CurvedLinkLayoutedContentAnchorangeController.java 2d136ab28d62047b84a951515ab7338328760811 GREEN +CurvedLinkLayoutedContentAnchorangeController.java 67c20e31ddb82fe2fd499117193353b0545839a0 YELLOW EObjectDiagramController.java 9af59e8e586c8251d174108a2ce2fcdee5e75782 GREEN EObjectEllipticResizableContentControllerBase.java 3494d4f0dcdff5eb35f22f0e21d04df81b32e494 GREEN EObjectModelChangeProvider.java f4b60cebb088a5c81ca92a41614e1a5d40030502 GREEN diff --git a/org.fortiss.tooling.base.ui/src/org/fortiss/tooling/base/ui/editor/fx/controller/CurvedLinkLayoutedContentAnchorangeController.java b/org.fortiss.tooling.base.ui/src/org/fortiss/tooling/base/ui/editor/fx/controller/CurvedLinkLayoutedContentAnchorangeController.java index 2d136ab28..67c20e31d 100644 --- a/org.fortiss.tooling.base.ui/src/org/fortiss/tooling/base/ui/editor/fx/controller/CurvedLinkLayoutedContentAnchorangeController.java +++ b/org.fortiss.tooling.base.ui/src/org/fortiss/tooling/base/ui/editor/fx/controller/CurvedLinkLayoutedContentAnchorangeController.java @@ -17,6 +17,8 @@ package org.fortiss.tooling.base.ui.editor.fx.controller; import static org.fortiss.tooling.base.ui.utils.LayoutDataUIUtils.addConnectionPoint; +import org.fortiss.tooling.base.model.base.EntryConnectorBase; +import org.fortiss.tooling.base.model.base.ExitConnectorBase; import org.fortiss.tooling.base.model.element.IConnection; import org.fortiss.tooling.base.model.element.IConnector; import org.fortiss.tooling.base.model.layout.ILayoutedModelElement; @@ -49,8 +51,10 @@ public class CurvedLinkLayoutedContentAnchorangeController<T extends IConnector // Fetch newly created connection by comparing incoming and outgoing connections of the // given connectors. As only one connection is allowed between a pair of connectors, this // 'findFirst' is safe. - T startConnector = (T)startBundle.getModel(); - T endConnector = (T)endBundle.getModel(); + T startConnector = (T)(startBundle.getModel() instanceof ExitConnectorBase + ? startBundle.getModel() : endBundle.getModel()); + T endConnector = (T)(endBundle.getModel() instanceof EntryConnectorBase + ? endBundle.getModel() : startBundle.getModel()); IConnection connection = startConnector.getOutgoing().stream() .filter(segment -> endConnector.getIncoming().contains(segment)).findFirst().get(); -- GitLab