aboutsummaryrefslogtreecommitdiffstats
path: root/src/java/org/apache/fop/layoutmgr/AbstractLayoutManager.java
diff options
context:
space:
mode:
authorSimon Pepping <spepping@apache.org>2004-09-05 18:16:32 +0000
committerSimon Pepping <spepping@apache.org>2004-09-05 18:16:32 +0000
commitd93dfd6e1ef331a1539cdae9f2a37f274aba89c4 (patch)
treecbf5b895de93a9587ea3d2edbe02251a5ec6d4cd /src/java/org/apache/fop/layoutmgr/AbstractLayoutManager.java
parent851188ac5728c24d819720440990f499d4e27106 (diff)
downloadxmlgraphics-fop-d93dfd6e1ef331a1539cdae9f2a37f274aba89c4.tar.gz
xmlgraphics-fop-d93dfd6e1ef331a1539cdae9f2a37f274aba89c4.zip
New line breaking algorithm, patch 29124, submitted by Luca
Furini. This patch implements the algorithm for most but not yet all inline layout managers. For the algorithm, see D.E. Knuth and M.F. Plass, "Breaking paragraphs into lines", Software, Practice and Experience 11 (1981) 1119-1184; reprinted in: D. E. Knuth, "Digital typography", CSLI Lecture Notes Number 78 (CLSI Publications, Stanford, CA, USA) pp. 67-155. git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@197907 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'src/java/org/apache/fop/layoutmgr/AbstractLayoutManager.java')
-rw-r--r--src/java/org/apache/fop/layoutmgr/AbstractLayoutManager.java39
1 files changed, 39 insertions, 0 deletions
diff --git a/src/java/org/apache/fop/layoutmgr/AbstractLayoutManager.java b/src/java/org/apache/fop/layoutmgr/AbstractLayoutManager.java
index 7ce205e6c..6a4c043e7 100644
--- a/src/java/org/apache/fop/layoutmgr/AbstractLayoutManager.java
+++ b/src/java/org/apache/fop/layoutmgr/AbstractLayoutManager.java
@@ -33,6 +33,7 @@ import org.apache.commons.logging.LogFactory;
import java.util.List;
import java.util.ArrayList;
+import java.util.LinkedList;
import java.util.ListIterator;
import java.util.Map;
@@ -284,6 +285,44 @@ public abstract class AbstractLayoutManager implements LayoutManager, Constants
* PROVIDE NULL IMPLEMENTATIONS OF METHODS from LayoutManager
* interface which are declared abstract in AbstractLayoutManager.
* ---------------------------------------------------------*/
+
+ public LinkedList getNextKnuthElements(LayoutContext context,
+ int alignment) {
+ log.debug("null implementation of getNextKnuthElements() called!");
+ setFinished(true);
+ return null;
+ }
+
+ public KnuthElement addALetterSpaceTo(KnuthElement element) {
+ log.debug("null implementation of addALetterSpaceTo() called!");
+ return element;
+ }
+
+ public void getWordChars(StringBuffer sbChars, Position pos) {
+ log.debug("null implementation of getWordChars() called!");
+ }
+
+ public void hyphenate(Position pos, HyphContext hc) {
+ log.debug("null implementation of hyphenate called!");
+ }
+
+ public boolean applyChanges(List oldList) {
+ log.debug("null implementation of applyChanges() called!");
+ return false;
+ }
+
+ public LinkedList getChangedKnuthElements(List oldList,
+ int flaggedPenalty,
+ int alignment) {
+ log.debug("null implementation of getChangeKnuthElement() called!");
+ return null;
+ }
+
+ public int getWordSpaceIPD() {
+ log.debug("null implementation of getWordSpaceIPD() called!");
+ return 0;
+ }
+
public Area getParentArea(Area childArea) {
return null;
}