Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| fop 1.1
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.fop.layoutmgr
Class BlockLayoutManager

    java.lang.Object
      org.apache.fop.layoutmgr.AbstractBaseLayoutManager
          org.apache.fop.layoutmgr.AbstractLayoutManager
              org.apache.fop.layoutmgr.BlockStackingLayoutManager
                  org.apache.fop.layoutmgr.BlockLayoutManager

All Implemented Interfaces:
  PercentBaseContext, Constants, BlockLevelLayoutManager, BreakOpportunity, ConditionalElementListener, LayoutManager

    public class BlockLayoutManager

extends BlockStackingLayoutManager
implements ConditionalElementListener, BreakOpportunity

LayoutManager for a block FO.

Nested Class Summary
`protected class` | `BlockLayoutManager.ProxyLMiter` Proxy iterator for Block LM.

Nested classes/interfaces inherited from class org.apache.fop.layoutmgr.BlockStackingLayoutManager
`BlockStackingLayoutManager.MappingPosition`

Field Summary
`protected java.util.ListIterator<LayoutManager>` | `proxyLMiter` Iterator over the child layout managers.

Fields inherited from class org.apache.fop.layoutmgr.BlockStackingLayoutManager
`adjustedSpaceAfter, adjustedSpaceBefore, bpUnit, breakBeforeServed, endIndent, firstVisibleMarkServed, foSpaceAfter, foSpaceBefore, parentArea, referenceIPD, startIndent, storedList`

Fields inherited from class org.apache.fop.layoutmgr.AbstractLayoutManager
`childLMiter, childLMs, curChildLM, fobjIter, parentLayoutManager`

Fields inherited from class org.apache.fop.layoutmgr.AbstractBaseLayoutManager
`fobj, generatesBlockArea, generatesReferenceArea`

