]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.diagram/src/org/simantics/diagram/adapter/RouteGraphUtils.java
Store initial links between route notes for JS connection rendering
[simantics/platform.git] / bundles / org.simantics.diagram / src / org / simantics / diagram / adapter / RouteGraphUtils.java
index 17ccbe351e0941380bf0b2db94ef9a6a34fc1f96..192b4947fdf90e3ba7dd328fb67d34ab1b056361 100644 (file)
@@ -18,6 +18,7 @@ import java.awt.Shape;
 import java.awt.Stroke;
 import java.awt.geom.AffineTransform;
 import java.awt.geom.Rectangle2D;
+import java.util.ArrayList;
 import java.util.Collection;
 import java.util.Collections;
 import java.util.Map;
@@ -34,6 +35,7 @@ import org.simantics.db.common.request.UnaryRead;
 import org.simantics.db.common.utils.NameUtils;
 import org.simantics.db.exception.DatabaseException;
 import org.simantics.diagram.connection.ConnectionVisuals;
+import org.simantics.diagram.connection.Link;
 import org.simantics.diagram.connection.RouteGraph;
 import org.simantics.diagram.connection.RouteGraphConnectionClass;
 import org.simantics.diagram.connection.RouteLine;
@@ -353,6 +355,8 @@ public class RouteGraphUtils {
             }
         }
 
+        Collection<Link> initialLinks = new ArrayList<>();
+        
         // Finish route graph loading by Linking route nodes together
         for (EdgeResource link : links) {
             RouteNode n1 = nodeByData.get(link.first());
@@ -362,7 +366,9 @@ public class RouteGraphUtils {
                 continue;
             }
             rg.link(n1, n2);
+            initialLinks.add(new Link(n1, n2));
         }
+        rg.setInitialLinks(initialLinks);
 
         return rg;