diff options
author | Ben Murdoch <benm@google.com> | 2011-05-24 11:24:40 +0100 |
---|---|---|
committer | Ben Murdoch <benm@google.com> | 2011-06-02 09:53:15 +0100 |
commit | 81bc750723a18f21cd17d1b173cd2a4dda9cea6e (patch) | |
tree | 7a9e5ed86ff429fd347a25153107221543909b19 /Source/WebCore/svg/SVGFETurbulenceElement.cpp | |
parent | 94088a6d336c1dd80a1e734af51e96abcbb689a7 (diff) | |
download | external_webkit-81bc750723a18f21cd17d1b173cd2a4dda9cea6e.zip external_webkit-81bc750723a18f21cd17d1b173cd2a4dda9cea6e.tar.gz external_webkit-81bc750723a18f21cd17d1b173cd2a4dda9cea6e.tar.bz2 |
Merge WebKit at r80534: Intial merge by Git
Change-Id: Ia7a83357124c9e1cdb1debf55d9661ec0bd09a61
Diffstat (limited to 'Source/WebCore/svg/SVGFETurbulenceElement.cpp')
-rw-r--r-- | Source/WebCore/svg/SVGFETurbulenceElement.cpp | 24 |
1 files changed, 21 insertions, 3 deletions
diff --git a/Source/WebCore/svg/SVGFETurbulenceElement.cpp b/Source/WebCore/svg/SVGFETurbulenceElement.cpp index 2eaf1fc..285b669 100644 --- a/Source/WebCore/svg/SVGFETurbulenceElement.cpp +++ b/Source/WebCore/svg/SVGFETurbulenceElement.cpp @@ -89,16 +89,34 @@ void SVGFETurbulenceElement::parseMappedAttribute(Attribute* attr) SVGFilterPrimitiveStandardAttributes::parseMappedAttribute(attr); } +bool SVGFETurbulenceElement::setFilterEffectAttribute(FilterEffect* effect, const QualifiedName& attrName) +{ + FETurbulence* turbulence = static_cast<FETurbulence*>(effect); + if (attrName == SVGNames::typeAttr) + return turbulence->setType(static_cast<TurbulenceType>(type())); + if (attrName == SVGNames::stitchTilesAttr) + return turbulence->setStitchTiles(stitchTiles()); + if (attrName == SVGNames::baseFrequencyAttr) + return (turbulence->setBaseFrequencyX(baseFrequencyX()) || turbulence->setBaseFrequencyY(baseFrequencyY())); + if (attrName == SVGNames::seedAttr) + return turbulence->setSeed(seed()); + if (attrName == SVGNames::numOctavesAttr) + return turbulence->setNumOctaves(numOctaves()); + + ASSERT_NOT_REACHED(); + return false; +} + void SVGFETurbulenceElement::svgAttributeChanged(const QualifiedName& attrName) { SVGFilterPrimitiveStandardAttributes::svgAttributeChanged(attrName); - + if (attrName == SVGNames::baseFrequencyAttr || attrName == SVGNames::numOctavesAttr || attrName == SVGNames::seedAttr || attrName == SVGNames::stitchTilesAttr || attrName == SVGNames::typeAttr) - invalidate(); + primitiveAttributeChanged(attrName); } void SVGFETurbulenceElement::synchronizeProperty(const QualifiedName& attrName) @@ -151,7 +169,7 @@ PassRefPtr<FilterEffect> SVGFETurbulenceElement::build(SVGFilterBuilder*, Filter if (baseFrequencyX() < 0 || baseFrequencyY() < 0) return 0; - return FETurbulence::create(filter, static_cast<TurbulanceType>(type()), baseFrequencyX(), + return FETurbulence::create(filter, static_cast<TurbulenceType>(type()), baseFrequencyX(), baseFrequencyY(), numOctaves(), seed(), stitchTiles() == SVG_STITCHTYPE_STITCH); } |