Fields inherited from interface org.apache.fop.fo.Constants
`COMPOUND_COUNT, COMPOUND_MASK, COMPOUND_SHIFT, CP_BLOCK_PROGRESSION_DIRECTION, CP_CONDITIONALITY, CP_INLINE_PROGRESSION_DIRECTION, CP_LENGTH, CP_MAXIMUM, CP_MINIMUM, CP_OPTIMUM, CP_PRECEDENCE, CP_WITHIN_COLUMN, CP_WITHIN_LINE, CP_WITHIN_PAGE, EN_100, EN_200, EN_300, EN_400, EN_500, EN_600, EN_700, EN_800, EN_900, EN_ABSOLUTE, EN_ABSOLUTE_COLORMETRIC, EN_AFTER, EN_AFTER_EDGE, EN_ALL, EN_ALPHABETIC, EN_ALTERNATE, EN_ALWAYS, EN_ANY, EN_AUTO, EN_AUTO_EVEN, EN_AUTO_ODD, EN_AVOID, EN_BACKSLANT, EN_BASELINE, EN_BEFORE, EN_BEFORE_EDGE, EN_BIDI_OVERRIDE, EN_BLANK, EN_BLINK, EN_BLOCK, EN_BOLDER, EN_BOTH, EN_BOTTOM, EN_BOUNDED_IN_ONE_DIMENSION, EN_BT, EN_CAPITALIZE, EN_CAPTION, EN_CENTER, EN_CENTRAL, EN_CHARACTER_BY_CHARACTER, EN_COLLAPSE, EN_COLLAPSE_WITH_PRECEDENCE, EN_COLUMN, EN_CONDENSED, EN_CONSIDER_SHIFTS, EN_DASHED, EN_DISCARD, EN_DISREGARD_SHIFTS, EN_DOCUMENT, EN_DOTS, EN_DOTTED, EN_DOUBLE, EN_EMBED, EN_END, EN_END_ON_EVEN, EN_END_ON_ODD, EN_ERROR_IF_OVERFLOW, EN_EVEN, EN_EVEN_PAGE, EN_EXPANDED, EN_EXTRA_CONDENSED, EN_EXTRA_EXPANDED, EN_FALSE, EN_FIC, EN_FIRST, EN_FIRST_STARTING, EN_FIXED, EN_FONT_HEIGHT, EN_FORCE, EN_FSWP, EN_GROOVE, EN_HANGING, EN_HIDDEN, EN_HIDE, EN_ICON, EN_IDEOGRAPHIC, EN_IGNORE, EN_IGNORE_IF_AFTER_LINEFEED, EN_IGNORE_IF_BEFORE_LINEFEED, EN_IGNORE_IF_SURROUNDING_LINEFEED, EN_INDEFINITE, EN_INDENT, EN_INHERIT, EN_INSET, EN_INSIDE, EN_INTEGER_PIXELS, EN_ITALIC, EN_JUSTIFY, EN_LARGER, EN_LAST, EN_LAST_ENDING, EN_LAST_STARTING, EN_LEAVE_SEPARATE, EN_LEFT, EN_LEWP, EN_LIGHTER, EN_LINE, EN_LINE_HEIGHT, EN_LINE_THROUGH, EN_LINK, EN_LOWERCASE, EN_LR, EN_LR_TB, EN_LSWP, EN_LTR, EN_MATHEMATICAL, EN_MAX_HEIGHT, EN_MENU, EN_MERGE, EN_MESSAGE_BOX, EN_MIDDLE, EN_NARROWER, EN_NEW, EN_NO_BLINK, EN_NO_CHANGE, EN_NO_FORCE, EN_NO_LIMIT, EN_NO_LINE_THROUGH, EN_NO_LINK, EN_NO_OVERLINE, EN_NO_UNDERLINE, EN_NO_WRAP, EN_NON_UNIFORM, EN_NONE, EN_NOREPEAT, EN_NORMAL, EN_NOT_BLANK, EN_OBLIQUE, EN_ODD, EN_ODD_PAGE, EN_ONLY, EN_OUTSET, EN_OUTSIDE, EN_OVERLINE, EN_PAGE, EN_PAGE_SEQUENCE, EN_PAGINATE, EN_PERCEPTUAL, EN_PRE, EN_PRESERVE, EN_REFERENCE_AREA, EN_RELATIVE, EN_RELATIVE_COLOMETRIC, EN_REPEAT, EN_REPEATX, EN_REPEATY, EN_REPLACE, EN_RESAMPLE_ANY_METHOD, EN_RESET_SIZE, EN_REST, EN_RETAIN, EN_RIDGE, EN_RIGHT, EN_RL, EN_RL_TB, EN_RTL, EN_RULE, EN_SATURATION, EN_SCALE_DOWN_TO_FIT, EN_SCALE_TO_FIT, EN_SCALE_UP_TO_FIT, EN_SCROLL, EN_SEMI_CONDENSED, EN_SEMI_EXPANDED, EN_SEPARATE, EN_SHOW, EN_SMALL_CAPS, EN_SMALL_CAPTION, EN_SMALLER, EN_SOLID, EN_SPACE, EN_START, EN_STATIC, EN_STATUS_BAR, EN_SUB, EN_SUPER, EN_SUPPRESS, EN_TABLE, EN_TABLE_FRAGMENT, EN_TB, EN_TB_LR, EN_TB_RL, EN_TEXT_AFTER_EDGE, EN_TEXT_BEFORE_EDGE, EN_TEXT_BOTTOM, EN_TEXT_TOP, EN_TOP, EN_TRADITIONAL, EN_TREAT_AS_SPACE, EN_TREAT_AS_ZERO_WIDTH_SPACE, EN_TRUE, EN_ULTRA_CONDENSED, EN_ULTRA_EXPANDED, EN_UNBOUNDED, EN_UNDERLINE, EN_UNIFORM, EN_UPPERCASE, EN_USE_FONT_METRICS, EN_USE_SCRIPT, EN_USECONTENT, EN_VISIBLE, EN_WIDER, EN_WRAP, EN_X_DISTRIBUTE, EN_X_FILL, ENUM_COUNT, FO_BASIC_LINK, FO_BIDI_OVERRIDE, FO_BLOCK, FO_BLOCK_CONTAINER, FO_BOOKMARK, FO_BOOKMARK_TITLE, FO_BOOKMARK_TREE, FO_CHANGE_BAR_BEGIN, FO_CHANGE_BAR_END, FO_CHARACTER, FO_COLOR_PROFILE, FO_CONDITIONAL_PAGE_MASTER_REFERENCE, FO_DECLARATIONS, FO_EXTERNAL_GRAPHIC, FO_FLOAT, FO_FLOW, FO_FLOW_ASSIGNMENT, FO_FLOW_MAP, FO_FLOW_NAME_SPECIFIER, FO_FLOW_SOURCE_LIST, FO_FLOW_TARGET_LIST, FO_FOLIO_PREFIX, FO_FOLIO_SUFFIX, FO_FOOTNOTE, FO_FOOTNOTE_BODY, FO_INDEX_KEY_REFERENCE, FO_INDEX_PAGE_CITATION_LIST, FO_INDEX_PAGE_CITATION_LIST_SEPARATOR, FO_INDEX_PAGE_CITATION_RANGE_SEPARATOR, FO_INDEX_PAGE_NUMBER_PREFIX, FO_INDEX_PAGE_NUMBER_SUFFIX, FO_INDEX_RANGE_BEGIN, FO_INDEX_RANGE_END, FO_INITIAL_PROPERTY_SET, FO_INLINE, FO_INLINE_CONTAINER, FO_INSTREAM_FOREIGN_OBJECT, FO_LAYOUT_MASTER_SET, FO_LEADER, FO_LIST_BLOCK, FO_LIST_ITEM, FO_LIST_ITEM_BODY, FO_LIST_ITEM_LABEL, FO_MARKER, FO_MULTI_CASE, FO_MULTI_PROPERTIES, FO_MULTI_PROPERTY_SET, FO_MULTI_SWITCH, FO_MULTI_TOGGLE, FO_PAGE_NUMBER, FO_PAGE_NUMBER_CITATION, FO_PAGE_NUMBER_CITATION_LAST, FO_PAGE_SEQUENCE, FO_PAGE_SEQUENCE_MASTER, FO_PAGE_SEQUENCE_WRAPPER, FO_REGION_AFTER, FO_REGION_BEFORE, FO_REGION_BODY, FO_REGION_END, FO_REGION_NAME_SPECIFIER, FO_REGION_START, FO_REPEATABLE_PAGE_MASTER_ALTERNATIVES, FO_REPEATABLE_PAGE_MASTER_REFERENCE, FO_RETRIEVE_MARKER, FO_RETRIEVE_TABLE_MARKER, FO_ROOT, FO_SCALING_VALUE_CITATION, FO_SIMPLE_PAGE_MASTER, FO_SINGLE_PAGE_MASTER_REFERENCE, FO_STATIC_CONTENT, FO_TABLE, FO_TABLE_AND_CAPTION, FO_TABLE_BODY, FO_TABLE_CAPTION, FO_TABLE_CELL, FO_TABLE_COLUMN, FO_TABLE_FOOTER, FO_TABLE_HEADER, FO_TABLE_ROW, FO_TITLE, FO_UNKNOWN_NODE, FO_WRAPPER, FRM_OBJ_COUNT, NOT_SET, PR_ABSOLUTE_POSITION, PR_ACTIVE_STATE, PR_ALIGNMENT_ADJUST, PR_ALIGNMENT_BASELINE, PR_AUTO_RESTORE, PR_AZIMUTH, PR_BACKGROUND, PR_BACKGROUND_ATTACHMENT, PR_BACKGROUND_COLOR, PR_BACKGROUND_IMAGE, PR_BACKGROUND_POSITION, PR_BACKGROUND_POSITION_HORIZONTAL, PR_BACKGROUND_POSITION_VERTICAL, PR_BACKGROUND_REPEAT, PR_BASELINE_SHIFT, PR_BLANK_OR_NOT_BLANK, PR_BLOCK_PROGRESSION_DIMENSION, PR_BORDER, PR_BORDER_AFTER_COLOR, PR_BORDER_AFTER_PRECEDENCE, PR_BORDER_AFTER_STYLE, PR_BORDER_AFTER_WIDTH, PR_BORDER_BEFORE_COLOR, PR_BORDER_BEFORE_PRECEDENCE, PR_BORDER_BEFORE_STYLE, PR_BORDER_BEFORE_WIDTH, PR_BORDER_BOTTOM, PR_BORDER_BOTTOM_COLOR, PR_BORDER_BOTTOM_STYLE, PR_BORDER_BOTTOM_WIDTH, PR_BORDER_COLLAPSE, PR_BORDER_COLOR, PR_BORDER_END_COLOR, PR_BORDER_END_PRECEDENCE, PR_BORDER_END_STYLE, PR_BORDER_END_WIDTH, PR_BORDER_LEFT, PR_BORDER_LEFT_COLOR, PR_BORDER_LEFT_STYLE, PR_BORDER_LEFT_WIDTH, PR_BORDER_RIGHT, PR_BORDER_RIGHT_COLOR, PR_BORDER_RIGHT_STYLE, PR_BORDER_RIGHT_WIDTH, PR_BORDER_SEPARATION, PR_BORDER_SPACING, PR_BORDER_START_COLOR, PR_BORDER_START_PRECEDENCE, PR_BORDER_START_STYLE, PR_BORDER_START_WIDTH, PR_BORDER_STYLE, PR_BORDER_TOP, PR_BORDER_TOP_COLOR, PR_BORDER_TOP_STYLE, PR_BORDER_TOP_WIDTH, PR_BORDER_WIDTH, PR_BOTTOM, PR_BREAK_AFTER, PR_BREAK_BEFORE, PR_CAPTION_SIDE, PR_CASE_NAME, PR_CASE_TITLE, PR_CHANGE_BAR_CLASS, PR_CHANGE_BAR_COLOR, PR_CHANGE_BAR_OFFSET, PR_CHANGE_BAR_PLACEMENT, PR_CHANGE_BAR_STYLE, PR_CHANGE_BAR_WIDTH, PR_CHARACTER, PR_CLEAR, PR_CLIP, PR_COLOR, PR_COLOR_PROFILE_NAME, PR_COLUMN_COUNT, PR_COLUMN_GAP, PR_COLUMN_NUMBER, PR_COLUMN_WIDTH, PR_CONTENT_HEIGHT, PR_CONTENT_TYPE, PR_CONTENT_WIDTH, PR_COUNTRY, PR_CUE, PR_CUE_AFTER, PR_CUE_BEFORE, PR_DESTINATION_PLACEMENT_OFFSET, PR_DIRECTION, PR_DISPLAY_ALIGN, PR_DOMINANT_BASELINE, PR_ELEVATION, PR_EMPTY_CELLS, PR_END_INDENT, PR_ENDS_ROW, PR_EXTENT, PR_EXTERNAL_DESTINATION, PR_FLOAT, PR_FLOW_MAP_NAME, PR_FLOW_MAP_REFERENCE, PR_FLOW_NAME, PR_FLOW_NAME_REFERENCE, PR_FONT, PR_FONT_FAMILY, PR_FONT_SELECTION_STRATEGY, PR_FONT_SIZE, PR_FONT_SIZE_ADJUST, PR_FONT_STRETCH, PR_FONT_STYLE, PR_FONT_VARIANT, PR_FONT_WEIGHT, PR_FORCE_PAGE_COUNT, PR_FORMAT, PR_GLYPH_ORIENTATION_HORIZONTAL, PR_GLYPH_ORIENTATION_VERTICAL, PR_GROUPING_SEPARATOR, PR_GROUPING_SIZE, PR_HEIGHT, PR_HYPHENATE, PR_HYPHENATION_CHARACTER, PR_HYPHENATION_KEEP, PR_HYPHENATION_LADDER_COUNT, PR_HYPHENATION_PUSH_CHARACTER_COUNT, PR_HYPHENATION_REMAIN_CHARACTER_COUNT, PR_ID, PR_INDEX_CLASS, PR_INDEX_KEY, PR_INDICATE_DESTINATION, PR_INITIAL_PAGE_NUMBER, PR_INLINE_PROGRESSION_DIMENSION, PR_INTERNAL_DESTINATION, PR_INTRINSIC_SCALE_VALUE, PR_INTRUSION_DISPLACE, PR_KEEP_TOGETHER, PR_KEEP_WITH_NEXT, PR_KEEP_WITH_PREVIOUS, PR_LANGUAGE, PR_LAST_LINE_END_INDENT, PR_LEADER_ALIGNMENT, PR_LEADER_LENGTH, PR_LEADER_PATTERN, PR_LEADER_PATTERN_WIDTH, PR_LEFT, PR_LETTER_SPACING, PR_LETTER_VALUE, PR_LINE_HEIGHT, PR_LINE_HEIGHT_SHIFT_ADJUSTMENT, PR_LINE_STACKING_STRATEGY, PR_LINEFEED_TREATMENT, PR_MARGIN, PR_MARGIN_BOTTOM, PR_MARGIN_LEFT, PR_MARGIN_RIGHT, PR_MARGIN_TOP, PR_MARKER_CLASS_NAME, PR_MASTER_NAME, PR_MASTER_REFERENCE, PR_MAX_HEIGHT, PR_MAX_WIDTH, PR_MAXIMUM_REPEATS, PR_MEDIA_USAGE, PR_MERGE_PAGES_ACROSS_INDEX_KEY_REFERENCES, PR_MERGE_RANGES_ACROSS_INDEX_KEY_REFERENCES, PR_MERGE_SEQUENTIAL_PAGE_NUMBERS, PR_MIN_HEIGHT, PR_MIN_WIDTH, PR_NUMBER_COLUMNS_REPEATED, PR_NUMBER_COLUMNS_SPANNED, PR_NUMBER_ROWS_SPANNED, PR_ODD_OR_EVEN, PR_ORPHANS, PR_OVERFLOW, PR_PADDING, PR_PADDING_AFTER, PR_PADDING_BEFORE, PR_PADDING_BOTTOM, PR_PADDING_END, PR_PADDING_LEFT, PR_PADDING_RIGHT, PR_PADDING_START, PR_PADDING_TOP, PR_PAGE_BREAK_AFTER, PR_PAGE_BREAK_BEFORE, PR_PAGE_BREAK_INSIDE, PR_PAGE_CITATION_STRATEGY, PR_PAGE_HEIGHT, PR_PAGE_NUMBER_TREATMENT, PR_PAGE_POSITION, PR_PAGE_WIDTH, PR_PAUSE, PR_PAUSE_AFTER, PR_PAUSE_BEFORE, PR_PITCH, PR_PITCH_RANGE, PR_PLAY_DURING, PR_POSITION, PR_PRECEDENCE, PR_PROVISIONAL_DISTANCE_BETWEEN_STARTS, PR_PROVISIONAL_LABEL_SEPARATION, PR_REF_ID, PR_REF_INDEX_KEY, PR_REFERENCE_ORIENTATION, PR_REGION_NAME, PR_REGION_NAME_REFERENCE, PR_RELATIVE_ALIGN, PR_RELATIVE_POSITION, PR_RENDERING_INTENT, PR_RETRIEVE_BOUNDARY, PR_RETRIEVE_BOUNDARY_WITHIN_TABLE, PR_RETRIEVE_CLASS_NAME, PR_RETRIEVE_POSITION, PR_RETRIEVE_POSITION_WITHIN_TABLE, PR_RICHNESS, PR_RIGHT, PR_ROLE, PR_RULE_STYLE, PR_RULE_THICKNESS, PR_SCALING, PR_SCALING_METHOD, PR_SCORE_SPACES, PR_SCRIPT, PR_SHOW_DESTINATION, PR_SIZE, PR_SOURCE_DOCUMENT, PR_SPACE_AFTER, PR_SPACE_BEFORE, PR_SPACE_END, PR_SPACE_START, PR_SPAN, PR_SPEAK, PR_SPEAK_HEADER, PR_SPEAK_NUMERAL, PR_SPEAK_PUNCTUATION, PR_SPEECH_RATE, PR_SRC, PR_START_INDENT, PR_STARTING_STATE, PR_STARTS_ROW, PR_STRESS, PR_SUPPRESS_AT_LINE_BREAK, PR_SWITCH_TO, PR_TABLE_LAYOUT, PR_TABLE_OMIT_FOOTER_AT_BREAK, PR_TABLE_OMIT_HEADER_AT_BREAK, PR_TARGET_PRESENTATION_CONTEXT, PR_TARGET_PROCESSING_CONTEXT, PR_TARGET_STYLESHEET, PR_TEXT_ALIGN, PR_TEXT_ALIGN_LAST, PR_TEXT_ALTITUDE, PR_TEXT_DECORATION, PR_TEXT_DEPTH, PR_TEXT_INDENT, PR_TEXT_SHADOW, PR_TEXT_TRANSFORM, PR_TOP, PR_TREAT_AS_WORD_SPACE, PR_UNICODE_BIDI, PR_VERTICAL_ALIGN, PR_VISIBILITY, PR_VOICE_FAMILY, PR_VOLUME, PR_WHITE_SPACE, PR_WHITE_SPACE_COLLAPSE, PR_WHITE_SPACE_TREATMENT, PR_WIDOWS, PR_WIDTH, PR_WORD_SPACING, PR_WRAP_OPTION, PR_WRITING_MODE, PR_X_ALT_TEXT, PR_X_BLOCK_PROGRESSION_UNIT, PR_X_DISABLE_COLUMN_BALANCING, PR_X_NUMBER_CONVERSION_FEATURES, PR_X_ORPHAN_CONTENT_LIMIT, PR_X_WIDOW_CONTENT_LIMIT, PR_X_XML_BASE, PR_XML_LANG, PR_Z_INDEX, PROPERTY_COUNT, PROPERTY_MASK`

