.class public Lcom/example/linechartlibrary/ChartViewportAnimatorV14; .super Ljava/lang/Object; .source "ChartViewportAnimatorV14.java" # interfaces .implements Lcom/example/linechartlibrary/ChartViewportAnimator; .implements Landroid/animation/Animator$AnimatorListener; .implements Landroid/animation/ValueAnimator$AnimatorUpdateListener; # instance fields .field private animationListener:Lcom/example/linechartlibrary/ChartAnimationListener; .field private animator:Landroid/animation/ValueAnimator; .field private final chart:Lcom/example/linechartlibrary/Chart; .field private newViewport:Lcom/example/linechartlibrary/Viewport; .field private startViewport:Lcom/example/linechartlibrary/Viewport; .field private targetViewport:Lcom/example/linechartlibrary/Viewport; # direct methods .method public constructor (Lcom/example/linechartlibrary/Chart;)V .registers 4 .line 22 invoke-direct {p0}, Ljava/lang/Object;->()V .line 17 new-instance v0, Lcom/example/linechartlibrary/Viewport; invoke-direct {v0}, Lcom/example/linechartlibrary/Viewport;->()V iput-object v0, p0, Lcom/example/linechartlibrary/ChartViewportAnimatorV14;->startViewport:Lcom/example/linechartlibrary/Viewport; .line 18 new-instance v0, Lcom/example/linechartlibrary/Viewport; invoke-direct {v0}, Lcom/example/linechartlibrary/Viewport;->()V iput-object v0, p0, Lcom/example/linechartlibrary/ChartViewportAnimatorV14;->targetViewport:Lcom/example/linechartlibrary/Viewport; .line 19 new-instance v0, Lcom/example/linechartlibrary/Viewport; invoke-direct {v0}, Lcom/example/linechartlibrary/Viewport;->()V iput-object v0, p0, Lcom/example/linechartlibrary/ChartViewportAnimatorV14;->newViewport:Lcom/example/linechartlibrary/Viewport; .line 20 new-instance v0, Lcom/example/linechartlibrary/DummyChartAnimationListener; invoke-direct {v0}, Lcom/example/linechartlibrary/DummyChartAnimationListener;->()V iput-object v0, p0, Lcom/example/linechartlibrary/ChartViewportAnimatorV14;->animationListener:Lcom/example/linechartlibrary/ChartAnimationListener; .line 23 iput-object p1, p0, Lcom/example/linechartlibrary/ChartViewportAnimatorV14;->chart:Lcom/example/linechartlibrary/Chart; const/4 p1, 0x2 .line 24 new-array p1, p1, [F fill-array-data p1, :array_3e invoke-static {p1}, Landroid/animation/ValueAnimator;->ofFloat([F)Landroid/animation/ValueAnimator; move-result-object p1 iput-object p1, p0, Lcom/example/linechartlibrary/ChartViewportAnimatorV14;->animator:Landroid/animation/ValueAnimator; .line 25 invoke-virtual {p1, p0}, Landroid/animation/ValueAnimator;->addListener(Landroid/animation/Animator$AnimatorListener;)V .line 26 iget-object p1, p0, Lcom/example/linechartlibrary/ChartViewportAnimatorV14;->animator:Landroid/animation/ValueAnimator; invoke-virtual {p1, p0}, Landroid/animation/ValueAnimator;->addUpdateListener(Landroid/animation/ValueAnimator$AnimatorUpdateListener;)V .line 27 iget-object p1, p0, Lcom/example/linechartlibrary/ChartViewportAnimatorV14;->animator:Landroid/animation/ValueAnimator; const-wide/16 v0, 0x12c invoke-virtual {p1, v0, v1}, Landroid/animation/ValueAnimator;->setDuration(J)Landroid/animation/ValueAnimator; return-void nop :array_3e .array-data 4 0x0 0x3f800000 # 1.0f .end array-data .end method # virtual methods .method public cancelAnimation()V .registers 2 .line 48 iget-object v0, p0, Lcom/example/linechartlibrary/ChartViewportAnimatorV14;->animator:Landroid/animation/ValueAnimator; invoke-virtual {v0}, Landroid/animation/ValueAnimator;->cancel()V return-void .end method .method public isAnimationStarted()Z .registers 2 .line 84 iget-object v0, p0, Lcom/example/linechartlibrary/ChartViewportAnimatorV14;->animator:Landroid/animation/ValueAnimator; invoke-virtual {v0}, Landroid/animation/ValueAnimator;->isStarted()Z move-result v0 return v0 .end method .method public onAnimationCancel(Landroid/animation/Animator;)V .registers 2 return-void .end method .method public onAnimationEnd(Landroid/animation/Animator;)V .registers 3 .line 69 iget-object p1, p0, Lcom/example/linechartlibrary/ChartViewportAnimatorV14;->chart:Lcom/example/linechartlibrary/Chart; iget-object v0, p0, Lcom/example/linechartlibrary/ChartViewportAnimatorV14;->targetViewport:Lcom/example/linechartlibrary/Viewport; invoke-interface {p1, v0}, Lcom/example/linechartlibrary/Chart;->setCurrentViewport(Lcom/example/linechartlibrary/Viewport;)V .line 70 iget-object p1, p0, Lcom/example/linechartlibrary/ChartViewportAnimatorV14;->animationListener:Lcom/example/linechartlibrary/ChartAnimationListener; invoke-interface {p1}, Lcom/example/linechartlibrary/ChartAnimationListener;->onAnimationFinished()V return-void .end method .method public onAnimationRepeat(Landroid/animation/Animator;)V .registers 2 return-void .end method .method public onAnimationStart(Landroid/animation/Animator;)V .registers 2 .line 79 iget-object p1, p0, Lcom/example/linechartlibrary/ChartViewportAnimatorV14;->animationListener:Lcom/example/linechartlibrary/ChartAnimationListener; invoke-interface {p1}, Lcom/example/linechartlibrary/ChartAnimationListener;->onAnimationStarted()V return-void .end method .method public onAnimationUpdate(Landroid/animation/ValueAnimator;)V .registers 7 .line 53 invoke-virtual {p1}, Landroid/animation/ValueAnimator;->getAnimatedFraction()F move-result p1 .line 54 iget-object v0, p0, Lcom/example/linechartlibrary/ChartViewportAnimatorV14;->targetViewport:Lcom/example/linechartlibrary/Viewport; iget v0, v0, Lcom/example/linechartlibrary/Viewport;->left:F iget-object v1, p0, Lcom/example/linechartlibrary/ChartViewportAnimatorV14;->startViewport:Lcom/example/linechartlibrary/Viewport; iget v1, v1, Lcom/example/linechartlibrary/Viewport;->left:F sub-float/2addr v0, v1 mul-float/2addr v0, p1 .line 55 iget-object v1, p0, Lcom/example/linechartlibrary/ChartViewportAnimatorV14;->targetViewport:Lcom/example/linechartlibrary/Viewport; iget v1, v1, Lcom/example/linechartlibrary/Viewport;->top:F iget-object v2, p0, Lcom/example/linechartlibrary/ChartViewportAnimatorV14;->startViewport:Lcom/example/linechartlibrary/Viewport; iget v2, v2, Lcom/example/linechartlibrary/Viewport;->top:F sub-float/2addr v1, v2 mul-float/2addr v1, p1 .line 56 iget-object v2, p0, Lcom/example/linechartlibrary/ChartViewportAnimatorV14;->targetViewport:Lcom/example/linechartlibrary/Viewport; iget v2, v2, Lcom/example/linechartlibrary/Viewport;->right:F iget-object v3, p0, Lcom/example/linechartlibrary/ChartViewportAnimatorV14;->startViewport:Lcom/example/linechartlibrary/Viewport; iget v3, v3, Lcom/example/linechartlibrary/Viewport;->right:F sub-float/2addr v2, v3 mul-float/2addr v2, p1 .line 57 iget-object v3, p0, Lcom/example/linechartlibrary/ChartViewportAnimatorV14;->targetViewport:Lcom/example/linechartlibrary/Viewport; iget v3, v3, Lcom/example/linechartlibrary/Viewport;->bottom:F iget-object v4, p0, Lcom/example/linechartlibrary/ChartViewportAnimatorV14;->startViewport:Lcom/example/linechartlibrary/Viewport; iget v4, v4, Lcom/example/linechartlibrary/Viewport;->bottom:F sub-float/2addr v3, v4 mul-float/2addr v3, p1 .line 58 iget-object p1, p0, Lcom/example/linechartlibrary/ChartViewportAnimatorV14;->newViewport:Lcom/example/linechartlibrary/Viewport; iget-object v4, p0, Lcom/example/linechartlibrary/ChartViewportAnimatorV14;->startViewport:Lcom/example/linechartlibrary/Viewport; iget v4, v4, Lcom/example/linechartlibrary/Viewport;->left:F add-float/2addr v4, v0 iget-object v0, p0, Lcom/example/linechartlibrary/ChartViewportAnimatorV14;->startViewport:Lcom/example/linechartlibrary/Viewport; iget v0, v0, Lcom/example/linechartlibrary/Viewport;->top:F add-float/2addr v0, v1 iget-object v1, p0, Lcom/example/linechartlibrary/ChartViewportAnimatorV14;->startViewport:Lcom/example/linechartlibrary/Viewport; iget v1, v1, Lcom/example/linechartlibrary/Viewport;->right:F add-float/2addr v1, v2 iget-object v2, p0, Lcom/example/linechartlibrary/ChartViewportAnimatorV14;->startViewport:Lcom/example/linechartlibrary/Viewport; iget v2, v2, Lcom/example/linechartlibrary/Viewport;->bottom:F add-float/2addr v2, v3 invoke-virtual {p1, v4, v0, v1, v2}, Lcom/example/linechartlibrary/Viewport;->set(FFFF)V .line 60 iget-object p1, p0, Lcom/example/linechartlibrary/ChartViewportAnimatorV14;->chart:Lcom/example/linechartlibrary/Chart; iget-object v0, p0, Lcom/example/linechartlibrary/ChartViewportAnimatorV14;->newViewport:Lcom/example/linechartlibrary/Viewport; invoke-interface {p1, v0}, Lcom/example/linechartlibrary/Chart;->setCurrentViewport(Lcom/example/linechartlibrary/Viewport;)V return-void .end method .method public setChartAnimationListener(Lcom/example/linechartlibrary/ChartAnimationListener;)V .registers 2 if-nez p1, :cond_a .line 90 new-instance p1, Lcom/example/linechartlibrary/DummyChartAnimationListener; invoke-direct {p1}, Lcom/example/linechartlibrary/DummyChartAnimationListener;->()V iput-object p1, p0, Lcom/example/linechartlibrary/ChartViewportAnimatorV14;->animationListener:Lcom/example/linechartlibrary/ChartAnimationListener; goto :goto_c .line 92 :cond_a iput-object p1, p0, Lcom/example/linechartlibrary/ChartViewportAnimatorV14;->animationListener:Lcom/example/linechartlibrary/ChartAnimationListener; :goto_c return-void .end method .method public startAnimation(Lcom/example/linechartlibrary/Viewport;Lcom/example/linechartlibrary/Viewport;)V .registers 5 .line 32 iget-object v0, p0, Lcom/example/linechartlibrary/ChartViewportAnimatorV14;->startViewport:Lcom/example/linechartlibrary/Viewport; invoke-virtual {v0, p1}, Lcom/example/linechartlibrary/Viewport;->set(Lcom/example/linechartlibrary/Viewport;)V .line 33 iget-object p1, p0, Lcom/example/linechartlibrary/ChartViewportAnimatorV14;->targetViewport:Lcom/example/linechartlibrary/Viewport; invoke-virtual {p1, p2}, Lcom/example/linechartlibrary/Viewport;->set(Lcom/example/linechartlibrary/Viewport;)V .line 34 iget-object p1, p0, Lcom/example/linechartlibrary/ChartViewportAnimatorV14;->animator:Landroid/animation/ValueAnimator; const-wide/16 v0, 0x12c invoke-virtual {p1, v0, v1}, Landroid/animation/ValueAnimator;->setDuration(J)Landroid/animation/ValueAnimator; .line 35 iget-object p1, p0, Lcom/example/linechartlibrary/ChartViewportAnimatorV14;->animator:Landroid/animation/ValueAnimator; invoke-virtual {p1}, Landroid/animation/ValueAnimator;->start()V return-void .end method .method public startAnimation(Lcom/example/linechartlibrary/Viewport;Lcom/example/linechartlibrary/Viewport;J)V .registers 6 .line 40 iget-object v0, p0, Lcom/example/linechartlibrary/ChartViewportAnimatorV14;->startViewport:Lcom/example/linechartlibrary/Viewport; invoke-virtual {v0, p1}, Lcom/example/linechartlibrary/Viewport;->set(Lcom/example/linechartlibrary/Viewport;)V .line 41 iget-object p1, p0, Lcom/example/linechartlibrary/ChartViewportAnimatorV14;->targetViewport:Lcom/example/linechartlibrary/Viewport; invoke-virtual {p1, p2}, Lcom/example/linechartlibrary/Viewport;->set(Lcom/example/linechartlibrary/Viewport;)V .line 42 iget-object p1, p0, Lcom/example/linechartlibrary/ChartViewportAnimatorV14;->animator:Landroid/animation/ValueAnimator; invoke-virtual {p1, p3, p4}, Landroid/animation/ValueAnimator;->setDuration(J)Landroid/animation/ValueAnimator; .line 43 iget-object p1, p0, Lcom/example/linechartlibrary/ChartViewportAnimatorV14;->animator:Landroid/animation/ValueAnimator; invoke-virtual {p1}, Landroid/animation/ValueAnimator;->start()V return-void .end method