diff options
Diffstat (limited to 'Source/WebCore/rendering/svg/RenderSVGImage.h')
-rw-r--r-- | Source/WebCore/rendering/svg/RenderSVGImage.h | 48 |
1 files changed, 22 insertions, 26 deletions
diff --git a/Source/WebCore/rendering/svg/RenderSVGImage.h b/Source/WebCore/rendering/svg/RenderSVGImage.h index bb101cdaa..0b688f379 100644 --- a/Source/WebCore/rendering/svg/RenderSVGImage.h +++ b/Source/WebCore/rendering/svg/RenderSVGImage.h @@ -21,14 +21,11 @@ * Boston, MA 02110-1301, USA. */ -#ifndef RenderSVGImage_h -#define RenderSVGImage_h +#pragma once -#if ENABLE(SVG) #include "AffineTransform.h" #include "FloatRect.h" #include "RenderSVGModelObject.h" -#include "SVGPreserveAspectRatio.h" namespace WebCore { @@ -37,15 +34,15 @@ class SVGImageElement; class RenderSVGImage final : public RenderSVGModelObject { public: - RenderSVGImage(SVGImageElement&, PassRef<RenderStyle>); + RenderSVGImage(SVGImageElement&, RenderStyle&&); virtual ~RenderSVGImage(); SVGImageElement& imageElement() const; bool updateImageViewport(); - virtual void setNeedsBoundariesUpdate() { m_needsBoundariesUpdate = true; } - virtual bool needsBoundariesUpdate() override { return m_needsBoundariesUpdate; } - virtual void setNeedsTransformUpdate() { m_needsTransformUpdate = true; } + void setNeedsBoundariesUpdate() override { m_needsBoundariesUpdate = true; } + bool needsBoundariesUpdate() override { return m_needsBoundariesUpdate; } + void setNeedsTransformUpdate() override { m_needsTransformUpdate = true; } RenderImageResource& imageResource() { return *m_imageResource; } const RenderImageResource& imageResource() const { return *m_imageResource; } @@ -54,31 +51,33 @@ public: void paintForeground(PaintInfo&); private: + void willBeDestroyed() override; + void element() const = delete; - virtual const char* renderName() const { return "RenderSVGImage"; } - virtual bool isSVGImage() const override { return true; } - virtual bool canHaveChildren() const override { return false; } + const char* renderName() const override { return "RenderSVGImage"; } + bool isSVGImage() const override { return true; } + bool canHaveChildren() const override { return false; } - virtual const AffineTransform& localToParentTransform() const { return m_localTransform; } + const AffineTransform& localToParentTransform() const override { return m_localTransform; } - virtual FloatRect objectBoundingBox() const { return m_objectBoundingBox; } - virtual FloatRect strokeBoundingBox() const { return m_objectBoundingBox; } - virtual FloatRect repaintRectInLocalCoordinates() const { return m_repaintBoundingBox; } - virtual FloatRect repaintRectInLocalCoordinatesExcludingSVGShadow() const override { return m_repaintBoundingBoxExcludingShadow; } + FloatRect objectBoundingBox() const override { return m_objectBoundingBox; } + FloatRect strokeBoundingBox() const override { return m_objectBoundingBox; } + FloatRect repaintRectInLocalCoordinates() const override { return m_repaintBoundingBox; } + FloatRect repaintRectInLocalCoordinatesExcludingSVGShadow() const override { return m_repaintBoundingBoxExcludingShadow; } - virtual void addFocusRingRects(Vector<IntRect>&, const LayoutPoint& additionalOffset, const RenderLayerModelObject* paintContainer = 0) override; + void addFocusRingRects(Vector<LayoutRect>&, const LayoutPoint& additionalOffset, const RenderLayerModelObject* paintContainer = 0) override; - virtual void imageChanged(WrappedImagePtr, const IntRect* = 0); + void imageChanged(WrappedImagePtr, const IntRect* = nullptr) override; - virtual void layout(); - virtual void paint(PaintInfo&, const LayoutPoint&); + void layout() override; + void paint(PaintInfo&, const LayoutPoint&) override; void invalidateBufferedForeground(); - virtual bool nodeAtFloatPoint(const HitTestRequest&, HitTestResult&, const FloatPoint& pointInParent, HitTestAction); + bool nodeAtFloatPoint(const HitTestRequest&, HitTestResult&, const FloatPoint& pointInParent, HitTestAction) override; - virtual AffineTransform localTransform() const { return m_localTransform; } + AffineTransform localTransform() const override { return m_localTransform; } void calculateImageViewport(); bool m_needsBoundariesUpdate : 1; @@ -91,9 +90,6 @@ private: std::unique_ptr<ImageBuffer> m_bufferedForeground; }; -RENDER_OBJECT_TYPE_CASTS(RenderSVGImage, isSVGImage()) - } // namespace WebCore -#endif // ENABLE(SVG) -#endif // RenderSVGImage_h +SPECIALIZE_TYPE_TRAITS_RENDER_OBJECT(RenderSVGImage, isSVGImage()) |