Constructor Summary
`BlockLayoutManager(Block inBlock)` Creates a new BlockLayoutManager.

Method Summary
`void` | `addAreas(PositionIterator parentIter, LayoutContext layoutContext)` Tell the layout manager to add all the child areas implied by Position objects which will be returned by the Iterator.
`void` | `addChildArea(Area childArea)` Add the childArea to the current area.
`boolean` | `createNextChildLMs(int pos)` Create more child LMs of the parent, up to child LM index pos
`protected void` | `flush()` Force current area to be added to parent area.
`protected Block` | `getBlockFO()` convenience method that returns the Block node
`int` | `getBreakBefore()` Returns the highest priority break-before value on this layout manager or its relevant descendants.
`int` | `getContentAreaBPD()` Returns the BPD of the content area
`int` | `getContentAreaIPD()` Returns the IPD of the content area
`boolean` | `getGeneratesBlockArea()` Returns an indication if the layout manager generates a block area.
`KeepProperty` | `getKeepTogetherProperty()` Returns the keep-together property specified on the FObj.
`KeepProperty` | `getKeepWithNextProperty()` Returns the keep-with-next property specified on the FObj.
`KeepProperty` | `getKeepWithPreviousProperty()` Returns the keep-with-previous property specified on the FObj.
`protected java.util.List<ListElement>` | `getNextChildElements(LayoutManager childLM, LayoutContext context, LayoutContext childLC, int alignment, java.util.Stack lmStack, Position restartPosition, LayoutManager restartAtLM)` Overridden to take into account that the childLM may be the block's `LineLayoutManager`.
`java.util.List` | `getNextKnuthElements(LayoutContext context, int alignment)` Get a sequence of KnuthElements representing the content of the node assigned to the LM.
`java.util.List` | `getNextKnuthElements(LayoutContext context, int alignment, java.util.Stack lmStack, Position restartPosition, LayoutManager restartAtLM)` Returns an updated list of Knuth elements corresponding to this layout manager, after a change of IPD has been detected.
`Area` | `getParentArea(Area childArea)` Return an Area which can contain the passed childArea.
`void` | `initialize()` initialize the layout manager.
`boolean` | `isRestartable()` Returns `true` if this layout manager is able to re-generate its Knuth elements after an IPD change.
`void` | `notifyBorder(RelSide side, MinOptMax effectiveLength)` Notifies the layout manager about the effective length/width of its border.
`void` | `notifyPadding(RelSide side, MinOptMax effectiveLength)` Notifies the layout manager about the effective length/width of its padding.
`void` | `notifySpace(RelSide side, MinOptMax effectiveLength)` Notifies the layout manager about the effective length of its space.

