X-Git-Url: https://gerrit.simantics.org/r/gitweb?p=simantics%2Fplatform.git;a=blobdiff_plain;f=bundles%2Forg.simantics.scenegraph%2Fsrc%2Forg%2Fsimantics%2Fscenegraph%2Fg2d%2FG2DParentNode.java;h=af8c5630dc84c88c46c350b07c540ee9926e9ae6;hp=838eb893e52b392b78a8796adf4e6e10e17fd7cc;hb=452670c58399d8054872655841ebb6e66d9c6b6e;hpb=de8cf4f7d7035bdc8d07ef0b03253ef44485d29c;ds=sidebyside diff --git a/bundles/org.simantics.scenegraph/src/org/simantics/scenegraph/g2d/G2DParentNode.java b/bundles/org.simantics.scenegraph/src/org/simantics/scenegraph/g2d/G2DParentNode.java index 838eb893e..af8c5630d 100644 --- a/bundles/org.simantics.scenegraph/src/org/simantics/scenegraph/g2d/G2DParentNode.java +++ b/bundles/org.simantics.scenegraph/src/org/simantics/scenegraph/g2d/G2DParentNode.java @@ -122,6 +122,15 @@ public class G2DParentNode extends ParentNode implements IG2DNode, Ini g2d.setTransform(ot); } + @Override + public void refresh() { + for (IG2DNode node : getSortedNodes()) { + if (node.validate()) { + node.refresh(); + } + } + } + @Override public void accept(IG2DNodeVisitor visitor) { visitor.enter(this); @@ -344,10 +353,12 @@ public class G2DParentNode extends ParentNode implements IG2DNode, Ini if(b == null && !ignoreNulls) return null; if(b != null) { - if(bounds == null) { - bounds = b.getFrame(); - } else { - bounds.add(b); + if(!GeometryUtils.isUndefinedRectangle(b)) { + if(bounds == null) { + bounds = b.getFrame(); + } else { + bounds.add(b); + } } } } @@ -602,4 +613,5 @@ public class G2DParentNode extends ParentNode implements IG2DNode, Ini public void synchronizeTransform(double[] data) { this.setTransform(new AffineTransform(data)); } + }