CircularProgressDrawable.smali
.class public Landroid/support/v4/widget/CircularProgressDrawable;
.super Landroid/graphics/drawable/Drawable;
.source "CircularProgressDrawable.java"
# interfaces
.implements Landroid/graphics/drawable/Animatable;
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Landroid/support/v4/widget/CircularProgressDrawable$Ring;,
Landroid/support/v4/widget/CircularProgressDrawable$ProgressDrawableSize;
}
.end annotation
# static fields
.field private static final ANIMATION_DURATION:I = 0x534
.field private static final ARROW_HEIGHT:I = 0x5
.field private static final ARROW_HEIGHT_LARGE:I = 0x6
.field private static final ARROW_WIDTH:I = 0xa
.field private static final ARROW_WIDTH_LARGE:I = 0xc
.field private static final CENTER_RADIUS:F = 7.5f
.field private static final CENTER_RADIUS_LARGE:F = 11.0f
.field private static final COLORS:[I
.field private static final COLOR_CHANGE_OFFSET:F = 0.75f
.field public static final DEFAULT:I = 0x1
.field private static final GROUP_FULL_ROTATION:F = 216.0f
.field public static final LARGE:I = 0x0
.field private static final LINEAR_INTERPOLATOR:Landroid/view/animation/Interpolator;
.field private static final MATERIAL_INTERPOLATOR:Landroid/view/animation/Interpolator;
.field private static final MAX_PROGRESS_ARC:F = 0.8f
.field private static final MIN_PROGRESS_ARC:F = 0.01f
.field private static final RING_ROTATION:F = 0.20999998f
.field private static final SHRINK_OFFSET:F = 0.5f
.field private static final STROKE_WIDTH:F = 2.5f
.field private static final STROKE_WIDTH_LARGE:F = 3.0f
# instance fields
.field private mAnimator:Landroid/animation/Animator;
.field private mFinishing:Z
.field private mResources:Landroid/content/res/Resources;
.field private final mRing:Landroid/support/v4/widget/CircularProgressDrawable$Ring;
.field private mRotation:F
.field private mRotationCount:F
# direct methods
.method static constructor <clinit>()V
.registers 3
.prologue
.line 66
new-instance v0, Landroid/view/animation/LinearInterpolator;
invoke-direct {v0}, Landroid/view/animation/LinearInterpolator;-><init>()V
sput-object v0, Landroid/support/v4/widget/CircularProgressDrawable;->LINEAR_INTERPOLATOR:Landroid/view/animation/Interpolator;
.line 67
new-instance v0, Landroid/support/v4/view/animation/FastOutSlowInInterpolator;
invoke-direct {v0}, Landroid/support/v4/view/animation/FastOutSlowInInterpolator;-><init>()V
sput-object v0, Landroid/support/v4/widget/CircularProgressDrawable;->MATERIAL_INTERPOLATOR:Landroid/view/animation/Interpolator;
.line 96
const/4 v0, 0x1
new-array v0, v0, [I
const/4 v1, 0x0
const/high16 v2, -0x1000000
aput v2, v0, v1
sput-object v0, Landroid/support/v4/widget/CircularProgressDrawable;->COLORS:[I
return-void
.end method
.method public constructor <init>(Landroid/content/Context;)V
.registers 4
.prologue
.line 135
invoke-direct {p0}, Landroid/graphics/drawable/Drawable;-><init>()V
.line 136
invoke-static {p1}, Landroid/support/v4/util/Preconditions;->checkNotNull(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/content/Context;
invoke-virtual {v0}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object v0
iput-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mResources:Landroid/content/res/Resources;
.line 138
new-instance v0, Landroid/support/v4/widget/CircularProgressDrawable$Ring;
invoke-direct {v0}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;-><init>()V
iput-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRing:Landroid/support/v4/widget/CircularProgressDrawable$Ring;
.line 139
iget-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRing:Landroid/support/v4/widget/CircularProgressDrawable$Ring;
sget-object v1, Landroid/support/v4/widget/CircularProgressDrawable;->COLORS:[I
invoke-virtual {v0, v1}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->setColors([I)V
.line 141
const/high16 v0, 0x40200000 # 2.5f
invoke-virtual {p0, v0}, Landroid/support/v4/widget/CircularProgressDrawable;->setStrokeWidth(F)V
.line 142
invoke-direct {p0}, Landroid/support/v4/widget/CircularProgressDrawable;->setupAnimators()V
.line 143
return-void
.end method
.method static synthetic access$000(Landroid/support/v4/widget/CircularProgressDrawable;FLandroid/support/v4/widget/CircularProgressDrawable$Ring;)V
.registers 3
.prologue
.line 65
invoke-direct {p0, p1, p2}, Landroid/support/v4/widget/CircularProgressDrawable;->updateRingColor(FLandroid/support/v4/widget/CircularProgressDrawable$Ring;)V
return-void
.end method
.method static synthetic access$100(Landroid/support/v4/widget/CircularProgressDrawable;FLandroid/support/v4/widget/CircularProgressDrawable$Ring;Z)V
.registers 4
.prologue
.line 65
invoke-direct {p0, p1, p2, p3}, Landroid/support/v4/widget/CircularProgressDrawable;->applyTransformation(FLandroid/support/v4/widget/CircularProgressDrawable$Ring;Z)V
return-void
.end method
.method static synthetic access$200(Landroid/support/v4/widget/CircularProgressDrawable;)F
.registers 2
.prologue
.line 65
iget v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRotationCount:F
return v0
.end method
.method static synthetic access$202(Landroid/support/v4/widget/CircularProgressDrawable;F)F
.registers 2
.prologue
.line 65
iput p1, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRotationCount:F
return p1
.end method
.method static synthetic access$300(Landroid/support/v4/widget/CircularProgressDrawable;)Z
.registers 2
.prologue
.line 65
iget-boolean v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mFinishing:Z
return v0
.end method
.method static synthetic access$302(Landroid/support/v4/widget/CircularProgressDrawable;Z)Z
.registers 2
.prologue
.line 65
iput-boolean p1, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mFinishing:Z
return p1
.end method
.method private applyFinishTranslation(FLandroid/support/v4/widget/CircularProgressDrawable$Ring;)V
.registers 7
.prologue
.line 510
invoke-direct {p0, p1, p2}, Landroid/support/v4/widget/CircularProgressDrawable;->updateRingColor(FLandroid/support/v4/widget/CircularProgressDrawable$Ring;)V
.line 511
invoke-virtual {p2}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->getStartingRotation()F
move-result v0
const v1, 0x3f4ccccd # 0.8f
div-float/2addr v0, v1
float-to-double v0, v0
invoke-static {v0, v1}, Ljava/lang/Math;->floor(D)D
move-result-wide v0
const-wide/high16 v2, 0x3ff0000000000000L # 1.0
add-double/2addr v0, v2
double-to-float v0, v0
.line 513
invoke-virtual {p2}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->getStartingStartTrim()F
move-result v1
.line 514
invoke-virtual {p2}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->getStartingEndTrim()F
move-result v2
const v3, 0x3c23d70a # 0.01f
sub-float/2addr v2, v3
invoke-virtual {p2}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->getStartingStartTrim()F
move-result v3
sub-float/2addr v2, v3
mul-float/2addr v2, p1
add-float/2addr v1, v2
.line 516
invoke-virtual {p2, v1}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->setStartTrim(F)V
.line 517
invoke-virtual {p2}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->getStartingEndTrim()F
move-result v1
invoke-virtual {p2, v1}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->setEndTrim(F)V
.line 518
invoke-virtual {p2}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->getStartingRotation()F
move-result v1
.line 519
invoke-virtual {p2}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->getStartingRotation()F
move-result v2
sub-float/2addr v0, v2
mul-float/2addr v0, p1
add-float/2addr v0, v1
.line 520
invoke-virtual {p2, v0}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->setRotation(F)V
.line 521
return-void
.end method
.method private applyTransformation(FLandroid/support/v4/widget/CircularProgressDrawable$Ring;Z)V
.registers 11
.prologue
const/high16 v6, 0x3f800000 # 1.0f
const v5, 0x3c23d70a # 0.01f
const v4, 0x3f4a3d71 # 0.79f
const/high16 v1, 0x3f000000 # 0.5f
.line 527
iget-boolean v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mFinishing:Z
if-eqz v0, :cond_12
.line 528
invoke-direct {p0, p1, p2}, Landroid/support/v4/widget/CircularProgressDrawable;->applyFinishTranslation(FLandroid/support/v4/widget/CircularProgressDrawable$Ring;)V
.line 556
:cond_11
:goto_11
return-void
.line 531
:cond_12
cmpl-float v0, p1, v6
if-nez v0, :cond_18
if-eqz p3, :cond_11
.line 532
:cond_18
invoke-virtual {p2}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->getStartingRotation()F
move-result v2
.line 535
cmpg-float v0, p1, v1
if-gez v0, :cond_47
.line 536
div-float v0, p1, v1
.line 537
invoke-virtual {p2}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->getStartingStartTrim()F
move-result v1
.line 538
sget-object v3, Landroid/support/v4/widget/CircularProgressDrawable;->MATERIAL_INTERPOLATOR:Landroid/view/animation/Interpolator;
.line 539
invoke-interface {v3, v0}, Landroid/view/animation/Interpolator;->getInterpolation(F)F
move-result v0
mul-float/2addr v0, v4
add-float/2addr v0, v5
add-float/2addr v0, v1
.line 548
:goto_2f
const v3, 0x3e570a3c # 0.20999998f
mul-float/2addr v3, p1
add-float/2addr v2, v3
.line 549
const/high16 v3, 0x43580000 # 216.0f
iget v4, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRotationCount:F
add-float/2addr v4, p1
mul-float/2addr v3, v4
.line 551
invoke-virtual {p2, v1}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->setStartTrim(F)V
.line 552
invoke-virtual {p2, v0}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->setEndTrim(F)V
.line 553
invoke-virtual {p2, v2}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->setRotation(F)V
.line 554
invoke-direct {p0, v3}, Landroid/support/v4/widget/CircularProgressDrawable;->setRotation(F)V
goto :goto_11
.line 541
:cond_47
sub-float v0, p1, v1
div-float v1, v0, v1
.line 542
invoke-virtual {p2}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->getStartingStartTrim()F
move-result v0
add-float/2addr v0, v4
.line 543
sget-object v3, Landroid/support/v4/widget/CircularProgressDrawable;->MATERIAL_INTERPOLATOR:Landroid/view/animation/Interpolator;
.line 544
invoke-interface {v3, v1}, Landroid/view/animation/Interpolator;->getInterpolation(F)F
move-result v1
sub-float v1, v6, v1
mul-float/2addr v1, v4
add-float/2addr v1, v5
sub-float v1, v0, v1
goto :goto_2f
.end method
.method private evaluateColorChange(FII)I
.registers 12
.prologue
.line 471
shr-int/lit8 v0, p2, 0x18
and-int/lit16 v0, v0, 0xff
.line 472
shr-int/lit8 v1, p2, 0x10
and-int/lit16 v1, v1, 0xff
.line 473
shr-int/lit8 v2, p2, 0x8
and-int/lit16 v2, v2, 0xff
.line 474
and-int/lit16 v3, p2, 0xff
.line 476
shr-int/lit8 v4, p3, 0x18
and-int/lit16 v4, v4, 0xff
.line 477
shr-int/lit8 v5, p3, 0x10
and-int/lit16 v5, v5, 0xff
.line 478
shr-int/lit8 v6, p3, 0x8
and-int/lit16 v6, v6, 0xff
.line 479
and-int/lit16 v7, p3, 0xff
.line 481
sub-int/2addr v4, v0
int-to-float v4, v4
mul-float/2addr v4, p1
float-to-int v4, v4
add-int/2addr v0, v4
shl-int/lit8 v0, v0, 0x18
sub-int v4, v5, v1
int-to-float v4, v4
mul-float/2addr v4, p1
float-to-int v4, v4
add-int/2addr v1, v4
shl-int/lit8 v1, v1, 0x10
or-int/2addr v0, v1
sub-int v1, v6, v2
int-to-float v1, v1
mul-float/2addr v1, p1
float-to-int v1, v1
add-int/2addr v1, v2
shl-int/lit8 v1, v1, 0x8
or-int/2addr v0, v1
sub-int v1, v7, v3
int-to-float v1, v1
mul-float/2addr v1, p1
float-to-int v1, v1
add-int/2addr v1, v3
or-int/2addr v0, v1
return v0
.end method
.method private getRotation()F
.registers 2
.prologue
.line 423
iget v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRotation:F
return v0
.end method
.method private setRotation(F)V
.registers 2
.prologue
.line 419
iput p1, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRotation:F
.line 420
return-void
.end method
.method private setSizeParameters(FFFF)V
.registers 8
.prologue
.line 148
iget-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRing:Landroid/support/v4/widget/CircularProgressDrawable$Ring;
.line 149
iget-object v1, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mResources:Landroid/content/res/Resources;
invoke-virtual {v1}, Landroid/content/res/Resources;->getDisplayMetrics()Landroid/util/DisplayMetrics;
move-result-object v1
.line 150
iget v1, v1, Landroid/util/DisplayMetrics;->density:F
.line 152
mul-float v2, p2, v1
invoke-virtual {v0, v2}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->setStrokeWidth(F)V
.line 153
mul-float v2, p1, v1
invoke-virtual {v0, v2}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->setCenterRadius(F)V
.line 154
const/4 v2, 0x0
invoke-virtual {v0, v2}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->setColorIndex(I)V
.line 155
mul-float v2, p3, v1
mul-float/2addr v1, p4
invoke-virtual {v0, v2, v1}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->setArrowDimensions(FF)V
.line 156
return-void
.end method
.method private setupAnimators()V
.registers 4
.prologue
.line 559
iget-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRing:Landroid/support/v4/widget/CircularProgressDrawable$Ring;
.line 560
const/4 v1, 0x2
new-array v1, v1, [F
fill-array-data v1, :array_2c
invoke-static {v1}, Landroid/animation/ValueAnimator;->ofFloat([F)Landroid/animation/ValueAnimator;
move-result-object v1
.line 561
new-instance v2, Landroid/support/v4/widget/CircularProgressDrawable$1;
invoke-direct {v2, p0, v0}, Landroid/support/v4/widget/CircularProgressDrawable$1;-><init>(Landroid/support/v4/widget/CircularProgressDrawable;Landroid/support/v4/widget/CircularProgressDrawable$Ring;)V
invoke-virtual {v1, v2}, Landroid/animation/ValueAnimator;->addUpdateListener(Landroid/animation/ValueAnimator$AnimatorUpdateListener;)V
.line 570
const/4 v2, -0x1
invoke-virtual {v1, v2}, Landroid/animation/ValueAnimator;->setRepeatCount(I)V
.line 571
const/4 v2, 0x1
invoke-virtual {v1, v2}, Landroid/animation/ValueAnimator;->setRepeatMode(I)V
.line 572
sget-object v2, Landroid/support/v4/widget/CircularProgressDrawable;->LINEAR_INTERPOLATOR:Landroid/view/animation/Interpolator;
invoke-virtual {v1, v2}, Landroid/animation/ValueAnimator;->setInterpolator(Landroid/animation/TimeInterpolator;)V
.line 573
new-instance v2, Landroid/support/v4/widget/CircularProgressDrawable$2;
invoke-direct {v2, p0, v0}, Landroid/support/v4/widget/CircularProgressDrawable$2;-><init>(Landroid/support/v4/widget/CircularProgressDrawable;Landroid/support/v4/widget/CircularProgressDrawable$Ring;)V
invoke-virtual {v1, v2}, Landroid/animation/ValueAnimator;->addListener(Landroid/animation/Animator$AnimatorListener;)V
.line 608
iput-object v1, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mAnimator:Landroid/animation/Animator;
.line 609
return-void
.line 560
:array_2c
.array-data 4
0x0
0x3f800000 # 1.0f
.end array-data
.end method
.method private updateRingColor(FLandroid/support/v4/widget/CircularProgressDrawable$Ring;)V
.registers 6
.prologue
const/high16 v1, 0x3f400000 # 0.75f
.line 493
cmpl-float v0, p1, v1
if-lez v0, :cond_1b
.line 494
sub-float v0, p1, v1
const/high16 v1, 0x3e800000 # 0.25f
div-float/2addr v0, v1
.line 495
invoke-virtual {p2}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->getStartingColor()I
move-result v1
.line 496
invoke-virtual {p2}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->getNextColor()I
move-result v2
.line 494
invoke-direct {p0, v0, v1, v2}, Landroid/support/v4/widget/CircularProgressDrawable;->evaluateColorChange(FII)I
move-result v0
invoke-virtual {p2, v0}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->setColor(I)V
.line 500
:goto_1a
return-void
.line 498
:cond_1b
invoke-virtual {p2}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->getStartingColor()I
move-result v0
invoke-virtual {p2, v0}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->setColor(I)V
goto :goto_1a
.end method
# virtual methods
.method public draw(Landroid/graphics/Canvas;)V
.registers 6
.prologue
.line 394
invoke-virtual {p0}, Landroid/support/v4/widget/CircularProgressDrawable;->getBounds()Landroid/graphics/Rect;
move-result-object v0
.line 395
invoke-virtual {p1}, Landroid/graphics/Canvas;->save()I
.line 396
iget v1, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRotation:F
invoke-virtual {v0}, Landroid/graphics/Rect;->exactCenterX()F
move-result v2
invoke-virtual {v0}, Landroid/graphics/Rect;->exactCenterY()F
move-result v3
invoke-virtual {p1, v1, v2, v3}, Landroid/graphics/Canvas;->rotate(FFF)V
.line 397
iget-object v1, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRing:Landroid/support/v4/widget/CircularProgressDrawable$Ring;
invoke-virtual {v1, p1, v0}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->draw(Landroid/graphics/Canvas;Landroid/graphics/Rect;)V
.line 398
invoke-virtual {p1}, Landroid/graphics/Canvas;->restore()V
.line 399
return-void
.end method
.method public getAlpha()I
.registers 2
.prologue
.line 409
iget-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRing:Landroid/support/v4/widget/CircularProgressDrawable$Ring;
invoke-virtual {v0}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->getAlpha()I
move-result v0
return v0
.end method
.method public getArrowEnabled()Z
.registers 2
.prologue
.line 267
iget-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRing:Landroid/support/v4/widget/CircularProgressDrawable$Ring;
invoke-virtual {v0}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->getShowArrow()Z
move-result v0
return v0
.end method
.method public getArrowHeight()F
.registers 2
.prologue
.line 247
iget-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRing:Landroid/support/v4/widget/CircularProgressDrawable$Ring;
invoke-virtual {v0}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->getArrowHeight()F
move-result v0
return v0
.end method
.method public getArrowScale()F
.registers 2
.prologue
.line 286
iget-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRing:Landroid/support/v4/widget/CircularProgressDrawable$Ring;
invoke-virtual {v0}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->getArrowScale()F
move-result v0
return v0
.end method
.method public getArrowWidth()F
.registers 2
.prologue
.line 238
iget-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRing:Landroid/support/v4/widget/CircularProgressDrawable$Ring;
invoke-virtual {v0}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->getArrowWidth()F
move-result v0
return v0
.end method
.method public getBackgroundColor()I
.registers 2
.prologue
.line 356
iget-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRing:Landroid/support/v4/widget/CircularProgressDrawable$Ring;
invoke-virtual {v0}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->getBackgroundColor()I
move-result v0
return v0
.end method
.method public getCenterRadius()F
.registers 2
.prologue
.line 199
iget-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRing:Landroid/support/v4/widget/CircularProgressDrawable$Ring;
invoke-virtual {v0}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->getCenterRadius()F
move-result v0
return v0
.end method
.method public getColorSchemeColors()[I
.registers 2
.prologue
.line 377
iget-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRing:Landroid/support/v4/widget/CircularProgressDrawable$Ring;
invoke-virtual {v0}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->getColors()[I
move-result-object v0
return-object v0
.end method
.method public getEndTrim()F
.registers 2
.prologue
.line 314
iget-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRing:Landroid/support/v4/widget/CircularProgressDrawable$Ring;
invoke-virtual {v0}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->getEndTrim()F
move-result v0
return v0
.end method
.method public getOpacity()I
.registers 2
.prologue
.line 428
const/4 v0, -0x3
return v0
.end method
.method public getProgressRotation()F
.registers 2
.prologue
.line 337
iget-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRing:Landroid/support/v4/widget/CircularProgressDrawable$Ring;
invoke-virtual {v0}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->getRotation()F
move-result v0
return v0
.end method
.method public getStartTrim()F
.registers 2
.prologue
.line 305
iget-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRing:Landroid/support/v4/widget/CircularProgressDrawable$Ring;
invoke-virtual {v0}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->getStartTrim()F
move-result v0
return v0
.end method
.method public getStrokeCap()Landroid/graphics/Paint$Cap;
.registers 2
.prologue
.line 229
iget-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRing:Landroid/support/v4/widget/CircularProgressDrawable$Ring;
invoke-virtual {v0}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->getStrokeCap()Landroid/graphics/Paint$Cap;
move-result-object v0
return-object v0
.end method
.method public getStrokeWidth()F
.registers 2
.prologue
.line 180
iget-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRing:Landroid/support/v4/widget/CircularProgressDrawable$Ring;
invoke-virtual {v0}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->getStrokeWidth()F
move-result v0
return v0
.end method
.method public isRunning()Z
.registers 2
.prologue
.line 433
iget-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mAnimator:Landroid/animation/Animator;
invoke-virtual {v0}, Landroid/animation/Animator;->isRunning()Z
move-result v0
return v0
.end method
.method public setAlpha(I)V
.registers 3
.prologue
.line 403
iget-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRing:Landroid/support/v4/widget/CircularProgressDrawable$Ring;
invoke-virtual {v0, p1}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->setAlpha(I)V
.line 404
invoke-virtual {p0}, Landroid/support/v4/widget/CircularProgressDrawable;->invalidateSelf()V
.line 405
return-void
.end method
.method public setArrowDimensions(FF)V
.registers 4
.prologue
.line 257
iget-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRing:Landroid/support/v4/widget/CircularProgressDrawable$Ring;
invoke-virtual {v0, p1, p2}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->setArrowDimensions(FF)V
.line 258
invoke-virtual {p0}, Landroid/support/v4/widget/CircularProgressDrawable;->invalidateSelf()V
.line 259
return-void
.end method
.method public setArrowEnabled(Z)V
.registers 3
.prologue
.line 276
iget-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRing:Landroid/support/v4/widget/CircularProgressDrawable$Ring;
invoke-virtual {v0, p1}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->setShowArrow(Z)V
.line 277
invoke-virtual {p0}, Landroid/support/v4/widget/CircularProgressDrawable;->invalidateSelf()V
.line 278
return-void
.end method
.method public setArrowScale(F)V
.registers 3
.prologue
.line 295
iget-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRing:Landroid/support/v4/widget/CircularProgressDrawable$Ring;
invoke-virtual {v0, p1}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->setArrowScale(F)V
.line 296
invoke-virtual {p0}, Landroid/support/v4/widget/CircularProgressDrawable;->invalidateSelf()V
.line 297
return-void
.end method
.method public setBackgroundColor(I)V
.registers 3
.prologue
.line 367
iget-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRing:Landroid/support/v4/widget/CircularProgressDrawable$Ring;
invoke-virtual {v0, p1}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->setBackgroundColor(I)V
.line 368
invoke-virtual {p0}, Landroid/support/v4/widget/CircularProgressDrawable;->invalidateSelf()V
.line 369
return-void
.end method
.method public setCenterRadius(F)V
.registers 3
.prologue
.line 209
iget-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRing:Landroid/support/v4/widget/CircularProgressDrawable$Ring;
invoke-virtual {v0, p1}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->setCenterRadius(F)V
.line 210
invoke-virtual {p0}, Landroid/support/v4/widget/CircularProgressDrawable;->invalidateSelf()V
.line 211
return-void
.end method
.method public setColorFilter(Landroid/graphics/ColorFilter;)V
.registers 3
.prologue
.line 414
iget-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRing:Landroid/support/v4/widget/CircularProgressDrawable$Ring;
invoke-virtual {v0, p1}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->setColorFilter(Landroid/graphics/ColorFilter;)V
.line 415
invoke-virtual {p0}, Landroid/support/v4/widget/CircularProgressDrawable;->invalidateSelf()V
.line 416
return-void
.end method
.method public varargs setColorSchemeColors([I)V
.registers 4
.prologue
.line 387
iget-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRing:Landroid/support/v4/widget/CircularProgressDrawable$Ring;
invoke-virtual {v0, p1}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->setColors([I)V
.line 388
iget-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRing:Landroid/support/v4/widget/CircularProgressDrawable$Ring;
const/4 v1, 0x0
invoke-virtual {v0, v1}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->setColorIndex(I)V
.line 389
invoke-virtual {p0}, Landroid/support/v4/widget/CircularProgressDrawable;->invalidateSelf()V
.line 390
return-void
.end method
.method public setProgressRotation(F)V
.registers 3
.prologue
.line 346
iget-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRing:Landroid/support/v4/widget/CircularProgressDrawable$Ring;
invoke-virtual {v0, p1}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->setRotation(F)V
.line 347
invoke-virtual {p0}, Landroid/support/v4/widget/CircularProgressDrawable;->invalidateSelf()V
.line 348
return-void
.end method
.method public setStartEndTrim(FF)V
.registers 4
.prologue
.line 326
iget-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRing:Landroid/support/v4/widget/CircularProgressDrawable$Ring;
invoke-virtual {v0, p1}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->setStartTrim(F)V
.line 327
iget-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRing:Landroid/support/v4/widget/CircularProgressDrawable$Ring;
invoke-virtual {v0, p2}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->setEndTrim(F)V
.line 328
invoke-virtual {p0}, Landroid/support/v4/widget/CircularProgressDrawable;->invalidateSelf()V
.line 329
return-void
.end method
.method public setStrokeCap(Landroid/graphics/Paint$Cap;)V
.registers 3
.prologue
.line 219
iget-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRing:Landroid/support/v4/widget/CircularProgressDrawable$Ring;
invoke-virtual {v0, p1}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->setStrokeCap(Landroid/graphics/Paint$Cap;)V
.line 220
invoke-virtual {p0}, Landroid/support/v4/widget/CircularProgressDrawable;->invalidateSelf()V
.line 221
return-void
.end method
.method public setStrokeWidth(F)V
.registers 3
.prologue
.line 189
iget-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRing:Landroid/support/v4/widget/CircularProgressDrawable$Ring;
invoke-virtual {v0, p1}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->setStrokeWidth(F)V
.line 190
invoke-virtual {p0}, Landroid/support/v4/widget/CircularProgressDrawable;->invalidateSelf()V
.line 191
return-void
.end method
.method public setStyle(I)V
.registers 6
.prologue
.line 165
if-nez p1, :cond_11
.line 166
const/high16 v0, 0x41300000 # 11.0f
const/high16 v1, 0x40400000 # 3.0f
const/high16 v2, 0x41400000 # 12.0f
const/high16 v3, 0x40c00000 # 6.0f
invoke-direct {p0, v0, v1, v2, v3}, Landroid/support/v4/widget/CircularProgressDrawable;->setSizeParameters(FFFF)V
.line 171
:goto_d
invoke-virtual {p0}, Landroid/support/v4/widget/CircularProgressDrawable;->invalidateSelf()V
.line 172
return-void
.line 169
:cond_11
const/high16 v0, 0x40f00000 # 7.5f
const/high16 v1, 0x40200000 # 2.5f
const/high16 v2, 0x41200000 # 10.0f
const/high16 v3, 0x40a00000 # 5.0f
invoke-direct {p0, v0, v1, v2, v3}, Landroid/support/v4/widget/CircularProgressDrawable;->setSizeParameters(FFFF)V
goto :goto_d
.end method
.method public start()V
.registers 5
.prologue
.line 441
iget-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mAnimator:Landroid/animation/Animator;
invoke-virtual {v0}, Landroid/animation/Animator;->cancel()V
.line 442
iget-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRing:Landroid/support/v4/widget/CircularProgressDrawable$Ring;
invoke-virtual {v0}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->storeOriginals()V
.line 444
iget-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRing:Landroid/support/v4/widget/CircularProgressDrawable$Ring;
invoke-virtual {v0}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->getEndTrim()F
move-result v0
iget-object v1, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRing:Landroid/support/v4/widget/CircularProgressDrawable$Ring;
invoke-virtual {v1}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->getStartTrim()F
move-result v1
cmpl-float v0, v0, v1
if-eqz v0, :cond_2a
.line 445
const/4 v0, 0x1
iput-boolean v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mFinishing:Z
.line 446
iget-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mAnimator:Landroid/animation/Animator;
const-wide/16 v2, 0x29a
invoke-virtual {v0, v2, v3}, Landroid/animation/Animator;->setDuration(J)Landroid/animation/Animator;
.line 447
iget-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mAnimator:Landroid/animation/Animator;
invoke-virtual {v0}, Landroid/animation/Animator;->start()V
.line 454
:goto_29
return-void
.line 449
:cond_2a
iget-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRing:Landroid/support/v4/widget/CircularProgressDrawable$Ring;
const/4 v1, 0x0
invoke-virtual {v0, v1}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->setColorIndex(I)V
.line 450
iget-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRing:Landroid/support/v4/widget/CircularProgressDrawable$Ring;
invoke-virtual {v0}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->resetOriginals()V
.line 451
iget-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mAnimator:Landroid/animation/Animator;
const-wide/16 v2, 0x534
invoke-virtual {v0, v2, v3}, Landroid/animation/Animator;->setDuration(J)Landroid/animation/Animator;
.line 452
iget-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mAnimator:Landroid/animation/Animator;
invoke-virtual {v0}, Landroid/animation/Animator;->start()V
goto :goto_29
.end method
.method public stop()V
.registers 3
.prologue
const/4 v1, 0x0
.line 461
iget-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mAnimator:Landroid/animation/Animator;
invoke-virtual {v0}, Landroid/animation/Animator;->cancel()V
.line 462
const/4 v0, 0x0
invoke-direct {p0, v0}, Landroid/support/v4/widget/CircularProgressDrawable;->setRotation(F)V
.line 463
iget-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRing:Landroid/support/v4/widget/CircularProgressDrawable$Ring;
invoke-virtual {v0, v1}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->setShowArrow(Z)V
.line 464
iget-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRing:Landroid/support/v4/widget/CircularProgressDrawable$Ring;
invoke-virtual {v0, v1}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->setColorIndex(I)V
.line 465
iget-object v0, p0, Landroid/support/v4/widget/CircularProgressDrawable;->mRing:Landroid/support/v4/widget/CircularProgressDrawable$Ring;
invoke-virtual {v0}, Landroid/support/v4/widget/CircularProgressDrawable$Ring;->resetOriginals()V
.line 466
invoke-virtual {p0}, Landroid/support/v4/widget/CircularProgressDrawable;->invalidateSelf()V
.line 467
return-void
.end method