| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2004, 2005, 2006, 2008 Nikolas Zimmermann <zimmermann@kde.org> | 2 * Copyright (C) 2004, 2005, 2006, 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 * | 4 * |
| 5 * This library is free software; you can redistribute it and/or | 5 * This library is free software; you can redistribute it and/or |
| 6 * modify it under the terms of the GNU Library General Public | 6 * modify it under the terms of the GNU Library General Public |
| 7 * License as published by the Free Software Foundation; either | 7 * License as published by the Free Software Foundation; either |
| 8 * version 2 of the License, or (at your option) any later version. | 8 * version 2 of the License, or (at your option) any later version. |
| 9 * | 9 * |
| 10 * This library is distributed in the hope that it will be useful, | 10 * This library is distributed in the hope that it will be useful, |
| (...skipping 14 matching lines...) Expand all Loading... |
| 25 #include "core/layout/svg/LayoutSVGPath.h" | 25 #include "core/layout/svg/LayoutSVGPath.h" |
| 26 #include "core/svg/SVGMPathElement.h" | 26 #include "core/svg/SVGMPathElement.h" |
| 27 #include "core/svg/SVGPathQuery.h" | 27 #include "core/svg/SVGPathQuery.h" |
| 28 #include "core/svg/SVGPathUtilities.h" | 28 #include "core/svg/SVGPathUtilities.h" |
| 29 #include "core/svg/SVGPointTearOff.h" | 29 #include "core/svg/SVGPointTearOff.h" |
| 30 | 30 |
| 31 namespace blink { | 31 namespace blink { |
| 32 | 32 |
| 33 class SVGAnimatedPathLength final : public SVGAnimatedNumber { | 33 class SVGAnimatedPathLength final : public SVGAnimatedNumber { |
| 34 public: | 34 public: |
| 35 static PassRefPtrWillBeRawPtr<SVGAnimatedPathLength> create(SVGPathElement*
contextElement) | 35 static RawPtr<SVGAnimatedPathLength> create(SVGPathElement* contextElement) |
| 36 { | 36 { |
| 37 return adoptRefWillBeNoop(new SVGAnimatedPathLength(contextElement)); | 37 return new SVGAnimatedPathLength(contextElement); |
| 38 } | 38 } |
| 39 | 39 |
| 40 SVGParsingError setBaseValueAsString(const String& value) override | 40 SVGParsingError setBaseValueAsString(const String& value) override |
| 41 { | 41 { |
| 42 SVGParsingError parseStatus = SVGAnimatedNumber::setBaseValueAsString(va
lue); | 42 SVGParsingError parseStatus = SVGAnimatedNumber::setBaseValueAsString(va
lue); |
| 43 if (parseStatus == SVGParseStatus::NoError && baseValue()->value() < 0) | 43 if (parseStatus == SVGParseStatus::NoError && baseValue()->value() < 0) |
| 44 parseStatus = SVGParseStatus::NegativeValue; | 44 parseStatus = SVGParseStatus::NegativeValue; |
| 45 return parseStatus; | 45 return parseStatus; |
| 46 } | 46 } |
| 47 | 47 |
| (...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 100 { | 100 { |
| 101 return stylePath()->path(); | 101 return stylePath()->path(); |
| 102 } | 102 } |
| 103 | 103 |
| 104 float SVGPathElement::getTotalLength() | 104 float SVGPathElement::getTotalLength() |
| 105 { | 105 { |
| 106 document().updateLayoutIgnorePendingStylesheets(); | 106 document().updateLayoutIgnorePendingStylesheets(); |
| 107 return SVGPathQuery(pathByteStream()).getTotalLength(); | 107 return SVGPathQuery(pathByteStream()).getTotalLength(); |
| 108 } | 108 } |
| 109 | 109 |
| 110 PassRefPtrWillBeRawPtr<SVGPointTearOff> SVGPathElement::getPointAtLength(float l
ength) | 110 RawPtr<SVGPointTearOff> SVGPathElement::getPointAtLength(float length) |
| 111 { | 111 { |
| 112 document().updateLayoutIgnorePendingStylesheets(); | 112 document().updateLayoutIgnorePendingStylesheets(); |
| 113 FloatPoint point = SVGPathQuery(pathByteStream()).getPointAtLength(length); | 113 FloatPoint point = SVGPathQuery(pathByteStream()).getPointAtLength(length); |
| 114 return SVGPointTearOff::create(SVGPoint::create(point), 0, PropertyIsNotAnim
Val); | 114 return SVGPointTearOff::create(SVGPoint::create(point), 0, PropertyIsNotAnim
Val); |
| 115 } | 115 } |
| 116 | 116 |
| 117 unsigned SVGPathElement::getPathSegAtLength(float length) | 117 unsigned SVGPathElement::getPathSegAtLength(float length) |
| 118 { | 118 { |
| 119 document().updateLayoutIgnorePendingStylesheets(); | 119 document().updateLayoutIgnorePendingStylesheets(); |
| 120 return SVGPathQuery(pathByteStream()).getPathSegIndexAtLength(length); | 120 return SVGPathQuery(pathByteStream()).getPathSegIndexAtLength(length); |
| (...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 201 return InsertionDone; | 201 return InsertionDone; |
| 202 } | 202 } |
| 203 | 203 |
| 204 void SVGPathElement::removedFrom(ContainerNode* rootParent) | 204 void SVGPathElement::removedFrom(ContainerNode* rootParent) |
| 205 { | 205 { |
| 206 SVGGeometryElement::removedFrom(rootParent); | 206 SVGGeometryElement::removedFrom(rootParent); |
| 207 invalidateMPathDependencies(); | 207 invalidateMPathDependencies(); |
| 208 } | 208 } |
| 209 | 209 |
| 210 } // namespace blink | 210 } // namespace blink |
| OLD | NEW |