aboutsummaryrefslogtreecommitdiffstats
path: root/src/java/org/apache/fop/layoutmgr/LayoutManager.java
diff options
context:
space:
mode:
authorFinn Bock <bckfnn@apache.org>2005-08-31 20:29:33 +0000
committerFinn Bock <bckfnn@apache.org>2005-08-31 20:29:33 +0000
commite194fdd5cfe3f1bc823d93c57420db87eb7efed0 (patch)
treee4e195d6e88bd85e02c48bffac90176543aba0cc /src/java/org/apache/fop/layoutmgr/LayoutManager.java
parent0c4637012c7a394bb3ae1b621ca89c7742b0612d (diff)
downloadxmlgraphics-fop-e194fdd5cfe3f1bc823d93c57420db87eb7efed0.tar.gz
xmlgraphics-fop-e194fdd5cfe3f1bc823d93c57420db87eb7efed0.zip
Bugzilla #36379:
Revised percentage resolution system. Submitted by: Manuel Mall <mm.at.arcus.com.au> Slightly modified to avoid early evaluation of getValue(). git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@265577 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'src/java/org/apache/fop/layoutmgr/LayoutManager.java')
-rw-r--r--src/java/org/apache/fop/layoutmgr/LayoutManager.java47
1 files changed, 45 insertions, 2 deletions
diff --git a/src/java/org/apache/fop/layoutmgr/LayoutManager.java b/src/java/org/apache/fop/layoutmgr/LayoutManager.java
index 3d6053248..33250110f 100644
--- a/src/java/org/apache/fop/layoutmgr/LayoutManager.java
+++ b/src/java/org/apache/fop/layoutmgr/LayoutManager.java
@@ -22,11 +22,13 @@ import java.util.LinkedList;
import java.util.List;
import org.apache.fop.area.Area;
+import org.apache.fop.datatypes.PercentBaseContext;
+import org.apache.fop.fo.FObj;
/**
* The interface for all LayoutManagers.
*/
-public interface LayoutManager {
+public interface LayoutManager extends PercentBaseContext {
/**
* Set the parent layout manager.
@@ -43,6 +45,12 @@ public interface LayoutManager {
LayoutManager getParent();
/**
+ * initialize the layout manager. Allows each layout manager
+ * to calculate often used values.
+ */
+ public void initialize();
+
+ /**
* Get the active PageSequenceLayoutManager instance for this
* layout process.
* @return the PageSequenceLayoutManager
@@ -143,11 +151,46 @@ public interface LayoutManager {
* of the node assigned to the LM, after changes have been applied
*
* @param oldList the elements to replace
- * @param flaggedPenalty the penalty value for hyphenated lines
* @param alignment the desired text alignment
* @return the updated list of KnuthElements
*/
LinkedList getChangedKnuthElements(List oldList, /*int flaggedPenalty,*/
int alignment);
+
+ /**
+ * Returns the IPD of the content area
+ * @return the IPD of the content area
+ */
+ int getContentAreaIPD();
+ /**
+ * Returns the BPD of the content area
+ * @return the BPD of the content area
+ */
+ int getContentAreaBPD();
+
+ /**
+ * Returns an indication if the layout manager generates a reference area.
+ * @return True if the layout manager generates a reference area
+ */
+ boolean getGeneratesReferenceArea();
+
+ /**
+ * Returns an indication if the layout manager generates a block area.
+ * @return True if the layout manager generates a block area
+ */
+ boolean getGeneratesBlockArea();
+
+ /**
+ * Returns an indication if the layout manager generates a line area.
+ * @return True if the layout manager generates a line area
+ */
+ boolean getGeneratesLineArea();
+
+ /**
+ * Returns the fo this layout manager is associated with.
+ * @return The fo for this layout manager or null.
+ */
+ FObj getFObj();
+
}