AccIndicatorArcView.smali

.class public Lcom/dianxinos/optimizer/statusbar/AccIndicatorArcView;
.super Landroid/view/View;
.source "AccIndicatorArcView.java"


# static fields
.field private static a:Z


# instance fields
.field private b:I

.field private c:F

.field private d:Landroid/graphics/Paint;

.field private e:Landroid/content/Context;

.field private f:Landroid/graphics/RectF;


# direct methods
.method static constructor <clinit>()V
    .registers 1

    .prologue
    .line 26
    const/4 v0, 0x0

    sput-boolean v0, Lcom/dianxinos/optimizer/statusbar/AccIndicatorArcView;->a:Z

    return-void
.end method

.method public constructor <init>(Landroid/content/Context;)V
    .registers 3

    .prologue
    .line 60
    invoke-direct {p0, p1}, Landroid/view/View;-><init>(Landroid/content/Context;)V

    .line 38
    const/4 v0, 0x0

    iput v0, p0, Lcom/dianxinos/optimizer/statusbar/AccIndicatorArcView;->b:I

    .line 61
    invoke-direct {p0, p1}, Lcom/dianxinos/optimizer/statusbar/AccIndicatorArcView;->a(Landroid/content/Context;)V

    .line 62
    return-void
.end method

.method public constructor <init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
    .registers 4

    .prologue
    .line 65
    invoke-direct {p0, p1, p2}, Landroid/view/View;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V

    .line 38
    const/4 v0, 0x0

    iput v0, p0, Lcom/dianxinos/optimizer/statusbar/AccIndicatorArcView;->b:I

    .line 66
    invoke-direct {p0, p1}, Lcom/dianxinos/optimizer/statusbar/AccIndicatorArcView;->a(Landroid/content/Context;)V

    .line 67
    return-void
.end method

