#include "SVGAnimatedBoolean.h"
#include "SVGAnimatedLength.h"
#include "SVGExternalResourcesRequired.h"
-#include "SVGLangSpace.h"
-#include "SVGStyledTransformableElement.h"
-#include "SVGTests.h"
+#include "SVGGraphicsElement.h"
namespace WebCore {
-class SVGEllipseElement : public SVGStyledTransformableElement,
- public SVGTests,
- public SVGLangSpace,
- public SVGExternalResourcesRequired {
+class SVGEllipseElement FINAL : public SVGGraphicsElement,
+ public SVGExternalResourcesRequired {
public:
- static PassRefPtr<SVGEllipseElement> create(const QualifiedName&, Document*);
+ static PassRefPtr<SVGEllipseElement> create(const QualifiedName&, Document&);
private:
- SVGEllipseElement(const QualifiedName&, Document*);
+ SVGEllipseElement(const QualifiedName&, Document&);
virtual bool isValid() const { return SVGTests::isValid(); }
+ virtual bool supportsFocus() const OVERRIDE { return true; }
- virtual void parseMappedAttribute(Attribute*);
+ bool isSupportedAttribute(const QualifiedName&);
+ virtual void parseAttribute(const QualifiedName&, const AtomicString&) OVERRIDE;
virtual void svgAttributeChanged(const QualifiedName&);
- virtual void synchronizeProperty(const QualifiedName&);
- virtual void fillAttributeToPropertyTypeMap();
- virtual AttributeToPropertyTypeMap& attributeToPropertyTypeMap();
-
- virtual void toPathData(Path&) const;
virtual bool selfHasRelativeLengths() const;
- // Animated property declarations
- DECLARE_ANIMATED_LENGTH(Cx, cx)
- DECLARE_ANIMATED_LENGTH(Cy, cy)
- DECLARE_ANIMATED_LENGTH(Rx, rx)
- DECLARE_ANIMATED_LENGTH(Ry, ry)
+ virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) OVERRIDE;
- // SVGExternalResourcesRequired
- DECLARE_ANIMATED_BOOLEAN(ExternalResourcesRequired, externalResourcesRequired)
+ BEGIN_DECLARE_ANIMATED_PROPERTIES(SVGEllipseElement)
+ DECLARE_ANIMATED_LENGTH(Cx, cx)
+ DECLARE_ANIMATED_LENGTH(Cy, cy)
+ DECLARE_ANIMATED_LENGTH(Rx, rx)
+ DECLARE_ANIMATED_LENGTH(Ry, ry)
+ DECLARE_ANIMATED_BOOLEAN(ExternalResourcesRequired, externalResourcesRequired)
+ END_DECLARE_ANIMATED_PROPERTIES
};
+ELEMENT_TYPE_CASTS(SVGEllipseElement)
+
} // namespace WebCore
#endif // ENABLE(SVG)