]> gerrit.simantics Code Review - simantics/3d.git/blobdiff - org.simantics.g3d/src/org/simantics/g3d/scenegraph/structural/G3DStructuralParentNode.java
Remove listener calls when property values not updated.
[simantics/3d.git] / org.simantics.g3d / src / org / simantics / g3d / scenegraph / structural / G3DStructuralParentNode.java
index 073ef79d49b2b6c89f9f6ad3182a6f7959915753..569f0211fdbb5f597d8476ce465b864b8595f9f1 100644 (file)
@@ -12,6 +12,7 @@
 package org.simantics.g3d.scenegraph.structural;\r
 \r
 import java.util.Collection;\r
+import java.util.Objects;\r
 \r
 import javax.vecmath.Quat4d;\r
 import javax.vecmath.Vector3d;\r
@@ -95,6 +96,9 @@ public abstract class G3DStructuralParentNode<T extends IStructuralNode> extends
        @Override\r
        @SetPropertyValue(G3D.URIs.hasPosition)\r
        public void setPosition(Vector3d position) {\r
+               if (Objects.equals(this.position, position))\r
+                       return;\r
+               \r
                this.position = position;\r
                firePropertyChanged(G3D.URIs.hasPosition);\r
        }\r
@@ -102,6 +106,9 @@ public abstract class G3DStructuralParentNode<T extends IStructuralNode> extends
        @Override\r
        @SetPropertyValue(G3D.URIs.hasOrientation)\r
        public void setOrientation(Quat4d orientation) {\r
+               if (Objects.equals(this.orientation, orientation))\r
+                       return;\r
+               \r
                this.orientation = orientation;\r
                firePropertyChanged(G3D.URIs.hasOrientation);\r
        }\r