X-Git-Url: https://gerrit.simantics.org/r/gitweb?p=simantics%2Fplatform.git;a=blobdiff_plain;f=bundles%2Forg.simantics.diagram%2Fsrc%2Forg%2Fsimantics%2Fdiagram%2Fadapter%2FDefinedElementTerminals.java;h=33e831afcf1b69f638c6a3ce66699957273e9713;hp=d67f9f547f9c5a27a2ad552849f5842e0746bdd8;hb=2e21c89c81d449bcc2301b3cf3cce4f2cd403a60;hpb=edbb4df64407826271ee6423451401684e9cd68c diff --git a/bundles/org.simantics.diagram/src/org/simantics/diagram/adapter/DefinedElementTerminals.java b/bundles/org.simantics.diagram/src/org/simantics/diagram/adapter/DefinedElementTerminals.java index d67f9f547..33e831afc 100644 --- a/bundles/org.simantics.diagram/src/org/simantics/diagram/adapter/DefinedElementTerminals.java +++ b/bundles/org.simantics.diagram/src/org/simantics/diagram/adapter/DefinedElementTerminals.java @@ -11,6 +11,7 @@ *******************************************************************************/ package org.simantics.diagram.adapter; +import java.awt.Shape; import java.awt.geom.AffineTransform; import java.util.Collection; @@ -73,5 +74,20 @@ public class DefinedElementTerminals extends Terminals { return null; return ti.getTransform(); } + + @Override + public Shape getTerminalShape(IElement e, Terminal t) { + if (t instanceof ResourceTerminal) { + ResourceTerminal rt = (ResourceTerminal) t; + IG2DNode node = e.getHint(DefinedElementHandler.KEY_SG_NODE); + if (node != null) { + IG2DNode n = findResourceTerminalNode(node, rt); + if (n != null) { + return n.getBoundsInLocal(); + } + } + } + return super.getTerminalShape(e, t); + } } \ No newline at end of file