]> source.dussan.org Git - xmlgraphics-fop.git/commitdiff
PR:
authorGlen Mazza <gmazza@apache.org>
Wed, 27 Oct 2004 23:36:33 +0000 (23:36 +0000)
committerGlen Mazza <gmazza@apache.org>
Wed, 27 Oct 2004 23:36:33 +0000 (23:36 +0000)
Obtained from:
Submitted by:
Reviewed by:
Rename of TreeExt interface to somewhat more intuitive OffDocumentItem.

git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@198104 13f79535-47bb-0310-9956-ffa450edef68

src/java/org/apache/fop/area/AreaTreeHandler.java
src/java/org/apache/fop/area/AreaTreeModel.java
src/java/org/apache/fop/area/OffDocumentItem.java [new file with mode: 0644]
src/java/org/apache/fop/area/RenderPagesModel.java
src/java/org/apache/fop/area/StorePagesModel.java
src/java/org/apache/fop/area/TreeExt.java [deleted file]
src/java/org/apache/fop/area/extensions/BookmarkData.java
src/java/org/apache/fop/render/AbstractRenderer.java
src/java/org/apache/fop/render/Renderer.java
src/java/org/apache/fop/render/pdf/PDFRenderer.java

index db297049d0ce9b53816cd42b09b5f041825994b2..ca5d2a2a0b76f8c59ef4f4c3342e20bd0fc88eac 100644 (file)
@@ -271,7 +271,7 @@ public class AreaTreeHandler extends FOEventHandler {
             Outline out = (Outline)(bookmarks.getOutlines()).get(count);
             data.addSubData(createBookmarkData(out));
         }
-        addTreeExtension(data);
+        addOffDocumentItem(data);
         data.setAreaTreeModel(model);
     }
 
@@ -295,12 +295,12 @@ public class AreaTreeHandler extends FOEventHandler {
     }
 
     /**
-     * Add a tree extension.
-     * This checks if the extension is resolvable and attempts
+     * Add a OffDocumentItem to the area tree model
+     * This checks if the OffDocumentItem is resolvable and attempts
      * to resolve or add the resolvable ids for later resolution.
-     * @param ext the tree extension to add.
+     * @param ext the OffDocumentItem to add.
      */
-    private void addTreeExtension(TreeExt ext) {
+    private void addOffDocumentItem(OffDocumentItem ext) {
         if (ext instanceof Resolvable) {
             Resolvable res = (Resolvable)ext;
             String[] ids = res.getIDs();
@@ -317,7 +317,7 @@ public class AreaTreeHandler extends FOEventHandler {
                 }
             }
         } else {
-            model.handleExtension(ext, TreeExt.IMMEDIATELY);
+            model.handleOffDocumentItem(ext, OffDocumentItem.IMMEDIATELY);
         }
     }
 }
