// Check if the content is flown into at least a region with region styling rules. void RenderFlowThread::checkRegionsWithStyling() { bool hasRegionsWithStyling = false; for (RenderRegionList::iterator iter = m_regionList.begin(); iter != m_regionList.end(); ++iter) { RenderRegion* region = *iter; if (region->hasCustomRegionStyle()) { hasRegionsWithStyling = true; break; } } m_hasRegionsWithStyling = hasRegionsWithStyling; }
static void writeRenderNamedFlowThreads(TextStream& ts, RenderView* renderView, const RenderLayer* rootLayer, const LayoutRect& paintRect, int indent, RenderAsTextBehavior behavior) { if (!renderView->hasRenderNamedFlowThreads()) return; const RenderNamedFlowThreadList* list = renderView->flowThreadController()->renderNamedFlowThreadList(); writeIndent(ts, indent); ts << "Flow Threads\n"; for (RenderNamedFlowThreadList::const_iterator iter = list->begin(); iter != list->end(); ++iter) { const RenderNamedFlowThread* renderFlowThread = *iter; writeIndent(ts, indent + 1); ts << "Thread with flow-name '" << renderFlowThread->flowThreadName() << "'\n"; RenderLayer* layer = renderFlowThread->layer(); writeLayers(ts, rootLayer, layer, paintRect, indent + 2, behavior); // Display the render regions attached to this flow thread const RenderRegionList& flowThreadRegionList = renderFlowThread->renderRegionList(); if (!flowThreadRegionList.isEmpty()) { writeIndent(ts, indent + 1); ts << "Regions for flow '"<< renderFlowThread->flowThreadName() << "'\n"; for (RenderRegionList::const_iterator itRR = flowThreadRegionList.begin(); itRR != flowThreadRegionList.end(); ++itRR) { RenderRegion* renderRegion = *itRR; writeIndent(ts, indent + 2); ts << "RenderRegion"; if (renderRegion->node()) { String tagName = getTagName(renderRegion->node()); if (!tagName.isEmpty()) ts << " {" << tagName << "}"; if (renderRegion->node()->isElementNode() && renderRegion->node()->hasID()) { Element* element = static_cast<Element*>(renderRegion->node()); ts << " #" << element->idForStyleResolution(); } if (renderRegion->hasCustomRegionStyle()) ts << " region style: 1"; } if (!renderRegion->isValid()) ts << " invalid"; ts << "\n"; } } } }
static void writeRenderRegionList(const RenderRegionList& flowThreadRegionList, TextStream& ts, int indent) { for (RenderRegionList::const_iterator itRR = flowThreadRegionList.begin(); itRR != flowThreadRegionList.end(); ++itRR) { RenderRegion* renderRegion = *itRR; writeIndent(ts, indent + 2); ts << "RenderRegion"; if (renderRegion->generatingNode()) { String tagName = getTagName(renderRegion->generatingNode()); if (!tagName.isEmpty()) ts << " {" << tagName << "}"; if (renderRegion->generatingNode()->isElementNode() && renderRegion->generatingNode()->hasID()) { Element* element = static_cast<Element*>(renderRegion->generatingNode()); ts << " #" << element->idForStyleResolution(); } if (renderRegion->hasCustomRegionStyle()) ts << " region style: 1"; if (renderRegion->hasAutoLogicalHeight()) ts << " hasAutoLogicalHeight"; } if (!renderRegion->isValid()) ts << " invalid"; ts << "\n"; } }