summaryrefslogtreecommitdiff
path: root/Source/WebCore/svg/SVGPatternElement.h
diff options
context:
space:
mode:
Diffstat (limited to 'Source/WebCore/svg/SVGPatternElement.h')
-rw-r--r--Source/WebCore/svg/SVGPatternElement.h50
1 files changed, 22 insertions, 28 deletions
diff --git a/Source/WebCore/svg/SVGPatternElement.h b/Source/WebCore/svg/SVGPatternElement.h
index eb71ea32e..7e7e9779f 100644
--- a/Source/WebCore/svg/SVGPatternElement.h
+++ b/Source/WebCore/svg/SVGPatternElement.h
@@ -18,10 +18,8 @@
* Boston, MA 02110-1301, USA.
*/
-#ifndef SVGPatternElement_h
-#define SVGPatternElement_h
+#pragma once
-#if ENABLE(SVG)
#include "SVGAnimatedBoolean.h"
#include "SVGAnimatedEnumeration.h"
#include "SVGAnimatedLength.h"
@@ -40,32 +38,33 @@ namespace WebCore {
struct PatternAttributes;
-class SVGPatternElement final : public SVGElement,
- public SVGURIReference,
- public SVGTests,
- public SVGExternalResourcesRequired,
- public SVGFitToViewBox {
+class SVGPatternElement final : public SVGElement, public SVGURIReference, public SVGTests, public SVGExternalResourcesRequired, public SVGFitToViewBox {
public:
- static PassRefPtr<SVGPatternElement> create(const QualifiedName&, Document&);
+ static Ref<SVGPatternElement> create(const QualifiedName&, Document&);
void collectPatternAttributes(PatternAttributes&) const;
- virtual AffineTransform localCoordinateSpaceTransform(SVGLocatable::CTMScope) const override;
+ AffineTransform localCoordinateSpaceTransform(SVGLocatable::CTMScope) const final;
+
+ // SVGTests
+ Ref<SVGStringList> requiredFeatures();
+ Ref<SVGStringList> requiredExtensions();
+ Ref<SVGStringList> systemLanguage();
private:
SVGPatternElement(const QualifiedName&, Document&);
- virtual bool isValid() const override { return SVGTests::isValid(); }
- virtual bool needsPendingResourceHandling() const override { return false; }
+ bool isValid() const final { return SVGTests::isValid(); }
+ bool needsPendingResourceHandling() const final { return false; }
- bool isSupportedAttribute(const QualifiedName&);
- virtual void parseAttribute(const QualifiedName&, const AtomicString&) override;
- virtual void svgAttributeChanged(const QualifiedName&) override;
- virtual void childrenChanged(const ChildChange&) override;
+ static bool isSupportedAttribute(const QualifiedName&);
+ void parseAttribute(const QualifiedName&, const AtomicString&) final;
+ void svgAttributeChanged(const QualifiedName&) final;
+ void childrenChanged(const ChildChange&) final;
- virtual RenderPtr<RenderElement> createElementRenderer(PassRef<RenderStyle>) override;
+ RenderPtr<RenderElement> createElementRenderer(RenderStyle&&, const RenderTreePosition&) final;
- virtual bool selfHasRelativeLengths() const override;
+ bool selfHasRelativeLengths() const final { return true; }
BEGIN_DECLARE_ANIMATED_PROPERTIES(SVGPatternElement)
DECLARE_ANIMATED_LENGTH(X, x)
@@ -75,21 +74,16 @@ private:
DECLARE_ANIMATED_ENUMERATION(PatternUnits, patternUnits, SVGUnitTypes::SVGUnitType)
DECLARE_ANIMATED_ENUMERATION(PatternContentUnits, patternContentUnits, SVGUnitTypes::SVGUnitType)
DECLARE_ANIMATED_TRANSFORM_LIST(PatternTransform, patternTransform)
- DECLARE_ANIMATED_STRING(Href, href)
- DECLARE_ANIMATED_BOOLEAN(ExternalResourcesRequired, externalResourcesRequired)
+ DECLARE_ANIMATED_STRING_OVERRIDE(Href, href)
+ DECLARE_ANIMATED_BOOLEAN_OVERRIDE(ExternalResourcesRequired, externalResourcesRequired)
DECLARE_ANIMATED_RECT(ViewBox, viewBox)
DECLARE_ANIMATED_PRESERVEASPECTRATIO(PreserveAspectRatio, preserveAspectRatio)
END_DECLARE_ANIMATED_PROPERTIES
// SVGTests
- virtual void synchronizeRequiredFeatures() override { SVGTests::synchronizeRequiredFeatures(this); }
- virtual void synchronizeRequiredExtensions() override { SVGTests::synchronizeRequiredExtensions(this); }
- virtual void synchronizeSystemLanguage() override { SVGTests::synchronizeSystemLanguage(this); }
+ void synchronizeRequiredFeatures() final { SVGTests::synchronizeRequiredFeatures(*this); }
+ void synchronizeRequiredExtensions() final { SVGTests::synchronizeRequiredExtensions(*this); }
+ void synchronizeSystemLanguage() final { SVGTests::synchronizeSystemLanguage(*this); }
};
-NODE_TYPE_CASTS(SVGPatternElement)
-
} // namespace WebCore
-
-#endif // ENABLE(SVG)
-#endif