Methods inherited from class org.apache.fop.layoutmgr.BlockStackingLayoutManager
`addBlockSpacing, addChildToArea, addFirstVisibleMarks, addInBetweenBreak, addKnuthElementsForBorderPaddingAfter, addKnuthElementsForBorderPaddingBefore, addKnuthElementsForBreakAfter, addKnuthElementsForBreakBefore, addKnuthElementsForSpaceAfter, addKnuthElementsForSpaceBefore, addLastVisibleMarks, addPendingMarks, breakBeforeServed, discardSpace, getAuxiliaryPosition, getChangedKnuthElements, getCurrentArea, getIPIndents, getKeepTogether, getKeepWithNext, getKeepWithPrevious, getParentKeepTogether, getSpaceAfterProperty, getSpaceBeforeProperty, handleOverflow, makeChildLayoutContext, mustKeepTogether, mustKeepWithNext, mustKeepWithPrevious, neededUnits, negotiateBPDAdjustment, reset, setContentAreaIPD, setCurrentArea, updateContentAreaIPDwithOverconstrainedAdjust, updateContentAreaIPDwithOverconstrainedAdjust, wrapPositionElement, wrapPositionElements, wrapPositionElements`

Methods inherited from class org.apache.fop.layoutmgr.AbstractLayoutManager
`addChildLM, addChildLMs, addId, addMarkersToPage, checkEndOfLayout, createChildLMs, getChildLM, getChildLMs, getCurrentPage, getCurrentPV, getParent, getPSLM, hasNextChildLM, isFinished, isFirst, isLast, notifyEndOfLayout, notifyPos, setCurrentChildLM, setFinished, setParent, toString, transferExtensionAttachments, transferExtensions, transferForeignAttributes`

