#ifndef RenderSVGInline_h
#define RenderSVGInline_h
#include "core/rendering/RenderInline.h"
namespace WebCore {
class RenderSVGInline : public RenderInline {
public:
explicit RenderSVGInline(Element*);
virtual const char* renderName() const OVERRIDE { return "RenderSVGInline"; }
virtual LayerType layerTypeRequired() const OVERRIDE FINAL { return NoLayer; }
virtual bool isSVGInline() const OVERRIDE FINAL { return true; }
virtual bool isSVG() const OVERRIDE FINAL { return true; }
virtual bool isChildAllowed(RenderObject*, RenderStyle*) const OVERRIDE;
virtual FloatRect objectBoundingBox() const OVERRIDE FINAL;
virtual FloatRect strokeBoundingBox() const OVERRIDE FINAL;
virtual FloatRect repaintRectInLocalCoordinates() const OVERRIDE FINAL;
virtual LayoutRect clippedOverflowRectForRepaint(const RenderLayerModelObject* repaintContainer) const OVERRIDE FINAL;
virtual void computeFloatRectForRepaint(const RenderLayerModelObject* repaintContainer, FloatRect&, bool fixed = false) const OVERRIDE FINAL;
virtual void mapLocalToContainer(const RenderLayerModelObject* repaintContainer, TransformState&, MapCoordinatesFlags = ApplyContainerFlip, bool* wasFixed = 0) const OVERRIDE FINAL;
virtual const RenderObject* pushMappingToContainer(const RenderLayerModelObject* ancestorToStopAt, RenderGeometryMap&) const OVERRIDE FINAL;
virtual void absoluteQuads(Vector<FloatQuad>&, bool* wasFixed) const OVERRIDE FINAL;
private:
virtual InlineFlowBox* createInlineFlowBox() OVERRIDE FINAL;
virtual void willBeDestroyed() OVERRIDE FINAL;
virtual void styleDidChange(StyleDifference, const RenderStyle* oldStyle) OVERRIDE FINAL;
virtual void addChild(RenderObject* child, RenderObject* beforeChild = 0) OVERRIDE FINAL;
virtual void removeChild(RenderObject*) OVERRIDE FINAL;
};
}
#endif