From b2ab04ffb6894f399d5c9ceb15f64eb17b654426 Mon Sep 17 00:00:00 2001 From: Chet Haase Date: Sun, 16 Jan 2011 11:03:22 -0800 Subject: Remove obsolete DoubleEvaluator Change-Id: I4407468599061ff35c68589988fb1e897de28c69 --- core/java/android/animation/DoubleEvaluator.java | 42 ---------------------- core/java/android/animation/FloatKeyframeSet.java | 4 +-- core/java/android/animation/IntKeyframeSet.java | 4 +-- .../android/animation/PropertyValuesHolder.java | 11 +++--- core/java/android/animation/ValueAnimator.java | 5 ++- 5 files changed, 11 insertions(+), 55 deletions(-) delete mode 100644 core/java/android/animation/DoubleEvaluator.java (limited to 'core/java/android') diff --git a/core/java/android/animation/DoubleEvaluator.java b/core/java/android/animation/DoubleEvaluator.java deleted file mode 100644 index e46eb37..0000000 --- a/core/java/android/animation/DoubleEvaluator.java +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (C) 2010 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package android.animation; - -/** - * This evaluator can be used to perform type interpolation between double values. - */ -public class DoubleEvaluator implements TypeEvaluator { - /** - * This function returns the result of linearly interpolating the start and end values, with - * fraction representing the proportion between the start and end values. The - * calculation is a simple parametric calculation: result = x0 + t * (v1 - v0), - * where x0 is startValue, x1 is endValue, - * and t is fraction. - * - * @param fraction The fraction from the starting to the ending values - * @param startValue The start value; should be of type double or - * Double - * @param endValue The end value; should be of type double or - * Double - * @return A linear interpolation between the start and end values, given the - * fraction parameter. - */ - public Object evaluate(float fraction, Object startValue, Object endValue) { - double startDouble = ((Number) startValue).doubleValue(); - return startDouble + fraction * (((Number) endValue).doubleValue() - startDouble); - } -} \ No newline at end of file diff --git a/core/java/android/animation/FloatKeyframeSet.java b/core/java/android/animation/FloatKeyframeSet.java index 6fad4a68..4009f13 100644 --- a/core/java/android/animation/FloatKeyframeSet.java +++ b/core/java/android/animation/FloatKeyframeSet.java @@ -25,8 +25,8 @@ import java.util.ArrayList; * values between those keyframes for a given animation. The class internal to the animation * package because it is an implementation detail of how Keyframes are stored and used. * - *

This type-specific subclass of KeyframeSet, along with the other type-specific subclasses for - * int, long, and double, exists to speed up the getValue() method when there is no custom + *

This type-specific subclass of KeyframeSet, along with the other type-specific subclass for + * int, exists to speed up the getValue() method when there is no custom * TypeEvaluator set for the animation, so that values can be calculated without autoboxing to the * Object equivalents of these primitive types.

*/ diff --git a/core/java/android/animation/IntKeyframeSet.java b/core/java/android/animation/IntKeyframeSet.java index 14a4e3a..5629c5e 100644 --- a/core/java/android/animation/IntKeyframeSet.java +++ b/core/java/android/animation/IntKeyframeSet.java @@ -25,8 +25,8 @@ import java.util.ArrayList; * values between those keyframes for a given animation. The class internal to the animation * package because it is an implementation detail of how Keyframes are stored and used. * - *

This type-specific subclass of KeyframeSet, along with the other type-specific subclasses for - * float, long, and double, exists to speed up the getValue() method when there is no custom + *

This type-specific subclass of KeyframeSet, along with the other type-specific subclass for + * float, exists to speed up the getValue() method when there is no custom * TypeEvaluator set for the animation, so that values can be calculated without autoboxing to the * Object equivalents of these primitive types.

*/ diff --git a/core/java/android/animation/PropertyValuesHolder.java b/core/java/android/animation/PropertyValuesHolder.java index 0254924..0c30aad 100644 --- a/core/java/android/animation/PropertyValuesHolder.java +++ b/core/java/android/animation/PropertyValuesHolder.java @@ -67,10 +67,9 @@ public class PropertyValuesHolder implements Cloneable { KeyframeSet mKeyframeSet = null; - // type evaluators for the three primitive types handled by this implementation + // type evaluators for the primitive types handled by this implementation private static final TypeEvaluator sIntEvaluator = new IntEvaluator(); private static final TypeEvaluator sFloatEvaluator = new FloatEvaluator(); - private static final TypeEvaluator sDoubleEvaluator = new DoubleEvaluator(); // We try several different types when searching for appropriate setter/getter functions. // The caller may have supplied values in a type that does not match the setter/getter @@ -104,7 +103,7 @@ public class PropertyValuesHolder implements Cloneable { /** * The type evaluator used to calculate the animated values. This evaluator is determined * automatically based on the type of the start/end objects passed into the constructor, - * but the system only knows about the primitive types int, double, and float. Any other + * but the system only knows about the primitive types int and float. Any other * type will need to set the evaluator to a custom evaluator for that type. */ private TypeEvaluator mEvaluator; @@ -501,7 +500,7 @@ public class PropertyValuesHolder implements Cloneable { */ void init() { if (mEvaluator == null) { - // We already handle int, float, long, double automatically, but not their Object + // We already handle int and float automatically, but not their Object // equivalents mEvaluator = (mValueType == Integer.class) ? sIntEvaluator : (mValueType == Float.class) ? sFloatEvaluator : @@ -509,7 +508,7 @@ public class PropertyValuesHolder implements Cloneable { } if (mEvaluator != null) { // KeyframeSet knows how to evaluate the common types - only give it a custom - // evaulator if one has been set on this class + // evaluator if one has been set on this class mKeyframeSet.setEvaluator(mEvaluator); } } @@ -520,7 +519,7 @@ public class PropertyValuesHolder implements Cloneable { * desired. This may be important in cases where either the type of the values supplied * do not match the way that they should be interpolated between, or if the values * are of a custom type or one not currently understood by the animation system. Currently, - * only values of type float, double, and int (and their Object equivalents, Float, Double, + * only values of type float and int (and their Object equivalents: Float * and Integer) are correctly interpolated; all other types require setting a TypeEvaluator. * @param evaluator */ diff --git a/core/java/android/animation/ValueAnimator.java b/core/java/android/animation/ValueAnimator.java index f884473..1590bf4 100755 --- a/core/java/android/animation/ValueAnimator.java +++ b/core/java/android/animation/ValueAnimator.java @@ -143,10 +143,9 @@ public class ValueAnimator extends Animator { private static final TimeInterpolator sDefaultInterpolator = new AccelerateDecelerateInterpolator(); - // type evaluators for the three primitive types handled by this implementation + // type evaluators for the primitive types handled by this implementation private static final TypeEvaluator sIntEvaluator = new IntEvaluator(); private static final TypeEvaluator sFloatEvaluator = new FloatEvaluator(); - private static final TypeEvaluator sDoubleEvaluator = new DoubleEvaluator(); /** * Used to indicate whether the animation is currently playing in reverse. This causes the @@ -858,7 +857,7 @@ public class ValueAnimator extends Animator { /** * The type evaluator to be used when calculating the animated values of this animation. - * The system will automatically assign a float, int, or double evaluator based on the type + * The system will automatically assign a float or int evaluator based on the type * of startValue and endValue in the constructor. But if these values * are not one of these primitive types, or if different evaluation is desired (such as is * necessary with int values that represent colors), a custom evaluator needs to be assigned. -- cgit v1.1