Methods inherited from class org.apache.fop.layoutmgr.AbstractBaseLayoutManager
`getAncestorBlockAreaBPD, getAncestorBlockAreaIPD, getBaseLength, getFObj, getGeneratesLineArea, getGeneratesReferenceArea, getParentAreaBPD, getParentAreaIPD, getReferenceAreaBPD, getReferenceAreaIPD, setGeneratesBlockArea, setGeneratesReferenceArea`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Methods inherited from interface org.apache.fop.layoutmgr.LayoutManager
`addChildLM, addChildLMs, getChildLMs, getFObj, getGeneratesLineArea, getGeneratesReferenceArea, getParent, getPSLM, isFinished, notifyPos, setFinished, setParent`

Methods inherited from interface org.apache.fop.datatypes.PercentBaseContext
`getBaseLength`

Field Detail

### proxyLMiter

    protected java.util.ListIterator<LayoutManager> proxyLMiter

  Iterator over the child layout managers.

Constructor Detail

### BlockLayoutManager

    public BlockLayoutManager(Block inBlock)

  Creates a new BlockLayoutManager.

  Parameters:
    `inBlock` - the block FO object to create the layout manager for.

Method Detail

### initialize

    public void initialize()

  initialize the layout manager. Allows each layout manager to calculate often used values.

  Specified by:
    `initialize` in interface `LayoutManager`
  Overrides:
    `initialize` in class `AbstractLayoutManager`

