Merge "Remove obsolete DoubleEvaluator" into honeycomb

This commit is contained in:
Chet Haase
2011-01-16 12:05:40 -08:00
committed by Android (Google) Code Review
7 changed files with 12 additions and 128 deletions

View File

@@ -20082,42 +20082,6 @@
</parameter>
</method>
</class>
<class name="DoubleEvaluator"
extends="java.lang.Object"
abstract="false"
static="false"
final="false"
deprecated="not deprecated"
visibility="public"
>
<implements name="android.animation.TypeEvaluator">
</implements>
<constructor name="DoubleEvaluator"
type="android.animation.DoubleEvaluator"
static="false"
final="false"
deprecated="not deprecated"
visibility="public"
>
</constructor>
<method name="evaluate"
return="java.lang.Object"
abstract="false"
native="false"
synchronized="false"
static="false"
final="false"
deprecated="not deprecated"
visibility="public"
>
<parameter name="fraction" type="float">
</parameter>
<parameter name="startValue" type="java.lang.Object">
</parameter>
<parameter name="endValue" type="java.lang.Object">
</parameter>
</method>
</class>
<class name="FloatEvaluator"
extends="java.lang.Object"
abstract="false"

View File

@@ -20115,42 +20115,6 @@
</parameter>
</method>
</class>
<class name="DoubleEvaluator"
extends="java.lang.Object"
abstract="false"
static="false"
final="false"
deprecated="not deprecated"
visibility="public"
>
<implements name="android.animation.TypeEvaluator">
</implements>
<constructor name="DoubleEvaluator"
type="android.animation.DoubleEvaluator"
static="false"
final="false"
deprecated="not deprecated"
visibility="public"
>
</constructor>
<method name="evaluate"
return="java.lang.Object"
abstract="false"
native="false"
synchronized="false"
static="false"
final="false"
deprecated="not deprecated"
visibility="public"
>
<parameter name="fraction" type="float">
</parameter>
<parameter name="startValue" type="java.lang.Object">
</parameter>
<parameter name="endValue" type="java.lang.Object">
</parameter>
</method>
</class>
<class name="FloatEvaluator"
extends="java.lang.Object"
abstract="false"
@@ -260264,7 +260228,7 @@
deprecated="not deprecated"
visibility="public"
>
<parameter name="arg0" type="T">
<parameter name="t" type="T">
</parameter>
</method>
</interface>

View File

@@ -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 <code>double</code> values.
*/
public class DoubleEvaluator implements TypeEvaluator {
/**
* This function returns the result of linearly interpolating the start and end values, with
* <code>fraction</code> representing the proportion between the start and end values. The
* calculation is a simple parametric calculation: <code>result = x0 + t * (v1 - v0)</code>,
* where <code>x0</code> is <code>startValue</code>, <code>x1</code> is <code>endValue</code>,
* and <code>t</code> is <code>fraction</code>.
*
* @param fraction The fraction from the starting to the ending values
* @param startValue The start value; should be of type <code>double</code> or
* <code>Double</code>
* @param endValue The end value; should be of type <code>double</code> or
* <code>Double</code>
* @return A linear interpolation between the start and end values, given the
* <code>fraction</code> parameter.
*/
public Object evaluate(float fraction, Object startValue, Object endValue) {
double startDouble = ((Number) startValue).doubleValue();
return startDouble + fraction * (((Number) endValue).doubleValue() - startDouble);
}
}

View File

@@ -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.
*
* <p>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
* <p>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.</p>
*/

View File

@@ -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.
*
* <p>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
* <p>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.</p>
*/

View File

@@ -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
*/

View File

@@ -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 <code>startValue</code> and <code>endValue</code> 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.