#ifndef RenderFieldset_h
#define RenderFieldset_h
#include "HTMLFieldSetElement.h"
#include "RenderBlockFlow.h"
namespace WebCore {
class HTMLFieldSetElement;
class RenderFieldset final : public RenderBlockFlow {
public:
RenderFieldset(HTMLFieldSetElement&, PassRef<RenderStyle>);
enum FindLegendOption { IgnoreFloatingOrOutOfFlow, IncludeFloatingOrOutOfFlow };
RenderBox* findLegend(FindLegendOption = IgnoreFloatingOrOutOfFlow) const;
HTMLFieldSetElement& fieldSetElement() const { return toHTMLFieldSetElement(nodeForNonAnonymous()); }
private:
void element() const = delete;
virtual const char* renderName() const override { return "RenderFieldSet"; }
virtual bool isFieldset() const override { return true; }
virtual RenderObject* layoutSpecialExcludedChild(bool relayoutChildren) override;
virtual void computePreferredLogicalWidths() override;
virtual bool avoidsFloats() const override { return true; }
virtual void paintBoxDecorations(PaintInfo&, const LayoutPoint&) override;
virtual void paintMask(PaintInfo&, const LayoutPoint&) override;
};
RENDER_OBJECT_TYPE_CASTS(RenderFieldset, isFieldset())
}
#endif // RenderFieldset_h