tkormann 02/05/14 09:40:02 Modified: sources/org/apache/batik/bridge AbstractGraphicsNodeBridge.java SVGCircleElementBridge.java SVGEllipseElementBridge.java SVGLineElementBridge.java SVGPathElementBridge.java SVGPolygonElementBridge.java SVGPolylineElementBridge.java SVGRectElementBridge.java SVGShapeElementBridge.java Log: filter, mask, clip, gradient, pattern... are now updated when the geometry of the referencing graphical elements are dynamically modified. Revision Changes Path 1.25 +11 -1 xml-batik/sources/org/apache/batik/bridge/AbstractGraphicsNodeBridge.java Index: AbstractGraphicsNodeBridge.java =================================================================== RCS file: /home/cvs/xml-batik/sources/org/apache/batik/bridge/AbstractGraphicsNodeBridge.java,v retrieving revision 1.24 retrieving revision 1.25 diff -u -r1.24 -r1.25 --- AbstractGraphicsNodeBridge.java 25 Apr 2002 00:45:42 -0000 1.24 +++ AbstractGraphicsNodeBridge.java 14 May 2002 16:40:02 -0000 1.25 @@ -44,7 +44,7 @@ * </ul> * * @author <a href="mailto:[EMAIL PROTECTED]">Thierry Kormann</a> - * @version $Id: AbstractGraphicsNodeBridge.java,v 1.24 2002/04/25 00:45:42 deweese Exp $ + * @version $Id: AbstractGraphicsNodeBridge.java,v 1.25 2002/05/14 16:40:02 tkormann Exp $ */ public abstract class AbstractGraphicsNodeBridge extends AbstractSVGBridge implements SVGContext, @@ -163,7 +163,17 @@ (e, SVG_TRANSFORM_ATTRIBUTE, s); } node.setTransform(at); + handleGeometryChanged(); } + } + + /** + * Invoked when the geometry of an graphical element has changed. + */ + protected void handleGeometryChanged() { + node.setFilter(CSSUtilities.convertFilter(e, node, ctx)); + node.setMask(CSSUtilities.convertMask(e, node, ctx)); + node.setClip(CSSUtilities.convertClipPath(e, node, ctx)); } /** 1.10 +2 -1 xml-batik/sources/org/apache/batik/bridge/SVGCircleElementBridge.java Index: SVGCircleElementBridge.java =================================================================== RCS file: /home/cvs/xml-batik/sources/org/apache/batik/bridge/SVGCircleElementBridge.java,v retrieving revision 1.9 retrieving revision 1.10 diff -u -r1.9 -r1.10 --- SVGCircleElementBridge.java 7 May 2002 16:19:36 -0000 1.9 +++ SVGCircleElementBridge.java 14 May 2002 16:40:02 -0000 1.10 @@ -22,7 +22,7 @@ * Bridge class for the <circle> element. * * @author <a href="mailto:[EMAIL PROTECTED]">Thierry Kormann</a> - * @version $Id: SVGCircleElementBridge.java,v 1.9 2002/05/07 16:19:36 tkormann Exp $ + * @version $Id: SVGCircleElementBridge.java,v 1.10 2002/05/14 16:40:02 tkormann Exp $ */ public class SVGCircleElementBridge extends SVGShapeElementBridge { @@ -108,6 +108,7 @@ attrName.equals(SVG_R_ATTRIBUTE)) { buildShape(ctx, e, (ShapeNode)node); + handleGeometryChanged(); } else { super.handleDOMAttrModifiedEvent(evt); } 1.10 +2 -1 xml-batik/sources/org/apache/batik/bridge/SVGEllipseElementBridge.java Index: SVGEllipseElementBridge.java =================================================================== RCS file: /home/cvs/xml-batik/sources/org/apache/batik/bridge/SVGEllipseElementBridge.java,v retrieving revision 1.9 retrieving revision 1.10 diff -u -r1.9 -r1.10 --- SVGEllipseElementBridge.java 7 May 2002 16:19:36 -0000 1.9 +++ SVGEllipseElementBridge.java 14 May 2002 16:40:02 -0000 1.10 @@ -22,7 +22,7 @@ * Bridge class for the <ellipse> element. * * @author <a href="mailto:[EMAIL PROTECTED]">Thierry Kormann</a> - * @version $Id: SVGEllipseElementBridge.java,v 1.9 2002/05/07 16:19:36 tkormann Exp $ + * @version $Id: SVGEllipseElementBridge.java,v 1.10 2002/05/14 16:40:02 tkormann Exp $ */ public class SVGEllipseElementBridge extends SVGShapeElementBridge { @@ -123,6 +123,7 @@ attrName.equals(SVG_RY_ATTRIBUTE)) { buildShape(ctx, e, (ShapeNode)node); + handleGeometryChanged(); } else { super.handleDOMAttrModifiedEvent(evt); } 1.10 +2 -1 xml-batik/sources/org/apache/batik/bridge/SVGLineElementBridge.java Index: SVGLineElementBridge.java =================================================================== RCS file: /home/cvs/xml-batik/sources/org/apache/batik/bridge/SVGLineElementBridge.java,v retrieving revision 1.9 retrieving revision 1.10 diff -u -r1.9 -r1.10 --- SVGLineElementBridge.java 7 May 2002 16:19:36 -0000 1.9 +++ SVGLineElementBridge.java 14 May 2002 16:40:02 -0000 1.10 @@ -21,7 +21,7 @@ * Bridge class for the <line> element. * * @author <a href="mailto:[EMAIL PROTECTED]">Thierry Kormann</a> - * @version $Id: SVGLineElementBridge.java,v 1.9 2002/05/07 16:19:36 tkormann Exp $ + * @version $Id: SVGLineElementBridge.java,v 1.10 2002/05/14 16:40:02 tkormann Exp $ */ public class SVGLineElementBridge extends SVGDecoratedShapeElementBridge { @@ -106,6 +106,7 @@ attrName.equals(SVG_Y2_ATTRIBUTE)) { buildShape(ctx, e, (ShapeNode)node); + handleGeometryChanged(); } else { super.handleDOMAttrModifiedEvent(evt); } 1.13 +2 -1 xml-batik/sources/org/apache/batik/bridge/SVGPathElementBridge.java Index: SVGPathElementBridge.java =================================================================== RCS file: /home/cvs/xml-batik/sources/org/apache/batik/bridge/SVGPathElementBridge.java,v retrieving revision 1.12 retrieving revision 1.13 diff -u -r1.12 -r1.13 --- SVGPathElementBridge.java 7 May 2002 16:19:36 -0000 1.12 +++ SVGPathElementBridge.java 14 May 2002 16:40:02 -0000 1.13 @@ -24,7 +24,7 @@ * Bridge class for the <path> element. * * @author <a href="mailto:[EMAIL PROTECTED]">Thierry Kormann</a> - * @version $Id: SVGPathElementBridge.java,v 1.12 2002/05/07 16:19:36 tkormann Exp $ + * @version $Id: SVGPathElementBridge.java,v 1.13 2002/05/14 16:40:02 tkormann Exp $ */ public class SVGPathElementBridge extends SVGDecoratedShapeElementBridge { @@ -92,6 +92,7 @@ if (attrName.equals(SVG_D_ATTRIBUTE)) { buildShape(ctx, e, (ShapeNode)node); + handleGeometryChanged(); } else { super.handleDOMAttrModifiedEvent(evt); } 1.14 +2 -1 xml-batik/sources/org/apache/batik/bridge/SVGPolygonElementBridge.java Index: SVGPolygonElementBridge.java =================================================================== RCS file: /home/cvs/xml-batik/sources/org/apache/batik/bridge/SVGPolygonElementBridge.java,v retrieving revision 1.13 retrieving revision 1.14 diff -u -r1.13 -r1.14 --- SVGPolygonElementBridge.java 7 May 2002 16:19:36 -0000 1.13 +++ SVGPolygonElementBridge.java 14 May 2002 16:40:02 -0000 1.14 @@ -24,7 +24,7 @@ * Bridge class for the <polygon> element. * * @author <a href="mailto:[EMAIL PROTECTED]">Thierry Kormann</a> - * @version $Id: SVGPolygonElementBridge.java,v 1.13 2002/05/07 16:19:36 tkormann Exp $ + * @version $Id: SVGPolygonElementBridge.java,v 1.14 2002/05/14 16:40:02 tkormann Exp $ */ public class SVGPolygonElementBridge extends SVGDecoratedShapeElementBridge { @@ -90,6 +90,7 @@ String attrName = evt.getAttrName(); if (attrName.equals(SVG_POINTS_ATTRIBUTE)) { buildShape(ctx, e, (ShapeNode)node); + handleGeometryChanged(); } else { super.handleDOMAttrModifiedEvent(evt); } 1.13 +2 -1 xml-batik/sources/org/apache/batik/bridge/SVGPolylineElementBridge.java Index: SVGPolylineElementBridge.java =================================================================== RCS file: /home/cvs/xml-batik/sources/org/apache/batik/bridge/SVGPolylineElementBridge.java,v retrieving revision 1.12 retrieving revision 1.13 diff -u -r1.12 -r1.13 --- SVGPolylineElementBridge.java 7 May 2002 16:19:36 -0000 1.12 +++ SVGPolylineElementBridge.java 14 May 2002 16:40:02 -0000 1.13 @@ -24,7 +24,7 @@ * Bridge class for the <polyline> element. * * @author <a href="mailto:[EMAIL PROTECTED]">Thierry Kormann</a> - * @version $Id: SVGPolylineElementBridge.java,v 1.12 2002/05/07 16:19:36 tkormann Exp $ + * @version $Id: SVGPolylineElementBridge.java,v 1.13 2002/05/14 16:40:02 tkormann Exp $ */ public class SVGPolylineElementBridge extends SVGDecoratedShapeElementBridge { @@ -90,6 +90,7 @@ String attrName = evt.getAttrName(); if (attrName.equals(SVG_POINTS_ATTRIBUTE)) { buildShape(ctx, e, (ShapeNode)node); + handleGeometryChanged(); } else { super.handleDOMAttrModifiedEvent(evt); } 1.12 +2 -1 xml-batik/sources/org/apache/batik/bridge/SVGRectElementBridge.java Index: SVGRectElementBridge.java =================================================================== RCS file: /home/cvs/xml-batik/sources/org/apache/batik/bridge/SVGRectElementBridge.java,v retrieving revision 1.11 retrieving revision 1.12 diff -u -r1.11 -r1.12 --- SVGRectElementBridge.java 7 May 2002 16:19:36 -0000 1.11 +++ SVGRectElementBridge.java 14 May 2002 16:40:02 -0000 1.12 @@ -24,7 +24,7 @@ * Bridge class for the <rect> element. * * @author <a href="mailto:[EMAIL PROTECTED]">Thierry Kormann</a> - * @version $Id: SVGRectElementBridge.java,v 1.11 2002/05/07 16:19:36 tkormann Exp $ + * @version $Id: SVGRectElementBridge.java,v 1.12 2002/05/14 16:40:02 tkormann Exp $ */ public class SVGRectElementBridge extends SVGShapeElementBridge { @@ -169,6 +169,7 @@ attrName.equals(SVG_RY_ATTRIBUTE)) { buildShape(ctx, e, (ShapeNode)node); + handleGeometryChanged(); } else { super.handleDOMAttrModifiedEvent(evt); } 1.18 +12 -1 xml-batik/sources/org/apache/batik/bridge/SVGShapeElementBridge.java Index: SVGShapeElementBridge.java =================================================================== RCS file: /home/cvs/xml-batik/sources/org/apache/batik/bridge/SVGShapeElementBridge.java,v retrieving revision 1.17 retrieving revision 1.18 diff -u -r1.17 -r1.18 --- SVGShapeElementBridge.java 21 Mar 2002 11:04:56 -0000 1.17 +++ SVGShapeElementBridge.java 14 May 2002 16:40:02 -0000 1.18 @@ -30,7 +30,7 @@ * The base bridge class for shapes. Subclasses bridge <tt>ShapeNode</tt>. * * @author <a href="mailto:[EMAIL PROTECTED]">Thierry Kormann</a> - * @version $Id: SVGShapeElementBridge.java,v 1.17 2002/03/21 11:04:56 tkormann Exp $ + * @version $Id: SVGShapeElementBridge.java,v 1.18 2002/05/14 16:40:02 tkormann Exp $ */ public abstract class SVGShapeElementBridge extends AbstractGraphicsNodeBridge { @@ -134,6 +134,17 @@ } // BridgeUpdateHandler implementation ////////////////////////////////// + + /** + * Invoked when the geometry of an graphical element has changed. + */ + protected void handleGeometryChanged() { + super.handleGeometryChanged(); + ShapeNode shapeNode = (ShapeNode)node; + ShapePainter painter = + PaintServer.convertFillAndStroke(e, shapeNode, ctx); + shapeNode.setShapePainter(createShapePainter(ctx, e, shapeNode)); + } /** * This flag bit indicates if a new shape painter has already been created.
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]