|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.foray.layout.LayoutStrategy
org.foray.pioneer.PioneerLS
public class PioneerLS
The LayoutStrategy implementation for the Pioneer layout strategy. The Pioneer layout strategy is an "eager" layout strategy, which is to say that it is built more for speed and simplicity than for full conformance with the XSL-FO standard. The general flow of the Pioneer layout strategy is as follows:
| Constructor Summary | |
|---|---|
PioneerLS(org.apache.commons.logging.Log logger)
Constructor. |
|
| Method Summary | |
|---|---|
void |
addPendingFootnote(org.axsl.fo.fo.FootnoteBody fb)
Adds a footnote to the list of pending (not laid out) footnotes. |
Status |
checkBreakBefore(org.axsl.fo.Fo node,
org.axsl.area.Area area)
Indicates whether a "break-before" condition exists for a given FO Tree node being laid out in a given AreaTree area. |
void |
completeCurrentLineInBlock(org.axsl.area.NormalBlockArea blockArea)
Completes the current line in a given block area. |
BlockPL |
getBlockPL(org.axsl.area.NormalBlockArea blockArea)
Returns the layout manager for a given block area. |
protected FONodePL |
getLayoutProxy(org.axsl.fo.Fo node)
Return or create a layout proxy for a given FO Tree node. |
org.axsl.text.line.EagerLineBreaker |
getLineBreaker()
Return the line breaker used by this layout system. |
void |
layoutStaticContent(org.axsl.fo.fo.PageSequence pageSequence,
org.axsl.fo.fo.Region region,
org.axsl.area.RegionRefArea area)
For a given region, layout the static content for that region. |
Object |
makeFObjProxy(org.axsl.fo.Fo node)
Create a proxy for a given FOTree node. |
BasicLinkPL |
makeProxy(org.axsl.fo.fo.BasicLink node)
|
BidiOverridePL |
makeProxy(org.axsl.fo.fo.BidiOverride node)
|
BlockPL |
makeProxy(org.axsl.fo.fo.Block node)
|
BlockContainerPL |
makeProxy(org.axsl.fo.fo.BlockContainer node)
|
NoLayoutPL |
makeProxy(org.axsl.fo.fo.Bookmark node)
|
NoLayoutPL |
makeProxy(org.axsl.fo.fo.BookmarkTitle node)
|
FOTextPL |
makeProxy(org.axsl.fo.fo.CharacterSequence node)
|
NoLayoutPL |
makeProxy(org.axsl.fo.fo.ColorProfile node)
|
NoLayoutPL |
makeProxy(org.axsl.fo.fo.Declarations node)
|
ExternalGraphicPL |
makeProxy(org.axsl.fo.fo.ExternalGraphic node)
|
NoLayoutPL |
makeProxy(org.axsl.fo.fo.Float node)
|
FlowPL |
makeProxy(org.axsl.fo.fo.Flow node)
|
NoLayoutPL |
makeProxy(org.axsl.fo.Fo node)
|
FootnotePL |
makeProxy(org.axsl.fo.fo.Footnote node)
|
FootnoteBodyPL |
makeProxy(org.axsl.fo.fo.FootnoteBody node)
|
NoLayoutPL |
makeProxy(org.axsl.fo.fo.InitialPropertySet node)
|
InlinePL |
makeProxy(org.axsl.fo.fo.Inline node)
|
NoLayoutPL |
makeProxy(org.axsl.fo.fo.InlineContainer node)
|
InstreamForeignObjectPL |
makeProxy(org.axsl.fo.fo.InstreamForeignObject node)
|
LeaderPL |
makeProxy(org.axsl.fo.fo.Leader node)
|
ListBlockPL |
makeProxy(org.axsl.fo.fo.ListBlock node)
|
ListItemPL |
makeProxy(org.axsl.fo.fo.ListItem node)
|
ListItemBodyPL |
makeProxy(org.axsl.fo.fo.ListItemBody node)
|
ListItemLabelPL |
makeProxy(org.axsl.fo.fo.ListItemLabel node)
|
MarkerPL |
makeProxy(org.axsl.fo.fo.Marker node)
|
NoLayoutPL |
makeProxy(org.axsl.fo.fo.MultiCase node)
|
NoLayoutPL |
makeProxy(org.axsl.fo.fo.MultiProperties node)
|
NoLayoutPL |
makeProxy(org.axsl.fo.fo.MultiPropertySet node)
|
NoLayoutPL |
makeProxy(org.axsl.fo.fo.MultiSwitch node)
|
NoLayoutPL |
makeProxy(org.axsl.fo.fo.MultiToggle node)
|
PageNumberPL |
makeProxy(org.axsl.fo.fo.PageNumber node)
|
PageNumberCitationPL |
makeProxy(org.axsl.fo.fo.PageNumberCitation node)
|
NoLayoutPL |
makeProxy(org.axsl.fo.fo.PageSequence node)
|
NoLayoutPL |
makeProxy(org.axsl.fo.fo.RegionAfter node)
|
NoLayoutPL |
makeProxy(org.axsl.fo.fo.RegionBefore node)
|
NoLayoutPL |
makeProxy(org.axsl.fo.fo.RegionBody node)
|
NoLayoutPL |
makeProxy(org.axsl.fo.fo.RegionEnd node)
|
NoLayoutPL |
makeProxy(org.axsl.fo.fo.RegionStart node)
|
RetrieveMarkerPL |
makeProxy(org.axsl.fo.fo.RetrieveMarker node)
|
NoLayoutPL |
makeProxy(org.axsl.fo.fo.Root node)
|
NoLayoutPL |
makeProxy(org.axsl.fo.fo.SimplePageMaster node)
|
StaticContentPL |
makeProxy(org.axsl.fo.fo.StaticContent node)
|
NoLayoutPL |
makeProxy(org.axsl.fo.foreign.SvgElement node)
|
TablePL |
makeProxy(org.axsl.fo.fo.Table node)
|
NoLayoutPL |
makeProxy(org.axsl.fo.fo.TableAndCaption node)
|
TableBodyPL |
makeProxy(org.axsl.fo.fo.TableBody node)
|
NoLayoutPL |
makeProxy(org.axsl.fo.fo.TableCaption node)
|
TableCellPL |
makeProxy(org.axsl.fo.fo.TableCell node)
|
NoLayoutPL |
makeProxy(org.axsl.fo.fo.TableColumn node)
|
TableFooterPL |
makeProxy(org.axsl.fo.fo.TableFooter node)
|
TableHeaderPL |
makeProxy(org.axsl.fo.fo.TableHeader node)
|
TableRowPL |
makeProxy(org.axsl.fo.fo.TableRow node)
|
NoLayoutPL |
makeProxy(org.axsl.fo.fo.Title node)
|
WrapperPL |
makeProxy(org.axsl.fo.fo.Wrapper node)
|
void |
processPageSequence(org.axsl.area.PageCollection pageCollection)
Performs layout on one PageCollection. |
protected void |
setLayoutProxy(org.axsl.fo.Fo node,
FONodePL layoutProxy)
Sets the linkage for a given FoNode. |
void |
setLineBreaker(org.axsl.text.line.EagerLineBreaker lineBreaker)
Sets the line breaker for this layout system. |
| Methods inherited from class org.foray.layout.LayoutStrategy |
|---|
formatPageSequence, formatStaticContent, getLogger, handleLineBreakNonText, handleLineBreakText, popInlineStack, pushInlineStack |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public PioneerLS(org.apache.commons.logging.Log logger)
logger - The logger to be used by this layout system.| Method Detail |
|---|
public BlockPL getBlockPL(org.axsl.area.NormalBlockArea blockArea)
blockArea - The block area for which the layout manager is needed.
public void completeCurrentLineInBlock(org.axsl.area.NormalBlockArea blockArea)
blockArea - The block area which should be completed.
public void processPageSequence(org.axsl.area.PageCollection pageCollection)
throws org.axsl.area.AreaTreeException
LayoutStrategy
processPageSequence in class LayoutStrategypageCollection - The (empty) page collection into which layout
should be placed. (The PageCollection has a reference to the FOTree
PageSequence that has the content to be laid out).
org.axsl.area.AreaTreeException - For errors during layout.
public void layoutStaticContent(org.axsl.fo.fo.PageSequence pageSequence,
org.axsl.fo.fo.Region region,
org.axsl.area.RegionRefArea area)
throws org.axsl.area.AreaTreeException
LayoutStrategy
layoutStaticContent in class LayoutStrategypageSequence - The page sequence whose static content is being
processed.region - The page region whose static content is being laid out.area - The region area into which the static content should be
placed.
org.axsl.area.AreaTreeException - For errors during layout.
public Status checkBreakBefore(org.axsl.fo.Fo node,
org.axsl.area.Area area)
node - The FO Tree node to be laid out.area - The AreaTree area into which node should be laid
out.
Status.OK if no break is required.public Object makeFObjProxy(org.axsl.fo.Fo node)
node - The FOTree node for which a proxy needs to be created.
public NoLayoutPL makeProxy(org.axsl.fo.Fo node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic NoLayoutPL makeProxy(org.axsl.fo.fo.PageSequence node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic NoLayoutPL makeProxy(org.axsl.fo.fo.BookmarkTitle node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic NoLayoutPL makeProxy(org.axsl.fo.fo.Bookmark node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic NoLayoutPL makeProxy(org.axsl.fo.fo.ColorProfile node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic NoLayoutPL makeProxy(org.axsl.fo.fo.Declarations node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic FOTextPL makeProxy(org.axsl.fo.fo.CharacterSequence node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic NoLayoutPL makeProxy(org.axsl.fo.fo.Title node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic BidiOverridePL makeProxy(org.axsl.fo.fo.BidiOverride node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic BlockPL makeProxy(org.axsl.fo.fo.Block node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic BlockContainerPL makeProxy(org.axsl.fo.fo.BlockContainer node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic ExternalGraphicPL makeProxy(org.axsl.fo.fo.ExternalGraphic node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic FlowPL makeProxy(org.axsl.fo.fo.Flow node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic FootnotePL makeProxy(org.axsl.fo.fo.Footnote node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic NoLayoutPL makeProxy(org.axsl.fo.fo.Float node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic FootnoteBodyPL makeProxy(org.axsl.fo.fo.FootnoteBody node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic NoLayoutPL makeProxy(org.axsl.fo.fo.InitialPropertySet node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic InlinePL makeProxy(org.axsl.fo.fo.Inline node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic NoLayoutPL makeProxy(org.axsl.fo.fo.InlineContainer node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic InstreamForeignObjectPL makeProxy(org.axsl.fo.fo.InstreamForeignObject node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic LeaderPL makeProxy(org.axsl.fo.fo.Leader node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic ListBlockPL makeProxy(org.axsl.fo.fo.ListBlock node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic ListItemPL makeProxy(org.axsl.fo.fo.ListItem node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic ListItemBodyPL makeProxy(org.axsl.fo.fo.ListItemBody node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic ListItemLabelPL makeProxy(org.axsl.fo.fo.ListItemLabel node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic MarkerPL makeProxy(org.axsl.fo.fo.Marker node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic NoLayoutPL makeProxy(org.axsl.fo.fo.MultiCase node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic NoLayoutPL makeProxy(org.axsl.fo.fo.MultiProperties node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic NoLayoutPL makeProxy(org.axsl.fo.fo.MultiPropertySet node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic NoLayoutPL makeProxy(org.axsl.fo.fo.MultiSwitch node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic NoLayoutPL makeProxy(org.axsl.fo.fo.MultiToggle node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic PageNumberPL makeProxy(org.axsl.fo.fo.PageNumber node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic PageNumberCitationPL makeProxy(org.axsl.fo.fo.PageNumberCitation node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic RetrieveMarkerPL makeProxy(org.axsl.fo.fo.RetrieveMarker node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic StaticContentPL makeProxy(org.axsl.fo.fo.StaticContent node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic TablePL makeProxy(org.axsl.fo.fo.Table node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic NoLayoutPL makeProxy(org.axsl.fo.fo.TableAndCaption node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic TableBodyPL makeProxy(org.axsl.fo.fo.TableBody node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic NoLayoutPL makeProxy(org.axsl.fo.fo.TableCaption node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic TableCellPL makeProxy(org.axsl.fo.fo.TableCell node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic NoLayoutPL makeProxy(org.axsl.fo.fo.TableColumn node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic TableFooterPL makeProxy(org.axsl.fo.fo.TableFooter node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic TableHeaderPL makeProxy(org.axsl.fo.fo.TableHeader node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic TableRowPL makeProxy(org.axsl.fo.fo.TableRow node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic WrapperPL makeProxy(org.axsl.fo.fo.Wrapper node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic NoLayoutPL makeProxy(org.axsl.fo.fo.RegionAfter node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic NoLayoutPL makeProxy(org.axsl.fo.fo.RegionBefore node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic NoLayoutPL makeProxy(org.axsl.fo.fo.RegionBody node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic NoLayoutPL makeProxy(org.axsl.fo.fo.RegionEnd node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic NoLayoutPL makeProxy(org.axsl.fo.fo.RegionStart node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic NoLayoutPL makeProxy(org.axsl.fo.fo.Root node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic NoLayoutPL makeProxy(org.axsl.fo.fo.SimplePageMaster node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic BasicLinkPL makeProxy(org.axsl.fo.fo.BasicLink node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic NoLayoutPL makeProxy(org.axsl.fo.foreign.SvgElement node)
makeProxy in interface org.axsl.fo.ProxyFactorypublic org.axsl.text.line.EagerLineBreaker getLineBreaker()
public void setLineBreaker(org.axsl.text.line.EagerLineBreaker lineBreaker)
lineBreaker - The new line breaker.protected FONodePL getLayoutProxy(org.axsl.fo.Fo node)
node - The node for which the proxy is needed.
protected void setLayoutProxy(org.axsl.fo.Fo node,
FONodePL layoutProxy)
node - The node whose linkage is to be set.layoutProxy - The layout proxy for node.public void addPendingFootnote(org.axsl.fo.fo.FootnoteBody fb)
fb - The footnote to be added.
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||