| OLD | NEW |
| 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) 2007 Eric Seidel <eric@webkit.org> | 4 * Copyright (C) 2007 Eric Seidel <eric@webkit.org> |
| 5 * Copyright (C) 2008 Apple Inc. All rights reserved. | 5 * Copyright (C) 2008 Apple Inc. All rights reserved. |
| 6 * Copyright (C) Research In Motion Limited 2012. All rights reserved. | 6 * Copyright (C) Research In Motion Limited 2012. All rights reserved. |
| 7 * | 7 * |
| 8 * This library is free software; you can redistribute it and/or | 8 * This library is free software; you can redistribute it and/or |
| 9 * modify it under the terms of the GNU Library General Public | 9 * modify it under the terms of the GNU Library General Public |
| 10 * License as published by the Free Software Foundation; either | 10 * License as published by the Free Software Foundation; either |
| (...skipping 248 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 259 while (it != itEnd) { | 259 while (it != itEnd) { |
| 260 builder.append(it->valueAsString()); | 260 builder.append(it->valueAsString()); |
| 261 ++it; | 261 ++it; |
| 262 if (it != itEnd) | 262 if (it != itEnd) |
| 263 builder.append(' '); | 263 builder.append(' '); |
| 264 } | 264 } |
| 265 | 265 |
| 266 return builder.toString(); | 266 return builder.toString(); |
| 267 } | 267 } |
| 268 | 268 |
| 269 void SVGTransformList::setValueAsString(const String& value, ExceptionState& exc
eptionState) | 269 SVGParsingError SVGTransformList::setValueAsString(const String& value) |
| 270 { | 270 { |
| 271 if (value.isEmpty()) { | 271 if (value.isEmpty()) { |
| 272 clear(); | 272 clear(); |
| 273 return; | 273 return NoError; |
| 274 } | 274 } |
| 275 | 275 |
| 276 bool valid = false; | 276 bool valid = false; |
| 277 if (value.is8Bit()) { | 277 if (value.is8Bit()) { |
| 278 const LChar* ptr = value.characters8(); | 278 const LChar* ptr = value.characters8(); |
| 279 const LChar* end = ptr + value.length(); | 279 const LChar* end = ptr + value.length(); |
| 280 valid = parse(ptr, end); | 280 valid = parse(ptr, end); |
| 281 } else { | 281 } else { |
| 282 const UChar* ptr = value.characters16(); | 282 const UChar* ptr = value.characters16(); |
| 283 const UChar* end = ptr + value.length(); | 283 const UChar* end = ptr + value.length(); |
| 284 valid = parse(ptr, end); | 284 valid = parse(ptr, end); |
| 285 } | 285 } |
| 286 | 286 |
| 287 if (!valid) { | 287 if (!valid) { |
| 288 clear(); | 288 clear(); |
| 289 exceptionState.throwDOMException(SyntaxError, "Problem parsing transform
list=\""+value+"\""); | 289 return ParsingAttributeFailedError; |
| 290 } | 290 } |
| 291 |
| 292 return NoError; |
| 291 } | 293 } |
| 292 | 294 |
| 293 PassRefPtrWillBeRawPtr<SVGPropertyBase> SVGTransformList::cloneForAnimation(cons
t String& value) const | 295 PassRefPtrWillBeRawPtr<SVGPropertyBase> SVGTransformList::cloneForAnimation(cons
t String& value) const |
| 294 { | 296 { |
| 295 ASSERT(RuntimeEnabledFeatures::webAnimationsSVGEnabled()); | 297 ASSERT(RuntimeEnabledFeatures::webAnimationsSVGEnabled()); |
| 296 return SVGListPropertyHelper::cloneForAnimation(value); | 298 return SVGListPropertyHelper::cloneForAnimation(value); |
| 297 } | 299 } |
| 298 | 300 |
| 299 PassRefPtrWillBeRawPtr<SVGTransformList> SVGTransformList::create(SVGTransformTy
pe transformType, const String& value) | 301 PassRefPtrWillBeRawPtr<SVGTransformList> SVGTransformList::create(SVGTransformTy
pe transformType, const String& value) |
| 300 { | 302 { |
| (...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 386 if (at(0)->transformType() == toList->at(0)->transformType()) | 388 if (at(0)->transformType() == toList->at(0)->transformType()) |
| 387 return -1; | 389 return -1; |
| 388 | 390 |
| 389 // Spec: http://www.w3.org/TR/SVG/animate.html#complexDistances | 391 // Spec: http://www.w3.org/TR/SVG/animate.html#complexDistances |
| 390 // Paced animations assume a notion of distance between the various animatio
n values defined by the 'to', 'from', 'by' and 'values' attributes. | 392 // Paced animations assume a notion of distance between the various animatio
n values defined by the 'to', 'from', 'by' and 'values' attributes. |
| 391 // Distance is defined only for scalar types (such as <length>), colors and
the subset of transformation types that are supported by 'animateTransform'. | 393 // Distance is defined only for scalar types (such as <length>), colors and
the subset of transformation types that are supported by 'animateTransform'. |
| 392 return SVGTransformDistance(at(0), toList->at(0)).distance(); | 394 return SVGTransformDistance(at(0), toList->at(0)).distance(); |
| 393 } | 395 } |
| 394 | 396 |
| 395 } | 397 } |
| OLD | NEW |