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

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

Issue 21042009: [SVG2] Merge SVGStyledElement into SVGElement (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Rebase on master Created 7 years, 4 months 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/SVGPatternElement.h ('k') | Source/core/svg/SVGPatternElement.idl » ('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, 2006, 2007, 2008 Nikolas Zimmermann <zimmermann@kde .org> 2 * Copyright (C) 2004, 2005, 2006, 2007, 2008 Nikolas Zimmermann <zimmermann@kde .org>
3 * Copyright (C) 2004, 2005, 2006, 2007 Rob Buis <buis@kde.org> 3 * Copyright (C) 2004, 2005, 2006, 2007 Rob Buis <buis@kde.org>
4 * Copyright (C) Research In Motion Limited 2010. All rights reserved. 4 * Copyright (C) Research In Motion Limited 2010. All rights reserved.
5 * 5 *
6 * This library is free software; you can redistribute it and/or 6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Library General Public 7 * modify it under the terms of the GNU Library General Public
8 * License as published by the Free Software Foundation; either 8 * License as published by the Free Software Foundation; either
9 * version 2 of the License, or (at your option) any later version. 9 * version 2 of the License, or (at your option) any later version.
10 * 10 *
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
51 REGISTER_LOCAL_ANIMATED_PROPERTY(y) 51 REGISTER_LOCAL_ANIMATED_PROPERTY(y)
52 REGISTER_LOCAL_ANIMATED_PROPERTY(width) 52 REGISTER_LOCAL_ANIMATED_PROPERTY(width)
53 REGISTER_LOCAL_ANIMATED_PROPERTY(height) 53 REGISTER_LOCAL_ANIMATED_PROPERTY(height)
54 REGISTER_LOCAL_ANIMATED_PROPERTY(patternUnits) 54 REGISTER_LOCAL_ANIMATED_PROPERTY(patternUnits)
55 REGISTER_LOCAL_ANIMATED_PROPERTY(patternContentUnits) 55 REGISTER_LOCAL_ANIMATED_PROPERTY(patternContentUnits)
56 REGISTER_LOCAL_ANIMATED_PROPERTY(patternTransform) 56 REGISTER_LOCAL_ANIMATED_PROPERTY(patternTransform)
57 REGISTER_LOCAL_ANIMATED_PROPERTY(href) 57 REGISTER_LOCAL_ANIMATED_PROPERTY(href)
58 REGISTER_LOCAL_ANIMATED_PROPERTY(externalResourcesRequired) 58 REGISTER_LOCAL_ANIMATED_PROPERTY(externalResourcesRequired)
59 REGISTER_LOCAL_ANIMATED_PROPERTY(viewBox) 59 REGISTER_LOCAL_ANIMATED_PROPERTY(viewBox)
60 REGISTER_LOCAL_ANIMATED_PROPERTY(preserveAspectRatio) 60 REGISTER_LOCAL_ANIMATED_PROPERTY(preserveAspectRatio)
61 REGISTER_PARENT_ANIMATED_PROPERTIES(SVGStyledElement) 61 REGISTER_PARENT_ANIMATED_PROPERTIES(SVGElement)
62 REGISTER_PARENT_ANIMATED_PROPERTIES(SVGTests) 62 REGISTER_PARENT_ANIMATED_PROPERTIES(SVGTests)
63 END_REGISTER_ANIMATED_PROPERTIES 63 END_REGISTER_ANIMATED_PROPERTIES
64 64
65 inline SVGPatternElement::SVGPatternElement(const QualifiedName& tagName, Docume nt* document) 65 inline SVGPatternElement::SVGPatternElement(const QualifiedName& tagName, Docume nt* document)
66 : SVGStyledElement(tagName, document) 66 : SVGElement(tagName, document)
67 , m_x(LengthModeWidth) 67 , m_x(LengthModeWidth)
68 , m_y(LengthModeHeight) 68 , m_y(LengthModeHeight)
69 , m_width(LengthModeWidth) 69 , m_width(LengthModeWidth)
70 , m_height(LengthModeHeight) 70 , m_height(LengthModeHeight)
71 , m_patternUnits(SVGUnitTypes::SVG_UNIT_TYPE_OBJECTBOUNDINGBOX) 71 , m_patternUnits(SVGUnitTypes::SVG_UNIT_TYPE_OBJECTBOUNDINGBOX)
72 , m_patternContentUnits(SVGUnitTypes::SVG_UNIT_TYPE_USERSPACEONUSE) 72 , m_patternContentUnits(SVGUnitTypes::SVG_UNIT_TYPE_USERSPACEONUSE)
73 { 73 {
74 ASSERT(hasTagName(SVGNames::patternTag)); 74 ASSERT(hasTagName(SVGNames::patternTag));
75 ScriptWrappable::init(this); 75 ScriptWrappable::init(this);
76 registerAnimatedPropertiesForSVGPatternElement(); 76 registerAnimatedPropertiesForSVGPatternElement();
(...skipping 21 matching lines...) Expand all
98 supportedAttributes.add(SVGNames::heightAttr); 98 supportedAttributes.add(SVGNames::heightAttr);
99 } 99 }
100 return supportedAttributes.contains<SVGAttributeHashTranslator>(attrName); 100 return supportedAttributes.contains<SVGAttributeHashTranslator>(attrName);
101 } 101 }
102 102
103 void SVGPatternElement::parseAttribute(const QualifiedName& name, const AtomicSt ring& value) 103 void SVGPatternElement::parseAttribute(const QualifiedName& name, const AtomicSt ring& value)
104 { 104 {
105 SVGParsingError parseError = NoError; 105 SVGParsingError parseError = NoError;
106 106
107 if (!isSupportedAttribute(name)) 107 if (!isSupportedAttribute(name))
108 SVGStyledElement::parseAttribute(name, value); 108 SVGElement::parseAttribute(name, value);
109 else if (name == SVGNames::patternUnitsAttr) { 109 else if (name == SVGNames::patternUnitsAttr) {
110 SVGUnitTypes::SVGUnitType propertyValue = SVGPropertyTraits<SVGUnitTypes ::SVGUnitType>::fromString(value); 110 SVGUnitTypes::SVGUnitType propertyValue = SVGPropertyTraits<SVGUnitTypes ::SVGUnitType>::fromString(value);
111 if (propertyValue > 0) 111 if (propertyValue > 0)
112 setPatternUnitsBaseValue(propertyValue); 112 setPatternUnitsBaseValue(propertyValue);
113 return; 113 return;
114 } else if (name == SVGNames::patternContentUnitsAttr) { 114 } else if (name == SVGNames::patternContentUnitsAttr) {
115 SVGUnitTypes::SVGUnitType propertyValue = SVGPropertyTraits<SVGUnitTypes ::SVGUnitType>::fromString(value); 115 SVGUnitTypes::SVGUnitType propertyValue = SVGPropertyTraits<SVGUnitTypes ::SVGUnitType>::fromString(value);
116 if (propertyValue > 0) 116 if (propertyValue > 0)
117 setPatternContentUnitsBaseValue(propertyValue); 117 setPatternContentUnitsBaseValue(propertyValue);
118 return; 118 return;
(...skipping 17 matching lines...) Expand all
136 || SVGFitToViewBox::parseAttribute(this, name, value)) { 136 || SVGFitToViewBox::parseAttribute(this, name, value)) {
137 } else 137 } else
138 ASSERT_NOT_REACHED(); 138 ASSERT_NOT_REACHED();
139 139
140 reportAttributeParsingError(parseError, name, value); 140 reportAttributeParsingError(parseError, name, value);
141 } 141 }
142 142
143 void SVGPatternElement::svgAttributeChanged(const QualifiedName& attrName) 143 void SVGPatternElement::svgAttributeChanged(const QualifiedName& attrName)
144 { 144 {
145 if (!isSupportedAttribute(attrName)) { 145 if (!isSupportedAttribute(attrName)) {
146 SVGStyledElement::svgAttributeChanged(attrName); 146 SVGElement::svgAttributeChanged(attrName);
147 return; 147 return;
148 } 148 }
149 149
150 SVGElementInstance::InvalidationGuard invalidationGuard(this); 150 SVGElementInstance::InvalidationGuard invalidationGuard(this);
151 151
152 if (attrName == SVGNames::xAttr 152 if (attrName == SVGNames::xAttr
153 || attrName == SVGNames::yAttr 153 || attrName == SVGNames::yAttr
154 || attrName == SVGNames::widthAttr 154 || attrName == SVGNames::widthAttr
155 || attrName == SVGNames::heightAttr) 155 || attrName == SVGNames::heightAttr)
156 updateRelativeLengthsInformation(); 156 updateRelativeLengthsInformation();
157 157
158 if (RenderObject* object = renderer()) 158 if (RenderObject* object = renderer())
159 object->setNeedsLayout(true); 159 object->setNeedsLayout(true);
160 } 160 }
161 161
162 void SVGPatternElement::childrenChanged(bool changedByParser, Node* beforeChange , Node* afterChange, int childCountDelta) 162 void SVGPatternElement::childrenChanged(bool changedByParser, Node* beforeChange , Node* afterChange, int childCountDelta)
163 { 163 {
164 SVGStyledElement::childrenChanged(changedByParser, beforeChange, afterChange , childCountDelta); 164 SVGElement::childrenChanged(changedByParser, beforeChange, afterChange, chil dCountDelta);
165 165
166 if (changedByParser) 166 if (changedByParser)
167 return; 167 return;
168 168
169 if (RenderObject* object = renderer()) 169 if (RenderObject* object = renderer())
170 object->setNeedsLayout(true); 170 object->setNeedsLayout(true);
171 } 171 }
172 172
173 RenderObject* SVGPatternElement::createRenderer(RenderStyle*) 173 RenderObject* SVGPatternElement::createRenderer(RenderStyle*)
174 { 174 {
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after
240 240
241 bool SVGPatternElement::selfHasRelativeLengths() const 241 bool SVGPatternElement::selfHasRelativeLengths() const
242 { 242 {
243 return xCurrentValue().isRelative() 243 return xCurrentValue().isRelative()
244 || yCurrentValue().isRelative() 244 || yCurrentValue().isRelative()
245 || widthCurrentValue().isRelative() 245 || widthCurrentValue().isRelative()
246 || heightCurrentValue().isRelative(); 246 || heightCurrentValue().isRelative();
247 } 247 }
248 248
249 } 249 }
OLDNEW
« no previous file with comments | « Source/core/svg/SVGPatternElement.h ('k') | Source/core/svg/SVGPatternElement.idl » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698