X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=bundles%2Forg.simantics.diagram%2Fsrc%2Forg%2Fsimantics%2Fdiagram%2Fadapter%2FDefinedElementTerminals.java;h=33e831afcf1b69f638c6a3ce66699957273e9713;hb=e3f46ffc9d4a6930adc83ebb8e6730f19708cc94;hp=d67f9f547f9c5a27a2ad552849f5842e0746bdd8;hpb=c8cce62f9952ab3f6db451d2f22d969b4e777eaa;p=simantics%2Fplatform.git 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