summaryrefslogtreecommitdiffstats
path: root/cc/animation/animation_curve.cc
diff options
context:
space:
mode:
authoravallee@chromium.org <avallee@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-10-24 22:51:36 +0000
committeravallee@chromium.org <avallee@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-10-24 22:51:36 +0000
commit12076fa6270fda6ea535da61cafe7116ec2e6f00 (patch)
tree4cda7c226d5fbba708df61cdb3c7c517a71f8ee9 /cc/animation/animation_curve.cc
parent565f6193e85668f26de953516dbd8a341ae2b457 (diff)
downloadchromium_src-12076fa6270fda6ea535da61cafe7116ec2e6f00.zip
chromium_src-12076fa6270fda6ea535da61cafe7116ec2e6f00.tar.gz
chromium_src-12076fa6270fda6ea535da61cafe7116ec2e6f00.tar.bz2
Add Color animation curves.
Implement animation curves for colors. This is the first step towards accelerating background-color animations. + Add ColorValueBetween to gfx::Tween. + Add test/color_utils which gives EXPECT_COLOR_EQ to check SkColors and print in a sane format. ~ Fixed discrepancy between two methods of interpolating ints. ~ Factored out GetProgress into template function to simplify code in the implementations of GetValue(double), there was a lot of duplication there. TESTED: Added tests for the new KeyframedColorAnimations and AnimatedColor classes. Added tests to tweening. R=ajuma BUG=290234 Review URL: https://codereview.chromium.org/25901002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@230856 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'cc/animation/animation_curve.cc')
-rw-r--r--cc/animation/animation_curve.cc7
1 files changed, 7 insertions, 0 deletions
diff --git a/cc/animation/animation_curve.cc b/cc/animation/animation_curve.cc
index cf04da7..65c21db 100644
--- a/cc/animation/animation_curve.cc
+++ b/cc/animation/animation_curve.cc
@@ -8,6 +8,13 @@
namespace cc {
+const ColorAnimationCurve* AnimationCurve::ToColorAnimationCurve() const {
+ DCHECK(Type() == AnimationCurve::Color);
+ return static_cast<const ColorAnimationCurve*>(this);
+}
+
+AnimationCurve::CurveType ColorAnimationCurve::Type() const { return Color; }
+
const FloatAnimationCurve* AnimationCurve::ToFloatAnimationCurve() const {
DCHECK(Type() == AnimationCurve::Float);
return static_cast<const FloatAnimationCurve*>(this);