### getNextKnuthElements

    public java.util.List getNextKnuthElements(LayoutContext context,
                                               int alignment)

  Get a sequence of KnuthElements representing the content of the node assigned to the LM.

  Specified by:
    `getNextKnuthElements` in interface `LayoutManager`
  Overrides:
    `getNextKnuthElements` in class `BlockStackingLayoutManager`
  Parameters:
    `context` - the LayoutContext used to store layout information
    `alignment` - the desired text alignment
  Returns:
    the list of KnuthElements

### getNextKnuthElements

    public java.util.List getNextKnuthElements(LayoutContext context,
                                               int alignment,
                                               java.util.Stack lmStack,
                                               Position restartPosition,
                                               LayoutManager restartAtLM)

  Returns an updated list of Knuth elements corresponding to this layout manager, after a change of IPD has been detected.

  Specified by:
    `getNextKnuthElements` in interface `LayoutManager`
  Overrides:
    `getNextKnuthElements` in class `BlockStackingLayoutManager`
  Parameters:
    `context` - the layout context
    `alignment` - the alignment
    `lmStack` - the stack of LMs that are active at the IPD change
    `restartPosition` - the position corresponding to the element finishing the page before the IPD change
    `restartAtLM` - if not null, the layout manager from which to restart. That is, the IPD change occurs between two block elements and not inside a paragraph
  Returns:
    an updated list of elements, taking the new IPD into account

