* @param nextSlide the next subSlide to show
*/
private void performStepAnimation(final Node nextSlide) {
setSlideLocked(true);
final ParallelTransition subSlideTransition = ParallelTransitionBuilder.create()
.onFinished(new EventHandler<ActionEvent>() {
@Override
public void handle(final ActionEvent event) {
AbstractTemplateView.this.currentSubSlide = nextSlide;
AbstractTemplateView.this.setSlideLocked(false);
}
})
.children(
SequentialTransitionBuilder.create()
.node(this.currentSubSlide)
.children(
TranslateTransitionBuilder.create()
.duration(Duration.millis(400))
.fromY(0)
.toY(-700)
// .fromZ(-10)
.build(),
TimelineBuilder.create()
.keyFrames(
new KeyFrame(Duration.millis(0), new KeyValue(this.currentSubSlide.visibleProperty(), true)),
new KeyFrame(Duration.millis(1), new KeyValue(this.currentSubSlide.visibleProperty(), false))
)
.build()
)
.build(),
SequentialTransitionBuilder.create()
.node(nextSlide)
.children(
TimelineBuilder.create()
.keyFrames(
new KeyFrame(Duration.millis(0), new KeyValue(nextSlide.visibleProperty(), false)),
new KeyFrame(Duration.millis(1), new KeyValue(nextSlide.visibleProperty(), true))
)
.build(),
TranslateTransitionBuilder.create()
.duration(Duration.millis(400))
.fromY(700)
.toY(0)
// .fromZ(-10)
.build()
)
.build()
)
.build();
subSlideTransition.play();
}