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

Side by Side Diff: third_party/WebKit/Source/core/svg/SVGPreserveAspectRatio.cpp

Issue 2068053002: Rename Blink constants generated from IDL files. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase Created 4 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
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2004, 2005, 2008 Nikolas Zimmermann <zimmermann@kde.org> 2 * Copyright (C) 2004, 2005, 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) 2010 Dirk Schulze <krit@webkit.org> 4 * Copyright (C) 2010 Dirk Schulze <krit@webkit.org>
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 19 matching lines...) Expand all
30 30
31 namespace blink { 31 namespace blink {
32 32
33 SVGPreserveAspectRatio::SVGPreserveAspectRatio() 33 SVGPreserveAspectRatio::SVGPreserveAspectRatio()
34 { 34 {
35 setDefault(); 35 setDefault();
36 } 36 }
37 37
38 void SVGPreserveAspectRatio::setDefault() 38 void SVGPreserveAspectRatio::setDefault()
39 { 39 {
40 m_align = SVG_PRESERVEASPECTRATIO_XMIDYMID; 40 m_align = kSvgPreserveaspectratioXmidymid;
41 m_meetOrSlice = SVG_MEETORSLICE_MEET; 41 m_meetOrSlice = kSvgMeetorsliceMeet;
42 } 42 }
43 43
44 SVGPreserveAspectRatio* SVGPreserveAspectRatio::clone() const 44 SVGPreserveAspectRatio* SVGPreserveAspectRatio::clone() const
45 { 45 {
46 SVGPreserveAspectRatio* preserveAspectRatio = create(); 46 SVGPreserveAspectRatio* preserveAspectRatio = create();
47 47
48 preserveAspectRatio->m_align = m_align; 48 preserveAspectRatio->m_align = m_align;
49 preserveAspectRatio->m_meetOrSlice = m_meetOrSlice; 49 preserveAspectRatio->m_meetOrSlice = m_meetOrSlice;
50 50
51 return preserveAspectRatio; 51 return preserveAspectRatio;
52 } 52 }
53 53
54 template<typename CharType> 54 template<typename CharType>
55 SVGParsingError SVGPreserveAspectRatio::parseInternal(const CharType*& ptr, cons t CharType* end, bool validate) 55 SVGParsingError SVGPreserveAspectRatio::parseInternal(const CharType*& ptr, cons t CharType* end, bool validate)
56 { 56 {
57 SVGPreserveAspectRatioType align = SVG_PRESERVEASPECTRATIO_XMIDYMID; 57 SVGPreserveAspectRatioType align = kSvgPreserveaspectratioXmidymid;
58 SVGMeetOrSliceType meetOrSlice = SVG_MEETORSLICE_MEET; 58 SVGMeetOrSliceType meetOrSlice = kSvgMeetorsliceMeet;
59 59
60 setAlign(align); 60 setAlign(align);
61 setMeetOrSlice(meetOrSlice); 61 setMeetOrSlice(meetOrSlice);
62 62
63 const CharType* start = ptr; 63 const CharType* start = ptr;
64 if (!skipOptionalSVGSpaces(ptr, end)) 64 if (!skipOptionalSVGSpaces(ptr, end))
65 return SVGParsingError(SVGParseStatus::ExpectedEnumeration, ptr - start) ; 65 return SVGParsingError(SVGParseStatus::ExpectedEnumeration, ptr - start) ;
66 66
67 if (*ptr == 'n') { 67 if (*ptr == 'n') {
68 if (!skipToken(ptr, end, "none")) 68 if (!skipToken(ptr, end, "none"))
69 return SVGParsingError(SVGParseStatus::ExpectedEnumeration, ptr - st art); 69 return SVGParsingError(SVGParseStatus::ExpectedEnumeration, ptr - st art);
70 align = SVG_PRESERVEASPECTRATIO_NONE; 70 align = kSvgPreserveaspectratioNone;
71 skipOptionalSVGSpaces(ptr, end); 71 skipOptionalSVGSpaces(ptr, end);
72 } else if (*ptr == 'x') { 72 } else if (*ptr == 'x') {
73 if ((end - ptr) < 8) 73 if ((end - ptr) < 8)
74 return SVGParsingError(SVGParseStatus::ExpectedEnumeration, ptr - st art); 74 return SVGParsingError(SVGParseStatus::ExpectedEnumeration, ptr - st art);
75 if (ptr[1] != 'M' || ptr[4] != 'Y' || ptr[5] != 'M') 75 if (ptr[1] != 'M' || ptr[4] != 'Y' || ptr[5] != 'M')
76 return SVGParsingError(SVGParseStatus::ExpectedEnumeration, ptr - st art); 76 return SVGParsingError(SVGParseStatus::ExpectedEnumeration, ptr - st art);
77 if (ptr[2] == 'i') { 77 if (ptr[2] == 'i') {
78 if (ptr[3] == 'n') { 78 if (ptr[3] == 'n') {
79 if (ptr[6] == 'i') { 79 if (ptr[6] == 'i') {
80 if (ptr[7] == 'n') 80 if (ptr[7] == 'n')
81 align = SVG_PRESERVEASPECTRATIO_XMINYMIN; 81 align = kSvgPreserveaspectratioXminymin;
82 else if (ptr[7] == 'd') 82 else if (ptr[7] == 'd')
83 align = SVG_PRESERVEASPECTRATIO_XMINYMID; 83 align = kSvgPreserveaspectratioXminymid;
84 else 84 else
85 return SVGParsingError(SVGParseStatus::ExpectedEnumerati on, ptr - start); 85 return SVGParsingError(SVGParseStatus::ExpectedEnumerati on, ptr - start);
86 } else if (ptr[6] == 'a' && ptr[7] == 'x') { 86 } else if (ptr[6] == 'a' && ptr[7] == 'x') {
87 align = SVG_PRESERVEASPECTRATIO_XMINYMAX; 87 align = kSvgPreserveaspectratioXminymax;
88 } else { 88 } else {
89 return SVGParsingError(SVGParseStatus::ExpectedEnumeration, ptr - start); 89 return SVGParsingError(SVGParseStatus::ExpectedEnumeration, ptr - start);
90 } 90 }
91 } else if (ptr[3] == 'd') { 91 } else if (ptr[3] == 'd') {
92 if (ptr[6] == 'i') { 92 if (ptr[6] == 'i') {
93 if (ptr[7] == 'n') 93 if (ptr[7] == 'n')
94 align = SVG_PRESERVEASPECTRATIO_XMIDYMIN; 94 align = kSvgPreserveaspectratioXmidymin;
95 else if (ptr[7] == 'd') 95 else if (ptr[7] == 'd')
96 align = SVG_PRESERVEASPECTRATIO_XMIDYMID; 96 align = kSvgPreserveaspectratioXmidymid;
97 else 97 else
98 return SVGParsingError(SVGParseStatus::ExpectedEnumerati on, ptr - start); 98 return SVGParsingError(SVGParseStatus::ExpectedEnumerati on, ptr - start);
99 } else if (ptr[6] == 'a' && ptr[7] == 'x') { 99 } else if (ptr[6] == 'a' && ptr[7] == 'x') {
100 align = SVG_PRESERVEASPECTRATIO_XMIDYMAX; 100 align = kSvgPreserveaspectratioXmidymax;
101 } else { 101 } else {
102 return SVGParsingError(SVGParseStatus::ExpectedEnumeration, ptr - start); 102 return SVGParsingError(SVGParseStatus::ExpectedEnumeration, ptr - start);
103 } 103 }
104 } else { 104 } else {
105 return SVGParsingError(SVGParseStatus::ExpectedEnumeration, ptr - start); 105 return SVGParsingError(SVGParseStatus::ExpectedEnumeration, ptr - start);
106 } 106 }
107 } else if (ptr[2] == 'a' && ptr[3] == 'x') { 107 } else if (ptr[2] == 'a' && ptr[3] == 'x') {
108 if (ptr[6] == 'i') { 108 if (ptr[6] == 'i') {
109 if (ptr[7] == 'n') 109 if (ptr[7] == 'n')
110 align = SVG_PRESERVEASPECTRATIO_XMAXYMIN; 110 align = kSvgPreserveaspectratioXmaxymin;
111 else if (ptr[7] == 'd') 111 else if (ptr[7] == 'd')
112 align = SVG_PRESERVEASPECTRATIO_XMAXYMID; 112 align = kSvgPreserveaspectratioXmaxymid;
113 else 113 else
114 return SVGParsingError(SVGParseStatus::ExpectedEnumeration, ptr - start); 114 return SVGParsingError(SVGParseStatus::ExpectedEnumeration, ptr - start);
115 } else if (ptr[6] == 'a' && ptr[7] == 'x') { 115 } else if (ptr[6] == 'a' && ptr[7] == 'x') {
116 align = SVG_PRESERVEASPECTRATIO_XMAXYMAX; 116 align = kSvgPreserveaspectratioXmaxymax;
117 } else { 117 } else {
118 return SVGParsingError(SVGParseStatus::ExpectedEnumeration, ptr - start); 118 return SVGParsingError(SVGParseStatus::ExpectedEnumeration, ptr - start);
119 } 119 }
120 } else { 120 } else {
121 return SVGParsingError(SVGParseStatus::ExpectedEnumeration, ptr - st art); 121 return SVGParsingError(SVGParseStatus::ExpectedEnumeration, ptr - st art);
122 } 122 }
123 ptr += 8; 123 ptr += 8;
124 skipOptionalSVGSpaces(ptr, end); 124 skipOptionalSVGSpaces(ptr, end);
125 } else { 125 } else {
126 return SVGParsingError(SVGParseStatus::ExpectedEnumeration, ptr - start) ; 126 return SVGParsingError(SVGParseStatus::ExpectedEnumeration, ptr - start) ;
127 } 127 }
128 128
129 if (ptr < end) { 129 if (ptr < end) {
130 if (*ptr == 'm') { 130 if (*ptr == 'm') {
131 if (!skipToken(ptr, end, "meet")) 131 if (!skipToken(ptr, end, "meet"))
132 return SVGParsingError(SVGParseStatus::ExpectedEnumeration, ptr - start); 132 return SVGParsingError(SVGParseStatus::ExpectedEnumeration, ptr - start);
133 skipOptionalSVGSpaces(ptr, end); 133 skipOptionalSVGSpaces(ptr, end);
134 } else if (*ptr == 's') { 134 } else if (*ptr == 's') {
135 if (!skipToken(ptr, end, "slice")) 135 if (!skipToken(ptr, end, "slice"))
136 return SVGParsingError(SVGParseStatus::ExpectedEnumeration, ptr - start); 136 return SVGParsingError(SVGParseStatus::ExpectedEnumeration, ptr - start);
137 skipOptionalSVGSpaces(ptr, end); 137 skipOptionalSVGSpaces(ptr, end);
138 if (align != SVG_PRESERVEASPECTRATIO_NONE) 138 if (align != kSvgPreserveaspectratioNone)
139 meetOrSlice = SVG_MEETORSLICE_SLICE; 139 meetOrSlice = kSvgMeetorsliceSlice;
140 } 140 }
141 } 141 }
142 142
143 if (end != ptr && validate) 143 if (end != ptr && validate)
144 return SVGParsingError(SVGParseStatus::TrailingGarbage, ptr - start); 144 return SVGParsingError(SVGParseStatus::TrailingGarbage, ptr - start);
145 145
146 setAlign(align); 146 setAlign(align);
147 setMeetOrSlice(meetOrSlice); 147 setMeetOrSlice(meetOrSlice);
148 148
149 return SVGParseStatus::NoError; 149 return SVGParseStatus::NoError;
(...skipping 21 matching lines...) Expand all
171 return parseInternal(ptr, end, validate) == SVGParseStatus::NoError; 171 return parseInternal(ptr, end, validate) == SVGParseStatus::NoError;
172 } 172 }
173 173
174 bool SVGPreserveAspectRatio::parse(const UChar*& ptr, const UChar* end, bool val idate) 174 bool SVGPreserveAspectRatio::parse(const UChar*& ptr, const UChar* end, bool val idate)
175 { 175 {
176 return parseInternal(ptr, end, validate) == SVGParseStatus::NoError; 176 return parseInternal(ptr, end, validate) == SVGParseStatus::NoError;
177 } 177 }
178 178
179 void SVGPreserveAspectRatio::transformRect(FloatRect& destRect, FloatRect& srcRe ct) 179 void SVGPreserveAspectRatio::transformRect(FloatRect& destRect, FloatRect& srcRe ct)
180 { 180 {
181 if (m_align == SVG_PRESERVEASPECTRATIO_NONE) 181 if (m_align == kSvgPreserveaspectratioNone)
182 return; 182 return;
183 183
184 FloatSize imageSize = srcRect.size(); 184 FloatSize imageSize = srcRect.size();
185 float origDestWidth = destRect.width(); 185 float origDestWidth = destRect.width();
186 float origDestHeight = destRect.height(); 186 float origDestHeight = destRect.height();
187 switch (m_meetOrSlice) { 187 switch (m_meetOrSlice) {
188 case SVGPreserveAspectRatio::SVG_MEETORSLICE_UNKNOWN: 188 case SVGPreserveAspectRatio::kSvgMeetorsliceUnknown:
189 break; 189 break;
190 case SVGPreserveAspectRatio::SVG_MEETORSLICE_MEET: { 190 case SVGPreserveAspectRatio::kSvgMeetorsliceMeet: {
191 float widthToHeightMultiplier = srcRect.height() / srcRect.width(); 191 float widthToHeightMultiplier = srcRect.height() / srcRect.width();
192 if (origDestHeight > origDestWidth * widthToHeightMultiplier) { 192 if (origDestHeight > origDestWidth * widthToHeightMultiplier) {
193 destRect.setHeight(origDestWidth * widthToHeightMultiplier); 193 destRect.setHeight(origDestWidth * widthToHeightMultiplier);
194 switch (m_align) { 194 switch (m_align) {
195 case SVGPreserveAspectRatio::SVG_PRESERVEASPECTRATIO_XMINYMID: 195 case SVGPreserveAspectRatio::kSvgPreserveaspectratioXminymid:
196 case SVGPreserveAspectRatio::SVG_PRESERVEASPECTRATIO_XMIDYMID: 196 case SVGPreserveAspectRatio::kSvgPreserveaspectratioXmidymid:
197 case SVGPreserveAspectRatio::SVG_PRESERVEASPECTRATIO_XMAXYMID: 197 case SVGPreserveAspectRatio::kSvgPreserveaspectratioXmaxymid:
198 destRect.setY(destRect.y() + origDestHeight / 2 - destRect.heigh t() / 2); 198 destRect.setY(destRect.y() + origDestHeight / 2 - destRect.heigh t() / 2);
199 break; 199 break;
200 case SVGPreserveAspectRatio::SVG_PRESERVEASPECTRATIO_XMINYMAX: 200 case SVGPreserveAspectRatio::kSvgPreserveaspectratioXminymax:
201 case SVGPreserveAspectRatio::SVG_PRESERVEASPECTRATIO_XMIDYMAX: 201 case SVGPreserveAspectRatio::kSvgPreserveaspectratioXmidymax:
202 case SVGPreserveAspectRatio::SVG_PRESERVEASPECTRATIO_XMAXYMAX: 202 case SVGPreserveAspectRatio::kSvgPreserveaspectratioXmaxymax:
203 destRect.setY(destRect.y() + origDestHeight - destRect.height()) ; 203 destRect.setY(destRect.y() + origDestHeight - destRect.height()) ;
204 break; 204 break;
205 default: 205 default:
206 break; 206 break;
207 } 207 }
208 } 208 }
209 if (origDestWidth > origDestHeight / widthToHeightMultiplier) { 209 if (origDestWidth > origDestHeight / widthToHeightMultiplier) {
210 destRect.setWidth(origDestHeight / widthToHeightMultiplier); 210 destRect.setWidth(origDestHeight / widthToHeightMultiplier);
211 switch (m_align) { 211 switch (m_align) {
212 case SVGPreserveAspectRatio::SVG_PRESERVEASPECTRATIO_XMIDYMIN: 212 case SVGPreserveAspectRatio::kSvgPreserveaspectratioXmidymin:
213 case SVGPreserveAspectRatio::SVG_PRESERVEASPECTRATIO_XMIDYMID: 213 case SVGPreserveAspectRatio::kSvgPreserveaspectratioXmidymid:
214 case SVGPreserveAspectRatio::SVG_PRESERVEASPECTRATIO_XMIDYMAX: 214 case SVGPreserveAspectRatio::kSvgPreserveaspectratioXmidymax:
215 destRect.setX(destRect.x() + origDestWidth / 2 - destRect.width( ) / 2); 215 destRect.setX(destRect.x() + origDestWidth / 2 - destRect.width( ) / 2);
216 break; 216 break;
217 case SVGPreserveAspectRatio::SVG_PRESERVEASPECTRATIO_XMAXYMIN: 217 case SVGPreserveAspectRatio::kSvgPreserveaspectratioXmaxymin:
218 case SVGPreserveAspectRatio::SVG_PRESERVEASPECTRATIO_XMAXYMID: 218 case SVGPreserveAspectRatio::kSvgPreserveaspectratioXmaxymid:
219 case SVGPreserveAspectRatio::SVG_PRESERVEASPECTRATIO_XMAXYMAX: 219 case SVGPreserveAspectRatio::kSvgPreserveaspectratioXmaxymax:
220 destRect.setX(destRect.x() + origDestWidth - destRect.width()); 220 destRect.setX(destRect.x() + origDestWidth - destRect.width());
221 break; 221 break;
222 default: 222 default:
223 break; 223 break;
224 } 224 }
225 } 225 }
226 break; 226 break;
227 } 227 }
228 case SVGPreserveAspectRatio::SVG_MEETORSLICE_SLICE: { 228 case SVGPreserveAspectRatio::kSvgMeetorsliceSlice: {
229 float widthToHeightMultiplier = srcRect.height() / srcRect.width(); 229 float widthToHeightMultiplier = srcRect.height() / srcRect.width();
230 // if the destination height is less than the height of the image we'll be drawing 230 // if the destination height is less than the height of the image we'll be drawing
231 if (origDestHeight < origDestWidth * widthToHeightMultiplier) { 231 if (origDestHeight < origDestWidth * widthToHeightMultiplier) {
232 float destToSrcMultiplier = srcRect.width() / destRect.width(); 232 float destToSrcMultiplier = srcRect.width() / destRect.width();
233 srcRect.setHeight(destRect.height() * destToSrcMultiplier); 233 srcRect.setHeight(destRect.height() * destToSrcMultiplier);
234 switch (m_align) { 234 switch (m_align) {
235 case SVGPreserveAspectRatio::SVG_PRESERVEASPECTRATIO_XMINYMID: 235 case SVGPreserveAspectRatio::kSvgPreserveaspectratioXminymid:
236 case SVGPreserveAspectRatio::SVG_PRESERVEASPECTRATIO_XMIDYMID: 236 case SVGPreserveAspectRatio::kSvgPreserveaspectratioXmidymid:
237 case SVGPreserveAspectRatio::SVG_PRESERVEASPECTRATIO_XMAXYMID: 237 case SVGPreserveAspectRatio::kSvgPreserveaspectratioXmaxymid:
238 srcRect.setY(srcRect.y() + imageSize.height() / 2 - srcRect.heig ht() / 2); 238 srcRect.setY(srcRect.y() + imageSize.height() / 2 - srcRect.heig ht() / 2);
239 break; 239 break;
240 case SVGPreserveAspectRatio::SVG_PRESERVEASPECTRATIO_XMINYMAX: 240 case SVGPreserveAspectRatio::kSvgPreserveaspectratioXminymax:
241 case SVGPreserveAspectRatio::SVG_PRESERVEASPECTRATIO_XMIDYMAX: 241 case SVGPreserveAspectRatio::kSvgPreserveaspectratioXmidymax:
242 case SVGPreserveAspectRatio::SVG_PRESERVEASPECTRATIO_XMAXYMAX: 242 case SVGPreserveAspectRatio::kSvgPreserveaspectratioXmaxymax:
243 srcRect.setY(srcRect.y() + imageSize.height() - srcRect.height() ); 243 srcRect.setY(srcRect.y() + imageSize.height() - srcRect.height() );
244 break; 244 break;
245 default: 245 default:
246 break; 246 break;
247 } 247 }
248 } 248 }
249 // if the destination width is less than the width of the image we'll be drawing 249 // if the destination width is less than the width of the image we'll be drawing
250 if (origDestWidth < origDestHeight / widthToHeightMultiplier) { 250 if (origDestWidth < origDestHeight / widthToHeightMultiplier) {
251 float destToSrcMultiplier = srcRect.height() / destRect.height(); 251 float destToSrcMultiplier = srcRect.height() / destRect.height();
252 srcRect.setWidth(destRect.width() * destToSrcMultiplier); 252 srcRect.setWidth(destRect.width() * destToSrcMultiplier);
253 switch (m_align) { 253 switch (m_align) {
254 case SVGPreserveAspectRatio::SVG_PRESERVEASPECTRATIO_XMIDYMIN: 254 case SVGPreserveAspectRatio::kSvgPreserveaspectratioXmidymin:
255 case SVGPreserveAspectRatio::SVG_PRESERVEASPECTRATIO_XMIDYMID: 255 case SVGPreserveAspectRatio::kSvgPreserveaspectratioXmidymid:
256 case SVGPreserveAspectRatio::SVG_PRESERVEASPECTRATIO_XMIDYMAX: 256 case SVGPreserveAspectRatio::kSvgPreserveaspectratioXmidymax:
257 srcRect.setX(srcRect.x() + imageSize.width() / 2 - srcRect.width () / 2); 257 srcRect.setX(srcRect.x() + imageSize.width() / 2 - srcRect.width () / 2);
258 break; 258 break;
259 case SVGPreserveAspectRatio::SVG_PRESERVEASPECTRATIO_XMAXYMIN: 259 case SVGPreserveAspectRatio::kSvgPreserveaspectratioXmaxymin:
260 case SVGPreserveAspectRatio::SVG_PRESERVEASPECTRATIO_XMAXYMID: 260 case SVGPreserveAspectRatio::kSvgPreserveaspectratioXmaxymid:
261 case SVGPreserveAspectRatio::SVG_PRESERVEASPECTRATIO_XMAXYMAX: 261 case SVGPreserveAspectRatio::kSvgPreserveaspectratioXmaxymax:
262 srcRect.setX(srcRect.x() + imageSize.width() - srcRect.width()); 262 srcRect.setX(srcRect.x() + imageSize.width() - srcRect.width());
263 break; 263 break;
264 default: 264 default:
265 break; 265 break;
266 } 266 }
267 } 267 }
268 break; 268 break;
269 } 269 }
270 } 270 }
271 } 271 }
272 272
273 AffineTransform SVGPreserveAspectRatio::getCTM(float logicalX, float logicalY, f loat logicalWidth, float logicalHeight, float physicalWidth, float physicalHeigh t) const 273 AffineTransform SVGPreserveAspectRatio::getCTM(float logicalX, float logicalY, f loat logicalWidth, float logicalHeight, float physicalWidth, float physicalHeigh t) const
274 { 274 {
275 ASSERT(logicalWidth); 275 ASSERT(logicalWidth);
276 ASSERT(logicalHeight); 276 ASSERT(logicalHeight);
277 ASSERT(physicalWidth); 277 ASSERT(physicalWidth);
278 ASSERT(physicalHeight); 278 ASSERT(physicalHeight);
279 279
280 AffineTransform transform; 280 AffineTransform transform;
281 if (m_align == SVG_PRESERVEASPECTRATIO_UNKNOWN) 281 if (m_align == kSvgPreserveaspectratioUnknown)
282 return transform; 282 return transform;
283 283
284 double extendedLogicalX = logicalX; 284 double extendedLogicalX = logicalX;
285 double extendedLogicalY = logicalY; 285 double extendedLogicalY = logicalY;
286 double extendedLogicalWidth = logicalWidth; 286 double extendedLogicalWidth = logicalWidth;
287 double extendedLogicalHeight = logicalHeight; 287 double extendedLogicalHeight = logicalHeight;
288 double extendedPhysicalWidth = physicalWidth; 288 double extendedPhysicalWidth = physicalWidth;
289 double extendedPhysicalHeight = physicalHeight; 289 double extendedPhysicalHeight = physicalHeight;
290 double logicalRatio = extendedLogicalWidth / extendedLogicalHeight; 290 double logicalRatio = extendedLogicalWidth / extendedLogicalHeight;
291 double physicalRatio = extendedPhysicalWidth / extendedPhysicalHeight; 291 double physicalRatio = extendedPhysicalWidth / extendedPhysicalHeight;
292 292
293 if (m_align == SVG_PRESERVEASPECTRATIO_NONE) { 293 if (m_align == kSvgPreserveaspectratioNone) {
294 transform.scaleNonUniform(extendedPhysicalWidth / extendedLogicalWidth, extendedPhysicalHeight / extendedLogicalHeight); 294 transform.scaleNonUniform(extendedPhysicalWidth / extendedLogicalWidth, extendedPhysicalHeight / extendedLogicalHeight);
295 transform.translate(-extendedLogicalX, -extendedLogicalY); 295 transform.translate(-extendedLogicalX, -extendedLogicalY);
296 return transform; 296 return transform;
297 } 297 }
298 298
299 if ((logicalRatio < physicalRatio && (m_meetOrSlice == SVG_MEETORSLICE_MEET) ) || (logicalRatio >= physicalRatio && (m_meetOrSlice == SVG_MEETORSLICE_SLICE)) ) { 299 if ((logicalRatio < physicalRatio && (m_meetOrSlice == kSvgMeetorsliceMeet)) || (logicalRatio >= physicalRatio && (m_meetOrSlice == kSvgMeetorsliceSlice))) {
300 transform.scaleNonUniform(extendedPhysicalHeight / extendedLogicalHeight , extendedPhysicalHeight / extendedLogicalHeight); 300 transform.scaleNonUniform(extendedPhysicalHeight / extendedLogicalHeight , extendedPhysicalHeight / extendedLogicalHeight);
301 301
302 if (m_align == SVG_PRESERVEASPECTRATIO_XMINYMIN || m_align == SVG_PRESER VEASPECTRATIO_XMINYMID || m_align == SVG_PRESERVEASPECTRATIO_XMINYMAX) 302 if (m_align == kSvgPreserveaspectratioXminymin || m_align == kSvgPreserv easpectratioXminymid || m_align == kSvgPreserveaspectratioXminymax)
303 transform.translate(-extendedLogicalX, -extendedLogicalY); 303 transform.translate(-extendedLogicalX, -extendedLogicalY);
304 else if (m_align == SVG_PRESERVEASPECTRATIO_XMIDYMIN || m_align == SVG_P RESERVEASPECTRATIO_XMIDYMID || m_align == SVG_PRESERVEASPECTRATIO_XMIDYMAX) 304 else if (m_align == kSvgPreserveaspectratioXmidymin || m_align == kSvgPr eserveaspectratioXmidymid || m_align == kSvgPreserveaspectratioXmidymax)
305 transform.translate(-extendedLogicalX - (extendedLogicalWidth - exte ndedPhysicalWidth * extendedLogicalHeight / extendedPhysicalHeight) / 2, -extend edLogicalY); 305 transform.translate(-extendedLogicalX - (extendedLogicalWidth - exte ndedPhysicalWidth * extendedLogicalHeight / extendedPhysicalHeight) / 2, -extend edLogicalY);
306 else 306 else
307 transform.translate(-extendedLogicalX - (extendedLogicalWidth - exte ndedPhysicalWidth * extendedLogicalHeight / extendedPhysicalHeight), -extendedLo gicalY); 307 transform.translate(-extendedLogicalX - (extendedLogicalWidth - exte ndedPhysicalWidth * extendedLogicalHeight / extendedPhysicalHeight), -extendedLo gicalY);
308 308
309 return transform; 309 return transform;
310 } 310 }
311 311
312 transform.scaleNonUniform(extendedPhysicalWidth / extendedLogicalWidth, exte ndedPhysicalWidth / extendedLogicalWidth); 312 transform.scaleNonUniform(extendedPhysicalWidth / extendedLogicalWidth, exte ndedPhysicalWidth / extendedLogicalWidth);
313 313
314 if (m_align == SVG_PRESERVEASPECTRATIO_XMINYMIN || m_align == SVG_PRESERVEAS PECTRATIO_XMIDYMIN || m_align == SVG_PRESERVEASPECTRATIO_XMAXYMIN) 314 if (m_align == kSvgPreserveaspectratioXminymin || m_align == kSvgPreserveasp ectratioXmidymin || m_align == kSvgPreserveaspectratioXmaxymin)
315 transform.translate(-extendedLogicalX, -extendedLogicalY); 315 transform.translate(-extendedLogicalX, -extendedLogicalY);
316 else if (m_align == SVG_PRESERVEASPECTRATIO_XMINYMID || m_align == SVG_PRESE RVEASPECTRATIO_XMIDYMID || m_align == SVG_PRESERVEASPECTRATIO_XMAXYMID) 316 else if (m_align == kSvgPreserveaspectratioXminymid || m_align == kSvgPreser veaspectratioXmidymid || m_align == kSvgPreserveaspectratioXmaxymid)
317 transform.translate(-extendedLogicalX, -extendedLogicalY - (extendedLogi calHeight - extendedPhysicalHeight * extendedLogicalWidth / extendedPhysicalWidt h) / 2); 317 transform.translate(-extendedLogicalX, -extendedLogicalY - (extendedLogi calHeight - extendedPhysicalHeight * extendedLogicalWidth / extendedPhysicalWidt h) / 2);
318 else 318 else
319 transform.translate(-extendedLogicalX, -extendedLogicalY - (extendedLogi calHeight - extendedPhysicalHeight * extendedLogicalWidth / extendedPhysicalWidt h)); 319 transform.translate(-extendedLogicalX, -extendedLogicalY - (extendedLogi calHeight - extendedPhysicalHeight * extendedLogicalWidth / extendedPhysicalWidt h));
320 320
321 return transform; 321 return transform;
322 } 322 }
323 323
324 String SVGPreserveAspectRatio::valueAsString() const 324 String SVGPreserveAspectRatio::valueAsString() const
325 { 325 {
326 StringBuilder builder; 326 StringBuilder builder;
327 327
328 const char* alignString = ""; 328 const char* alignString = "";
329 switch (m_align) { 329 switch (m_align) {
330 case SVG_PRESERVEASPECTRATIO_NONE: 330 case kSvgPreserveaspectratioNone:
331 alignString = "none"; 331 alignString = "none";
332 break; 332 break;
333 case SVG_PRESERVEASPECTRATIO_XMINYMIN: 333 case kSvgPreserveaspectratioXminymin:
334 alignString = "xMinYMin"; 334 alignString = "xMinYMin";
335 break; 335 break;
336 case SVG_PRESERVEASPECTRATIO_XMIDYMIN: 336 case kSvgPreserveaspectratioXmidymin:
337 alignString = "xMidYMin"; 337 alignString = "xMidYMin";
338 break; 338 break;
339 case SVG_PRESERVEASPECTRATIO_XMAXYMIN: 339 case kSvgPreserveaspectratioXmaxymin:
340 alignString = "xMaxYMin"; 340 alignString = "xMaxYMin";
341 break; 341 break;
342 case SVG_PRESERVEASPECTRATIO_XMINYMID: 342 case kSvgPreserveaspectratioXminymid:
343 alignString = "xMinYMid"; 343 alignString = "xMinYMid";
344 break; 344 break;
345 case SVG_PRESERVEASPECTRATIO_XMIDYMID: 345 case kSvgPreserveaspectratioXmidymid:
346 alignString = "xMidYMid"; 346 alignString = "xMidYMid";
347 break; 347 break;
348 case SVG_PRESERVEASPECTRATIO_XMAXYMID: 348 case kSvgPreserveaspectratioXmaxymid:
349 alignString = "xMaxYMid"; 349 alignString = "xMaxYMid";
350 break; 350 break;
351 case SVG_PRESERVEASPECTRATIO_XMINYMAX: 351 case kSvgPreserveaspectratioXminymax:
352 alignString = "xMinYMax"; 352 alignString = "xMinYMax";
353 break; 353 break;
354 case SVG_PRESERVEASPECTRATIO_XMIDYMAX: 354 case kSvgPreserveaspectratioXmidymax:
355 alignString = "xMidYMax"; 355 alignString = "xMidYMax";
356 break; 356 break;
357 case SVG_PRESERVEASPECTRATIO_XMAXYMAX: 357 case kSvgPreserveaspectratioXmaxymax:
358 alignString = "xMaxYMax"; 358 alignString = "xMaxYMax";
359 break; 359 break;
360 case SVG_PRESERVEASPECTRATIO_UNKNOWN: 360 case kSvgPreserveaspectratioUnknown:
361 alignString = "unknown"; 361 alignString = "unknown";
362 break; 362 break;
363 } 363 }
364 builder.append(alignString); 364 builder.append(alignString);
365 365
366 const char* meetOrSliceString = ""; 366 const char* meetOrSliceString = "";
367 switch (m_meetOrSlice) { 367 switch (m_meetOrSlice) {
368 default: 368 default:
369 case SVG_MEETORSLICE_UNKNOWN: 369 case kSvgMeetorsliceUnknown:
370 break; 370 break;
371 case SVG_MEETORSLICE_MEET: 371 case kSvgMeetorsliceMeet:
372 meetOrSliceString = " meet"; 372 meetOrSliceString = " meet";
373 break; 373 break;
374 case SVG_MEETORSLICE_SLICE: 374 case kSvgMeetorsliceSlice:
375 meetOrSliceString = " slice"; 375 meetOrSliceString = " slice";
376 break; 376 break;
377 } 377 }
378 builder.append(meetOrSliceString); 378 builder.append(meetOrSliceString);
379 return builder.toString(); 379 return builder.toString();
380 } 380 }
381 381
382 void SVGPreserveAspectRatio::add(SVGPropertyBase* other, SVGElement*) 382 void SVGPreserveAspectRatio::add(SVGPropertyBase* other, SVGElement*)
383 { 383 {
384 ASSERT_NOT_REACHED(); 384 ASSERT_NOT_REACHED();
(...skipping 12 matching lines...) Expand all
397 m_meetOrSlice = preserveAspectRatioToUse->m_meetOrSlice; 397 m_meetOrSlice = preserveAspectRatioToUse->m_meetOrSlice;
398 } 398 }
399 399
400 float SVGPreserveAspectRatio::calculateDistance(SVGPropertyBase* toValue, SVGEle ment* contextElement) 400 float SVGPreserveAspectRatio::calculateDistance(SVGPropertyBase* toValue, SVGEle ment* contextElement)
401 { 401 {
402 // No paced animations for SVGPreserveAspectRatio. 402 // No paced animations for SVGPreserveAspectRatio.
403 return -1; 403 return -1;
404 } 404 }
405 405
406 } // namespace blink 406 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698