diff options
Diffstat (limited to 'Source/WebCore/svg/graphics/SVGImageForContainer.h')
-rw-r--r-- | Source/WebCore/svg/graphics/SVGImageForContainer.h | 38 |
1 files changed, 18 insertions, 20 deletions
diff --git a/Source/WebCore/svg/graphics/SVGImageForContainer.h b/Source/WebCore/svg/graphics/SVGImageForContainer.h index b0c9bea96..aa1988a00 100644 --- a/Source/WebCore/svg/graphics/SVGImageForContainer.h +++ b/Source/WebCore/svg/graphics/SVGImageForContainer.h @@ -23,46 +23,46 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#ifndef SVGImageForContainer_h -#define SVGImageForContainer_h - -#if ENABLE(SVG) +#pragma once #include "AffineTransform.h" #include "FloatRect.h" #include "FloatSize.h" #include "Image.h" #include "SVGImage.h" +#include "URL.h" namespace WebCore { class SVGImageForContainer final : public Image { public: - static PassRefPtr<SVGImageForContainer> create(SVGImage* image, const FloatSize& containerSize, float zoom) + static Ref<SVGImageForContainer> create(SVGImage* image, const FloatSize& containerSize, float zoom) { - return adoptRef(new SVGImageForContainer(image, containerSize, zoom)); + return adoptRef(*new SVGImageForContainer(image, containerSize, zoom)); } - virtual bool isSVGImage() const override { return true; } + bool isSVGImage() const final { return true; } + + FloatSize size() const final; - virtual IntSize size() const override; + void setURL(const URL& url) { m_image->setURL(url); } - virtual bool usesContainerSize() const override { return m_image->usesContainerSize(); } - virtual bool hasRelativeWidth() const override { return m_image->hasRelativeWidth(); } - virtual bool hasRelativeHeight() const override { return m_image->hasRelativeHeight(); } - virtual void computeIntrinsicDimensions(Length& intrinsicWidth, Length& intrinsicHeight, FloatSize& intrinsicRatio) override + bool usesContainerSize() const final { return m_image->usesContainerSize(); } + bool hasRelativeWidth() const final { return m_image->hasRelativeWidth(); } + bool hasRelativeHeight() const final { return m_image->hasRelativeHeight(); } + void computeIntrinsicDimensions(Length& intrinsicWidth, Length& intrinsicHeight, FloatSize& intrinsicRatio) final { m_image->computeIntrinsicDimensions(intrinsicWidth, intrinsicHeight, intrinsicRatio); } - virtual void draw(GraphicsContext*, const FloatRect&, const FloatRect&, ColorSpace, CompositeOperator, BlendMode, ImageOrientationDescription) override; + void draw(GraphicsContext&, const FloatRect&, const FloatRect&, CompositeOperator, BlendMode, ImageOrientationDescription) final; - virtual void drawPattern(GraphicsContext*, const FloatRect&, const AffineTransform&, const FloatPoint&, ColorSpace, CompositeOperator, const FloatRect&, BlendMode) override; + void drawPattern(GraphicsContext&, const FloatRect&, const FloatRect&, const AffineTransform&, const FloatPoint&, const FloatSize&, CompositeOperator, BlendMode) final; // FIXME: Implement this to be less conservative. - virtual bool currentFrameKnownToBeOpaque() override { return false; } + bool currentFrameKnownToBeOpaque() const final { return false; } - virtual PassNativeImagePtr nativeImageForCurrentFrame() override; + NativeImagePtr nativeImageForCurrentFrame(const GraphicsContext* = nullptr) final; private: SVGImageForContainer(SVGImage* image, const FloatSize& containerSize, float zoom) @@ -72,13 +72,11 @@ private: { } - virtual void destroyDecodedData(bool /*destroyAll*/ = true) override { } + void destroyDecodedData(bool /*destroyAll*/ = true) final { } SVGImage* m_image; const FloatSize m_containerSize; const float m_zoom; }; -} -#endif // ENABLE(SVG) -#endif // SVGImageForContainer_h +} // namespace WebCore |