hillion     02/02/18 03:03:20

  Modified:    sources/org/apache/batik/gvt/renderer
                        ImageRendererFactory.java
               sources/org/apache/batik/swing/gvt JGVTComponent.java
               sources/org/apache/batik/swing/svg JSVGComponent.java
               sources/org/apache/batik/transcoder/image
                        ImageTranscoder.java
  Added:       sources/org/apache/batik/gvt/renderer
                        ConcreteImageRendererFactory.java
  Removed:     sources/org/apache/batik/gvt/renderer
                        DynamicRendererFactory.java
                        StaticRendererFactory.java
  Log:
  - Revisited the renderer factory API.
  
  Revision  Changes    Path
  1.3       +8 -3      
xml-batik/sources/org/apache/batik/gvt/renderer/ImageRendererFactory.java
  
  Index: ImageRendererFactory.java
  ===================================================================
  RCS file: 
/home/cvs/xml-batik/sources/org/apache/batik/gvt/renderer/ImageRendererFactory.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- ImageRendererFactory.java 18 Sep 2001 21:19:01 -0000      1.2
  +++ ImageRendererFactory.java 18 Feb 2002 11:03:20 -0000      1.3
  @@ -12,11 +12,16 @@
    * Interface for a factory of ImageRenderers
    *
    * @author <a href="mailto:[EMAIL PROTECTED]";>Vincent Hardy</a>
  - * @version $Id: ImageRendererFactory.java,v 1.2 2001/09/18 21:19:01 deweese Exp $
  + * @version $Id: ImageRendererFactory.java,v 1.3 2002/02/18 11:03:20 hillion Exp $
    */
   public interface ImageRendererFactory extends RendererFactory{
       /**
  -     * Creates a new renderer.
  +     * Creates a new static renderer.
        */
  -    ImageRenderer createImageRenderer();
  +    ImageRenderer createStaticImageRenderer();
  +
  +    /**
  +     * Creates a new dynamic renderer.
  +     */
  +    ImageRenderer createDynamicImageRenderer();
   }
  
  
  
  1.1                  
