]> gerrit.simantics Code Review - simantics/3d.git/blobdiff - org.simantics.plant3d/src/org/simantics/plant3d/scenegraph/Nozzle.java
Remove listener calls when property values not updated.
[simantics/3d.git] / org.simantics.plant3d / src / org / simantics / plant3d / scenegraph / Nozzle.java
index fb18406846c2d81721811f1102018801c676cde5..61ac722c9fb15637f63bfdd9d21db834bc4cdafd 100644 (file)
@@ -72,17 +72,20 @@ public class Nozzle extends PipelineComponent {
        private void _createCP() throws Exception{
                if (controlPoint != null)
                        return;
-               if (getPipeRun() != null) {
-                       controlPoint = ControlPointFactory.create(this);
-                       // TODO : these should not be needed.
-                       controlPoint.setDeletable(false);
-                       controlPoint.setFixed(true);
-               }
+               controlPoint = ControlPointFactory.create(this);
+               // TODO : these should not be needed.
+               controlPoint.setDeletable(false);
+               controlPoint.setFixed(true);
+               syncNext();
+        syncPrevious();
        }
        
        @RelatedSetObj(Plant3D.URIs.HasPipeRun)
        @Override
        public void setPipeRun(PipeRun pipeRun) {
+               if (this.getPipeRun() == pipeRun)
+                       return;
+               
                super.setPipeRun(pipeRun);
                try {
                        _createCP();
@@ -134,7 +137,7 @@ public class Nozzle extends PipelineComponent {
                
                PipeRun pipeRun = getPipeRun();
                if (pipeRun != null) {
-                       map.put("length", pipeRun.getPipeDiameter() * 2.0);
+                       //map.put("length", pipeRun.getPipeDiameter() * 2.0);
                        map.put("radius", pipeRun.getPipeDiameter() * 0.5);
                }
                return map;