### getNextChildElements

    protected java.util.List<ListElement> getNextChildElements(LayoutManager childLM,
                                                               LayoutContext context,
                                                               LayoutContext childLC,
                                                               int alignment,
                                                               java.util.Stack lmStack,
                                                               Position restartPosition,
                                                               LayoutManager restartAtLM)

  Overridden to take into account that the childLM may be the block's `LineLayoutManager`. Gets the next set of child elements for the given childLM. The default implementation basically copies the pending marks to the child layout context, and subsequently calls the appropriate variant of `childLM.getNextKnuthElements()`, passing it all relevant parameters.

  Overrides:
    `getNextChildElements` in class `BlockStackingLayoutManager`
  Parameters:
    `childLM` - the current child LM
    `context` - the layout context
    `childLC` - the child layout context
    `alignment` - the vertical alignment
    `lmStack` - the stack of currently active LMs (if any)
    `restartPosition` - the position to restart from (if any)
    `restartAtLM` - the LM to restart from (if any)
  Returns:
    list of elements corresponding to the content generated by childLM

### createNextChildLMs

    public boolean createNextChildLMs(int pos)

  Create more child LMs of the parent, up to child LM index pos

  Specified by:
    `createNextChildLMs` in interface `LayoutManager`
  Overrides:
    `createNextChildLMs` in class `AbstractLayoutManager`
  Parameters:
    `pos` - index up to which child LMs are requested
  Returns:
    true if requested index does exist

### getKeepTogetherProperty

    public KeepProperty getKeepTogetherProperty()

  Returns the keep-together property specified on the FObj. Default implementation throws a `IllegalStateException`. Must be implemented by the subclass, if applicable.

  Specified by:
    `getKeepTogetherProperty` in interface `BlockLevelLayoutManager`
  Overrides:
    `getKeepTogetherProperty` in class `BlockStackingLayoutManager`
  Returns:
    the keep-together property

### getKeepWithPreviousProperty

    public KeepProperty getKeepWithPreviousProperty()

  Returns the keep-with-previous property specified on the FObj. Default implementation throws a `IllegalStateException`. Must be implemented by the subclass, if applicable.

  Specified by:
    `getKeepWithPreviousProperty` in interface `BlockLevelLayoutManager`
  Overrides:
    `getKeepWithPreviousProperty` in class `BlockStackingLayoutManager`
  Returns:
    the keep-together property

### getKeepWithNextProperty

    public KeepProperty getKeepWithNextProperty()

  Returns the keep-with-next property specified on the FObj. Default implementation throws a `IllegalStateException`. Must be implemented by the subclass, if applicable.

  Specified by:
    `getKeepWithNextProperty` in interface `BlockLevelLayoutManager`
  Overrides:
    `getKeepWithNextProperty` in class `BlockStackingLayoutManager`
  Returns:
    the keep-together property

