You are viewing a plain text version of this content. The canonical link for it is here.
Posted to fop-commits@xmlgraphics.apache.org by je...@apache.org on 2005/06/22 16:56:23 UTC
cvs commit: xml-fop/src/java/org/apache/fop/layoutmgr KnuthPenalty.java
jeremias 2005/06/22 07:56:23
Modified: src/java/org/apache/fop/layoutmgr KnuthPenalty.java
Log:
Support late setting of break class.
Slightly improved toString().
Javadocs.
Revision Changes Path
1.7 +43 -5 xml-fop/src/java/org/apache/fop/layoutmgr/KnuthPenalty.java
Index: KnuthPenalty.java
===================================================================
RCS file: /home/cvs/xml-fop/src/java/org/apache/fop/layoutmgr/KnuthPenalty.java,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- KnuthPenalty.java 24 May 2005 09:36:52 -0000 1.6
+++ KnuthPenalty.java 22 Jun 2005 14:56:23 -0000 1.7
@@ -18,6 +18,8 @@
package org.apache.fop.layoutmgr;
+import org.apache.fop.fo.Constants;
+
/**
* An instance of this class represents information about a feasible
* breaking point; it does not represent any piece of content.
@@ -38,6 +40,7 @@
*/
public class KnuthPenalty extends KnuthElement {
+ /** Used for flagged penalties. See Knuth algorithm. */
public static final int FLAGGED_PENALTY = 50;
private int penalty;
@@ -59,6 +62,16 @@
bFlagged = f;
}
+ /**
+ * Create a new KnuthPenalty.
+ *
+ * @param w the width of this penalty
+ * @param p the penalty value of this penalty
+ * @param f is this penalty flagged?
+ * @param iBreakClass the break class of this penalty (one of the break-* constants)
+ * @param pos the Position stored in this penalty
+ * @param bAux is this penalty auxiliary?
+ */
public KnuthPenalty(int w, int p, boolean f,
int iBreakClass, Position pos, boolean bAux) {
super(w, pos, bAux);
@@ -67,6 +80,7 @@
breakClass = iBreakClass;
}
+ /** @see org.apache.fop.layoutmgr.KnuthElement#isPenalty() */
public boolean isPenalty() {
return true;
}
@@ -86,21 +100,29 @@
this.penalty = p;
}
- /**
- * Return true is this penalty is a flagged one.
- */
+ /** @return true is this penalty is a flagged one. */
public boolean isFlagged() {
return bFlagged;
}
+ /** @see org.apache.fop.layoutmgr.KnuthElement#isForcedBreak() */
public boolean isForcedBreak() {
return penalty == -KnuthElement.INFINITE;
}
+ /** @return the break class of this penalty (one of the break-* constants) */
public int getBreakClass() {
return breakClass;
}
+ /**
+ * Sets the break class for this penalty.
+ * @param cl the break class (one of the break-* constants)
+ */
+ public void setBreakClass(int cl) {
+ this.breakClass = cl;
+ }
+
/** @see java.lang.Object#toString() */
public String toString() {
StringBuffer sb = new StringBuffer(64);
@@ -123,7 +145,23 @@
sb.append(" w=");
sb.append(getW());
if (isForcedBreak()) {
- sb.append(" (forced break)");
+ sb.append(" (forced break");
+ switch (getBreakClass()) {
+ case Constants.EN_PAGE:
+ sb.append(", page");
+ break;
+ case Constants.EN_COLUMN:
+ sb.append(", column");
+ break;
+ case Constants.EN_EVEN_PAGE:
+ sb.append(", even page");
+ break;
+ case Constants.EN_ODD_PAGE:
+ sb.append(", odd page");
+ break;
+ default:
+ }
+ sb.append(")");
}
return sb.toString();
}
---------------------------------------------------------------------
To unsubscribe, e-mail: fop-commits-unsubscribe@xmlgraphics.apache.org
For additional commands, e-mail: fop-commits-help@xmlgraphics.apache.org