InlineElementBox.h [plain text]
#ifndef InlineElementBox_h
#define InlineElementBox_h
#include "InlineBox.h"
namespace WebCore {
class InlineElementBox : public InlineBox {
public:
explicit InlineElementBox(RenderBoxModelObject& renderer)
: InlineBox(renderer)
{
}
InlineElementBox(RenderObject& renderer, FloatPoint topLeft, float logicalWidth, bool firstLine, bool constructed, bool dirty, bool extracted, bool isHorizontal, InlineBox* next, InlineBox* prev, InlineFlowBox* parent)
: InlineBox(renderer, topLeft, logicalWidth, firstLine, constructed, dirty, extracted, isHorizontal, next, prev, parent)
{
}
RenderBoxModelObject& renderer() const { return downcast<RenderBoxModelObject>(InlineBox::renderer()); }
virtual void deleteLine() override final;
virtual void extractLine() override final;
virtual void attachLine() override final;
virtual void paint(PaintInfo&, const LayoutPoint&, LayoutUnit lineTop, LayoutUnit lineBottom) override;
virtual bool nodeAtPoint(const HitTestRequest&, HitTestResult&, const HitTestLocation& locationInContainer, const LayoutPoint& accumulatedOffset, LayoutUnit lineTop, LayoutUnit lineBottom, HitTestAction) override;
private:
virtual bool isInlineElementBox() const override final { return true; }
};
}
SPECIALIZE_TYPE_TRAITS_INLINE_BOX(InlineElementBox, isInlineElementBox())
#endif // InlineElementBox_h