Changeset 70872 in webkit


Ignore:
Timestamp:
Oct 29, 2010 6:50:03 AM (13 years ago)
Author:
Nikolas Zimmermann
Message:

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.
Location:
trunk/WebCore
Files:
2 added
37 edited

Legend:

Unmodified
Added
Removed
  • trunk/WebCore/ChangeLog

    r70870 r70872  
     12010-10-29  Nikolas Zimmermann  <nzimmermann@rim.com>
     2
     3        Reviewed by Dirk Schulze.
     4
     5        Convert SVGAnimatedEnumeration/Integer to the new SVGAnimatedPropertyTearOff concept
     6        https://bugs.webkit.org/show_bug.cgi?id=48623
     7
     8        Besides converting SVGAnimatedEnumeration/Integer to the new animated property tear off concept, fix support
     9        for multiple wrappers within the new concept, which was broken - covered by existing svg/dynamic-updates/ tests.
     10
     11        Replace all 'extern char[]' usage when using the multiple wrappers macro, by static AtomicStrings.
     12
     13        * GNUmakefile.am: Add SVGAnimatedEnumeration.h / SVGAnimatedInteger.h to build.
     14        * WebCore.gypi: Ditto.
     15        * WebCore.pro: Ditto.
     16        * WebCore.vcproj/WebCore.vcproj: Ditto.
     17        * WebCore.xcodeproj/project.pbxproj: Ditto.
     18        * bindings/scripts/CodeGenerator.pm: Recognize SVGAnimatedEnumeration / SVGAnimatedInteger as animated types using the new concept.
     19        * bindings/scripts/CodeGeneratorObjC.pm: Touched, to force regenerating ObjC bindings, dependency tracking is obviously broken.
     20        * svg/DeprecatedSVGAnimatedPropertyTraits.h: Remove SVGAnimatedBoolean/Enumeration/Integer handling.
     21        * svg/DeprecatedSVGAnimatedTemplate.h: Ditto.
     22        * svg/SVGAnimatedEnumeration.h: Added.
     23        * svg/SVGAnimatedEnumeration.idl:
     24        * svg/SVGAnimatedInteger.h: Added.
     25        * svg/SVGClipPathElement.h: Adapted all code to create new style animated property tear offs for long & int types.
     26        * svg/SVGComponentTransferFunctionElement.h:
     27        * svg/SVGFEBlendElement.h:
     28        * svg/SVGFEColorMatrixElement.h:
     29        * svg/SVGFECompositeElement.h:
     30        * svg/SVGFEConvolveMatrixElement.h:
     31        * svg/SVGFEDiffuseLightingElement.cpp:
     32        (WebCore::SVGFEDiffuseLightingElement::kernelUnitLengthXIdentifier): Replaced extern[] char hack using a static AtomicString.
     33        (WebCore::SVGFEDiffuseLightingElement::kernelUnitLengthYIdentifier): Ditto.
     34        * svg/SVGFEDiffuseLightingElement.h:
     35        * svg/SVGFEDisplacementMapElement.h:
     36        * svg/SVGFEGaussianBlurElement.cpp:
     37        (WebCore::SVGFEGaussianBlurElement::stdDeviationXIdentifier): Ditto.
     38        (WebCore::SVGFEGaussianBlurElement::stdDeviationYIdentifier): Ditto.
     39        * svg/SVGFEGaussianBlurElement.h:
     40        * svg/SVGFEMorphologyElement.h:
     41        * svg/SVGFESpecularLightingElement.cpp:
     42        (WebCore::SVGFESpecularLightingElement::kernelUnitLengthXIdentifier): Ditto.
     43        (WebCore::SVGFESpecularLightingElement::kernelUnitLengthYIdentifier): Ditto.
     44        * svg/SVGFESpecularLightingElement.h:
     45        * svg/SVGFETurbulenceElement.cpp:
     46        (WebCore::SVGFETurbulenceElement::baseFrequencyXIdentifier): Ditto.
     47        (WebCore::SVGFETurbulenceElement::baseFrequencyYIdentifier): Ditto.
     48        * svg/SVGFETurbulenceElement.h:
     49        * svg/SVGFilterElement.cpp:
     50        (WebCore::SVGFilterElement::filterResXIdentifier): Ditto.
     51        (WebCore::SVGFilterElement::filterResYIdentifier): Ditto.
     52        * svg/SVGFilterElement.h:
     53        * svg/SVGGradientElement.h:
     54        * svg/SVGMarkerElement.cpp:
     55        (WebCore::SVGMarkerElement::orientTypeIdentifier): Ditto.
     56        (WebCore::SVGMarkerElement::orientAngleIdentifier): Ditto.
     57        * svg/SVGMarkerElement.h:
     58        * svg/SVGMaskElement.h:
     59        * svg/SVGPatternElement.h:
     60        * svg/SVGTextContentElement.h:
     61        * svg/SVGTextPathElement.h:
     62        * svg/properties/SVGAnimatedPropertyMacros.h: Add new macro for multiple wrappers using static properties.
     63
    1642010-10-29  Andreas Kling  <kling@webkit.org>
    265
  • trunk/WebCore/GNUmakefile.am

    r70857 r70872  
    30473047        WebCore/svg/SVGAnimatedAngle.h \
    30483048        WebCore/svg/SVGAnimatedBoolean.h \
     3049        WebCore/svg/SVGAnimatedEnumeration.h \
     3050        WebCore/svg/SVGAnimatedInteger.h \
    30493051        WebCore/svg/SVGAnimatedLength.h \
    30503052        WebCore/svg/SVGAnimatedLengthList.h \
  • trunk/WebCore/WebCore.gypi

    r70857 r70872  
    39803980            'svg/SVGAnimatedAngle.h',
    39813981            'svg/SVGAnimatedBoolean.h',
     3982            'svg/SVGAnimatedEnumeration.h',
     3983            'svg/SVGAnimatedInteger.h',
    39823984            'svg/SVGAnimatedLength.h',
    39833985            'svg/SVGAnimatedLengthList.h',
  • trunk/WebCore/WebCore.pro

    r70857 r70872  
    23702370    svg/SVGAnimatedAngle.h \
    23712371    svg/SVGAnimatedBoolean.h \
     2372    svg/SVGAnimatedEnumeration.h \
     2373    svg/SVGAnimatedInteger.h \
    23722374    svg/SVGAnimatedLength.h \
    23732375    svg/SVGAnimatedLengthList.h \
  • trunk/WebCore/WebCore.vcproj/WebCore.vcproj

    r70857 r70872  
    6161761617                        </File>
    6161861618                        <File
     61619                                RelativePath="..\svg\SVGAnimatedEnumeration.h"
     61620                                >
     61621                        </File>
     61622                        <File
     61623                                RelativePath="..\svg\SVGAnimatedInteger.h"
     61624                                >
     61625                        </File>
     61626                        <File
    6161961627                                RelativePath="..\svg\SVGAnimatedLength.h"
    6162061628                                >
  • trunk/WebCore/WebCore.xcodeproj/project.pbxproj

    r70857 r70872  
    9292                082341C50FCF3A9500D75BD6 /* WMLSelectElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 082341C30FCF3A9400D75BD6 /* WMLSelectElement.cpp */; };
    9393                082341C60FCF3A9500D75BD6 /* WMLSelectElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 082341C40FCF3A9400D75BD6 /* WMLSelectElement.h */; };
     94                0823D159127AD6AC000EBC95 /* SVGAnimatedInteger.h in Headers */ = {isa = PBXBuildFile; fileRef = 0823D158127AD6AC000EBC95 /* SVGAnimatedInteger.h */; settings = {ATTRIBUTES = (Private, ); }; };
    9495                082FCAC4110927CE00CC4821 /* JSSVGContextCache.h in Headers */ = {isa = PBXBuildFile; fileRef = 082FCAC3110927CE00CC4821 /* JSSVGContextCache.h */; settings = {ATTRIBUTES = (Private, ); }; };
    9596                083192AA112B43050083C3B9 /* RenderSVGResource.h in Headers */ = {isa = PBXBuildFile; fileRef = 083192A7112B43050083C3B9 /* RenderSVGResource.h */; };
     
    233234                08CD61BC0ED3929C002DDF51 /* WMLTaskElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 08CD61B80ED3929C002DDF51 /* WMLTaskElement.cpp */; };
    234235                08CD61BD0ED3929C002DDF51 /* WMLTaskElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 08CD61B90ED3929C002DDF51 /* WMLTaskElement.h */; };
     236                08D46CE3127AD5FC0089694B /* SVGAnimatedEnumeration.h in Headers */ = {isa = PBXBuildFile; fileRef = 08D46CE2127AD5FC0089694B /* SVGAnimatedEnumeration.h */; settings = {ATTRIBUTES = (Private, ); }; };
    235237                08DAB9BA1103D9A5003E7ABA /* RenderSVGShadowTreeRootContainer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 08DAB9B81103D9A5003E7ABA /* RenderSVGShadowTreeRootContainer.cpp */; };
    236238                08DAB9BB1103D9A5003E7ABA /* RenderSVGShadowTreeRootContainer.h in Headers */ = {isa = PBXBuildFile; fileRef = 08DAB9B91103D9A5003E7ABA /* RenderSVGShadowTreeRootContainer.h */; };
     
    14941496                75793ED50D0CE85B007FC0AC /* DOMMessageEventInternal.h in Headers */ = {isa = PBXBuildFile; fileRef = 75793ED20D0CE85B007FC0AC /* DOMMessageEventInternal.h */; };
    14951497                758978EC127090D60076D5A9 /* SpeechInputResult.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 758978EA127090D60076D5A9 /* SpeechInputResult.cpp */; };
    1496                 758978ED127090D60076D5A9 /* SpeechInputResult.h in Headers */ = {isa = PBXBuildFile; fileRef = 758978EB127090D60076D5A9 /* SpeechInputResult.h */; };
    14971498                7637C541112E7B74003D6CDC /* WebSocketHandshakeRequest.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7637C540112E7B74003D6CDC /* WebSocketHandshakeRequest.cpp */; };
    14981499                7637C543112E7B7E003D6CDC /* WebSocketHandshakeRequest.h in Headers */ = {isa = PBXBuildFile; fileRef = 7637C542112E7B7E003D6CDC /* WebSocketHandshakeRequest.h */; };
     
    61126113                082341C30FCF3A9400D75BD6 /* WMLSelectElement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WMLSelectElement.cpp; sourceTree = "<group>"; };
    61136114                082341C40FCF3A9400D75BD6 /* WMLSelectElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WMLSelectElement.h; sourceTree = "<group>"; };
     6115                0823D158127AD6AC000EBC95 /* SVGAnimatedInteger.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SVGAnimatedInteger.h; sourceTree = "<group>"; };
    61146116                082FCAC3110927CE00CC4821 /* JSSVGContextCache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSSVGContextCache.h; sourceTree = "<group>"; };
    61156117                083192A7112B43050083C3B9 /* RenderSVGResource.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RenderSVGResource.h; sourceTree = "<group>"; };
     
    62386240                08CD61B80ED3929C002DDF51 /* WMLTaskElement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WMLTaskElement.cpp; sourceTree = "<group>"; };
    62396241                08CD61B90ED3929C002DDF51 /* WMLTaskElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WMLTaskElement.h; sourceTree = "<group>"; };
     6242                08D46CE2127AD5FC0089694B /* SVGAnimatedEnumeration.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SVGAnimatedEnumeration.h; sourceTree = "<group>"; };
    62406243                08DAB9B81103D9A5003E7ABA /* RenderSVGShadowTreeRootContainer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RenderSVGShadowTreeRootContainer.cpp; sourceTree = "<group>"; };
    62416244                08DAB9B91103D9A5003E7ABA /* RenderSVGShadowTreeRootContainer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RenderSVGShadowTreeRootContainer.h; sourceTree = "<group>"; };
     
    1600216005                                085797081278394C00A8EC5F /* SVGAnimatedBoolean.h */,
    1600316006                                B22277E70D00BF1F0071B782 /* SVGAnimatedBoolean.idl */,
     16007                                08D46CE2127AD5FC0089694B /* SVGAnimatedEnumeration.h */,
    1600416008                                B22277E80D00BF1F0071B782 /* SVGAnimatedEnumeration.idl */,
     16009                                0823D158127AD6AC000EBC95 /* SVGAnimatedInteger.h */,
    1600516010                                B22277E90D00BF1F0071B782 /* SVGAnimatedInteger.idl */,
    1600616011                                089021A8126EF5DE0092D5EA /* SVGAnimatedLength.h */,
     
    2122221227                                085797091278394C00A8EC5F /* SVGAnimatedBoolean.h in Headers */,
    2122321228                                08525E631278C00100A84778 /* SVGAnimatedStaticPropertyTearOff.h in Headers */,
     21229                                08D46CE3127AD5FC0089694B /* SVGAnimatedEnumeration.h in Headers */,
     21230                                0823D159127AD6AC000EBC95 /* SVGAnimatedInteger.h in Headers */,
    2122421231                        );
    2122521232                        runOnlyForDeploymentPostprocessing = 0;
     
    2128121288                        buildConfigurationList = 149C284308902B11008A9EFC /* Build configuration list for PBXProject "WebCore" */;
    2128221289                        compatibilityVersion = "Xcode 2.4";
    21283                         developmentRegion = English;
    2128421290                        hasScannedForEncodings = 1;
    2128521291                        knownRegions = (
  • trunk/WebCore/bindings/scripts/CodeGenerator.pm

    r70857 r70872  
    5757my %nonPointerTypeHash = ("DOMTimeStamp" => 1, "CompareHow" => 1, "SVGPaintType" => 1);
    5858
    59 my %svgNewStyleAnimatedTypeHash = ("SVGAnimatedAngle" => 1, "SVGAnimatedBoolean" => 1, "SVGAnimatedLength" => 1, "SVGAnimatedLengthList" => 1, "SVGAnimatedRect" => 1);
     59my %svgNewStyleAnimatedTypeHash = ("SVGAnimatedAngle" => 1, "SVGAnimatedBoolean" => 1,
     60                                   "SVGAnimatedEnumeration" => 1, "SVGAnimatedInteger" => 1,
     61                                   "SVGAnimatedLength" => 1, "SVGAnimatedLengthList" => 1,
     62                                   "SVGAnimatedRect" => 1);
    6063
    6164my %svgAnimatedTypeHash = ("SVGAnimatedAngle" => 1, "SVGAnimatedBoolean" => 1,
  • trunk/WebCore/bindings/scripts/CodeGeneratorObjC.pm

    r70857 r70872  
    1 # 
     1#
    22# Copyright (C) 2005, 2006 Nikolas Zimmermann <zimmermann@kde.org>
    33# Copyright (C) 2006 Anders Carlsson <andersca@mac.com>
  • trunk/WebCore/svg/DeprecatedSVGAnimatedPropertyTraits.h

    r70631 r70872  
    2323
    2424#if ENABLE(SVG)
    25 #include "FloatRect.h"
    2625#include "PlatformString.h"
    2726#include "SVGNumberList.h"
     
    3332template<typename Type>
    3433struct DeprecatedSVGAnimatedPropertyTraits : public Noncopyable { };
    35 
    36 // SVGAnimatedBoolean
    37 template<>
    38 struct DeprecatedSVGAnimatedPropertyTraits<bool> : public Noncopyable {
    39     typedef const bool& PassType;
    40     typedef bool ReturnType;
    41     typedef bool StoredType;
    42 
    43     static ReturnType null() { return false; }
    44     static ReturnType toReturnType(const StoredType& type) { return type; }
    45     static String toString(PassType type) { return type ? "true" : "false"; }
    46 };
    47 
    48 // SVGAnimatedEnumeration
    49 template<>
    50 struct DeprecatedSVGAnimatedPropertyTraits<int> : public Noncopyable {
    51     typedef const int& PassType;
    52     typedef int ReturnType;
    53     typedef int StoredType;
    54 
    55     static ReturnType null() { return 0; }
    56     static ReturnType toReturnType(const StoredType& type) { return type; }
    57     static String toString(PassType type) { return String::number(type); }
    58 };
    59 
    60 // SVGAnimatedInteger
    61 template<>
    62 struct DeprecatedSVGAnimatedPropertyTraits<long> : public Noncopyable {
    63     typedef const long& PassType;
    64     typedef long ReturnType;
    65     typedef long StoredType;
    66 
    67     static ReturnType null() { return 0l; }
    68     static ReturnType toReturnType(const StoredType& type) { return type; }
    69     static String toString(PassType type) { return String::number(type); }
    70 };
    7134
    7235// SVGAnimatedNumber
  • trunk/WebCore/svg/DeprecatedSVGAnimatedTemplate.h

    r70857 r70872  
    155155
    156156    // Common type definitions, to ease IDL generation.
    157     typedef DeprecatedSVGAnimatedTemplate<int> SVGAnimatedEnumeration;
    158     typedef DeprecatedSVGAnimatedTemplate<long> SVGAnimatedInteger;
    159157    typedef DeprecatedSVGAnimatedTemplate<float> SVGAnimatedNumber;
    160158    typedef DeprecatedSVGAnimatedTemplate<SVGNumberList*> SVGAnimatedNumberList;
  • trunk/WebCore/svg/SVGAnimatedEnumeration.idl

    r64579 r70872  
    2727
    2828    interface [Conditional=SVG] SVGAnimatedEnumeration {
    29                  attribute unsigned short baseVal
    30                      /*setter raises(DOMException)*/;
     29        attribute unsigned short baseVal;
    3130        readonly attribute unsigned short animVal;
    3231    };
  • trunk/WebCore/svg/SVGClipPathElement.h

    r70857 r70872  
    2323
    2424#if ENABLE(SVG)
    25 #include "RenderObject.h"
    2625#include "SVGAnimatedPropertyMacros.h"
    2726#include "SVGExternalResourcesRequired.h"
     
    3130
    3231namespace WebCore {
     32
     33class RenderObject;
    3334
    3435class SVGClipPathElement : public SVGStyledTransformableElement,
     
    5253    virtual RenderObject* createRenderer(RenderArena*, RenderStyle*);
    5354
    54     DECLARE_ANIMATED_PROPERTY(SVGClipPathElement, SVGNames::clipPathUnitsAttr, int, ClipPathUnits, clipPathUnits)
     55    DECLARE_ANIMATED_STATIC_PROPERTY_NEW(SVGClipPathElement, SVGNames::clipPathUnitsAttr, int, ClipPathUnits, clipPathUnits)
    5556
    5657    // SVGExternalResourcesRequired
  • trunk/WebCore/svg/SVGComponentTransferFunctionElement.h

    r66397 r70872  
    2323
    2424#if ENABLE(SVG) && ENABLE(FILTERS)
    25 #include "SVGElement.h"
    26 #include "SVGNames.h"
     25#include "SVGAnimatedPropertyMacros.h"
    2726#include "SVGNumberList.h"
    2827#include "FEComponentTransfer.h"
     
    4140       
    4241    private:
    43         DECLARE_ANIMATED_PROPERTY(SVGComponentTransferFunctionElement, SVGNames::typeAttr, int, Type, type)
     42        DECLARE_ANIMATED_STATIC_PROPERTY_NEW(SVGComponentTransferFunctionElement, SVGNames::typeAttr, int, Type, type)
    4443        DECLARE_ANIMATED_PROPERTY(SVGComponentTransferFunctionElement, SVGNames::tableValuesAttr, SVGNumberList*, TableValues, tableValues)
    4544        DECLARE_ANIMATED_PROPERTY(SVGComponentTransferFunctionElement, SVGNames::slopeAttr, float, Slope, slope)
  • trunk/WebCore/svg/SVGFEBlendElement.h

    r68344 r70872  
    4141    DECLARE_ANIMATED_PROPERTY(SVGFEBlendElement, SVGNames::inAttr, String, In1, in1)
    4242    DECLARE_ANIMATED_PROPERTY(SVGFEBlendElement, SVGNames::in2Attr, String, In2, in2)
    43     DECLARE_ANIMATED_PROPERTY(SVGFEBlendElement, SVGNames::modeAttr, int, Mode, mode)
     43    DECLARE_ANIMATED_STATIC_PROPERTY_NEW(SVGFEBlendElement, SVGNames::modeAttr, int, Mode, mode)
    4444};
    4545
  • trunk/WebCore/svg/SVGFEColorMatrixElement.h

    r69409 r70872  
    4242
    4343    DECLARE_ANIMATED_PROPERTY(SVGFEColorMatrixElement, SVGNames::inAttr, String, In1, in1)
    44     DECLARE_ANIMATED_PROPERTY(SVGFEColorMatrixElement, SVGNames::typeAttr, int, Type, type)
     44    DECLARE_ANIMATED_STATIC_PROPERTY_NEW(SVGFEColorMatrixElement, SVGNames::typeAttr, int, Type, type)
    4545    DECLARE_ANIMATED_PROPERTY(SVGFEColorMatrixElement, SVGNames::valuesAttr, SVGNumberList*, Values, values)
    4646};
  • trunk/WebCore/svg/SVGFECompositeElement.h

    r68797 r70872  
    4242    DECLARE_ANIMATED_PROPERTY(SVGFECompositeElement, SVGNames::inAttr, String, In1, in1)
    4343    DECLARE_ANIMATED_PROPERTY(SVGFECompositeElement, SVGNames::in2Attr, String, In2, in2)
    44     DECLARE_ANIMATED_PROPERTY(SVGFECompositeElement, SVGNames::operatorAttr, int, _operator, _operator)
     44    DECLARE_ANIMATED_STATIC_PROPERTY_NEW(SVGFECompositeElement, SVGNames::operatorAttr, int, _operator, _operator)
    4545    DECLARE_ANIMATED_PROPERTY(SVGFECompositeElement, SVGNames::k1Attr, float, K1, k1)
    4646    DECLARE_ANIMATED_PROPERTY(SVGFECompositeElement, SVGNames::k2Attr, float, K2, k2)
  • trunk/WebCore/svg/SVGFEConvolveMatrixElement.h

    r70857 r70872  
    4343
    4444    DECLARE_ANIMATED_PROPERTY(SVGFEConvolveMatrixElement, SVGNames::inAttr, String, In1, in1)
    45     DECLARE_ANIMATED_PROPERTY(SVGFEConvolveMatrixElement, SVGNames::orderXAttr, long, OrderX, orderX)
    46     DECLARE_ANIMATED_PROPERTY(SVGFEConvolveMatrixElement, SVGNames::orderYAttr, long, OrderY, orderY)
     45    DECLARE_ANIMATED_STATIC_PROPERTY_NEW(SVGFEConvolveMatrixElement, SVGNames::orderXAttr, long, OrderX, orderX)
     46    DECLARE_ANIMATED_STATIC_PROPERTY_NEW(SVGFEConvolveMatrixElement, SVGNames::orderYAttr, long, OrderY, orderY)
    4747    DECLARE_ANIMATED_PROPERTY(SVGFEConvolveMatrixElement, SVGNames::kernelMatrixAttr, SVGNumberList*, KernelMatrix, kernelMatrix)
    4848    DECLARE_ANIMATED_PROPERTY(SVGFEConvolveMatrixElement, SVGNames::divisorAttr, float, Divisor, divisor)
    4949    DECLARE_ANIMATED_PROPERTY(SVGFEConvolveMatrixElement, SVGNames::biasAttr, float, Bias, bias)
    50     DECLARE_ANIMATED_PROPERTY(SVGFEConvolveMatrixElement, SVGNames::targetXAttr, long, TargetX, targetX)
    51     DECLARE_ANIMATED_PROPERTY(SVGFEConvolveMatrixElement, SVGNames::targetYAttr, long, TargetY, targetY)
    52     DECLARE_ANIMATED_PROPERTY(SVGFEConvolveMatrixElement, SVGNames::operatorAttr, int, EdgeMode, edgeMode)
     50    DECLARE_ANIMATED_STATIC_PROPERTY_NEW(SVGFEConvolveMatrixElement, SVGNames::targetXAttr, long, TargetX, targetX)
     51    DECLARE_ANIMATED_STATIC_PROPERTY_NEW(SVGFEConvolveMatrixElement, SVGNames::targetYAttr, long, TargetY, targetY)
     52    DECLARE_ANIMATED_STATIC_PROPERTY_NEW(SVGFEConvolveMatrixElement, SVGNames::operatorAttr, int, EdgeMode, edgeMode)
    5353    DECLARE_ANIMATED_PROPERTY_MULTIPLE_WRAPPERS(SVGFEConvolveMatrixElement, SVGNames::kernelUnitLengthAttr, SVGKernelUnitLengthXIdentifier, float, KernelUnitLengthX, kernelUnitLengthX)
    5454    DECLARE_ANIMATED_PROPERTY_MULTIPLE_WRAPPERS(SVGFEConvolveMatrixElement, SVGNames::kernelUnitLengthAttr, SVGKernelUnitLengthYIdentifier, float, KernelUnitLengthY, kernelUnitLengthY)
  • trunk/WebCore/svg/SVGFEDiffuseLightingElement.cpp

    r68022 r70872  
    3333namespace WebCore {
    3434
    35 char SVGKernelUnitLengthXIdentifier[] = "SVGKernelUnitLengthX";
    36 char SVGKernelUnitLengthYIdentifier[] = "SVGKernelUnitLengthY";
    37 
    3835inline SVGFEDiffuseLightingElement::SVGFEDiffuseLightingElement(const QualifiedName& tagName, Document* document)
    3936    : SVGFilterPrimitiveStandardAttributes(tagName, document)
     
    4643{
    4744    return adoptRef(new SVGFEDiffuseLightingElement(tagName, document));
     45}
     46
     47const AtomicString& SVGFEDiffuseLightingElement::kernelUnitLengthXIdentifier()
     48{
     49    DEFINE_STATIC_LOCAL(AtomicString, s_identifier, ("SVGKernelUnitLengthX"));
     50    return s_identifier;   
     51}
     52
     53const AtomicString& SVGFEDiffuseLightingElement::kernelUnitLengthYIdentifier()
     54{
     55    DEFINE_STATIC_LOCAL(AtomicString, s_identifier, ("SVGKernelUnitLengthY"));
     56    return s_identifier;   
    4857}
    4958
  • trunk/WebCore/svg/SVGFEDiffuseLightingElement.h

    r66397 r70872  
    2929namespace WebCore {
    3030
    31 extern char SVGKernelUnitLengthXIdentifier[];
    32 extern char SVGKernelUnitLengthYIdentifier[];
    33 
    3431class FEDiffuseLighting;
    3532class SVGColor;
     
    4744    virtual PassRefPtr<FilterEffect> build(SVGFilterBuilder*);
    4845
     46    static const AtomicString& kernelUnitLengthXIdentifier();
     47    static const AtomicString& kernelUnitLengthYIdentifier();
     48
    4949    DECLARE_ANIMATED_PROPERTY(SVGFEDiffuseLightingElement, SVGNames::inAttr, String, In1, in1)
    5050    DECLARE_ANIMATED_PROPERTY(SVGFEDiffuseLightingElement, SVGNames::diffuseConstantAttr, float, DiffuseConstant, diffuseConstant)
    5151    DECLARE_ANIMATED_PROPERTY(SVGFEDiffuseLightingElement, SVGNames::surfaceScaleAttr, float, SurfaceScale, surfaceScale)
    52     DECLARE_ANIMATED_PROPERTY_MULTIPLE_WRAPPERS(SVGFEDiffuseLightingElement, SVGNames::kernelUnitLengthAttr, SVGKernelUnitLengthXIdentifier, float, KernelUnitLengthX, kernelUnitLengthX)
    53     DECLARE_ANIMATED_PROPERTY_MULTIPLE_WRAPPERS(SVGFEDiffuseLightingElement, SVGNames::kernelUnitLengthAttr, SVGKernelUnitLengthYIdentifier, float, KernelUnitLengthY, kernelUnitLengthY)
     52    DECLARE_ANIMATED_PROPERTY_MULTIPLE_WRAPPERS(SVGFEDiffuseLightingElement, SVGNames::kernelUnitLengthAttr, kernelUnitLengthXIdentifier(), float, KernelUnitLengthX, kernelUnitLengthX)
     53    DECLARE_ANIMATED_PROPERTY_MULTIPLE_WRAPPERS(SVGFEDiffuseLightingElement, SVGNames::kernelUnitLengthAttr, kernelUnitLengthYIdentifier(), float, KernelUnitLengthY, kernelUnitLengthY)
    5454
    5555    PassRefPtr<LightSource> findLights() const;
  • trunk/WebCore/svg/SVGFEDisplacementMapElement.h

    r68022 r70872  
    4242    DECLARE_ANIMATED_PROPERTY(SVGFEDisplacementMapElement, SVGNames::inAttr, String, In1, in1)
    4343    DECLARE_ANIMATED_PROPERTY(SVGFEDisplacementMapElement, SVGNames::in2Attr, String, In2, in2)
    44     DECLARE_ANIMATED_PROPERTY(SVGFEDisplacementMapElement, SVGNames::xChannelSelectorAttr, int, XChannelSelector, xChannelSelector)
    45     DECLARE_ANIMATED_PROPERTY(SVGFEDisplacementMapElement, SVGNames::yChannelSelectorAttr, int, YChannelSelector, yChannelSelector)
     44    DECLARE_ANIMATED_STATIC_PROPERTY_NEW(SVGFEDisplacementMapElement, SVGNames::xChannelSelectorAttr, int, XChannelSelector, xChannelSelector)
     45    DECLARE_ANIMATED_STATIC_PROPERTY_NEW(SVGFEDisplacementMapElement, SVGNames::yChannelSelectorAttr, int, YChannelSelector, yChannelSelector)
    4646    DECLARE_ANIMATED_PROPERTY(SVGFEDisplacementMapElement, SVGNames::scaleAttr, float, Scale, scale)
    4747};
  • trunk/WebCore/svg/SVGFEGaussianBlurElement.cpp

    r69077 r70872  
    3030namespace WebCore {
    3131
    32 char SVGStdDeviationXAttrIdentifier[] = "SVGStdDeviationXAttr";
    33 char SVGStdDeviationYAttrIdentifier[] = "SVGStdDeviationYAttr";
    34 
    3532inline SVGFEGaussianBlurElement::SVGFEGaussianBlurElement(const QualifiedName& tagName, Document* document)
    3633    : SVGFilterPrimitiveStandardAttributes(tagName, document)
     
    4138{
    4239    return adoptRef(new SVGFEGaussianBlurElement(tagName, document));
     40}
     41
     42const AtomicString& SVGFEGaussianBlurElement::stdDeviationXIdentifier()
     43{
     44    DEFINE_STATIC_LOCAL(AtomicString, s_identifier, ("SVGStdDeviationX"));
     45    return s_identifier;   
     46}
     47
     48const AtomicString& SVGFEGaussianBlurElement::stdDeviationYIdentifier()
     49{
     50    DEFINE_STATIC_LOCAL(AtomicString, s_identifier, ("SVGStdDeviationY"));
     51    return s_identifier;   
    4352}
    4453
  • trunk/WebCore/svg/SVGFEGaussianBlurElement.h

    r69077 r70872  
    2828namespace WebCore {
    2929
    30 extern char SVGStdDeviationXAttrIdentifier[];
    31 extern char SVGStdDeviationYAttrIdentifier[];
    32 
    3330class SVGFEGaussianBlurElement : public SVGFilterPrimitiveStandardAttributes {
    3431public:
     
    4542    virtual PassRefPtr<FilterEffect> build(SVGFilterBuilder*);
    4643
     44    static const AtomicString& stdDeviationXIdentifier();
     45    static const AtomicString& stdDeviationYIdentifier();
     46
    4747    DECLARE_ANIMATED_PROPERTY(SVGFEGaussianBlurElement, SVGNames::inAttr, String, In1, in1)
    48     DECLARE_ANIMATED_PROPERTY_MULTIPLE_WRAPPERS(SVGFEGaussianBlurElement, SVGNames::stdDeviationAttr, SVGStdDeviationXAttrIdentifier, float, StdDeviationX, stdDeviationX)
    49     DECLARE_ANIMATED_PROPERTY_MULTIPLE_WRAPPERS(SVGFEGaussianBlurElement, SVGNames::stdDeviationAttr, SVGStdDeviationYAttrIdentifier, float, StdDeviationY, stdDeviationY)
     48    DECLARE_ANIMATED_PROPERTY_MULTIPLE_WRAPPERS(SVGFEGaussianBlurElement, SVGNames::stdDeviationAttr, stdDeviationXIdentifier(), float, StdDeviationX, stdDeviationX)
     49    DECLARE_ANIMATED_PROPERTY_MULTIPLE_WRAPPERS(SVGFEGaussianBlurElement, SVGNames::stdDeviationAttr, stdDeviationYIdentifier(), float, StdDeviationY, stdDeviationY)
    5050};
    5151
  • trunk/WebCore/svg/SVGFEMorphologyElement.h

    r68168 r70872  
    4444    virtual PassRefPtr<FilterEffect> build(SVGFilterBuilder*);
    4545
     46    static const AtomicString& radiusXIdentifier();
     47    static const AtomicString& radiusYIdentifier();
     48
    4649    DECLARE_ANIMATED_PROPERTY(SVGFEMorphologyElement, SVGNames::inAttr, String, In1, in1)
    47     DECLARE_ANIMATED_PROPERTY(SVGFEMorphologyElement, SVGNames::operatorAttr, int, _operator, _operator)
     50    DECLARE_ANIMATED_STATIC_PROPERTY_NEW(SVGFEMorphologyElement, SVGNames::operatorAttr, int, _operator, _operator)
    4851    DECLARE_ANIMATED_PROPERTY_MULTIPLE_WRAPPERS(SVGFEMorphologyElement, SVGNames::radiusAttr, SVGRadiusXAttrIdentifier, float, RadiusX, radiusX)
    4952    DECLARE_ANIMATED_PROPERTY_MULTIPLE_WRAPPERS(SVGFEMorphologyElement, SVGNames::radiusAttr, SVGRadiusYAttrIdentifier, float, RadiusY, radiusY)
  • trunk/WebCore/svg/SVGFESpecularLightingElement.cpp

    r67847 r70872  
    4444{
    4545    return adoptRef(new SVGFESpecularLightingElement(tagName, document));
     46}
     47
     48const AtomicString& SVGFESpecularLightingElement::kernelUnitLengthXIdentifier()
     49{
     50    DEFINE_STATIC_LOCAL(AtomicString, s_identifier, ("SVGKernelUnitLengthX"));
     51    return s_identifier;   
     52}
     53
     54const AtomicString& SVGFESpecularLightingElement::kernelUnitLengthYIdentifier()
     55{
     56    DEFINE_STATIC_LOCAL(AtomicString, s_identifier, ("SVGKernelUnitLengthY"));
     57    return s_identifier;   
    4658}
    4759
  • trunk/WebCore/svg/SVGFESpecularLightingElement.h

    r68022 r70872  
    2929namespace WebCore {
    3030
    31 extern char SVGKernelUnitLengthXIdentifier[];
    32 extern char SVGKernelUnitLengthYIdentifier[];
    33 
    3431class SVGFESpecularLightingElement : public SVGFilterPrimitiveStandardAttributes {
    3532public:
     
    4340    virtual PassRefPtr<FilterEffect> build(SVGFilterBuilder*);
    4441
     42    static const AtomicString& kernelUnitLengthXIdentifier();
     43    static const AtomicString& kernelUnitLengthYIdentifier();
     44
    4545    DECLARE_ANIMATED_PROPERTY(SVGFESpecularLightingElement, SVGNames::inAttr, String, In1, in1)
    4646    DECLARE_ANIMATED_PROPERTY(SVGFESpecularLightingElement, SVGNames::specularConstantAttr, float, SpecularConstant, specularConstant)
    4747    DECLARE_ANIMATED_PROPERTY(SVGFESpecularLightingElement, SVGNames::specularExponentAttr, float, SpecularExponent, specularExponent)
    4848    DECLARE_ANIMATED_PROPERTY(SVGFESpecularLightingElement, SVGNames::surfaceScaleAttr, float, SurfaceScale, surfaceScale)
    49     DECLARE_ANIMATED_PROPERTY_MULTIPLE_WRAPPERS(SVGFESpecularLightingElement, SVGNames::kernelUnitLengthAttr, SVGKernelUnitLengthXIdentifier, float, KernelUnitLengthX, kernelUnitLengthX)
    50     DECLARE_ANIMATED_PROPERTY_MULTIPLE_WRAPPERS(SVGFESpecularLightingElement, SVGNames::kernelUnitLengthAttr, SVGKernelUnitLengthYIdentifier, float, KernelUnitLengthY, kernelUnitLengthY)
     49    DECLARE_ANIMATED_PROPERTY_MULTIPLE_WRAPPERS(SVGFESpecularLightingElement, SVGNames::kernelUnitLengthAttr, kernelUnitLengthXIdentifier(), float, KernelUnitLengthX, kernelUnitLengthX)
     50    DECLARE_ANIMATED_PROPERTY_MULTIPLE_WRAPPERS(SVGFESpecularLightingElement, SVGNames::kernelUnitLengthAttr, kernelUnitLengthYIdentifier(), float, KernelUnitLengthY, kernelUnitLengthY)
    5151
    5252    PassRefPtr<LightSource> findLights() const;
  • trunk/WebCore/svg/SVGFETurbulenceElement.cpp

    r67544 r70872  
    2929namespace WebCore {
    3030
    31 char SVGBaseFrequencyXIdentifier[] = "SVGBaseFrequencyX";
    32 char SVGBaseFrequencyYIdentifier[] = "SVGBaseFrequencyY";
    33 
    3431inline SVGFETurbulenceElement::SVGFETurbulenceElement(const QualifiedName& tagName, Document* document)
    3532    : SVGFilterPrimitiveStandardAttributes(tagName, document)
     
    4340{
    4441    return adoptRef(new SVGFETurbulenceElement(tagName, document));
     42}
     43
     44const AtomicString& SVGFETurbulenceElement::baseFrequencyXIdentifier()
     45{
     46    DEFINE_STATIC_LOCAL(AtomicString, s_identifier, ("SVGBaseFrequencyX"));
     47    return s_identifier;   
     48}
     49
     50const AtomicString& SVGFETurbulenceElement::baseFrequencyYIdentifier()
     51{
     52    DEFINE_STATIC_LOCAL(AtomicString, s_identifier, ("SVGBaseFrequencyY"));
     53    return s_identifier;   
    4554}
    4655
  • trunk/WebCore/svg/SVGFETurbulenceElement.h

    r68022 r70872  
    2828namespace WebCore {
    2929
    30 extern char SVGBaseFrequencyXIdentifier[];
    31 extern char SVGBaseFrequencyYIdentifier[];
    32 
    3330enum SVGStitchOptions {
    3431    SVG_STITCHTYPE_UNKNOWN  = 0,
     
    4946    virtual PassRefPtr<FilterEffect> build(SVGFilterBuilder*);
    5047
    51     DECLARE_ANIMATED_PROPERTY_MULTIPLE_WRAPPERS(SVGFETurbulenceElement, SVGNames::baseFrequencyAttr, SVGBaseFrequencyXIdentifier, float, BaseFrequencyX, baseFrequencyX)
    52     DECLARE_ANIMATED_PROPERTY_MULTIPLE_WRAPPERS(SVGFETurbulenceElement, SVGNames::baseFrequencyAttr, SVGBaseFrequencyYIdentifier, float, BaseFrequencyY, baseFrequencyY)
    53     DECLARE_ANIMATED_PROPERTY(SVGFETurbulenceElement, SVGNames::numOctavesAttr, long, NumOctaves, numOctaves)
     48    static const AtomicString& baseFrequencyXIdentifier();
     49    static const AtomicString& baseFrequencyYIdentifier();
     50
     51    DECLARE_ANIMATED_PROPERTY_MULTIPLE_WRAPPERS(SVGFETurbulenceElement, SVGNames::baseFrequencyAttr, baseFrequencyXIdentifier(), float, BaseFrequencyX, baseFrequencyX)
     52    DECLARE_ANIMATED_PROPERTY_MULTIPLE_WRAPPERS(SVGFETurbulenceElement, SVGNames::baseFrequencyAttr, baseFrequencyYIdentifier(), float, BaseFrequencyY, baseFrequencyY)
     53    DECLARE_ANIMATED_STATIC_PROPERTY_NEW(SVGFETurbulenceElement, SVGNames::numOctavesAttr, long, NumOctaves, numOctaves)
    5454    DECLARE_ANIMATED_PROPERTY(SVGFETurbulenceElement, SVGNames::seedAttr, float, Seed, seed)
    55     DECLARE_ANIMATED_PROPERTY(SVGFETurbulenceElement, SVGNames::stitchTilesAttr, int, StitchTiles, stitchTiles)
    56     DECLARE_ANIMATED_PROPERTY(SVGFETurbulenceElement, SVGNames::typeAttr, int, Type, type)
     55    DECLARE_ANIMATED_STATIC_PROPERTY_NEW(SVGFETurbulenceElement, SVGNames::stitchTilesAttr, int, StitchTiles, stitchTiles)
     56    DECLARE_ANIMATED_STATIC_PROPERTY_NEW(SVGFETurbulenceElement, SVGNames::typeAttr, int, Type, type)
    5757};
    5858
  • trunk/WebCore/svg/SVGFilterElement.cpp

    r66498 r70872  
    4040namespace WebCore {
    4141
    42 char SVGFilterResXIdentifier[] = "SVGFilterResX";
    43 char SVGFilterResYIdentifier[] = "SVGFilterResY";
    44 
    4542inline SVGFilterElement::SVGFilterElement(const QualifiedName& tagName, Document* document)
    4643    : SVGStyledElement(tagName, document)
     
    6259{
    6360    return adoptRef(new SVGFilterElement(tagName, document));
     61}
     62
     63const AtomicString& SVGFilterElement::filterResXIdentifier()
     64{
     65    DEFINE_STATIC_LOCAL(AtomicString, s_identifier, ("SVGFilterResX"));
     66    return s_identifier;   
     67}
     68
     69const AtomicString& SVGFilterElement::filterResYIdentifier()
     70{
     71    DEFINE_STATIC_LOCAL(AtomicString, s_identifier, ("SVGFilterResY"));
     72    return s_identifier;   
    6473}
    6574
  • trunk/WebCore/svg/SVGFilterElement.h

    r70857 r70872  
    3535namespace WebCore {
    3636
    37 extern char SVGFilterResXIdentifier[];
    38 extern char SVGFilterResYIdentifier[];
    39 
    4037class SVGFilterElement : public SVGStyledElement,
    4138                         public SVGURIReference,
     
    6259    virtual bool selfHasRelativeLengths() const;
    6360
    64     DECLARE_ANIMATED_PROPERTY(SVGFilterElement, SVGNames::filterUnitsAttr, int, FilterUnits, filterUnits)
    65     DECLARE_ANIMATED_PROPERTY(SVGFilterElement, SVGNames::primitiveUnitsAttr, int, PrimitiveUnits, primitiveUnits)
     61    static const AtomicString& filterResXIdentifier();
     62    static const AtomicString& filterResYIdentifier();
     63
     64    DECLARE_ANIMATED_STATIC_PROPERTY_NEW(SVGFilterElement, SVGNames::filterUnitsAttr, int, FilterUnits, filterUnits)
     65    DECLARE_ANIMATED_STATIC_PROPERTY_NEW(SVGFilterElement, SVGNames::primitiveUnitsAttr, int, PrimitiveUnits, primitiveUnits)
    6666    DECLARE_ANIMATED_PROPERTY_NEW(SVGFilterElement, SVGNames::xAttr, SVGLength, X, x)
    6767    DECLARE_ANIMATED_PROPERTY_NEW(SVGFilterElement, SVGNames::yAttr, SVGLength, Y, y)
    6868    DECLARE_ANIMATED_PROPERTY_NEW(SVGFilterElement, SVGNames::widthAttr, SVGLength, Width, width)
    6969    DECLARE_ANIMATED_PROPERTY_NEW(SVGFilterElement, SVGNames::heightAttr, SVGLength, Height, height)
    70     DECLARE_ANIMATED_PROPERTY_MULTIPLE_WRAPPERS(SVGFilterElement, SVGNames::filterResAttr, SVGFilterResXIdentifier, long, FilterResX, filterResX)
    71     DECLARE_ANIMATED_PROPERTY_MULTIPLE_WRAPPERS(SVGFilterElement, SVGNames::filterResAttr, SVGFilterResYIdentifier, long, FilterResY, filterResY)
     70
     71    DECLARE_ANIMATED_STATIC_PROPERTY_MULTIPLE_WRAPPERS_NEW(SVGFilterElement, SVGNames::filterResAttr, filterResXIdentifier(), long, FilterResX, filterResX)
     72    DECLARE_ANIMATED_STATIC_PROPERTY_MULTIPLE_WRAPPERS_NEW(SVGFilterElement, SVGNames::filterResAttr, filterResYIdentifier(), long, FilterResY, filterResY)
    7273
    7374    // SVGURIReference
  • trunk/WebCore/svg/SVGGradientElement.h

    r70857 r70872  
    5050        virtual void childrenChanged(bool changedByParser = false, Node* beforeChange = 0, Node* afterChange = 0, int childCountDelta = 0);
    5151
    52         DECLARE_ANIMATED_PROPERTY(SVGGradientElement, SVGNames::spreadMethodAttr, int, SpreadMethod, spreadMethod)
    53         DECLARE_ANIMATED_PROPERTY(SVGGradientElement, SVGNames::gradientUnitsAttr, int, GradientUnits, gradientUnits)
     52        DECLARE_ANIMATED_STATIC_PROPERTY_NEW(SVGGradientElement, SVGNames::spreadMethodAttr, int, SpreadMethod, spreadMethod)
     53        DECLARE_ANIMATED_STATIC_PROPERTY_NEW(SVGGradientElement, SVGNames::gradientUnitsAttr, int, GradientUnits, gradientUnits)
    5454        DECLARE_ANIMATED_PROPERTY(SVGGradientElement, SVGNames::gradientTransformAttr, SVGTransformList*, GradientTransform, gradientTransform)
    5555
  • trunk/WebCore/svg/SVGMarkerElement.cpp

    r70410 r70872  
    3636namespace WebCore {
    3737
    38 char SVGOrientTypeAttrIdentifier[] = "SVGOrientTypeAttr";
    39 char SVGOrientAngleAttrIdentifier[] = "SVGOrientAngleAttr";
    40 
    4138SVGMarkerElement::SVGMarkerElement(const QualifiedName& tagName, Document* document)
    4239    : SVGStyledElement(tagName, document)
     
    5451{
    5552    return adoptRef(new SVGMarkerElement(tagName, document));
     53}
     54
     55const AtomicString& SVGMarkerElement::orientTypeIdentifier()
     56{
     57    DEFINE_STATIC_LOCAL(AtomicString, s_identifier, ("SVGOrientType"));
     58    return s_identifier;   
     59}
     60
     61const AtomicString& SVGMarkerElement::orientAngleIdentifier()
     62{
     63    DEFINE_STATIC_LOCAL(AtomicString, s_identifier, ("SVGOrientAngle"));
     64    return s_identifier;   
    5665}
    5766
  • trunk/WebCore/svg/SVGMarkerElement.h

    r70857 r70872  
    3535
    3636class Document;
    37 
    38 extern char SVGOrientTypeAttrIdentifier[];
    39 extern char SVGOrientAngleAttrIdentifier[];
    4037
    4138class SVGMarkerElement : public SVGStyledElement,
     
    7774    virtual bool selfHasRelativeLengths() const;
    7875
     76    static const AtomicString& orientTypeIdentifier();
     77    static const AtomicString& orientAngleIdentifier();
     78
    7979    DECLARE_ANIMATED_PROPERTY_NEW(SVGMarkerElement, SVGNames::refXAttr, SVGLength, RefX, refX)
    8080    DECLARE_ANIMATED_PROPERTY_NEW(SVGMarkerElement, SVGNames::refYAttr, SVGLength, RefY, refY)
    8181    DECLARE_ANIMATED_PROPERTY_NEW(SVGMarkerElement, SVGNames::markerWidthAttr, SVGLength, MarkerWidth, markerWidth)
    8282    DECLARE_ANIMATED_PROPERTY_NEW(SVGMarkerElement, SVGNames::markerHeightAttr, SVGLength, MarkerHeight, markerHeight)
    83     DECLARE_ANIMATED_PROPERTY(SVGMarkerElement, SVGNames::markerUnitsAttr, int, MarkerUnits, markerUnits)
    84     DECLARE_ANIMATED_PROPERTY_MULTIPLE_WRAPPERS(SVGMarkerElement, SVGNames::orientAttr, SVGOrientTypeAttrIdentifier, int, OrientType, orientType)
    85     DECLARE_ANIMATED_PROPERTY_NEW_MULTIPLE_WRAPPERS(SVGMarkerElement, SVGNames::orientAttr, SVGOrientAngleAttrIdentifier, SVGAngle, OrientAngle, orientAngle)
     83    DECLARE_ANIMATED_STATIC_PROPERTY_NEW(SVGMarkerElement, SVGNames::markerUnitsAttr, int, MarkerUnits, markerUnits)
     84    DECLARE_ANIMATED_STATIC_PROPERTY_MULTIPLE_WRAPPERS_NEW(SVGMarkerElement, SVGNames::orientAttr, orientTypeIdentifier(), int, OrientType, orientType)
     85    DECLARE_ANIMATED_PROPERTY_MULTIPLE_WRAPPERS_NEW(SVGMarkerElement, SVGNames::orientAttr, orientAngleIdentifier(), SVGAngle, OrientAngle, orientAngle)
    8686
    8787    // SVGExternalResourcesRequired
  • trunk/WebCore/svg/SVGMaskElement.h

    r70857 r70872  
    5858        virtual bool selfHasRelativeLengths() const;
    5959
    60         DECLARE_ANIMATED_PROPERTY(SVGMaskElement, SVGNames::maskUnitsAttr, int, MaskUnits, maskUnits)
    61         DECLARE_ANIMATED_PROPERTY(SVGMaskElement, SVGNames::maskContentUnitsAttr, int, MaskContentUnits, maskContentUnits)
     60        DECLARE_ANIMATED_STATIC_PROPERTY_NEW(SVGMaskElement, SVGNames::maskUnitsAttr, int, MaskUnits, maskUnits)
     61        DECLARE_ANIMATED_STATIC_PROPERTY_NEW(SVGMaskElement, SVGNames::maskContentUnitsAttr, int, MaskContentUnits, maskContentUnits)
    6262        DECLARE_ANIMATED_PROPERTY_NEW(SVGMaskElement, SVGNames::xAttr, SVGLength, X, x)
    6363        DECLARE_ANIMATED_PROPERTY_NEW(SVGMaskElement, SVGNames::yAttr, SVGLength, Y, y)
  • trunk/WebCore/svg/SVGPatternElement.h

    r70857 r70872  
    6969        DECLARE_ANIMATED_PROPERTY_NEW(SVGPatternElement, SVGNames::widthAttr, SVGLength, Width, width)
    7070        DECLARE_ANIMATED_PROPERTY_NEW(SVGPatternElement, SVGNames::heightAttr, SVGLength, Height, height)
    71         DECLARE_ANIMATED_PROPERTY(SVGPatternElement, SVGNames::patternUnitsAttr, int, PatternUnits, patternUnits)
    72         DECLARE_ANIMATED_PROPERTY(SVGPatternElement, SVGNames::patternContentUnitsAttr, int, PatternContentUnits, patternContentUnits)
     71        DECLARE_ANIMATED_STATIC_PROPERTY_NEW(SVGPatternElement, SVGNames::patternUnitsAttr, int, PatternUnits, patternUnits)
     72        DECLARE_ANIMATED_STATIC_PROPERTY_NEW(SVGPatternElement, SVGNames::patternContentUnitsAttr, int, PatternContentUnits, patternContentUnits)
    7373        DECLARE_ANIMATED_PROPERTY(SVGPatternElement, SVGNames::patternTransformAttr, SVGTransformList*, PatternTransform, patternTransform)
    7474
  • trunk/WebCore/svg/SVGTextContentElement.h

    r70857 r70872  
    7373
    7474        DECLARE_ANIMATED_PROPERTY_NEW(SVGTextContentElement, SVGNames::textLengthAttr, SVGLength, TextLength, textLength)
    75         DECLARE_ANIMATED_PROPERTY(SVGTextContentElement, SVGNames::lengthAdjustAttr, int, LengthAdjust, lengthAdjust)
     75        DECLARE_ANIMATED_STATIC_PROPERTY_NEW(SVGTextContentElement, SVGNames::lengthAdjustAttr, int, LengthAdjust, lengthAdjust)
    7676
    7777        // SVGExternalResourcesRequired
  • trunk/WebCore/svg/SVGTextPathElement.h

    r70223 r70872  
    6969
    7070        DECLARE_ANIMATED_PROPERTY_NEW(SVGTextPathElement, SVGNames::startOffsetAttr, SVGLength, StartOffset, startOffset)
    71         DECLARE_ANIMATED_PROPERTY(SVGTextPathElement, SVGNames::methodAttr, int, Method, method)
    72         DECLARE_ANIMATED_PROPERTY(SVGTextPathElement, SVGNames::spacingAttr, int, Spacing, spacing)
     71        DECLARE_ANIMATED_STATIC_PROPERTY_NEW(SVGTextPathElement, SVGNames::methodAttr, int, Method, method)
     72        DECLARE_ANIMATED_STATIC_PROPERTY_NEW(SVGTextPathElement, SVGNames::spacingAttr, int, Spacing, spacing)
    7373   
    7474        // SVGURIReference
  • trunk/WebCore/svg/properties/SVGAnimatedPropertyMacros.h

    r70857 r70872  
    100100DECLARE_ANIMATED_PROPERTY_NEW_SHARED(OwnerType, DOMAttribute, DOMAttribute.localName(), SVGAnimatedPropertyTearOff<PropertyType>, PropertyType, UpperProperty, LowerProperty)
    101101
    102 #define DECLARE_ANIMATED_PROPERTY_NEW_MULTIPLE_WRAPPERS(OwnerType, DOMAttribute, SVGDOMAttributeIdentifier, PropertyType, UpperProperty, LowerProperty) \
     102#define DECLARE_ANIMATED_PROPERTY_MULTIPLE_WRAPPERS_NEW(OwnerType, DOMAttribute, SVGDOMAttributeIdentifier, PropertyType, UpperProperty, LowerProperty) \
    103103DECLARE_ANIMATED_PROPERTY_NEW_SHARED(OwnerType, DOMAttribute, SVGDOMAttributeIdentifier, SVGAnimatedPropertyTearOff<PropertyType>, PropertyType, UpperProperty, LowerProperty)
     104
     105#define DECLARE_ANIMATED_STATIC_PROPERTY_MULTIPLE_WRAPPERS_NEW(OwnerType, DOMAttribute, SVGDOMAttributeIdentifier, PropertyType, UpperProperty, LowerProperty) \
     106DECLARE_ANIMATED_PROPERTY_NEW_SHARED(OwnerType, DOMAttribute, SVGDOMAttributeIdentifier, SVGAnimatedStaticPropertyTearOff<PropertyType>, PropertyType, UpperProperty, LowerProperty)
    104107
    105108#define DECLARE_ANIMATED_STATIC_PROPERTY_NEW(OwnerType, DOMAttribute, PropertyType, UpperProperty, LowerProperty) \
Note: See TracChangeset for help on using the changeset viewer.