]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.diagram/src/org/simantics/diagram/participant/ConnectionBuilder.java
Sync git svn branch with SVN repository r33324.
[simantics/platform.git] / bundles / org.simantics.diagram / src / org / simantics / diagram / participant / ConnectionBuilder.java
index 1fcf074cdf8c2863517aea5b22f225f265097764..b36961f87a589595d939d3045c0482bd3e71939c 100644 (file)
@@ -475,7 +475,8 @@ public class ConnectionBuilder {
             Resource attachToConnection,\r
             Resource attachToLine,\r
             Deque<ControlPoint> controlPoints,\r
-            TerminalInfo endTerminal)\r
+            TerminalInfo endTerminal,\r
+            FlagClass.Type flagType)\r
                     throws DatabaseException\r
     {\r
         initializeResources(graph);\r
@@ -502,9 +503,10 @@ public class ConnectionBuilder {
             if (endTerminal != null) {\r
                 endConnector = createConnectorForNode(graph, attachToConnection, endTerminal, EdgeEnd.End, judgment);\r
             } else if (createFlags) {\r
-                IElement endFlag = createFlag(graph, attachToConnection, EdgeEnd.End, controlPoints.getLast(), FlagClass.Type.Out, null);\r
+                EdgeEnd end = flagType == FlagClass.Type.In ? EdgeEnd.Begin : EdgeEnd.End;\r
+                IElement endFlag = createFlag(graph, attachToConnection, end, controlPoints.getLast(), flagType, null);\r
                 endConnector = createConnectorForNode(graph, attachToConnection, (Resource) ElementUtils.getObject(endFlag),\r
-                        ElementUtils.getSingleTerminal(endFlag), EdgeEnd.End, judgment);\r
+                        ElementUtils.getSingleTerminal(endFlag), end, judgment);\r
             }\r
 \r
             cu.connect(attachToLine, endConnector.getConnector());\r