X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=org.simantics.district.network.ui%2Fsrc%2Forg%2Fsimantics%2Fdistrict%2Fnetwork%2Fui%2Fnodes%2FDistrictNetworkVertexNode.java;fp=org.simantics.district.network.ui%2Fsrc%2Forg%2Fsimantics%2Fdistrict%2Fnetwork%2Fui%2Fnodes%2FDistrictNetworkVertexNode.java;h=d063d48c4982d30ee08af9ce18e8b0868179b8ba;hb=beab0411489f5730942d98d47dc3faf3107c6c02;hp=0cd5ea884fd29058c2e12907eca01112a3e2dbe0;hpb=30591a1b91be88fa9061a00d179a3a8ee54fb7e4;p=simantics%2Fdistrict.git diff --git a/org.simantics.district.network.ui/src/org/simantics/district/network/ui/nodes/DistrictNetworkVertexNode.java b/org.simantics.district.network.ui/src/org/simantics/district/network/ui/nodes/DistrictNetworkVertexNode.java index 0cd5ea88..d063d48c 100644 --- a/org.simantics.district.network.ui/src/org/simantics/district/network/ui/nodes/DistrictNetworkVertexNode.java +++ b/org.simantics.district.network.ui/src/org/simantics/district/network/ui/nodes/DistrictNetworkVertexNode.java @@ -10,12 +10,15 @@ import java.awt.geom.Rectangle2D; import org.simantics.district.network.ModelledCRS; import org.simantics.district.network.ui.adapters.DistrictNetworkVertex; +import org.simantics.scenegraph.INode; import org.simantics.scenegraph.ISelectionPainterNode; import org.simantics.scenegraph.g2d.G2DNode; +import org.simantics.scenegraph.g2d.G2DParentNode; +import org.simantics.scenegraph.g2d.nodes.SVGNode; import org.simantics.scenegraph.utils.GeometryUtils; import org.simantics.scenegraph.utils.NodeUtil; -public class DistrictNetworkVertexNode extends G2DNode implements ISelectionPainterNode { +public class DistrictNetworkVertexNode extends G2DParentNode implements ISelectionPainterNode { //private static final Logger LOGGER = LoggerFactory.getLogger(DistrictNetworkVertexNode.class); @@ -98,12 +101,19 @@ public class DistrictNetworkVertexNode extends G2DNode implements ISelectionPain if (changeColor) g2d.setColor(newColor); g2d.fill(toDraw); - + // Reset settings if (changeColor) g2d.setColor(oldColor); if (oaaHint != null) - g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, aaHint); + g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, aaHint); + + // Render SVG symbol + for (INode nn : getNodes()) { + ((G2DNode)nn).setTransform(new AffineTransform(toDraw.getWidth(), 0.0, 0.0, toDraw.getHeight(), toDraw.getCenterX(), toDraw.getCenterY())); + ((G2DNode)nn).render(g2d); + } + if (ot != null) g2d.setTransform(ot); } @@ -187,6 +197,14 @@ public class DistrictNetworkVertexNode extends G2DNode implements ISelectionPain return color; } + @PropertySetter(value = "SVG") + public void setSVG(String value) { + for (INode nn : this.getNodes()) + if (nn instanceof SVGNode) + ((SVGNode)nn).setData(value); + } + + @PropertySetter(value = "size") public void setSize(Double size) { boolean changed = false;