com.jgoodies.animation
Class AbstractAnimation

java.lang.Object
  extended by com.jgoodies.animation.AbstractAnimation
All Implemented Interfaces:
Animation
Direct Known Subclasses:
Animations.OneTimeAnimation, BasicTextAnimation, FanAnimation, GlyphAnimation

public abstract class AbstractAnimation
extends Object
implements Animation

An abstract class that minimizes the effort required to implement the Animation interface. Defines the duration and freezed state and provides a listener list.

Version:
$Revision: 1.1 $
Author:
Karsten Lentzsch

Constructor Summary
protected AbstractAnimation(long duration)
          Constructs an Animation with the specified duration.
protected AbstractAnimation(long duration, boolean freezed)
          Constructs an Animation with the specified duration and freezed mode.
 
Method Summary
 void addAnimationListener(AnimationListener listener)
          Adds an AnimationListener to this animation.
 void animate(long time)
          Performs the animation at the given time: applies the animation effect to the animation target, fires appropriate events, and resets the effect if we exceeded the animations duration.
protected abstract  void applyEffect(long time)
          Applies the animation effect for the given time to the animation target.
 long duration()
          Returns this animation's duration.
protected  void fireAnimationStarted(long time)
          Fires an event that indicates that the animation has been started at the specified time.
protected  void fireAnimationStopped(long time)
          Fires an event that indicates that the animation has been stopped at the specified time.
 boolean isFreezed()
          Answers whether the animation effect should be freezed after we exceeded the animation's duration.
 void removeAnimationListener(AnimationListener listener)
          Removes an AnimationListener to this animation.
 String toString()
          Returns a string representation for this animation.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

AbstractAnimation

protected AbstractAnimation(long duration)
Constructs an Animation with the specified duration.

Parameters:
duration - the animation's duration

AbstractAnimation

protected AbstractAnimation(long duration,
                            boolean freezed)
Constructs an Animation with the specified duration and freezed mode.

Parameters:
duration - the animation's duration
freezed - true indicates that the effect will be retained after the animation is finished, false resets the effect to the time 0
Method Detail

duration

public final long duration()
Returns this animation's duration.

Specified by:
duration in interface Animation
Returns:
this animation's duration

isFreezed

public final boolean isFreezed()
Answers whether the animation effect should be freezed after we exceeded the animation's duration. If this is not the case, the animation effect of time 0 will be set.

Returns:
true indicates that the effect will be retained if the animation duration exceeded; false indicates that the effect will be reset

applyEffect

protected abstract void applyEffect(long time)
Applies the animation effect for the given time to the animation target.

Parameters:
time - the time used to determine the animation effect

animate

public void animate(long time)
Performs the animation at the given time: applies the animation effect to the animation target, fires appropriate events, and resets the effect if we exceeded the animations duration.

Specified by:
animate in interface Animation
Parameters:
time - the time used to determine the animation effect

addAnimationListener

public final void addAnimationListener(AnimationListener listener)
Adds an AnimationListener to this animation.

Specified by:
addAnimationListener in interface Animation
Parameters:
listener - the AnimationListener to add

removeAnimationListener

public final void removeAnimationListener(AnimationListener listener)
Removes an AnimationListener to this animation.

Specified by:
removeAnimationListener in interface Animation
Parameters:
listener - the AnimationListener to remove

fireAnimationStarted

protected final void fireAnimationStarted(long time)
Fires an event that indicates that the animation has been started at the specified time.

Parameters:
time - the time that will be reported in the event

fireAnimationStopped

protected final void fireAnimationStopped(long time)
Fires an event that indicates that the animation has been stopped at the specified time.

Parameters:
time - the time that will be reported in the event

toString

public String toString()
Returns a string representation for this animation.

Overrides:
toString in class Object
Returns:
a string representation for this animation


Copyright © 2001-2006 JGoodies Karsten Lentzsch. All Rights Reserved.