OLD | NEW |
| (Empty) |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | |
2 // Use of this source code is governed by a BSD-style license that can be | |
3 // found in the LICENSE file. | |
4 | |
5 #ifndef LengthPoint3DStyleInterpolation_h | |
6 #define LengthPoint3DStyleInterpolation_h | |
7 | |
8 #include "core/animation/LengthStyleInterpolation.h" | |
9 #include "core/css/CSSValueList.h" | |
10 | |
11 namespace blink { | |
12 | |
13 class LengthPoint3DStyleInterpolation : public StyleInterpolation { | |
14 public: | |
15 static PassRefPtrWillBeRawPtr<LengthPoint3DStyleInterpolation> create(const
CSSValue& start, const CSSValue& end, CSSPropertyID id) | |
16 { | |
17 return adoptRefWillBeNoop(new LengthPoint3DStyleInterpolation(lengthPoin
t3DtoInterpolableValue(start), lengthPoint3DtoInterpolableValue(end), id)); | |
18 } | |
19 | |
20 static bool canCreateFrom(const CSSValue&); | |
21 | |
22 virtual void apply(StyleResolverState&) const override; | |
23 virtual void trace(Visitor*) override; | |
24 | |
25 private: | |
26 LengthPoint3DStyleInterpolation(PassOwnPtrWillBeRawPtr<InterpolableValue> st
art, PassOwnPtrWillBeRawPtr<InterpolableValue> end, CSSPropertyID id) | |
27 : StyleInterpolation(start, end, id) | |
28 { } | |
29 | |
30 static PassOwnPtrWillBeRawPtr<InterpolableValue> lengthPoint3DtoInterpolable
Value(const CSSValue&); | |
31 static PassRefPtrWillBeRawPtr<CSSValue> interpolableValueToLengthPoint3D(Int
erpolableValue*, InterpolationRange = RangeAll); | |
32 | |
33 friend class AnimationLengthPoint3DStyleInterpolationTest; | |
34 }; | |
35 | |
36 } // namespace blink | |
37 | |
38 #endif // LengthPoint3DStyleInterpolation_h | |
OLD | NEW |