org.apache.fop.layoutmgr

## Class BreakElement

- java.lang.Object
- - org.apache.fop.layoutmgr.ListElement
  - - org.apache.fop.layoutmgr.UnresolvedListElement
    - - org.apache.fop.layoutmgr.BreakElement

    public class BreakElement
    extends UnresolvedListElement

This class represents an unresolved break possibility.

### Constructor Summary

Constructors
Constructor and Description
`BreakElement(Position position, int penaltyWidth, int penaltyValue, int breakClass, LayoutContext context)` Constructor for hard breaks.
`BreakElement(Position position, int penaltyValue, int breakClass, LayoutContext context)` Create a new BreakElement for the given `position`, `penaltyValue` and `breakClass`.
`BreakElement(Position position, int penaltyValue, LayoutContext context)` Main constructor

### Method Summary

All Methods Instance Methods Concrete Methods
`void` `clearPendingMarks()` Clears all pending marks associated with this break element.
`int` `getBreakClass()` Returns the break class of this penalty.
`int` `getPenaltyValue()`
`int` `getPenaltyWidth()`
`List<ListElement>` `getPendingAfterMarks()`
`List<ListElement>` `getPendingBeforeMarks()`
`boolean` `isConditional()`
`boolean` `isForcedBreak()`
`void` `setBreakClass(int breakClass)` Sets the break class.
`void` `setPenaltyValue(int p)` Sets the penalty value.
`String` `toString()`

### Methods inherited from class org.apache.fop.layoutmgr.UnresolvedListElement

`getOriginatingLayoutManager`

### Methods inherited from class org.apache.fop.layoutmgr.ListElement

`getLayoutManager, getPosition, isBox, isGlue, isPenalty, isUnresolvedElement, setPosition`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Constructor Detail

#### BreakElement

    public BreakElement(Position position,
                        int penaltyValue,
                        LayoutContext context)

Main constructor

Parameters:
  `position` - the Position instance needed by the addAreas stage of the LMs.
  `penaltyValue` - the penalty value for the penalty element to be constructed
  `context` - the layout context which contains the pending conditional elements

#### BreakElement

    public BreakElement(Position position,
                        int penaltyValue,
                        int breakClass,
                        LayoutContext context)

Create a new BreakElement for the given `position`, `penaltyValue` and `breakClass`. (Used principally to generate break-possibilities in ranges of content that must be kept together within the context corresponding to the `breakClass`; expected to be one of `Constants.EN_AUTO`, `Constants.EN_LINE`, `Constants.EN_COLUMN` or `Constants.EN_PAGE`)

Parameters:
  `position` - the corresponding `Position`
  `penaltyValue` - the penalty value
  `breakClass` - the break class
  `context` - the `LayoutContext`

#### BreakElement

    public BreakElement(Position position,
                        int penaltyWidth,
                        int penaltyValue,
                        int breakClass,
                        LayoutContext context)

Constructor for hard breaks.

Parameters:
  `position` - the Position instance needed by the addAreas stage of the LMs.
  `penaltyWidth` - the penalty width
  `penaltyValue` - the penalty value for the penalty element to be constructed
  `breakClass` - 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`)
  `context` - the layout context which contains the pending conditional elements

### Method Detail

#### isConditional

    public boolean isConditional()

Specified by:
  `isConditional` in class `UnresolvedListElement`
Returns:
  true if the element is conditional (conditionality="discard")

#### getPenaltyWidth

    public int getPenaltyWidth()

Returns:
  the penalty width

#### getPenaltyValue

    public int getPenaltyValue()

Returns:
  the penalty value

#### setPenaltyValue

    public void setPenaltyValue(int p)

Sets the penalty value.

Parameters:
  `p` - the new penalty value

#### 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.

Returns:
  one of `Constants.EN_AUTO`, `Constants.EN_COLUMN`, `Constants.EN_PAGE`, `Constants.EN_EVEN_PAGE`, `Constants.EN_ODD_PAGE`.

#### setBreakClass

    public void setBreakClass(int breakClass)

Sets the break class.

Parameters:
  `breakClass` - one of `Constants.EN_AUTO`, `Constants.EN_LINE`, `Constants.EN_COLUMN`, `Constants.EN_PAGE`, `Constants.EN_EVEN_PAGE`, `Constants.EN_ODD_PAGE`.

#### getPendingBeforeMarks

    public List<ListElement> getPendingBeforeMarks()

Returns:
  the pending border and padding elements at the before edge

#### getPendingAfterMarks

    public List<ListElement> getPendingAfterMarks()

Returns:
  the pending border and padding elements at the after edge

#### clearPendingMarks

    public void clearPendingMarks()

Clears all pending marks associated with this break element. This is used in break cases where we only know very late if the break is actually after all the content of an FO has been generated.

#### toString

    public String toString()

Overrides:
  `toString` in class `Object`