| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2004, 2005, 2007, 2008 Nikolas Zimmermann <zimmermann@kde.org> | 2 * Copyright (C) 2004, 2005, 2007, 2008 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 * 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 109 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 120 case kSvgAngletypeRad: | 120 case kSvgAngletypeRad: |
| 121 return rad2deg(m_valueInSpecifiedUnits); | 121 return rad2deg(m_valueInSpecifiedUnits); |
| 122 case kSvgAngletypeTurn: | 122 case kSvgAngletypeTurn: |
| 123 return turn2deg(m_valueInSpecifiedUnits); | 123 return turn2deg(m_valueInSpecifiedUnits); |
| 124 case kSvgAngletypeUnspecified: | 124 case kSvgAngletypeUnspecified: |
| 125 case kSvgAngletypeUnknown: | 125 case kSvgAngletypeUnknown: |
| 126 case kSvgAngletypeDeg: | 126 case kSvgAngletypeDeg: |
| 127 return m_valueInSpecifiedUnits; | 127 return m_valueInSpecifiedUnits; |
| 128 } | 128 } |
| 129 | 129 |
| 130 ASSERT_NOT_REACHED(); | 130 NOTREACHED(); |
| 131 return 0; | 131 return 0; |
| 132 } | 132 } |
| 133 | 133 |
| 134 void SVGAngle::setValue(float value) { | 134 void SVGAngle::setValue(float value) { |
| 135 switch (m_unitType) { | 135 switch (m_unitType) { |
| 136 case kSvgAngletypeGrad: | 136 case kSvgAngletypeGrad: |
| 137 m_valueInSpecifiedUnits = deg2grad(value); | 137 m_valueInSpecifiedUnits = deg2grad(value); |
| 138 break; | 138 break; |
| 139 case kSvgAngletypeRad: | 139 case kSvgAngletypeRad: |
| 140 m_valueInSpecifiedUnits = deg2rad(value); | 140 m_valueInSpecifiedUnits = deg2rad(value); |
| (...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 203 } | 203 } |
| 204 case kSvgAngletypeTurn: { | 204 case kSvgAngletypeTurn: { |
| 205 DEFINE_STATIC_LOCAL(String, turnString, ("turn")); | 205 DEFINE_STATIC_LOCAL(String, turnString, ("turn")); |
| 206 return String::number(m_valueInSpecifiedUnits) + turnString; | 206 return String::number(m_valueInSpecifiedUnits) + turnString; |
| 207 } | 207 } |
| 208 case kSvgAngletypeUnspecified: | 208 case kSvgAngletypeUnspecified: |
| 209 case kSvgAngletypeUnknown: | 209 case kSvgAngletypeUnknown: |
| 210 return String::number(m_valueInSpecifiedUnits); | 210 return String::number(m_valueInSpecifiedUnits); |
| 211 } | 211 } |
| 212 | 212 |
| 213 ASSERT_NOT_REACHED(); | 213 NOTREACHED(); |
| 214 return String(); | 214 return String(); |
| 215 } | 215 } |
| 216 | 216 |
| 217 template <typename CharType> | 217 template <typename CharType> |
| 218 static SVGParsingError parseValue(const String& value, | 218 static SVGParsingError parseValue(const String& value, |
| 219 float& valueInSpecifiedUnits, | 219 float& valueInSpecifiedUnits, |
| 220 SVGAngle::SVGAngleType& unitType) { | 220 SVGAngle::SVGAngleType& unitType) { |
| 221 const CharType* ptr = value.getCharacters<CharType>(); | 221 const CharType* ptr = value.getCharacters<CharType>(); |
| 222 const CharType* end = ptr + value.length(); | 222 const CharType* end = ptr + value.length(); |
| 223 | 223 |
| (...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 286 break; | 286 break; |
| 287 case kSvgAngletypeUnspecified: | 287 case kSvgAngletypeUnspecified: |
| 288 case kSvgAngletypeDeg: | 288 case kSvgAngletypeDeg: |
| 289 m_valueInSpecifiedUnits = turn2deg(m_valueInSpecifiedUnits); | 289 m_valueInSpecifiedUnits = turn2deg(m_valueInSpecifiedUnits); |
| 290 break; | 290 break; |
| 291 case kSvgAngletypeRad: | 291 case kSvgAngletypeRad: |
| 292 m_valueInSpecifiedUnits = deg2rad(turn2deg(m_valueInSpecifiedUnits)); | 292 m_valueInSpecifiedUnits = deg2rad(turn2deg(m_valueInSpecifiedUnits)); |
| 293 break; | 293 break; |
| 294 case kSvgAngletypeTurn: | 294 case kSvgAngletypeTurn: |
| 295 case kSvgAngletypeUnknown: | 295 case kSvgAngletypeUnknown: |
| 296 ASSERT_NOT_REACHED(); | 296 NOTREACHED(); |
| 297 break; | 297 break; |
| 298 } | 298 } |
| 299 break; | 299 break; |
| 300 case kSvgAngletypeRad: | 300 case kSvgAngletypeRad: |
| 301 switch (unitType) { | 301 switch (unitType) { |
| 302 case kSvgAngletypeGrad: | 302 case kSvgAngletypeGrad: |
| 303 m_valueInSpecifiedUnits = rad2grad(m_valueInSpecifiedUnits); | 303 m_valueInSpecifiedUnits = rad2grad(m_valueInSpecifiedUnits); |
| 304 break; | 304 break; |
| 305 case kSvgAngletypeUnspecified: | 305 case kSvgAngletypeUnspecified: |
| 306 case kSvgAngletypeDeg: | 306 case kSvgAngletypeDeg: |
| 307 m_valueInSpecifiedUnits = rad2deg(m_valueInSpecifiedUnits); | 307 m_valueInSpecifiedUnits = rad2deg(m_valueInSpecifiedUnits); |
| 308 break; | 308 break; |
| 309 case kSvgAngletypeTurn: | 309 case kSvgAngletypeTurn: |
| 310 m_valueInSpecifiedUnits = deg2turn(rad2deg(m_valueInSpecifiedUnits)); | 310 m_valueInSpecifiedUnits = deg2turn(rad2deg(m_valueInSpecifiedUnits)); |
| 311 break; | 311 break; |
| 312 case kSvgAngletypeRad: | 312 case kSvgAngletypeRad: |
| 313 case kSvgAngletypeUnknown: | 313 case kSvgAngletypeUnknown: |
| 314 ASSERT_NOT_REACHED(); | 314 NOTREACHED(); |
| 315 break; | 315 break; |
| 316 } | 316 } |
| 317 break; | 317 break; |
| 318 case kSvgAngletypeGrad: | 318 case kSvgAngletypeGrad: |
| 319 switch (unitType) { | 319 switch (unitType) { |
| 320 case kSvgAngletypeRad: | 320 case kSvgAngletypeRad: |
| 321 m_valueInSpecifiedUnits = grad2rad(m_valueInSpecifiedUnits); | 321 m_valueInSpecifiedUnits = grad2rad(m_valueInSpecifiedUnits); |
| 322 break; | 322 break; |
| 323 case kSvgAngletypeUnspecified: | 323 case kSvgAngletypeUnspecified: |
| 324 case kSvgAngletypeDeg: | 324 case kSvgAngletypeDeg: |
| 325 m_valueInSpecifiedUnits = grad2deg(m_valueInSpecifiedUnits); | 325 m_valueInSpecifiedUnits = grad2deg(m_valueInSpecifiedUnits); |
| 326 break; | 326 break; |
| 327 case kSvgAngletypeTurn: | 327 case kSvgAngletypeTurn: |
| 328 m_valueInSpecifiedUnits = grad2turn(m_valueInSpecifiedUnits); | 328 m_valueInSpecifiedUnits = grad2turn(m_valueInSpecifiedUnits); |
| 329 break; | 329 break; |
| 330 case kSvgAngletypeGrad: | 330 case kSvgAngletypeGrad: |
| 331 case kSvgAngletypeUnknown: | 331 case kSvgAngletypeUnknown: |
| 332 ASSERT_NOT_REACHED(); | 332 NOTREACHED(); |
| 333 break; | 333 break; |
| 334 } | 334 } |
| 335 break; | 335 break; |
| 336 case kSvgAngletypeUnspecified: | 336 case kSvgAngletypeUnspecified: |
| 337 // Spec: For angles, a unitless value is treated the same as if degrees were | 337 // Spec: For angles, a unitless value is treated the same as if degrees were |
| 338 // specified. | 338 // specified. |
| 339 case kSvgAngletypeDeg: | 339 case kSvgAngletypeDeg: |
| 340 switch (unitType) { | 340 switch (unitType) { |
| 341 case kSvgAngletypeRad: | 341 case kSvgAngletypeRad: |
| 342 m_valueInSpecifiedUnits = deg2rad(m_valueInSpecifiedUnits); | 342 m_valueInSpecifiedUnits = deg2rad(m_valueInSpecifiedUnits); |
| 343 break; | 343 break; |
| 344 case kSvgAngletypeGrad: | 344 case kSvgAngletypeGrad: |
| 345 m_valueInSpecifiedUnits = deg2grad(m_valueInSpecifiedUnits); | 345 m_valueInSpecifiedUnits = deg2grad(m_valueInSpecifiedUnits); |
| 346 break; | 346 break; |
| 347 case kSvgAngletypeTurn: | 347 case kSvgAngletypeTurn: |
| 348 m_valueInSpecifiedUnits = deg2turn(m_valueInSpecifiedUnits); | 348 m_valueInSpecifiedUnits = deg2turn(m_valueInSpecifiedUnits); |
| 349 break; | 349 break; |
| 350 case kSvgAngletypeUnspecified: | 350 case kSvgAngletypeUnspecified: |
| 351 case kSvgAngletypeDeg: | 351 case kSvgAngletypeDeg: |
| 352 break; | 352 break; |
| 353 case kSvgAngletypeUnknown: | 353 case kSvgAngletypeUnknown: |
| 354 ASSERT_NOT_REACHED(); | 354 NOTREACHED(); |
| 355 break; | 355 break; |
| 356 } | 356 } |
| 357 break; | 357 break; |
| 358 case kSvgAngletypeUnknown: | 358 case kSvgAngletypeUnknown: |
| 359 ASSERT_NOT_REACHED(); | 359 NOTREACHED(); |
| 360 break; | 360 break; |
| 361 } | 361 } |
| 362 | 362 |
| 363 m_unitType = unitType; | 363 m_unitType = unitType; |
| 364 m_orientType->setEnumValue(SVGMarkerOrientAngle); | 364 m_orientType->setEnumValue(SVGMarkerOrientAngle); |
| 365 } | 365 } |
| 366 | 366 |
| 367 void SVGAngle::add(SVGPropertyBase* other, SVGElement*) { | 367 void SVGAngle::add(SVGPropertyBase* other, SVGElement*) { |
| 368 SVGAngle* otherAngle = toSVGAngle(other); | 368 SVGAngle* otherAngle = toSVGAngle(other); |
| 369 | 369 |
| (...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 440 | 440 |
| 441 void SVGAngle::orientTypeChanged() { | 441 void SVGAngle::orientTypeChanged() { |
| 442 if (orientType()->enumValue() == SVGMarkerOrientAuto || | 442 if (orientType()->enumValue() == SVGMarkerOrientAuto || |
| 443 orientType()->enumValue() == SVGMarkerOrientAutoStartReverse) { | 443 orientType()->enumValue() == SVGMarkerOrientAutoStartReverse) { |
| 444 m_unitType = kSvgAngletypeUnspecified; | 444 m_unitType = kSvgAngletypeUnspecified; |
| 445 m_valueInSpecifiedUnits = 0; | 445 m_valueInSpecifiedUnits = 0; |
| 446 } | 446 } |
| 447 } | 447 } |
| 448 | 448 |
| 449 } // namespace blink | 449 } // namespace blink |
| OLD | NEW |