/* * Copyright 2012 Rui Afonso * * 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 com.googlecode.gwt.charts.client.options; /** * The easing function applied to an animation. */ public enum AnimationEasing { /** * Constant speed. */ LINEAR("linear"), /** * Ease in - Start slow and speed up. */ IN("in"), /** * Ease out - Start fast and slow down. */ OUT("out"), /** * Ease in and out - Start slow, speed up, then slow down. */ IN_AND_OUT("inAndOut"); /** * Get an AnimationEasing by providing its name. * * @param name the AnimationEasing name. * @return an AnimationEasing corresponding to the provided name. */ public static AnimationEasing findByName(String name) { for (AnimationEasing animationEasing : AnimationEasing.values()) { if (animationEasing.getName().equals(name)) { return animationEasing; } } return null; } private final String name; private AnimationEasing(String name) { this.name = name; } /** * Get the name of the AnimationEasing. * @return the name of the AnimationEasing. */ public String getName() { return name; } }