Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(30)

Side by Side Diff: Source/core/svg/SVGFETurbulenceElement.cpp

Issue 678163002: Oilpan: move SVG property hierarchy to the heap. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Rebased upto r185213 Created 6 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « Source/core/svg/SVGFETurbulenceElement.h ('k') | Source/core/svg/SVGFilterElement.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2004, 2005, 2007 Nikolas Zimmermann <zimmermann@kde.org> 2 * Copyright (C) 2004, 2005, 2007 Nikolas Zimmermann <zimmermann@kde.org>
3 * Copyright (C) 2004, 2005, 2006 Rob Buis <buis@kde.org> 3 * Copyright (C) 2004, 2005, 2006 Rob Buis <buis@kde.org>
4 * 4 *
5 * This library is free software; you can redistribute it and/or 5 * This library is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU Library General Public 6 * modify it under the terms of the GNU Library General Public
7 * License as published by the Free Software Foundation; either 7 * License as published by the Free Software Foundation; either
8 * version 2 of the License, or (at your option) any later version. 8 * version 2 of the License, or (at your option) any later version.
9 * 9 *
10 * This library is distributed in the hope that it will be useful, 10 * This library is distributed in the hope that it will be useful,
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
55 , m_type(SVGAnimatedEnumeration<TurbulenceType>::create(this, SVGNames::type Attr, FETURBULENCE_TYPE_TURBULENCE)) 55 , m_type(SVGAnimatedEnumeration<TurbulenceType>::create(this, SVGNames::type Attr, FETURBULENCE_TYPE_TURBULENCE))
56 , m_numOctaves(SVGAnimatedInteger::create(this, SVGNames::numOctavesAttr, SV GInteger::create(1))) 56 , m_numOctaves(SVGAnimatedInteger::create(this, SVGNames::numOctavesAttr, SV GInteger::create(1)))
57 { 57 {
58 addToPropertyMap(m_baseFrequency); 58 addToPropertyMap(m_baseFrequency);
59 addToPropertyMap(m_seed); 59 addToPropertyMap(m_seed);
60 addToPropertyMap(m_stitchTiles); 60 addToPropertyMap(m_stitchTiles);
61 addToPropertyMap(m_type); 61 addToPropertyMap(m_type);
62 addToPropertyMap(m_numOctaves); 62 addToPropertyMap(m_numOctaves);
63 } 63 }
64 64
65 void SVGFETurbulenceElement::trace(Visitor* visitor)
66 {
67 visitor->trace(m_baseFrequency);
68 visitor->trace(m_seed);
69 visitor->trace(m_stitchTiles);
70 visitor->trace(m_type);
71 visitor->trace(m_numOctaves);
72 SVGFilterPrimitiveStandardAttributes::trace(visitor);
73 }
74
65 DEFINE_NODE_FACTORY(SVGFETurbulenceElement) 75 DEFINE_NODE_FACTORY(SVGFETurbulenceElement)
66 76
67 bool SVGFETurbulenceElement::isSupportedAttribute(const QualifiedName& attrName) 77 bool SVGFETurbulenceElement::isSupportedAttribute(const QualifiedName& attrName)
68 { 78 {
69 DEFINE_STATIC_LOCAL(HashSet<QualifiedName>, supportedAttributes, ()); 79 DEFINE_STATIC_LOCAL(HashSet<QualifiedName>, supportedAttributes, ());
70 if (supportedAttributes.isEmpty()) { 80 if (supportedAttributes.isEmpty()) {
71 supportedAttributes.add(SVGNames::baseFrequencyAttr); 81 supportedAttributes.add(SVGNames::baseFrequencyAttr);
72 supportedAttributes.add(SVGNames::numOctavesAttr); 82 supportedAttributes.add(SVGNames::numOctavesAttr);
73 supportedAttributes.add(SVGNames::seedAttr); 83 supportedAttributes.add(SVGNames::seedAttr);
74 supportedAttributes.add(SVGNames::stitchTilesAttr); 84 supportedAttributes.add(SVGNames::stitchTilesAttr);
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
117 || attrName == SVGNames::seedAttr 127 || attrName == SVGNames::seedAttr
118 || attrName == SVGNames::stitchTilesAttr 128 || attrName == SVGNames::stitchTilesAttr
119 || attrName == SVGNames::typeAttr) { 129 || attrName == SVGNames::typeAttr) {
120 primitiveAttributeChanged(attrName); 130 primitiveAttributeChanged(attrName);
121 return; 131 return;
122 } 132 }
123 133
124 ASSERT_NOT_REACHED(); 134 ASSERT_NOT_REACHED();
125 } 135 }
126 136
127 PassRefPtr<FilterEffect> SVGFETurbulenceElement::build(SVGFilterBuilder*, Filter * filter) 137 PassRefPtrWillBeRawPtr<FilterEffect> SVGFETurbulenceElement::build(SVGFilterBuil der*, Filter* filter)
128 { 138 {
129 if (baseFrequencyX()->currentValue()->value() < 0 || baseFrequencyY()->curre ntValue()->value() < 0) 139 if (baseFrequencyX()->currentValue()->value() < 0 || baseFrequencyY()->curre ntValue()->value() < 0)
130 return nullptr; 140 return nullptr;
131 return FETurbulence::create(filter, m_type->currentValue()->enumValue(), bas eFrequencyX()->currentValue()->value(), baseFrequencyY()->currentValue()->value( ), m_numOctaves->currentValue()->value(), m_seed->currentValue()->value(), m_sti tchTiles->currentValue()->enumValue() == SVG_STITCHTYPE_STITCH); 141 return FETurbulence::create(filter, m_type->currentValue()->enumValue(), bas eFrequencyX()->currentValue()->value(), baseFrequencyY()->currentValue()->value( ), m_numOctaves->currentValue()->value(), m_seed->currentValue()->value(), m_sti tchTiles->currentValue()->enumValue() == SVG_STITCHTYPE_STITCH);
132 } 142 }
133 143
134 } // namespace blink 144 } // namespace blink
OLDNEW
« no previous file with comments | « Source/core/svg/SVGFETurbulenceElement.h ('k') | Source/core/svg/SVGFilterElement.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698