summaryrefslogtreecommitdiffstats
path: root/WebCore/svg/properties/SVGAnimatedPropertyMacros.h
diff options
context:
space:
mode:
Diffstat (limited to 'WebCore/svg/properties/SVGAnimatedPropertyMacros.h')
-rw-r--r--WebCore/svg/properties/SVGAnimatedPropertyMacros.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/WebCore/svg/properties/SVGAnimatedPropertyMacros.h b/WebCore/svg/properties/SVGAnimatedPropertyMacros.h
index e1c75b9..870d26e 100644
--- a/WebCore/svg/properties/SVGAnimatedPropertyMacros.h
+++ b/WebCore/svg/properties/SVGAnimatedPropertyMacros.h
@@ -27,6 +27,7 @@
#include "SVGAnimatedStaticPropertyTearOff.h"
#include "SVGAnimatedPropertySynchronizer.h"
#include "SVGAnimatedPropertyTearOff.h"
+#include "SVGAnimatedTransformListPropertyTearOff.h"
#include "SVGNames.h" // FIXME: Temporary hack, until we expand the macros in all files, so we don't need a global SVGNames.h include
#include "SVGPropertyTraits.h"
@@ -156,6 +157,19 @@ void detachAnimated##UpperProperty##ListWrappers(unsigned newListSize) \
static_cast<SVGAnimatedListPropertyTearOff<PropertyType>*>(wrapper)->detachListWrappers(newListSize); \
}
+#define DECLARE_ANIMATED_TRANSFORM_LIST_PROPERTY_NEW(OwnerType, DOMAttribute, PropertyType, UpperProperty, LowerProperty) \
+DECLARE_ANIMATED_PROPERTY_NEW_SHARED(OwnerType, DOMAttribute, DOMAttribute.localName(), SVGAnimatedTransformListPropertyTearOff, PropertyType, UpperProperty, LowerProperty) \
+\
+void detachAnimated##UpperProperty##ListWrappers(unsigned newListSize) \
+{ \
+ SVGElement* contextElement = GetOwnerElementForType<OwnerType, IsDerivedFromSVGElement<OwnerType>::value>::ownerElement(this); \
+ SVGAnimatedProperty* wrapper = SVGAnimatedProperty::lookupWrapper<SVGAnimatedTransformListPropertyTearOff>(contextElement, DOMAttribute.localName()); \
+ if (!wrapper) \
+ return; \
+ static_cast<SVGAnimatedTransformListPropertyTearOff*>(wrapper)->detachListWrappers(newListSize); \
+}
+
+
}
#endif // ENABLE(SVG)