final Rectangle frameBounds = DemoFrame.this.getGraphicsConfiguration().getBounds();
DefaultAnimationRunner defaultAnimationExecutor = new DefaultAnimationRunner();
SizeAnimation heightAnimation = new SizeAnimation( this, -1, 600 );
heightAnimation.setStartOffset( 1000 );
heightAnimation.setDuration( 1000 );
defaultAnimationExecutor.addAnimation( heightAnimation );
SizeAnimation widthAnimation = new SizeAnimation( this, 800, -1 );
widthAnimation.setStartOffset( 2000 );
widthAnimation.setDuration( 1000 );
defaultAnimationExecutor.addAnimation( widthAnimation );
BackgroundColorAnimation greenBackgroundColorAnimation = new BackgroundColorAnimation( contentPane, Color.GREEN );
greenBackgroundColorAnimation.setDuration( 1000 );
defaultAnimationExecutor.addAnimation( greenBackgroundColorAnimation );
BackgroundColorAnimation redBackgroundColorAnimation = new BackgroundColorAnimation( contentPane, Color.RED );
redBackgroundColorAnimation.setStartOffset( 1000 );
redBackgroundColorAnimation.setDuration( 1000 );
defaultAnimationExecutor.addAnimation( redBackgroundColorAnimation );
BackgroundColorAnimation blueBackgroundColorAnimation = new BackgroundColorAnimation( contentPane, Color.BLUE );
blueBackgroundColorAnimation.setStartOffset( 2000 );
blueBackgroundColorAnimation.setDuration( 1000 );
defaultAnimationExecutor.addAnimation( blueBackgroundColorAnimation );
Animation windowFadeAnimation = WindowFadeFactory.createWindowFadeAnimation( this, 0f );
windowFadeAnimation.setStartOffset( 3000 );
windowFadeAnimation.setDuration( 1000 );
defaultAnimationExecutor.addAnimation( windowFadeAnimation );
windowFadeAnimation.addAnimationListener( new AnimationAdapter() {
@Override
public void animationFinished() {
Point p = DemoFrame.this.getLocation();
p.x = frameBounds.x + frameBounds.width - DemoFrame.this.getWidth();
DemoFrame.this.setLocation( p );
}
} );
windowFadeAnimation = WindowFadeFactory.createWindowFadeAnimation( this, 1f );
windowFadeAnimation.setStartOffset( 4000 );
windowFadeAnimation.setDuration( 1000 );
defaultAnimationExecutor.addAnimation( windowFadeAnimation );
SizeAnimation collapseWidthAnimation = new SizeAnimation( this, 200, -1 );
collapseWidthAnimation.setStartOffset( 6000 );
collapseWidthAnimation.setDuration( 1000 );
defaultAnimationExecutor.addAnimation( collapseWidthAnimation );
LocationAnimation locationXAnimation = new LocationAnimation( this, frameBounds.x + frameBounds.width / 2 + 100, -1 );
locationXAnimation.setStartOffset( 6000 );
locationXAnimation.setDuration( 1000 );
defaultAnimationExecutor.addAnimation( locationXAnimation );
SizeAnimation collapseHeighthAnimation = new SizeAnimation( this, -1, 100 );
collapseHeighthAnimation.setStartOffset( 7000 );
collapseHeighthAnimation.setDuration( 1000 );
defaultAnimationExecutor.addAnimation( collapseHeighthAnimation );
LocationAnimation locationYAnimation = new LocationAnimation( this, -1, 250 );
locationYAnimation.setStartOffset( 7000 );
locationYAnimation.setDuration( 1000 );