]> gerrit.simantics Code Review - simantics/3d.git/blobdiff - org.simantics.plant3d/src/org/simantics/plant3d/scenegraph/PipelineComponent.java
Removing straight next to branch point did not properly remove branch
[simantics/3d.git] / org.simantics.plant3d / src / org / simantics / plant3d / scenegraph / PipelineComponent.java
index fd085db11bb530f4007fbd1fabda812166a9c24b..28e4ad71f12951eb9237ef2b2514ae3c12047413 100644 (file)
@@ -32,6 +32,8 @@ import org.simantics.plant3d.scenegraph.controlpoint.PipingRules;
  */
 @PropertyContributor
 public abstract class PipelineComponent extends GeometryNode {
+    
+    private static boolean DEBUG = false;
 
        
        private PipeRun pipeRun;
@@ -135,11 +137,12 @@ public abstract class PipelineComponent extends GeometryNode {
                        this.next._removeRef(this);
                this.next = comp;
                this.syncnext = false;
+               if (DEBUG) System.out.println(this + " next " + comp);
                syncNext();
                firePropertyChanged(Plant3D.URIs.HasNext);
                if (comp != null)
                        comp.sync();
-//             System.out.println(this + " next " + comp);
+               
        }
        
        
@@ -156,11 +159,12 @@ public abstract class PipelineComponent extends GeometryNode {
                        this.previous._removeRef(this);
                this.previous = comp;
                this.syncprev = false;
+               if (DEBUG) System.out.println(this + " prev " + comp);
                syncPrevious();
                firePropertyChanged(Plant3D.URIs.HasPrevious);
                if (comp != null)
                        comp.sync();
-//             System.out.println(this + " prev " + comp);
+               
        }
        private PipelineComponent branch0;
        
@@ -177,11 +181,11 @@ public abstract class PipelineComponent extends GeometryNode {
                        this.branch0._removeRef(this);
                this.branch0 = comp;
                this.syncbr0 = false;
+               if (DEBUG) System.out.println(this + " br0 " + comp);
                syncBranch0();
                firePropertyChanged(Plant3D.URIs.HasBranch0);
                if (comp != null)
                        comp.sync();
-//             System.out.println(this + " next " + comp);
        }
 
        @GetPropertyValue(name="Previous",tabId="Debug",value=Plant3D.URIs.HasPrevious)
@@ -384,8 +388,8 @@ public abstract class PipelineComponent extends GeometryNode {
                                }
                                
                        } else if (getControlPoint().getSubPoint().size() > 0) { // TODO : this may cause problems? (Removes branch point, before branch has been set?)
-                               getControlPoint().getSubPoint().get(0).remove();
-                               getControlPoint().children.clear();
+                               //getControlPoint().getSubPoint().get(0).remove();
+                               //getControlPoint().children.clear();
                                return true;
                        }
                } else {
@@ -418,6 +422,7 @@ public abstract class PipelineComponent extends GeometryNode {
        
        @Override
        public void remove() {
+           if (DEBUG) System.out.println(this + " remove");
                PipeControlPoint pcp = getControlPoint();
                // Second check is needed, when remove process is initiated from control point.
                if (pcp != null && pcp.getPipelineComponent() != null) {