OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "core/animation/SVGNumberOptionalNumberInterpolationType.h" | 5 #include "core/animation/SVGNumberOptionalNumberInterpolationType.h" |
6 | 6 |
7 #include <memory> | 7 #include <memory> |
8 #include "core/animation/InterpolationEnvironment.h" | 8 #include "core/animation/InterpolationEnvironment.h" |
9 #include "core/svg/SVGNumberOptionalNumber.h" | 9 #include "core/svg/SVGNumberOptionalNumber.h" |
10 | 10 |
(...skipping 11 matching lines...) Expand all Loading... |
22 | 22 |
23 InterpolationValue | 23 InterpolationValue |
24 SVGNumberOptionalNumberInterpolationType::maybeConvertSVGValue( | 24 SVGNumberOptionalNumberInterpolationType::maybeConvertSVGValue( |
25 const SVGPropertyBase& svgValue) const { | 25 const SVGPropertyBase& svgValue) const { |
26 if (svgValue.type() != AnimatedNumberOptionalNumber) | 26 if (svgValue.type() != AnimatedNumberOptionalNumber) |
27 return nullptr; | 27 return nullptr; |
28 | 28 |
29 const SVGNumberOptionalNumber& numberOptionalNumber = | 29 const SVGNumberOptionalNumber& numberOptionalNumber = |
30 toSVGNumberOptionalNumber(svgValue); | 30 toSVGNumberOptionalNumber(svgValue); |
31 std::unique_ptr<InterpolableList> result = InterpolableList::create(2); | 31 std::unique_ptr<InterpolableList> result = InterpolableList::create(2); |
32 result->set(0, InterpolableNumber::create( | 32 result->set( |
33 numberOptionalNumber.firstNumber()->value())); | 33 0, |
34 result->set(1, InterpolableNumber::create( | 34 InterpolableNumber::create(numberOptionalNumber.firstNumber()->value())); |
35 numberOptionalNumber.secondNumber()->value())); | 35 result->set( |
| 36 1, |
| 37 InterpolableNumber::create(numberOptionalNumber.secondNumber()->value())); |
36 return InterpolationValue(std::move(result)); | 38 return InterpolationValue(std::move(result)); |
37 } | 39 } |
38 | 40 |
39 SVGPropertyBase* SVGNumberOptionalNumberInterpolationType::appliedSVGValue( | 41 SVGPropertyBase* SVGNumberOptionalNumberInterpolationType::appliedSVGValue( |
40 const InterpolableValue& interpolableValue, | 42 const InterpolableValue& interpolableValue, |
41 const NonInterpolableValue*) const { | 43 const NonInterpolableValue*) const { |
42 const InterpolableList& list = toInterpolableList(interpolableValue); | 44 const InterpolableList& list = toInterpolableList(interpolableValue); |
43 return SVGNumberOptionalNumber::create( | 45 return SVGNumberOptionalNumber::create( |
44 SVGNumber::create(toInterpolableNumber(list.get(0))->value()), | 46 SVGNumber::create(toInterpolableNumber(list.get(0))->value()), |
45 SVGNumber::create(toInterpolableNumber(list.get(1))->value())); | 47 SVGNumber::create(toInterpolableNumber(list.get(1))->value())); |
46 } | 48 } |
47 | 49 |
48 } // namespace blink | 50 } // namespace blink |
OLD | NEW |