]> gerrit.simantics Code Review - simantics/3d.git/blobdiff - org.simantics.plant3d/src/org/simantics/plant3d/actions/RoutePipeAction.java
Get inline component direction irrespectively of connectivity
[simantics/3d.git] / org.simantics.plant3d / src / org / simantics / plant3d / actions / RoutePipeAction.java
index 389f3be5de60484f4370dbf3aafe3a14cc9fa746..6a1a8292d1028f0d834ca83450659d4f573df014 100644 (file)
@@ -176,6 +176,7 @@ public class RoutePipeAction extends vtkSwtAction {
 
     public void deattach() {
         deactivate();
+        setDBUndo(true);
         if (toolComposite != null) {
             toolComposite.clear();
             axisCombo = null;
@@ -195,6 +196,7 @@ public class RoutePipeAction extends vtkSwtAction {
                if (toolComposite != null) {
                   createTools(toolComposite); 
            }
+               setDBUndo(false);
                super.attach();
                ThreadUtils.asyncExec(panel.getThreadQueue(), new Runnable() {
                        public void run() {
@@ -388,7 +390,8 @@ public class RoutePipeAction extends vtkSwtAction {
                        lockForced = true;
                } else if (startComponent instanceof PipelineComponent){
                        if (startComponent instanceof InlineComponent) {
-                               direction = startComponent.getControlPoint().getPathLegDirection(reversed ? Direction.PREVIOUS : Direction.NEXT);
+                               direction = startComponent.getControlPoint().getInlineDir();
+                               if (reversed) direction.negate();
                                lock = LockType.CUSTOM;
                                lockForced = true;
                                if (((InlineComponent) startComponent).isVariableLength()) {