protected void startProcessing (final RenderNode node)
{
if (node instanceof InlineRenderBox)
{
final InlineRenderBox box = (InlineRenderBox) node;
if (startInlineBox(box))
{
processBoxChilds(box);
}
finishInlineBox(box);
}
else if (node instanceof NormalFlowRenderBox)
{
final NormalFlowRenderBox box = (NormalFlowRenderBox) node;
startNormalFlow(box);
final NormalFlowRenderBox[] flows = box.getFlows();
for (int i = 0; i < flows.length; i++)
{
final NormalFlowRenderBox flow = flows[i];
startProcessing(flow);
}
processBoxChilds(box);
finishNormalFlow(box);
}
else if (node instanceof ParagraphRenderBox)
{
final ParagraphRenderBox box = (ParagraphRenderBox) node;
if (startBlockBox(box))
{
processParagraphChilds(box);
}
finishBlockBox(box);
}
else if (node instanceof LogicalPageBox)
{
final LogicalPageBox box = (LogicalPageBox) node;
if (startBlockBox(box))
{
startProcessing(box.getHeaderArea());
processBoxChilds(box);
startProcessing(box.getFooterArea());
}
finishBlockBox(box);
}
else if (node instanceof BlockRenderBox)
{