Changeset 49301 in webkit
- Timestamp:
- Oct 8, 2009 7:53:20 AM (15 years ago)
- Location:
- trunk/WebCore
- Files:
-
- 33 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/WebCore/ChangeLog
r49300 r49301 1 2009-10-08 Nikolas Zimmermann <nzimmermann@rim.com> 2 3 Reviewed by George Staikos. 4 5 Move SVGURIReference ANIMATED_* macros in classes that inherit from it 6 https://bugs.webkit.org/show_bug.cgi?id=30184 7 8 The long term goal is to kill the need for the virtual contextElement() function in SVG code. 9 No change in functionality, thus no new tests. 10 11 * svg/SVGAElement.cpp: 12 (WebCore::SVGAElement::SVGAElement): 13 * svg/SVGAElement.h: 14 * svg/SVGAltGlyphElement.cpp: 15 (WebCore::SVGAltGlyphElement::SVGAltGlyphElement): 16 * svg/SVGAltGlyphElement.h: 17 * svg/SVGCursorElement.cpp: 18 (WebCore::SVGCursorElement::SVGCursorElement): 19 * svg/SVGCursorElement.h: 20 * svg/SVGFEImageElement.cpp: 21 (WebCore::SVGFEImageElement::SVGFEImageElement): 22 * svg/SVGFEImageElement.h: 23 * svg/SVGFilterElement.cpp: 24 (WebCore::SVGFilterElement::SVGFilterElement): 25 * svg/SVGFilterElement.h: 26 * svg/SVGForeignObjectElement.cpp: 27 (WebCore::SVGForeignObjectElement::SVGForeignObjectElement): 28 * svg/SVGForeignObjectElement.h: 29 * svg/SVGGradientElement.cpp: 30 (WebCore::SVGGradientElement::SVGGradientElement): 31 * svg/SVGGradientElement.h: 32 * svg/SVGImageElement.cpp: 33 (WebCore::SVGImageElement::SVGImageElement): 34 * svg/SVGImageElement.h: 35 * svg/SVGMPathElement.cpp: 36 (WebCore::SVGMPathElement::SVGMPathElement): 37 (WebCore::SVGMPathElement::pathElement): 38 * svg/SVGMPathElement.h: 39 * svg/SVGMaskElement.cpp: 40 (WebCore::SVGMaskElement::SVGMaskElement): 41 * svg/SVGMaskElement.h: 42 * svg/SVGPatternElement.cpp: 43 (WebCore::SVGPatternElement::SVGPatternElement): 44 * svg/SVGPatternElement.h: 45 * svg/SVGScriptElement.cpp: 46 (WebCore::SVGScriptElement::SVGScriptElement): 47 * svg/SVGScriptElement.h: 48 * svg/SVGTRefElement.cpp: 49 (WebCore::SVGTRefElement::SVGTRefElement): 50 * svg/SVGTRefElement.h: 51 * svg/SVGTextPathElement.cpp: 52 (WebCore::SVGTextPathElement::SVGTextPathElement): 53 * svg/SVGTextPathElement.h: 54 * svg/SVGURIReference.cpp: 55 (WebCore::SVGURIReference::SVGURIReference): 56 * svg/SVGURIReference.h: 57 * svg/SVGUseElement.cpp: 58 (WebCore::SVGUseElement::SVGUseElement): 59 * svg/SVGUseElement.h: 60 1 61 2009-10-08 Jocelyn Turcotte <jocelyn.turcotte@nokia.com> 2 62 -
trunk/WebCore/svg/SVGAElement.cpp
r48106 r49301 54 54 , SVGExternalResourcesRequired() 55 55 , m_target(this, SVGNames::targetAttr) 56 , m_href(this, XLinkNames::hrefAttr) 56 57 { 57 58 } -
trunk/WebCore/svg/SVGAElement.h
r35248 r49301 66 66 private: 67 67 ANIMATED_PROPERTY_DECLARATIONS(SVGAElement, SVGNames::aTagString, SVGNames::targetAttrString, String, Target, target) 68 69 // SVGURIReference 70 ANIMATED_PROPERTY_DECLARATIONS(SVGAElement, SVGURIReferenceIdentifier, XLinkNames::hrefAttrString, String, Href, href) 68 71 }; 69 72 -
trunk/WebCore/svg/SVGAltGlyphElement.cpp
r39601 r49301 36 36 SVGAltGlyphElement::SVGAltGlyphElement(const QualifiedName& tagName, Document* doc) 37 37 : SVGTextPositioningElement(tagName, doc) 38 , m_href(this, XLinkNames::hrefAttr) 38 39 { 39 40 } -
trunk/WebCore/svg/SVGAltGlyphElement.h
r35248 r49301 50 50 protected: 51 51 virtual const SVGElement* contextElement() const { return this; } 52 53 private: 54 // SVGURIReference 55 ANIMATED_PROPERTY_DECLARATIONS(SVGAltGlyphElement, SVGURIReferenceIdentifier, XLinkNames::hrefAttrString, String, Href, href) 52 56 }; 53 57 -
trunk/WebCore/svg/SVGCursorElement.cpp
r43187 r49301 41 41 , m_x(this, SVGNames::xAttr, LengthModeWidth) 42 42 , m_y(this, SVGNames::yAttr, LengthModeHeight) 43 , m_href(this, XLinkNames::hrefAttr) 43 44 { 44 45 } -
trunk/WebCore/svg/SVGCursorElement.h
r39065 r49301 58 58 ANIMATED_PROPERTY_DECLARATIONS(SVGCursorElement, SVGNames::cursorTagString, SVGNames::yAttrString, SVGLength, Y, y) 59 59 60 // SVGURIReference 61 ANIMATED_PROPERTY_DECLARATIONS(SVGCursorElement, SVGURIReferenceIdentifier, XLinkNames::hrefAttrString, String, Href, href) 62 60 63 HashSet<SVGElement*> m_clients; 61 64 }; -
trunk/WebCore/svg/SVGFEImageElement.cpp
r45747 r49301 44 44 , SVGExternalResourcesRequired() 45 45 , m_preserveAspectRatio(this, SVGNames::preserveAspectRatioAttr, SVGPreserveAspectRatio::create()) 46 , m_href(this, XLinkNames::hrefAttr) 46 47 { 47 48 } -
trunk/WebCore/svg/SVGFEImageElement.h
r44299 r49301 56 56 ANIMATED_PROPERTY_DECLARATIONS(SVGFEImageElement, SVGNames::feImageTagString, SVGNames::preserveAspectRatioAttrString, SVGPreserveAspectRatio, PreserveAspectRatio, preserveAspectRatio) 57 57 58 // SVGURIReference 59 ANIMATED_PROPERTY_DECLARATIONS(SVGFEImageElement, SVGURIReferenceIdentifier, XLinkNames::hrefAttrString, String, Href, href) 60 58 61 CachedResourceHandle<CachedImage> m_cachedImage; 59 62 }; -
trunk/WebCore/svg/SVGFilterElement.cpp
r44309 r49301 55 55 , m_filterResX(this, SVGNames::filterResAttr) 56 56 , m_filterResY(this, SVGNames::filterResAttr) 57 , m_href(this, XLinkNames::hrefAttr) 57 58 { 58 59 // Spec: If the x/y attribute is not specified, the effect is as if a value of "-10%" were specified. -
trunk/WebCore/svg/SVGFilterElement.h
r44253 r49301 65 65 ANIMATED_PROPERTY_DECLARATIONS(SVGFilterElement, SVGNames::filterTagString, SVGFilterResYIdentifier, long, FilterResY, filterResY) 66 66 67 // SVGURIReference 68 ANIMATED_PROPERTY_DECLARATIONS(SVGFilterElement, SVGURIReferenceIdentifier, XLinkNames::hrefAttrString, String, Href, href) 69 67 70 RefPtr<SVGResourceFilter> m_filter; 68 71 }; -
trunk/WebCore/svg/SVGForeignObjectElement.cpp
r43187 r49301 44 44 , m_width(this, SVGNames::widthAttr, LengthModeWidth) 45 45 , m_height(this, SVGNames::heightAttr, LengthModeHeight) 46 , m_href(this, XLinkNames::hrefAttr) 46 47 { 47 48 } -
trunk/WebCore/svg/SVGForeignObjectElement.h
r35248 r49301 57 57 ANIMATED_PROPERTY_DECLARATIONS(SVGForeignObjectElement, SVGNames::foreignObjectTagString, SVGNames::widthAttrString, SVGLength, Width, width) 58 58 ANIMATED_PROPERTY_DECLARATIONS(SVGForeignObjectElement, SVGNames::foreignObjectTagString, SVGNames::heightAttrString, SVGLength, Height, height) 59 60 // SVGURIReference 61 ANIMATED_PROPERTY_DECLARATIONS(SVGForeignObjectElement, SVGURIReferenceIdentifier, XLinkNames::hrefAttrString, String, Href, href) 59 62 }; 60 63 -
trunk/WebCore/svg/SVGGradientElement.cpp
r43187 r49301 49 49 , m_gradientUnits(this, SVGNames::gradientUnitsAttr, SVGUnitTypes::SVG_UNIT_TYPE_OBJECTBOUNDINGBOX) 50 50 , m_gradientTransform(this, SVGNames::gradientTransformAttr, SVGTransformList::create(SVGNames::gradientTransformAttr)) 51 , m_href(this, XLinkNames::hrefAttr) 51 52 { 52 53 } -
trunk/WebCore/svg/SVGGradientElement.h
r37605 r49301 67 67 ANIMATED_PROPERTY_DECLARATIONS(SVGGradientElement, SVGGradientElementIdentifier, SVGNames::gradientUnitsAttrString, int, GradientUnits, gradientUnits) 68 68 ANIMATED_PROPERTY_DECLARATIONS(SVGGradientElement, SVGGradientElementIdentifier, SVGNames::gradientTransformAttrString, SVGTransformList, GradientTransform, gradientTransform) 69 70 // SVGURIReference 71 ANIMATED_PROPERTY_DECLARATIONS(SVGGradientElement, SVGURIReferenceIdentifier, XLinkNames::hrefAttrString, String, Href, href) 69 72 }; 70 73 -
trunk/WebCore/svg/SVGImageElement.cpp
r46815 r49301 46 46 , m_width(this, SVGNames::widthAttr, LengthModeWidth) 47 47 , m_height(this, SVGNames::heightAttr, LengthModeHeight) 48 , m_preserveAspectRatio(this, SVGNames::preserveAspectRatioAttr, SVGPreserveAspectRatio::create()) 48 , m_preserveAspectRatio(this, SVGNames::preserveAspectRatioAttr, SVGPreserveAspectRatio::create()) 49 , m_href(this, XLinkNames::hrefAttr) 49 50 , m_imageLoader(this) 50 51 { -
trunk/WebCore/svg/SVGImageElement.h
r39065 r49301 71 71 ANIMATED_PROPERTY_DECLARATIONS(SVGImageElement, SVGNames::imageTagString, SVGNames::preserveAspectRatioAttrString, SVGPreserveAspectRatio, PreserveAspectRatio, preserveAspectRatio) 72 72 73 // SVGURIReference 74 ANIMATED_PROPERTY_DECLARATIONS(SVGImageElement, SVGURIReferenceIdentifier, XLinkNames::hrefAttrString, String, Href, href) 75 73 76 SVGImageLoader m_imageLoader; 74 77 }; -
trunk/WebCore/svg/SVGMPathElement.cpp
r36700 r49301 32 32 SVGMPathElement::SVGMPathElement(const QualifiedName& qname, Document* doc) 33 33 : SVGElement(qname, doc) 34 , m_href(this, XLinkNames::hrefAttr) 34 35 { 35 36 } … … 48 49 SVGPathElement* SVGMPathElement::pathElement() 49 50 { 50 Element* target = document()->getElementById(getTarget( SVGURIReference::href()));51 Element* target = document()->getElementById(getTarget(href())); 51 52 if (target && target->hasTagName(SVGNames::pathTag)) 52 53 return static_cast<SVGPathElement*>(target); -
trunk/WebCore/svg/SVGMPathElement.h
r45747 r49301 32 32 33 33 class SVGMPathElement : public SVGElement, 34 35 34 public SVGURIReference, 35 public SVGExternalResourcesRequired { 36 36 public: 37 37 SVGMPathElement(const QualifiedName&, Document*); … … 44 44 protected: 45 45 virtual const SVGElement* contextElement() const { return this; } 46 47 // SVGURIReference 48 ANIMATED_PROPERTY_DECLARATIONS(SVGMPathElement, SVGURIReferenceIdentifier, XLinkNames::hrefAttrString, String, Href, href) 46 49 }; 47 50 -
trunk/WebCore/svg/SVGMaskElement.cpp
r46956 r49301 56 56 , m_width(this, SVGNames::widthAttr, LengthModeWidth, "120%") 57 57 , m_height(this, SVGNames::heightAttr, LengthModeHeight, "120%") 58 , m_href(this, XLinkNames::hrefAttr) 58 59 { 59 60 // Spec: If the x/y attribute is not specified, the effect is as if a value of "-10%" were specified. -
trunk/WebCore/svg/SVGMaskElement.h
r44096 r49301 66 66 ANIMATED_PROPERTY_DECLARATIONS(SVGMaskElement, SVGNames::maskTagString, SVGNames::heightAttrString, SVGLength, Height, height) 67 67 68 // SVGURIReference 69 ANIMATED_PROPERTY_DECLARATIONS(SVGMaskElement, SVGURIReferenceIdentifier, XLinkNames::hrefAttrString, String, Href, href) 70 68 71 RefPtr<SVGResourceMasker> m_masker; 69 72 }; -
trunk/WebCore/svg/SVGPatternElement.cpp
r46956 r49301 65 65 , m_patternContentUnits(this, SVGNames::patternContentUnitsAttr, SVGUnitTypes::SVG_UNIT_TYPE_USERSPACEONUSE) 66 66 , m_patternTransform(this, SVGNames::patternTransformAttr, SVGTransformList::create(SVGNames::patternTransformAttr)) 67 , m_href(this, XLinkNames::hrefAttr) 67 68 { 68 69 } -
trunk/WebCore/svg/SVGPatternElement.h
r35248 r49301 71 71 ANIMATED_PROPERTY_DECLARATIONS(SVGPatternElement, SVGNames::patternTagString, SVGNames::patternTransformAttrString, SVGTransformList, PatternTransform, patternTransform) 72 72 73 // SVGURIReference 74 ANIMATED_PROPERTY_DECLARATIONS(SVGPatternElement, SVGURIReferenceIdentifier, XLinkNames::hrefAttrString, String, Href, href) 75 73 76 mutable RefPtr<SVGPaintServerPattern> m_resource; 74 77 -
trunk/WebCore/svg/SVGScriptElement.cpp
r49208 r49301 38 38 , SVGURIReference() 39 39 , SVGExternalResourcesRequired() 40 , m_href(this, XLinkNames::hrefAttr) 40 41 , m_data(this, this) 41 42 { -
trunk/WebCore/svg/SVGScriptElement.h
r49208 r49301 74 74 75 75 private: 76 // SVGURIReference 77 ANIMATED_PROPERTY_DECLARATIONS(SVGScriptElement, SVGURIReferenceIdentifier, XLinkNames::hrefAttrString, String, Href, href) 78 79 private: 76 80 ScriptElementData m_data; 77 81 String m_type; -
trunk/WebCore/svg/SVGTRefElement.cpp
r29663 r49301 36 36 : SVGTextPositioningElement(tagName, doc) 37 37 , SVGURIReference() 38 , m_href(this, XLinkNames::hrefAttr) 38 39 { 39 40 } -
trunk/WebCore/svg/SVGTRefElement.h
r35248 r49301 46 46 private: 47 47 void updateReferencedText(); 48 49 // SVGURIReference 50 ANIMATED_PROPERTY_DECLARATIONS(SVGTRefElement, SVGURIReferenceIdentifier, XLinkNames::hrefAttrString, String, Href, href) 48 51 }; 49 52 -
trunk/WebCore/svg/SVGTextPathElement.cpp
r45747 r49301 42 42 , m_method(this, SVGNames::methodAttr, SVG_TEXTPATH_METHODTYPE_ALIGN) 43 43 , m_spacing(this, SVGNames::spacingAttr, SVG_TEXTPATH_SPACINGTYPE_EXACT) 44 , m_href(this, XLinkNames::hrefAttr) 44 45 { 45 46 } -
trunk/WebCore/svg/SVGTextPathElement.h
r45747 r49301 72 72 ANIMATED_PROPERTY_DECLARATIONS(SVGTextPathElement, SVGNames::textPathTagString, SVGNames::methodAttrString, int, Method, method) 73 73 ANIMATED_PROPERTY_DECLARATIONS(SVGTextPathElement, SVGNames::textPathTagString, SVGNames::spacingAttrString, int, Spacing, spacing) 74 75 // SVGURIReference 76 ANIMATED_PROPERTY_DECLARATIONS(SVGTextPathElement, SVGURIReferenceIdentifier, XLinkNames::hrefAttrString, String, Href, href) 74 77 }; 75 78 -
trunk/WebCore/svg/SVGURIReference.cpp
r43187 r49301 31 31 32 32 SVGURIReference::SVGURIReference() 33 : m_href(this, XLinkNames::hrefAttr)34 33 { 35 34 } -
trunk/WebCore/svg/SVGURIReference.h
r35248 r49301 1 1 /* 2 Copyright (C) 2004, 2005, 2008 Nikolas Zimmermann <zimmermann@kde.org>2 Copyright (C) 2004, 2005, 2008, 2009 Nikolas Zimmermann <zimmermann@kde.org> 3 3 2004, 2005 Rob Buis <buis@kde.org> 4 4 … … 43 43 static String getTarget(const String& url); 44 44 45 virtual const SVGElement* contextElement() const = 0; 46 47 private: 48 ANIMATED_PROPERTY_DECLARATIONS(SVGURIReference, SVGURIReferenceIdentifier, XLinkNames::hrefAttrString, String, Href, href) 45 protected: 46 virtual void setHrefBaseValue(SVGAnimatedTypeValue<String>::DecoratedType type) = 0; 49 47 }; 50 48 -
trunk/WebCore/svg/SVGUseElement.cpp
r48811 r49301 66 66 , m_width(this, SVGNames::widthAttr, LengthModeWidth) 67 67 , m_height(this, SVGNames::heightAttr, LengthModeHeight) 68 , m_href(this, XLinkNames::hrefAttr) 68 69 { 69 70 } -
trunk/WebCore/svg/SVGUseElement.h
r37435 r49301 78 78 ANIMATED_PROPERTY_DECLARATIONS(SVGUseElement, SVGNames::useTagString, SVGNames::heightAttrString, SVGLength, Height, height) 79 79 80 // SVGURIReference 81 ANIMATED_PROPERTY_DECLARATIONS(SVGUseElement, SVGURIReferenceIdentifier, XLinkNames::hrefAttrString, String, Href, href) 82 80 83 private: 81 84 // Instance tree handling
Note: See TracChangeset
for help on using the changeset viewer.