### addAreas

    public void addAreas(PositionIterator parentIter,
                         LayoutContext layoutContext)

  Tell the layout manager to add all the child areas implied by Position objects which will be returned by the Iterator.

  Specified by:
    `addAreas` in interface `LayoutManager`
  Overrides:
    `addAreas` in class `AbstractLayoutManager`
  Parameters:
    `parentIter` - the position iterator
    `layoutContext` - the context

### getParentArea

    public Area getParentArea(Area childArea)

  Return an Area which can contain the passed childArea. The childArea may not yet have any content, but it has essential traits set. In general, if the LayoutManager already has an Area it simply returns it. Otherwise, it makes a new Area of the appropriate class. It gets a parent area for its area by calling its parent LM. Finally, based on the dimensions of the parent area, it initializes its own area. This includes setting the content IPD and the maximum BPD.

  Specified by:
    `getParentArea` in interface `LayoutManager`
  Overrides:
    `getParentArea` in class `AbstractLayoutManager`
  Parameters:
    `childArea` - area to get the parent area for
  Returns:
    the parent area

### addChildArea

    public void addChildArea(Area childArea)

  Add the childArea to the current area. Called by child LayoutManager when it has filled one of its areas. The LM should already have an Area in which to put the child. See if the area will fit in the current area. If so, add it. Otherwise initiate breaking.

  Specified by:
    `addChildArea` in interface `LayoutManager`
  Overrides:
    `addChildArea` in class `BlockStackingLayoutManager`
  Parameters:
    `childArea` - the area to add: will be some block-stacked Area.

### flush

    protected void flush()

  Force current area to be added to parent area. Force current area to be added to parent area.

  Overrides:
    `flush` in class `BlockStackingLayoutManager`

### getBlockFO

    protected Block getBlockFO()

  convenience method that returns the Block node

  Returns:
    the block node

### getContentAreaIPD

    public int getContentAreaIPD()

  Returns the IPD of the content area

  Specified by:
    `getContentAreaIPD` in interface `LayoutManager`
  Overrides:
    `getContentAreaIPD` in class `BlockStackingLayoutManager`
  Returns:
    the IPD of the content area

### getContentAreaBPD

    public int getContentAreaBPD()

  Returns the BPD of the content area

  Specified by:
    `getContentAreaBPD` in interface `LayoutManager`
  Overrides:
    `getContentAreaBPD` in class `BlockStackingLayoutManager`
  Returns:
    the BPD of the content area

### getGeneratesBlockArea

    public boolean getGeneratesBlockArea()

  Returns an indication if the layout manager generates a block area.

  Specified by:
    `getGeneratesBlockArea` in interface `LayoutManager`
  Overrides:
    `getGeneratesBlockArea` in class `AbstractBaseLayoutManager`
  Returns:
    True if the layout manager generates a block area

### notifySpace

    public void notifySpace(RelSide side,
                            MinOptMax effectiveLength)

  Notifies the layout manager about the effective length of its space.

  Specified by:
    `notifySpace` in interface `ConditionalElementListener`
  Parameters:
    `side` - the side to which the space applies
    `effectiveLength` - the effective length after space-resolution (null means zero length)

### notifyBorder

    public void notifyBorder(RelSide side,
                             MinOptMax effectiveLength)

  Notifies the layout manager about the effective length/width of its border.

  Specified by:
    `notifyBorder` in interface `ConditionalElementListener`
  Parameters:
    `side` - the side to which the border applies
    `effectiveLength` - the effective length in the current break situation (null means zero length)

### notifyPadding

    public void notifyPadding(RelSide side,
                              MinOptMax effectiveLength)

  Notifies the layout manager about the effective length/width of its padding.

  Specified by:
    `notifyPadding` in interface `ConditionalElementListener`
  Parameters:
    `side` - the side to which the padding applies
    `effectiveLength` - the effective length in the current break situation (null means zero length)

### isRestartable

    public boolean isRestartable()

  Returns `true` if this layout manager is able to re-generate its Knuth elements after an IPD change.

  Specified by:
    `isRestartable` in interface `LayoutManager`
  Overrides:
    `isRestartable` in class `AbstractBaseLayoutManager`
  Returns:
    `true` if this layout manager can be restarted after an IPD change

### getBreakBefore

    public int getBreakBefore()

  Description copied from interface: `BreakOpportunity`
  Returns the highest priority break-before value on this layout manager or its relevant descendants.

  Specified by:
    `getBreakBefore` in interface `BreakOpportunity`
  Returns:
    the break-before value (Constants.EN_*)

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| fop 1.1
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

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