2010-10-29 Nikolas Zimmermann <nzimmermann@rim.com>
authorzimmermann@webkit.org <zimmermann@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 29 Oct 2010 13:50:03 +0000 (13:50 +0000)
committerzimmermann@webkit.org <zimmermann@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 29 Oct 2010 13:50:03 +0000 (13:50 +0000)
commit50de9aafc7511aa022155115eb0fab0a1d41e326
treef731288c845d11d95e8f8ef0e5892fc0a27c3e77
parentd983f2f98b4428d02b16f444e520d0dc53a79de9
2010-10-29  Nikolas Zimmermann  <nzimmermann@rim.com>

        Reviewed by Dirk Schulze.

        Convert SVGAnimatedEnumeration/Integer to the new SVGAnimatedPropertyTearOff concept
        https://bugs.webkit.org/show_bug.cgi?id=48623

        Besides converting SVGAnimatedEnumeration/Integer to the new animated property tear off concept, fix support
        for multiple wrappers within the new concept, which was broken - covered by existing svg/dynamic-updates/ tests.

        Replace all 'extern char[]' usage when using the multiple wrappers macro, by static AtomicStrings.

        * GNUmakefile.am: Add SVGAnimatedEnumeration.h / SVGAnimatedInteger.h to build.
        * WebCore.gypi: Ditto.
        * WebCore.pro: Ditto.
        * WebCore.vcproj/WebCore.vcproj: Ditto.
        * WebCore.xcodeproj/project.pbxproj: Ditto.
        * bindings/scripts/CodeGenerator.pm: Recognize SVGAnimatedEnumeration / SVGAnimatedInteger as animated types using the new concept.
        * bindings/scripts/CodeGeneratorObjC.pm: Touched, to force regenerating ObjC bindings, dependency tracking is obviously broken.
        * svg/DeprecatedSVGAnimatedPropertyTraits.h: Remove SVGAnimatedBoolean/Enumeration/Integer handling.
        * svg/DeprecatedSVGAnimatedTemplate.h: Ditto.
        * svg/SVGAnimatedEnumeration.h: Added.
        * svg/SVGAnimatedEnumeration.idl:
        * svg/SVGAnimatedInteger.h: Added.
        * svg/SVGClipPathElement.h: Adapted all code to create new style animated property tear offs for long & int types.
        * svg/SVGComponentTransferFunctionElement.h:
        * svg/SVGFEBlendElement.h:
        * svg/SVGFEColorMatrixElement.h:
        * svg/SVGFECompositeElement.h:
        * svg/SVGFEConvolveMatrixElement.h:
        * svg/SVGFEDiffuseLightingElement.cpp:
        (WebCore::SVGFEDiffuseLightingElement::kernelUnitLengthXIdentifier): Replaced extern[] char hack using a static AtomicString.
        (WebCore::SVGFEDiffuseLightingElement::kernelUnitLengthYIdentifier): Ditto.
        * svg/SVGFEDiffuseLightingElement.h:
        * svg/SVGFEDisplacementMapElement.h:
        * svg/SVGFEGaussianBlurElement.cpp:
        (WebCore::SVGFEGaussianBlurElement::stdDeviationXIdentifier): Ditto.
        (WebCore::SVGFEGaussianBlurElement::stdDeviationYIdentifier): Ditto.
        * svg/SVGFEGaussianBlurElement.h:
        * svg/SVGFEMorphologyElement.h:
        * svg/SVGFESpecularLightingElement.cpp:
        (WebCore::SVGFESpecularLightingElement::kernelUnitLengthXIdentifier): Ditto.
        (WebCore::SVGFESpecularLightingElement::kernelUnitLengthYIdentifier): Ditto.
        * svg/SVGFESpecularLightingElement.h:
        * svg/SVGFETurbulenceElement.cpp:
        (WebCore::SVGFETurbulenceElement::baseFrequencyXIdentifier): Ditto.
        (WebCore::SVGFETurbulenceElement::baseFrequencyYIdentifier): Ditto.
        * svg/SVGFETurbulenceElement.h:
        * svg/SVGFilterElement.cpp:
        (WebCore::SVGFilterElement::filterResXIdentifier): Ditto.
        (WebCore::SVGFilterElement::filterResYIdentifier): Ditto.
        * svg/SVGFilterElement.h:
        * svg/SVGGradientElement.h:
        * svg/SVGMarkerElement.cpp:
        (WebCore::SVGMarkerElement::orientTypeIdentifier): Ditto.
        (WebCore::SVGMarkerElement::orientAngleIdentifier): Ditto.
        * svg/SVGMarkerElement.h:
        * svg/SVGMaskElement.h:
        * svg/SVGPatternElement.h:
        * svg/SVGTextContentElement.h:
        * svg/SVGTextPathElement.h:
        * svg/properties/SVGAnimatedPropertyMacros.h: Add new macro for multiple wrappers using static properties.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@70872 268f45cc-cd09-0410-ab3c-d52691b4dbfc
39 files changed:
WebCore/ChangeLog
WebCore/GNUmakefile.am
WebCore/WebCore.gypi
WebCore/WebCore.pro
WebCore/WebCore.vcproj/WebCore.vcproj
WebCore/WebCore.xcodeproj/project.pbxproj
WebCore/bindings/scripts/CodeGenerator.pm
WebCore/bindings/scripts/CodeGeneratorObjC.pm
WebCore/svg/DeprecatedSVGAnimatedPropertyTraits.h
WebCore/svg/DeprecatedSVGAnimatedTemplate.h
WebCore/svg/SVGAnimatedEnumeration.h [new file with mode: 0644]
WebCore/svg/SVGAnimatedEnumeration.idl
WebCore/svg/SVGAnimatedInteger.h [new file with mode: 0644]
WebCore/svg/SVGClipPathElement.h
WebCore/svg/SVGComponentTransferFunctionElement.h
WebCore/svg/SVGFEBlendElement.h
WebCore/svg/SVGFEColorMatrixElement.h
WebCore/svg/SVGFECompositeElement.h
WebCore/svg/SVGFEConvolveMatrixElement.h
WebCore/svg/SVGFEDiffuseLightingElement.cpp
WebCore/svg/SVGFEDiffuseLightingElement.h
WebCore/svg/SVGFEDisplacementMapElement.h
WebCore/svg/SVGFEGaussianBlurElement.cpp
WebCore/svg/SVGFEGaussianBlurElement.h
WebCore/svg/SVGFEMorphologyElement.h
WebCore/svg/SVGFESpecularLightingElement.cpp
WebCore/svg/SVGFESpecularLightingElement.h
WebCore/svg/SVGFETurbulenceElement.cpp
WebCore/svg/SVGFETurbulenceElement.h
WebCore/svg/SVGFilterElement.cpp
WebCore/svg/SVGFilterElement.h
WebCore/svg/SVGGradientElement.h
WebCore/svg/SVGMarkerElement.cpp
WebCore/svg/SVGMarkerElement.h
WebCore/svg/SVGMaskElement.h
WebCore/svg/SVGPatternElement.h
WebCore/svg/SVGTextContentElement.h
WebCore/svg/SVGTextPathElement.h
WebCore/svg/properties/SVGAnimatedPropertyMacros.h