fop 0.95

org.apache.fop.layoutmgr
Class KnuthPenalty

java.lang.Object
  extended by org.apache.fop.layoutmgr.ListElement
      extended by org.apache.fop.layoutmgr.KnuthElement
          extended by org.apache.fop.layoutmgr.KnuthPenalty

public class KnuthPenalty
extends KnuthElement

An instance of this class represents information about a feasible breaking point; it does not represent any piece of content. A KnuthPenalty is a feasible breaking point unless its value is infinity; a KnuthPenalty whose value is -infinity represents a forced break. A KnuthPenalty is suppressed, and its width is ignored, if it is not a chosen breaking point; for example, a KnuthPenalty representing a hyphenation point has a width (the "-" width), which must be ignored if that point is not chosen as a breaking point. Besides the inherited methods and attributes, this class has two more attributes and the methods used to get them: the penalty value, which is a kind of "aesthetic cost" (the higher the value, the more unsightly the breaking point), and a boolean that marks KnuthPenalties which should not be chosen as breaking points for consecutive lines.


Field Summary
static int FLAGGED_PENALTY
          Used for flagged penalties.
 
Fields inherited from class org.apache.fop.layoutmgr.KnuthElement
INFINITE
 
Constructor Summary
KnuthPenalty(int w, int p, boolean f, int iBreakClass, Position pos, boolean bAux)
          Create a new KnuthPenalty.
KnuthPenalty(int w, int p, boolean f, Position pos, boolean bAux)
          Create a new KnuthPenalty.
 
Method Summary
 int getBreakClass()
           
 int getP()
           
 boolean isFlagged()
           
 boolean isForcedBreak()
          
 boolean isPenalty()
          
 void setBreakClass(int cl)
          Sets the break class for this penalty.
 void setP(int p)
          Sets a new penalty value.
 java.lang.String toString()
          
 
Methods inherited from class org.apache.fop.layoutmgr.KnuthElement
getW, getY, getZ, isAuxiliary, isUnresolvedElement
 
Methods inherited from class org.apache.fop.layoutmgr.ListElement
getLayoutManager, getPosition, isBox, isGlue, setPosition
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

FLAGGED_PENALTY

public static final int FLAGGED_PENALTY
Used for flagged penalties. See Knuth algorithm.

See Also:
Constant Field Values
Constructor Detail

KnuthPenalty

public KnuthPenalty(int w,
                    int p,
                    boolean f,
                    Position pos,
                    boolean bAux)
Create a new KnuthPenalty.

Parameters:
w - the width of this penalty
p - the penalty value of this penalty
f - is this penalty flagged?
pos - the Position stored in this penalty
bAux - is this penalty auxiliary?

KnuthPenalty

public KnuthPenalty(int w,
                    int p,
                    boolean f,
                    int iBreakClass,
                    Position pos,
                    boolean bAux)
Create a new KnuthPenalty.

Parameters:
w - the width of this penalty
p - the penalty value of this penalty
f - is this penalty flagged?
iBreakClass - the break class of this penalty (one of Constants.EN_AUTO, Constants.EN_COLUMN, Constants.EN_PAGE, Constants.EN_EVEN_PAGE, Constants.EN_ODD_PAGE)
pos - the Position stored in this penalty
bAux - is this penalty auxiliary?
Method Detail

isPenalty

public boolean isPenalty()

Overrides:
isPenalty in class ListElement
Returns:
true if this element is a KnuthPenalty.

getP

public int getP()
Overrides:
getP in class KnuthElement
Returns:
the penalty value of this penalty.

setP

public void setP(int p)
Sets a new penalty value.

Parameters:
p - the new penalty value

isFlagged

public boolean isFlagged()
Returns:
true is this penalty is a flagged one.

isForcedBreak

public boolean isForcedBreak()

Overrides:
isForcedBreak in class ListElement
Returns:
true if the element is a penalty and represents a forced break.

getBreakClass

public int getBreakClass()
Returns:
the break class of this penalty (EN_AUTO, EN_COLUMN, EN_PAGE, EN_EVEN_PAGE, EN_ODD_PAGE)

setBreakClass

public void setBreakClass(int cl)
Sets the break class for this penalty.

Parameters:
cl - the break class (EN_AUTO, EN_COLUMN, EN_PAGE, EN_EVEN_PAGE, EN_ODD_PAGE)

toString

public java.lang.String toString()

Overrides:
toString in class java.lang.Object

fop 0.95

Copyright 1999-2008 The Apache Software Foundation. All Rights Reserved.