OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2007 Eric Seidel <eric@webkit.org> | 2 * Copyright (C) 2007 Eric Seidel <eric@webkit.org> |
3 * Copyright (C) 2007 Rob Buis <buis@kde.org> | 3 * Copyright (C) 2007 Rob Buis <buis@kde.org> |
4 * Copyright (C) 2008 Apple Inc. All rights reserved. | 4 * Copyright (C) 2008 Apple Inc. 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 22 matching lines...) Expand all Loading... |
33 #include "core/svg/SVGPathElement.h" | 33 #include "core/svg/SVGPathElement.h" |
34 #include "core/svg/SVGPathUtilities.h" | 34 #include "core/svg/SVGPathUtilities.h" |
35 #include "platform/transforms/AffineTransform.h" | 35 #include "platform/transforms/AffineTransform.h" |
36 #include "wtf/MathExtras.h" | 36 #include "wtf/MathExtras.h" |
37 #include "wtf/StdLibExtras.h" | 37 #include "wtf/StdLibExtras.h" |
38 | 38 |
39 namespace WebCore { | 39 namespace WebCore { |
40 | 40 |
41 using namespace SVGNames; | 41 using namespace SVGNames; |
42 | 42 |
43 inline SVGAnimateMotionElement::SVGAnimateMotionElement(const QualifiedName& tag
Name, Document& document) | 43 inline SVGAnimateMotionElement::SVGAnimateMotionElement(Document& document) |
44 : SVGAnimationElement(tagName, document) | 44 : SVGAnimationElement(animateMotionTag, document) |
45 , m_hasToPointAtEndOfDuration(false) | 45 , m_hasToPointAtEndOfDuration(false) |
46 { | 46 { |
47 setCalcMode(CalcModePaced); | 47 setCalcMode(CalcModePaced); |
48 ASSERT(hasTagName(animateMotionTag)); | |
49 ScriptWrappable::init(this); | 48 ScriptWrappable::init(this); |
50 } | 49 } |
51 | 50 |
52 SVGAnimateMotionElement::~SVGAnimateMotionElement() | 51 SVGAnimateMotionElement::~SVGAnimateMotionElement() |
53 { | 52 { |
54 if (targetElement()) | 53 if (targetElement()) |
55 clearAnimatedType(targetElement()); | 54 clearAnimatedType(targetElement()); |
56 } | 55 } |
57 | 56 |
58 PassRefPtr<SVGAnimateMotionElement> SVGAnimateMotionElement::create(const Qualif
iedName& tagName, Document& document) | 57 PassRefPtr<SVGAnimateMotionElement> SVGAnimateMotionElement::create(Document& do
cument) |
59 { | 58 { |
60 return adoptRef(new SVGAnimateMotionElement(tagName, document)); | 59 return adoptRef(new SVGAnimateMotionElement(document)); |
61 } | 60 } |
62 | 61 |
63 bool SVGAnimateMotionElement::hasValidAttributeType() | 62 bool SVGAnimateMotionElement::hasValidAttributeType() |
64 { | 63 { |
65 SVGElement* targetElement = this->targetElement(); | 64 SVGElement* targetElement = this->targetElement(); |
66 if (!targetElement) | 65 if (!targetElement) |
67 return false; | 66 return false; |
68 | 67 |
69 // We don't have a special attribute name to verify the animation type. Chec
k the element name instead. | 68 // We don't have a special attribute name to verify the animation type. Chec
k the element name instead. |
70 if (!targetElement->isSVGGraphicsElement()) | 69 if (!targetElement->isSVGGraphicsElement()) |
(...skipping 276 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
347 | 346 |
348 void SVGAnimateMotionElement::updateAnimationMode() | 347 void SVGAnimateMotionElement::updateAnimationMode() |
349 { | 348 { |
350 if (!m_animationPath.isEmpty()) | 349 if (!m_animationPath.isEmpty()) |
351 setAnimationMode(PathAnimation); | 350 setAnimationMode(PathAnimation); |
352 else | 351 else |
353 SVGAnimationElement::updateAnimationMode(); | 352 SVGAnimationElement::updateAnimationMode(); |
354 } | 353 } |
355 | 354 |
356 } | 355 } |
OLD | NEW |