index dd888235abb82fc7433cff08833e230ba8d72f47..28d9ff4c508a8a27b77c4442e542cdb8b7609119 100644 (file)
@@ -43,11 +43,11 @@ public abstract class AreaTreeModel {
     public abstract void addPage(PageViewport page);
 
     /**
-     * Handle an area tree extension 
+     * Handle an OffDocumentItem 
      * @param ext the extension to handle
      * @param when when the extension should be handled
      */
-    public abstract void handleExtension(TreeExt ext, int when);
+    public abstract void handleOffDocumentItem(OffDocumentItem ext, int when);
 
     /**
      * Signal the end of the document for any processing.
diff --git a/src/java/org/apache/fop/area/OffDocumentItem.java b/src/java/org/apache/fop/area/OffDocumentItem.java
new file mode 100644 (file)
index 0000000..78ebb65
--- /dev/null
@@ -0,0 +1,46 @@
+/*
+ * Copyright 1999-2004 The Apache Software Foundation.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/* $Id$ */
+package org.apache.fop.area;
+
+/**
+ * Interface for objects that are processed by the renderer outside
+ * of the actual document.
+ * This object can be handled by the renderer according to three
+ * possibilities, IMMEDIATELY, AFTER_PAGE, or END_OF_DOC.
+ */
+public interface OffDocumentItem {
+    /**
+     * Render this extension immediately when
+     * being handled by the area tree.
+     */
+    public static final int IMMEDIATELY = 0;
+
+    /**
+     * Render this extension after the next page is rendered
+     * or prepared when being handled by the area tree.
+     */
+    public static final int AFTER_PAGE = 1;
+
+    /**
+     * Render this extension at the end of the document once
+     * all pages have been fully rendered.
+     */
+    public static final int END_OF_DOC = 2;
+
+}
index 458baab1b7ff2d813097bf161c78296b0a3df2ba..16135408e2fe5393ee4731b19cf49b50187e0343 100644 (file)
@@ -126,7 +126,7 @@ public class RenderPagesModel extends StorePagesModel {
         boolean cont = checkPreparedPages(page);
 
         if (cont) {
-            renderExtensions(pendingExt);
+            processOffDocumentItems(pendingExt);
             pendingExt.clear();
         }
     }
@@ -175,26 +175,26 @@ public class RenderPagesModel extends StorePagesModel {
     }
 
     /**
-     * @see org.apache.fop.area.AreaTreeModel#handleExtension(TreeExt, int)
+     * @see org.apache.fop.area.AreaTreeModel#handleOffDocumentItem(OffDocumentItem, int)
      */
-    public void handleExtension(TreeExt ext, int when) {
+    public void handleOffDocumentItem(OffDocumentItem ext, int when) {
         switch(when) {
-            case TreeExt.IMMEDIATELY:
-                renderer.renderExtension(ext);
+            case OffDocumentItem.IMMEDIATELY:
+                renderer.processOffDocumentItem(ext);
                 break;
-            case TreeExt.AFTER_PAGE:
+            case OffDocumentItem.AFTER_PAGE:
                 pendingExt.add(ext);
                 break;
-            case TreeExt.END_OF_DOC:
+            case OffDocumentItem.END_OF_DOC:
                 endDocExt.add(ext);
                 break;
         }
     }
 
-    private void renderExtensions(List list) {
+    private void processOffDocumentItems(List list) {
         for (int count = 0; count < list.size(); count++) {
-            TreeExt ext = (TreeExt)list.get(count);
-            renderer.renderExtension(ext);
+            OffDocumentItem ext = (OffDocumentItem)list.get(count);
+            renderer.processOffDocumentItem(ext);
         }
     }
 
@@ -206,10 +206,10 @@ public class RenderPagesModel extends StorePagesModel {
         // render any pages that had unresolved ids
         checkPreparedPages(null);
 
-        renderExtensions(pendingExt);
+        processOffDocumentItems(pendingExt);
         pendingExt.clear();
 
-        renderExtensions(endDocExt);
+        processOffDocumentItems(endDocExt);
         
         try {
             renderer.stopRenderer();
index 8018569f3642ff3b4f9a4c0360ddbfb2d916b1cd..7cfe414343a4792ba71773ec2b06d418cf082cbf 100644 (file)
@@ -92,18 +92,18 @@ public class StorePagesModel extends AreaTreeModel {
     }
 
     /**
-     * @see org.apache.fop.area.AreaTreeModel#handleExtension(TreeExt, int)
+     * @see org.apache.fop.area.AreaTreeModel#handleOffDocumentItem(OffDocumentItem, int)
      */
-    public void handleExtension(TreeExt ext, int when) {
+    public void handleOffDocumentItem(OffDocumentItem ext, int when) {
         int seq, page;
         switch(when) {
-            case TreeExt.IMMEDIATELY:
+            case OffDocumentItem.IMMEDIATELY:
                 seq = pageSequence == null ? 0 : pageSequence.size();
                 page = currSequence == null ? 0 : currSequence.size();
                 break;
-            case TreeExt.AFTER_PAGE:
+            case OffDocumentItem.AFTER_PAGE:
                 break;
-            case TreeExt.END_OF_DOC:
+            case OffDocumentItem.END_OF_DOC:
                 break;
         }
         extensions.add(ext);
diff --git a/src/java/org/apache/fop/area/TreeExt.java b/src/java/org/apache/fop/area/TreeExt.java
deleted file mode 100644 (file)
index 4b621ea..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * Copyright 1999-2004 The Apache Software Foundation.
- * 
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- * 
- *      http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-/* $Id$ */
-package org.apache.fop.area;
-
-/**
- * Area tree extension interface.
- * This interface is used by area tree extensions that are handled
- * by the renderer.
- * When this extension is handled by the area tree it is rendered
- * according to the three possibilities, IMMEDIATELY, AFTER_PAGE
- * or END_OF_DOC.
- */
-public interface TreeExt {
-    /**
-     * Render this extension immediately when
-     * being handled by the area tree.
-     */
-    public static final int IMMEDIATELY = 0;
-
-    /**
-     * Render this extension after the next page is rendered
-     * or prepared when being handled by the area tree.
-     */
-    public static final int AFTER_PAGE = 1;
-
-    /**
-     * Render this extension at the end of the document once
-     * all pages have been fully rendered.
-     */
-    public static final int END_OF_DOC = 2;
-
-}
index e83d5e6d305b802f347369ee772d4aac7e0d3f42..3f6a2154e9f97abe7b4e664612d5760e1ead8290 100644 (file)
@@ -20,7 +20,7 @@ package org.apache.fop.area.extensions;
 
 import org.apache.fop.area.PageViewport;
 import org.apache.fop.area.Resolvable;
-import org.apache.fop.area.TreeExt;
+import org.apache.fop.area.OffDocumentItem;
 import org.apache.fop.area.AreaTreeModel;
 
 import java.util.ArrayList;
@@ -29,10 +29,8 @@ import java.util.HashMap;
 
 /**
  * This class holds the PDF bookmark extension data.
- * This implements Resolvable and TreeExt so that it can be
- * added to the area tree as a resolvable tree extension.
  */
-public class BookmarkData implements Resolvable, TreeExt {
+public class BookmarkData implements Resolvable, OffDocumentItem {
     private ArrayList subData = new ArrayList();
     private HashMap idRefs = new HashMap();
 
@@ -203,7 +201,7 @@ public class BookmarkData implements Resolvable, TreeExt {
         if (idRefs.size() == 0) {
             idRefs = null;
             if (areaTreeModel != null) {
-                areaTreeModel.handleExtension(this, TreeExt.AFTER_PAGE);
+                areaTreeModel.handleOffDocumentItem(this, OffDocumentItem.AFTER_PAGE);
             }
         }
     }
index a6f8f750962640882975ea0e988a557a665ae686..a6542a4a84e3261c06d8feedbf23cac1bab4b92a 100644 (file)
@@ -47,7 +47,7 @@ import org.apache.fop.area.PageViewport;
 import org.apache.fop.area.RegionViewport;
 import org.apache.fop.area.RegionReference;
 import org.apache.fop.area.Trait;
-import org.apache.fop.area.TreeExt;
+import org.apache.fop.area.OffDocumentItem;
 import org.apache.fop.area.inline.Container;
 import org.apache.fop.area.inline.ForeignObject;
 import org.apache.fop.area.inline.Image;
@@ -156,10 +156,9 @@ public abstract class AbstractRenderer
     }
 
     /**
-     * @param ext  (todo) Description of the Parameter
-     * @see        org.apache.fop.render.Renderer
+     * @see     org.apache.fop.render.Renderer
      */
-    public void renderExtension(TreeExt ext) { }
+    public void processOffDocumentItem(OffDocumentItem oDI) { }
 
     /**
      * Prepare a page for rendering. This is called if the renderer supports
index ff1cb0a6bce013073a4e9f4dde33285117e21757..e45ed6560b35f6ebaf9bb55a2d92097325ca1b79 100644 (file)
@@ -26,7 +26,7 @@ import java.io.IOException;
 import org.apache.fop.apps.FOPException;
 import org.apache.fop.area.PageViewport;
 import org.apache.fop.area.LineArea;
-import org.apache.fop.area.TreeExt;
+import org.apache.fop.area.OffDocumentItem;
 import org.apache.fop.area.inline.Container;
 import org.apache.fop.fonts.FontInfo;
 import org.apache.fop.apps.FOUserAgent;
@@ -109,11 +109,13 @@ public interface Renderer {
     boolean supportsOutOfOrder();
 
     /**
-     * Tells the renderer to render an extension element.
+     * Tells the renderer to process an item not explicitly placed on the 
+     * document (e.g., PDF bookmarks).  Note - not all renderers will process
+     * all off-document items.
      *
      * @param ext  The extension element to be rendered
      */
-    void renderExtension(TreeExt ext);
+    public void processOffDocumentItem(OffDocumentItem ext);
 
     /**
      * This is called if the renderer supports out of order rendering. The
index be016fedb5421e840e2b8ed35ed7c9f11f95f745..340617580b160f8b848d30a2e3cce63f467672fc 100644 (file)
@@ -46,7 +46,7 @@ import org.apache.fop.area.Page;
 import org.apache.fop.area.PageViewport;
 import org.apache.fop.area.RegionViewport;
 import org.apache.fop.area.Trait;
-import org.apache.fop.area.TreeExt;
+import org.apache.fop.area.OffDocumentItem;
 import org.apache.fop.area.extensions.BookmarkData;
 import org.apache.fop.area.inline.Character;
 import org.apache.fop.area.inline.TextArea;
@@ -279,9 +279,9 @@ public class PDFRenderer extends PrintRenderer {
     }
 
     /**
-     * @see org.apache.fop.render.Renderer#renderExtension(TreeExt)
+     * @see org.apache.fop.render.Renderer#processOffDocumentItem(OffDocumentItem)
      */
-    public void renderExtension(TreeExt ext) {
+    public void processOffDocumentItem(OffDocumentItem ext) {
         // render bookmark extension
         if (ext instanceof BookmarkData) {
             renderRootExtensions((BookmarkData)ext);