question: public Element render ( SVGPlot svgp ) { Element tag = svgp . svgElement ( SVGConstants . SVG_G_TAG ) ; Element button = svgp . svgRect ( x , y , w , h ) ; if ( ! Double . isNaN ( r ) ) { SVGUtil . setAtt ( button , SVGConstants . SVG_RX_ATTRIBUTE , r ) ; SVGUtil . setAtt ( button , SVGConstants . SVG_RY_ATTRIBUTE , r ) ; } SVGUtil . setAtt ( button , SVGConstants . SVG_STYLE_ATTRIBUTE , butcss . inlineCSS ( ) ) ; tag . appendChild ( button ) ; if ( svgp . getIdElement ( SVGEffects . LIGHT_GRADIENT_ID ) != null ) { Element light = svgp . svgRect ( x , y , w , h ) ; if ( ! Double . isNaN ( r ) ) { SVGUtil . setAtt ( light , SVGConstants . SVG_RX_ATTRIBUTE , r ) ; SVGUtil . setAtt ( light , SVGConstants . SVG_RY_ATTRIBUTE , r ) ; } SVGUtil . setAtt ( light , SVGConstants . SVG_STYLE_ATTRIBUTE , "fill:url(#" + SVGEffects . LIGHT_GRADIENT_ID + ");fill-opacity:.5" ) ; tag . appendChild ( light ) ; } if ( svgp . getIdElement ( SVGEffects . SHADOW_ID ) != null ) { button . setAttribute ( SVGConstants . SVG_FILTER_ATTRIBUTE , "url(#" + SVGEffects . SHADOW_ID + ")" ) ; } if ( title != null ) { Element label = svgp . svgText ( x + w * .5 , y + h * .7 , title ) ; label . setAttribute ( SVGConstants . SVG_STYLE_ATTRIBUTE , titlecss . inlineCSS ( ) ) ; tag . appendChild ( label ) ; } return tag ; }
target:  Produce the actual SVG elements for the button.