From: Marko Luukkainen Date: Tue, 13 Aug 2019 15:49:37 +0000 (+0300) Subject: Add component did not work properly for nozzles. X-Git-Tag: v1.43.0~226^2 X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=commitdiff_plain;h=ed38e7de95ae9c274a25269afa7d5b4369b20f1c;hp=eca4b77e481a78da57ceb201453c61362e4bdba2;p=simantics%2F3d.git Add component did not work properly for nozzles. gitlab #25 Change-Id: Ib176f957a256a396d59d096d8d8246fe334d9756 --- diff --git a/org.simantics.plant3d/src/org/simantics/plant3d/actions/AddComponentAction.java b/org.simantics.plant3d/src/org/simantics/plant3d/actions/AddComponentAction.java index 18087b68..60f95215 100644 --- a/org.simantics.plant3d/src/org/simantics/plant3d/actions/AddComponentAction.java +++ b/org.simantics.plant3d/src/org/simantics/plant3d/actions/AddComponentAction.java @@ -17,6 +17,7 @@ import org.simantics.plant3d.Activator; import org.simantics.plant3d.dialog.ComponentSelectionDialog; import org.simantics.plant3d.gizmo.TerminalSelectionGizmo; import org.simantics.plant3d.scenegraph.InlineComponent; +import org.simantics.plant3d.scenegraph.Nozzle; import org.simantics.plant3d.scenegraph.P3DRootNode; import org.simantics.plant3d.scenegraph.PipeRun; import org.simantics.plant3d.scenegraph.PipelineComponent; @@ -58,14 +59,20 @@ public class AddComponentAction extends vtkSwtAction { this.component = component; allowed.clear(); - if (component.getNext() == null) { - allowed.add(PositionType.NEXT); - } - if (component.getPrevious() == null) { - allowed.add(PositionType.PREVIOUS); - } - if (component instanceof InlineComponent && !component.getControlPoint().isFixed()){ - allowed.add(PositionType.SPLIT); + if (component instanceof Nozzle) { + if (component.getNext() == null && component.getPrevious() == null) { + allowed.add(PositionType.NEXT); + } + } else { + if (component.getNext() == null) { + allowed.add(PositionType.NEXT); + } + if (component.getPrevious() == null) { + allowed.add(PositionType.PREVIOUS); + } + if (component instanceof InlineComponent && !component.getControlPoint().isFixed()){ + allowed.add(PositionType.SPLIT); + } } setEnabled(allowed.size() > 0); }