xml-batik/sources/org/apache/batik/gvt/renderer/ConcreteImageRendererFactory.java
  
  Index: ConcreteImageRendererFactory.java
  ===================================================================
  /*****************************************************************************
   * Copyright (C) The Apache Software Foundation. All rights reserved.        *
   * ------------------------------------------------------------------------- *
   * This software is published under the terms of the Apache Software License *
   * version 1.1, a copy of which has been included with this distribution in  *
   * the LICENSE file.                                                         *
   *****************************************************************************/
  
  package org.apache.batik.gvt.renderer;
  
  import java.awt.RenderingHints;
  import java.awt.geom.AffineTransform;
  import java.awt.font.FontRenderContext;
  
  import org.apache.batik.gvt.TextPainter;
  import org.apache.batik.gvt.filter.GraphicsNodeRableFactory;
  
  import org.apache.batik.gvt.renderer.Renderer;
  import org.apache.batik.gvt.renderer.RendererFactory;
  
  import org.apache.batik.gvt.filter.ConcreteGraphicsNodeRableFactory;
  
  /**
   * This class provides a factory for renderers.
   *
   * @author <a href="mailto:[EMAIL PROTECTED]";>Stephane Hillion</a>
   * @version $Id: ConcreteImageRendererFactory.java,v 1.1 2002/02/18 11:03:20 hillion 
Exp $
   */
  public class ConcreteImageRendererFactory implements ImageRendererFactory {
  
      /**
       * Creates a new renderer.
       */
      public Renderer createRenderer() {
          return createStaticImageRenderer();
      }
  
      /**
       * Creates a new static image renderer
       */
      public ImageRenderer createStaticImageRenderer(){
          return new StaticRenderer();
      }
  
      /**
       * Creates a new dynamic image renderer
       */
      public ImageRenderer createDynamicImageRenderer(){
          return new DynamicRenderer();
      }
  }
  
  
  
  1.26      +11 -4     xml-batik/sources/org/apache/batik/swing/gvt/JGVTComponent.java
  
  Index: JGVTComponent.java
  ===================================================================
  RCS file: /home/cvs/xml-batik/sources/org/apache/batik/swing/gvt/JGVTComponent.java,v
  retrieving revision 1.25
  retrieving revision 1.26
  diff -u -r1.25 -r1.26
  --- JGVTComponent.java        18 Feb 2002 09:11:58 -0000      1.25
  +++ JGVTComponent.java        18 Feb 2002 11:03:20 -0000      1.26
  @@ -44,7 +44,7 @@
   import org.apache.batik.gvt.GraphicsNode;
   import org.apache.batik.gvt.event.AWTEventDispatcher;
   
  -import org.apache.batik.gvt.renderer.DynamicRendererFactory;
  +import org.apache.batik.gvt.renderer.ConcreteImageRendererFactory;
   import org.apache.batik.gvt.renderer.ImageRenderer;
   import org.apache.batik.gvt.renderer.ImageRendererFactory;
   
  @@ -54,7 +54,7 @@
    * This class represents a component which can display a GVT tree.
    *
    * @author <a href="mailto:[EMAIL PROTECTED]";>Stephane Hillion</a>
  - * @version $Id: JGVTComponent.java,v 1.25 2002/02/18 09:11:58 hillion Exp $
  + * @version $Id: JGVTComponent.java,v 1.26 2002/02/18 11:03:20 hillion Exp $
    */
   public class JGVTComponent extends JComponent {
   
  @@ -77,7 +77,7 @@
        * The renderer factory.
        */
       protected ImageRendererFactory rendererFactory =
  -        new DynamicRendererFactory();
  +        new ConcreteImageRendererFactory();
   
       /**
        * The current renderer.
  @@ -552,6 +552,13 @@
       }
   
       /**
  +     * Creates a new renderer.
  +     */
  +    protected ImageRenderer createImageRenderer() {
  +        return rendererFactory.createStaticImageRenderer();
  +    }
  +
  +    /**
        * Renders the GVT tree.
        */
       protected void renderGVTTree() {
  @@ -562,7 +569,7 @@
   
           // Renderer setup.
           if (renderer == null || renderer.getTree() != gvtRoot) {
  -            renderer = rendererFactory.createImageRenderer();
  +            renderer = createImageRenderer();
               renderer.setTree(gvtRoot);
           }
   
  
  
  
  1.39      +16 -3     xml-batik/sources/org/apache/batik/swing/svg/JSVGComponent.java
  
  Index: JSVGComponent.java
  ===================================================================
  RCS file: /home/cvs/xml-batik/sources/org/apache/batik/swing/svg/JSVGComponent.java,v
  retrieving revision 1.38
  retrieving revision 1.39
  diff -u -r1.38 -r1.39
  --- JSVGComponent.java        18 Feb 2002 09:11:59 -0000      1.38
  +++ JSVGComponent.java        18 Feb 2002 11:03:20 -0000      1.39
  @@ -56,6 +56,8 @@
   
   import org.apache.batik.gvt.event.EventDispatcher;
   
  +import org.apache.batik.gvt.renderer.ImageRenderer;
  +
   import org.apache.batik.swing.gvt.GVTTreeRendererEvent;
   import org.apache.batik.swing.gvt.JGVTComponent;
   
  @@ -178,7 +180,7 @@
    * building/rendering a document (invalid XML file, missing attributes...).</p>
    *
    * @author <a href="mailto:[EMAIL PROTECTED]";>Stephane Hillion</a>
  - * @version $Id: JSVGComponent.java,v 1.38 2002/02/18 09:11:59 hillion Exp $
  + * @version $Id: JSVGComponent.java,v 1.39 2002/02/18 11:03:20 hillion Exp $
    */
   public class JSVGComponent extends JGVTComponent {
   
  @@ -420,7 +422,7 @@
           updateManagerStopped = false;
   
           isDynamicDocument = UpdateManager.isDynamicDocument(doc);
  -
  +        
           svgDocument = doc;
   
           Element root = doc.getDocumentElement();
  @@ -501,7 +503,7 @@
       /**
        * Starts a SVGLoadEventDispatcher thread.
        */
  -    private void startSVGLoadEventDispatcher(GraphicsNode root) {
  +    protected void startSVGLoadEventDispatcher(GraphicsNode root) {
           updateManager = new UpdateManager(bridgeContext,
                                             root,
                                             svgDocument);
  @@ -522,6 +524,17 @@
           }
   
           d.start();
  +    }
  +
  +    /**
  +     * Creates a new renderer.
  +     */
  +    protected ImageRenderer createImageRenderer() {
  +        if (isDynamicDocument) {
  +            return rendererFactory.createDynamicImageRenderer();
  +        } else {
  +            return rendererFactory.createStaticImageRenderer();
  +        }
       }
   
       /**
  
  
  
  1.34      +4 -6      
xml-batik/sources/org/apache/batik/transcoder/image/ImageTranscoder.java
  
  Index: ImageTranscoder.java
  ===================================================================
  RCS file: 
/home/cvs/xml-batik/sources/org/apache/batik/transcoder/image/ImageTranscoder.java,v
  retrieving revision 1.33
  retrieving revision 1.34
  diff -u -r1.33 -r1.34
  --- ImageTranscoder.java      30 Oct 2001 14:15:33 -0000      1.33
  +++ ImageTranscoder.java      18 Feb 2002 11:03:20 -0000      1.34
  @@ -48,6 +48,7 @@
   import org.apache.batik.gvt.event.EventDispatcher;
   import org.apache.batik.gvt.renderer.ImageRenderer;
   import org.apache.batik.gvt.renderer.ImageRendererFactory;
  +import org.apache.batik.gvt.renderer.ConcreteImageRendererFactory;
   
   import org.apache.batik.transcoder.TranscoderException;
   import org.apache.batik.transcoder.TranscoderOutput;
  @@ -74,9 +75,6 @@
   import org.w3c.dom.svg.SVGDocument;
   import org.w3c.dom.svg.SVGSVGElement;
   
  -// <!> FIXME : Those import clauses will change with new design
  -import org.apache.batik.gvt.renderer.StaticRendererFactory;
  -
   /**
    * This class enables to transcode an input to an image of any format.
    *
  @@ -102,7 +100,7 @@
    * millimeter conversion factor.
    *
    * @author <a href="mailto:[EMAIL PROTECTED]";>Thierry Kormann</a>
  - * @version $Id: ImageTranscoder.java,v 1.33 2001/10/30 14:15:33 tkormann Exp $
  + * @version $Id: ImageTranscoder.java,v 1.34 2002/02/18 11:03:20 hillion Exp $
    */
   public abstract class ImageTranscoder extends XMLAbstractTranscoder {
   
  @@ -156,7 +154,7 @@
   
           // build the GVT tree
           GVTBuilder builder = new GVTBuilder();
  -        ImageRendererFactory rendFactory = new StaticRendererFactory();
  +        ImageRendererFactory rendFactory = new ConcreteImageRendererFactory();
           BridgeContext ctx = new BridgeContext(userAgent);
           GraphicsNode gvtRoot;
           try {
  @@ -238,7 +236,7 @@
   
           // paint the SVG document using the bridge package
           // create the appropriate renderer
  -        ImageRenderer renderer = rendFactory.createImageRenderer();
  +        ImageRenderer renderer = rendFactory.createStaticImageRenderer();
           renderer.updateOffScreen(w, h);
           renderer.setTransform(Px);
           renderer.setTree(gvtRoot);
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to