diff options
Diffstat (limited to 'src/3rdparty/webkit/WebCore/svg/SVGElement.h')
-rw-r--r-- | src/3rdparty/webkit/WebCore/svg/SVGElement.h | 35 |
1 files changed, 4 insertions, 31 deletions
diff --git a/src/3rdparty/webkit/WebCore/svg/SVGElement.h b/src/3rdparty/webkit/WebCore/svg/SVGElement.h index 3a17567..b247a74 100644 --- a/src/3rdparty/webkit/WebCore/svg/SVGElement.h +++ b/src/3rdparty/webkit/WebCore/svg/SVGElement.h @@ -25,6 +25,7 @@ #if ENABLE(SVG) #include "StyledElement.h" #include "SVGAnimatedProperty.h" +#include "SynchronizablePropertyController.h" namespace WebCore { @@ -41,8 +42,6 @@ namespace WebCore { static PassRefPtr<SVGElement> create(const QualifiedName&, Document*); virtual ~SVGElement(); - String id() const; - void setId(const String&, ExceptionCode&); String xmlbase() const; void setXmlbase(const String&, ExceptionCode&); @@ -79,14 +78,11 @@ namespace WebCore { HashSet<SVGElementInstance*> instancesForElement() const; - void addSVGPropertySynchronizer(const QualifiedName& attrName, const SVGAnimatedPropertyBase& base) const - { - m_svgPropertyMap.set(attrName.localName(), &base); - } - void setCursorElement(SVGCursorElement* cursorElement) { m_cursorElement = cursorElement; } void setCursorImageValue(CSSCursorImageValue* cursorImageValue) { m_cursorImageValue = cursorImageValue; } + SynchronizablePropertyController& propertyController() const { return m_propertyController; } + protected: SVGElement(const QualifiedName&, Document*); @@ -108,36 +104,13 @@ namespace WebCore { virtual void buildPendingResource() { } - // Inlined methods handling SVG property synchronization - void invokeSVGPropertySynchronizer(const String& name) const - { - if (m_svgPropertyMap.contains(name)) { - const SVGAnimatedPropertyBase* property = m_svgPropertyMap.get(name); - ASSERT(property); - - property->synchronize(); - } - } - - void invokeAllSVGPropertySynchronizers() const - { - HashMap<String, const SVGAnimatedPropertyBase*>::const_iterator it = m_svgPropertyMap.begin(); - const HashMap<String, const SVGAnimatedPropertyBase*>::const_iterator end = m_svgPropertyMap.end(); - for (; it != end; ++it) { - const SVGAnimatedPropertyBase* property = it->second; - ASSERT(property); - - property->synchronize(); - } - } - void mapInstanceToElement(SVGElementInstance*); void removeInstanceMapping(SVGElementInstance*); virtual bool haveLoadedRequiredResources(); ContainerNode* m_shadowParent; - mutable HashMap<String, const SVGAnimatedPropertyBase*> m_svgPropertyMap; + mutable SynchronizablePropertyController m_propertyController; SVGCursorElement* m_cursorElement; CSSCursorImageValue* m_cursorImageValue; |