1234567891011121314151617181920212223242526272829 |
- #include <LibHTML/Layout/LayoutBlock.h>
- #include <LibHTML/Layout/LayoutNode.h>
- #include <LibHTML/CSS/StyledNode.h>
- LayoutNode::LayoutNode(const Node* node, const StyledNode* styled_node)
- : m_node(node)
- , m_styled_node(styled_node)
- {
- }
- LayoutNode::~LayoutNode()
- {
- }
- void LayoutNode::layout()
- {
- for_each_child([](auto& child) {
- child.layout();
- });
- }
- const LayoutBlock* LayoutNode::containing_block() const
- {
- for (auto* ancestor = parent(); ancestor; ancestor = ancestor->parent()) {
- if (ancestor->is_block())
- return static_cast<const LayoutBlock*>(ancestor);
- }
- return nullptr;
- }
|