.method private a(Landroid/content/Context;)V
    .registers 5

    .prologue
    .line 71
    iput-object p1, p0, Lcom/dianxinos/optimizer/statusbar/AccIndicatorArcView;->e:Landroid/content/Context;

    .line 72
    new-instance v0, Landroid/graphics/Paint;

    invoke-direct {v0}, Landroid/graphics/Paint;-><init>()V

    iput-object v0, p0, Lcom/dianxinos/optimizer/statusbar/AccIndicatorArcView;->d:Landroid/graphics/Paint;

    .line 73
    iget-object v0, p0, Lcom/dianxinos/optimizer/statusbar/AccIndicatorArcView;->d:Landroid/graphics/Paint;

    const/4 v1, 0x1

    invoke-virtual {v0, v1}, Landroid/graphics/Paint;->setAntiAlias(Z)V

    .line 75
    iget-object v0, p0, Lcom/dianxinos/optimizer/statusbar/AccIndicatorArcView;->e:Landroid/content/Context;

    invoke-virtual {p0}, Lcom/dianxinos/optimizer/statusbar/AccIndicatorArcView;->getResources()Landroid/content/res/Resources;

    move-result-object v1

    const v2, 0x7f09021f

    invoke-virtual {v1, v2}, Landroid/content/res/Resources;->getDimension(I)F

    move-result v1

    invoke-static {v0, v1}, Ldxoptimizer/cec;->a(Landroid/content/Context;F)F

    move-result v0

    iput v0, p0, Lcom/dianxinos/optimizer/statusbar/AccIndicatorArcView;->c:F

    .line 76
    iget-object v0, p0, Lcom/dianxinos/optimizer/statusbar/AccIndicatorArcView;->d:Landroid/graphics/Paint;

    iget v1, p0, Lcom/dianxinos/optimizer/statusbar/AccIndicatorArcView;->c:F

    invoke-virtual {v0, v1}, Landroid/graphics/Paint;->setStrokeWidth(F)V

    .line 77
    iget-object v0, p0, Lcom/dianxinos/optimizer/statusbar/AccIndicatorArcView;->d:Landroid/graphics/Paint;

    sget-object v1, Landroid/graphics/Paint$Style;->STROKE:Landroid/graphics/Paint$Style;

    invoke-virtual {v0, v1}, Landroid/graphics/Paint;->setStyle(Landroid/graphics/Paint$Style;)V

    .line 78
    iget-object v0, p0, Lcom/dianxinos/optimizer/statusbar/AccIndicatorArcView;->d:Landroid/graphics/Paint;

    sget-object v1, Landroid/graphics/Paint$Cap;->ROUND:Landroid/graphics/Paint$Cap;

    invoke-virtual {v0, v1}, Landroid/graphics/Paint;->setStrokeCap(Landroid/graphics/Paint$Cap;)V

    .line 79
    iget-object v0, p0, Lcom/dianxinos/optimizer/statusbar/AccIndicatorArcView;->d:Landroid/graphics/Paint;

    iget-object v1, p0, Lcom/dianxinos/optimizer/statusbar/AccIndicatorArcView;->e:Landroid/content/Context;

    invoke-virtual {v1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

    move-result-object v1

    const v2, 0x7f0d007b

    invoke-virtual {v1, v2}, Landroid/content/res/Resources;->getColor(I)I

    move-result v1

    invoke-virtual {v0, v1}, Landroid/graphics/Paint;->setColor(I)V

    .line 81
    new-instance v0, Landroid/graphics/RectF;

    invoke-direct {v0}, Landroid/graphics/RectF;-><init>()V

    iput-object v0, p0, Lcom/dianxinos/optimizer/statusbar/AccIndicatorArcView;->f:Landroid/graphics/RectF;

    .line 83
    return-void
.end method


# virtual methods
.method a(IIJLandroid/view/animation/Interpolator;)Ldxoptimizer/ciu;
    .registers 11

    .prologue
    const v4, 0x402ccccd    # 2.7f

    .line 92
    sget-boolean v0, Lcom/dianxinos/optimizer/statusbar/AccIndicatorArcView;->a:Z

    if-eqz v0, :cond_43

    .line 93
    const-string v0, "AccIndicatorArcView"

    new-instance v1, Ljava/lang/StringBuilder;

    invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V

    const-string v2, "from, to: "

    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v1

    int-to-float v2, p1

    mul-float/2addr v2, v4

    float-to-int v2, v2

    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v1

    const-string v2, " "

    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v1

    int-to-float v2, p2

    mul-float/2addr v2, v4

    float-to-int v2, v2

    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v1

    const-string v2, ", to CONVERT_FACTOR "

    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v1

    invoke-virtual {v1, p2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v1

    const-string v2, " "

    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v1

    invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(F)Ljava/lang/StringBuilder;

    move-result-object v1

    invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v1

    invoke-static {v0, v1}, Ldxoptimizer/cdx;->c(Ljava/lang/String;Ljava/lang/String;)V

    .line 97
    :cond_43
    const-string v0, "sweepAngle"

    const/4 v1, 0x2

    new-array v1, v1, [I

    const/4 v2, 0x0

    int-to-float v3, p1

    mul-float/2addr v3, v4

    float-to-int v3, v3

    aput v3, v1, v2

    const/4 v2, 0x1

    int-to-float v3, p2

    mul-float/2addr v3, v4

    float-to-int v3, v3

    aput v3, v1, v2

    invoke-static {p0, v0, v1}, Ldxoptimizer/ciu;->a(Ljava/lang/Object;Ljava/lang/String;[I)Ldxoptimizer/ciu;

    move-result-object v0

    .line 98
    invoke-virtual {v0, p3, p4}, Ldxoptimizer/ciu;->c(J)Ldxoptimizer/ciu;

    .line 99
    if-eqz p5, :cond_60

    .line 100
    invoke-virtual {v0, p5}, Ldxoptimizer/ciu;->a(Landroid/view/animation/Interpolator;)V

    .line 102
    :cond_60
    return-object v0
.end method

.method public getSweepAngle()I
    .registers 2

    .prologue
    .line 46
    iget v0, p0, Lcom/dianxinos/optimizer/statusbar/AccIndicatorArcView;->b:I

    return v0
.end method

.method protected onDraw(Landroid/graphics/Canvas;)V
    .registers 8

    .prologue
    const/4 v2, 0x0

    const/high16 v3, 0x40000000    # 2.0f

    .line 112
    invoke-super {p0, p1}, Landroid/view/View;->onDraw(Landroid/graphics/Canvas;)V

    .line 113
    iget-object v0, p0, Lcom/dianxinos/optimizer/statusbar/AccIndicatorArcView;->f:Landroid/graphics/RectF;

    iget v1, p0, Lcom/dianxinos/optimizer/statusbar/AccIndicatorArcView;->c:F

    div-float/2addr v1, v3

    add-float/2addr v1, v2

    iput v1, v0, Landroid/graphics/RectF;->top:F

    .line 114
    iget-object v0, p0, Lcom/dianxinos/optimizer/statusbar/AccIndicatorArcView;->f:Landroid/graphics/RectF;

    iget v1, p0, Lcom/dianxinos/optimizer/statusbar/AccIndicatorArcView;->c:F

    div-float/2addr v1, v3

    add-float/2addr v1, v2

    iput v1, v0, Landroid/graphics/RectF;->left:F

    .line 115
    iget-object v0, p0, Lcom/dianxinos/optimizer/statusbar/AccIndicatorArcView;->f:Landroid/graphics/RectF;

    invoke-virtual {p0}, Lcom/dianxinos/optimizer/statusbar/AccIndicatorArcView;->getWidth()I

    move-result v1

    int-to-float v1, v1

    iget v2, p0, Lcom/dianxinos/optimizer/statusbar/AccIndicatorArcView;->c:F

    div-float/2addr v2, v3

    sub-float/2addr v1, v2

    iput v1, v0, Landroid/graphics/RectF;->right:F

    .line 116
    iget-object v0, p0, Lcom/dianxinos/optimizer/statusbar/AccIndicatorArcView;->f:Landroid/graphics/RectF;

    invoke-virtual {p0}, Lcom/dianxinos/optimizer/statusbar/AccIndicatorArcView;->getHeight()I

    move-result v1

    int-to-float v1, v1

    iget v2, p0, Lcom/dianxinos/optimizer/statusbar/AccIndicatorArcView;->c:F

    div-float/2addr v2, v3

    sub-float/2addr v1, v2

    iput v1, v0, Landroid/graphics/RectF;->bottom:F

    .line 117
    iget-object v1, p0, Lcom/dianxinos/optimizer/statusbar/AccIndicatorArcView;->f:Landroid/graphics/RectF;

    const/high16 v2, 0x43070000    # 135.0f

    iget v0, p0, Lcom/dianxinos/optimizer/statusbar/AccIndicatorArcView;->b:I

    int-to-float v3, v0

    const/4 v4, 0x0

    iget-object v5, p0, Lcom/dianxinos/optimizer/statusbar/AccIndicatorArcView;->d:Landroid/graphics/Paint;

    move-object v0, p1

    invoke-virtual/range {v0 .. v5}, Landroid/graphics/Canvas;->drawArc(Landroid/graphics/RectF;FFZLandroid/graphics/Paint;)V

    .line 118
    return-void
.end method

.method public setIndicatorPercent(I)V
    .registers 3

    .prologue
    .line 106
    mul-int/lit8 v0, p1, 0x2

    invoke-virtual {p0, v0}, Lcom/dianxinos/optimizer/statusbar/AccIndicatorArcView;->setSweepAngle(I)V

    .line 107
    return-void
.end method

.method public setSweepAngle(I)V
    .registers 4

    .prologue
    .line 50
    iput p1, p0, Lcom/dianxinos/optimizer/statusbar/AccIndicatorArcView;->b:I

    .line 51
    invoke-static {}, Landroid/os/Looper;->getMainLooper()Landroid/os/Looper;

    move-result-object v0

    invoke-virtual {v0}, Landroid/os/Looper;->getThread()Ljava/lang/Thread;

    move-result-object v0

    invoke-static {}, Ljava/lang/Thread;->currentThread()Ljava/lang/Thread;

    move-result-object v1

    if-ne v0, v1, :cond_14

    .line 52
    invoke-virtual {p0}, Lcom/dianxinos/optimizer/statusbar/AccIndicatorArcView;->invalidate()V

    .line 56
    :goto_13
    return-void

    .line 54
    :cond_14
    invoke-virtual {p0}, Lcom/dianxinos/optimizer/statusbar/AccIndicatorArcView;->postInvalidate()V

    goto :goto_13
.end method