23 #ifndef SVGImageElement_h
24 #define SVGImageElement_h
36 class SVGPreserveAspectRatio;
39 class SVGImageElement :
public SVGStyledTransformableElement,
42 public SVGExternalResourcesRequired,
43 public SVGURIReference {
45 SVGImageElement(
const QualifiedName&, Document*);
46 virtual ~SVGImageElement();
48 virtual bool isValid()
const {
return SVGTests::isValid(); }
50 virtual void parseMappedAttribute(MappedAttribute*);
51 virtual void svgAttributeChanged(
const QualifiedName&);
53 virtual void attach();
55 virtual RenderObject* createRenderer(RenderArena*, RenderStyle*);
57 virtual void getSubresourceAttributeStrings(Vector<String>&)
const;
60 virtual bool haveLoadedRequiredResources();
62 virtual bool hasRelativeValues()
const;
65 virtual const SVGElement* contextElement()
const {
return this; }
68 ANIMATED_PROPERTY_FORWARD_DECLARATIONS(SVGExternalResourcesRequired,
bool, ExternalResourcesRequired, externalResourcesRequired)
69 ANIMATED_PROPERTY_FORWARD_DECLARATIONS(SVGURIReference,
String, Href, href)
71 ANIMATED_PROPERTY_DECLARATIONS(SVGImageElement, SVGLength, SVGLength, X, x)
72 ANIMATED_PROPERTY_DECLARATIONS(SVGImageElement, SVGLength, SVGLength, Y, y)
73 ANIMATED_PROPERTY_DECLARATIONS(SVGImageElement, SVGLength, SVGLength, Width, width)
74 ANIMATED_PROPERTY_DECLARATIONS(SVGImageElement, SVGLength, SVGLength, Height, height)
75 ANIMATED_PROPERTY_DECLARATIONS(SVGImageElement, SVGPreserveAspectRatio*, RefPtr<SVGPreserveAspectRatio>, PreserveAspectRatio, preserveAspectRatio)
77 SVGImageLoader m_imageLoader;