.class public Lcom/moji/ArcProcess; .super Landroid/view/View; .source "ArcProcess.java" # instance fields .field private a:Landroid/graphics/Paint; .field private b:Landroid/graphics/Paint; .field private c:Landroid/graphics/Paint; .field private d:Landroid/graphics/Paint; .field private e:Landroid/graphics/RectF; .field private f:F .field private g:Landroid/graphics/Paint$FontMetrics; .field private h:Ljava/lang/String; .field private i:I .field private j:I # direct methods .method public constructor (Landroid/content/Context;)V .locals 0 .line 27 invoke-direct {p0, p1}, Landroid/view/View;->(Landroid/content/Context;)V const-string p1, "0%" .line 22 iput-object p1, p0, Lcom/moji/ArcProcess;->h:Ljava/lang/String; .line 28 invoke-direct {p0}, Lcom/moji/ArcProcess;->a()V return-void .end method .method public constructor (Landroid/content/Context;Landroid/util/AttributeSet;)V .locals 0 .line 37 invoke-direct {p0, p1, p2}, Landroid/view/View;->(Landroid/content/Context;Landroid/util/AttributeSet;)V const-string p1, "0%" .line 22 iput-object p1, p0, Lcom/moji/ArcProcess;->h:Ljava/lang/String; .line 38 invoke-direct {p0}, Lcom/moji/ArcProcess;->a()V return-void .end method .method public constructor (Landroid/content/Context;Landroid/util/AttributeSet;I)V .locals 0 .line 32 invoke-direct {p0, p1, p2, p3}, Landroid/view/View;->(Landroid/content/Context;Landroid/util/AttributeSet;I)V const-string p1, "0%" .line 22 iput-object p1, p0, Lcom/moji/ArcProcess;->h:Ljava/lang/String; .line 33 invoke-direct {p0}, Lcom/moji/ArcProcess;->a()V return-void .end method .method private a()V .locals 5 .line 42 new-instance v0, Landroid/graphics/Paint; invoke-direct {v0}, Landroid/graphics/Paint;->()V iput-object v0, p0, Lcom/moji/ArcProcess;->a:Landroid/graphics/Paint; .line 43 iget-object v0, p0, Lcom/moji/ArcProcess;->a: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 44 iget-object v0, p0, Lcom/moji/ArcProcess;->a:Landroid/graphics/Paint; const/4 v1, 0x1 invoke-virtual {v0, v1}, Landroid/graphics/Paint;->setAntiAlias(Z)V .line 45 iget-object v0, p0, Lcom/moji/ArcProcess;->a:Landroid/graphics/Paint; invoke-static {}, Lcom/moji/tool/DeviceTool;->f()F move-result v2 const/high16 v3, 0x40800000 # 4.0f mul-float v2, v2, v3 invoke-virtual {v0, v2}, Landroid/graphics/Paint;->setStrokeWidth(F)V .line 46 iget-object v0, p0, Lcom/moji/ArcProcess;->a:Landroid/graphics/Paint; const v2, -0xff6820 invoke-virtual {v0, v2}, Landroid/graphics/Paint;->setColor(I)V .line 47 new-instance v0, Landroid/graphics/Paint; invoke-direct {v0}, Landroid/graphics/Paint;->()V iput-object v0, p0, Lcom/moji/ArcProcess;->b:Landroid/graphics/Paint; .line 48 iget-object v0, p0, Lcom/moji/ArcProcess;->b:Landroid/graphics/Paint; sget-object v4, Landroid/graphics/Paint$Style;->STROKE:Landroid/graphics/Paint$Style; invoke-virtual {v0, v4}, Landroid/graphics/Paint;->setStyle(Landroid/graphics/Paint$Style;)V .line 49 iget-object v0, p0, Lcom/moji/ArcProcess;->b:Landroid/graphics/Paint; invoke-virtual {v0, v1}, Landroid/graphics/Paint;->setAntiAlias(Z)V .line 50 iget-object v0, p0, Lcom/moji/ArcProcess;->b:Landroid/graphics/Paint; invoke-static {}, Lcom/moji/tool/DeviceTool;->f()F move-result v4 mul-float v4, v4, v3 invoke-virtual {v0, v4}, Landroid/graphics/Paint;->setStrokeWidth(F)V .line 51 iget-object v0, p0, Lcom/moji/ArcProcess;->b:Landroid/graphics/Paint; const v3, -0x2d2e2f invoke-virtual {v0, v3}, Landroid/graphics/Paint;->setColor(I)V .line 52 new-instance v0, Landroid/graphics/Paint; invoke-direct {v0}, Landroid/graphics/Paint;->()V iput-object v0, p0, Lcom/moji/ArcProcess;->c:Landroid/graphics/Paint; .line 53 iget-object v0, p0, Lcom/moji/ArcProcess;->c:Landroid/graphics/Paint; invoke-virtual {v0, v1}, Landroid/graphics/Paint;->setAntiAlias(Z)V .line 54 iget-object v0, p0, Lcom/moji/ArcProcess;->c:Landroid/graphics/Paint; const/4 v3, -0x1 invoke-virtual {v0, v3}, Landroid/graphics/Paint;->setColor(I)V .line 55 new-instance v0, Landroid/graphics/Paint; invoke-direct {v0}, Landroid/graphics/Paint;->()V iput-object v0, p0, Lcom/moji/ArcProcess;->d:Landroid/graphics/Paint; .line 56 iget-object v0, p0, Lcom/moji/ArcProcess;->d:Landroid/graphics/Paint; invoke-virtual {v0, v2}, Landroid/graphics/Paint;->setColor(I)V .line 57 iget-object v0, p0, Lcom/moji/ArcProcess;->d:Landroid/graphics/Paint; invoke-virtual {v0, v1}, Landroid/graphics/Paint;->setAntiAlias(Z)V .line 58 iget-object v0, p0, Lcom/moji/ArcProcess;->d:Landroid/graphics/Paint; invoke-static {}, Lcom/moji/tool/DeviceTool;->f()F move-result v1 const/high16 v2, 0x41600000 # 14.0f mul-float v1, v1, v2 invoke-virtual {v0, v1}, Landroid/graphics/Paint;->setTextSize(F)V .line 59 iget-object v0, p0, Lcom/moji/ArcProcess;->d:Landroid/graphics/Paint; sget-object v1, Landroid/graphics/Paint$Align;->CENTER:Landroid/graphics/Paint$Align; invoke-virtual {v0, v1}, Landroid/graphics/Paint;->setTextAlign(Landroid/graphics/Paint$Align;)V .line 60 new-instance v0, Landroid/graphics/RectF; invoke-direct {v0}, Landroid/graphics/RectF;->()V iput-object v0, p0, Lcom/moji/ArcProcess;->e:Landroid/graphics/RectF; return-void .end method .method private setNextAngle(I)V .locals 2 .line 95 new-instance v0, Ljava/lang/StringBuilder; invoke-direct {v0}, Ljava/lang/StringBuilder;->()V invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; const-string v1, "%" invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 iput-object v0, p0, Lcom/moji/ArcProcess;->h:Ljava/lang/String; int-to-float p1, p1 const/high16 v0, 0x42c80000 # 100.0f div-float/2addr p1, v0 const/high16 v0, 0x43b40000 # 360.0f mul-float p1, p1, v0 .line 96 iput p1, p0, Lcom/moji/ArcProcess;->f:F .line 97 invoke-virtual {p0}, Lcom/moji/ArcProcess;->invalidate()V return-void .end method # virtual methods .method protected onDraw(Landroid/graphics/Canvas;)V .locals 8 .line 65 iget-object v0, p0, Lcom/moji/ArcProcess;->e:Landroid/graphics/RectF; invoke-static {}, Lcom/moji/tool/DeviceTool;->f()F move-result v1 const/high16 v2, 0x40800000 # 4.0f mul-float v1, v1, v2 invoke-static {}, Lcom/moji/tool/DeviceTool;->f()F move-result v3 mul-float v3, v3, v2 .line 66 invoke-virtual {p0}, Lcom/moji/ArcProcess;->getWidth()I move-result v4 int-to-float v4, v4 invoke-static {}, Lcom/moji/tool/DeviceTool;->f()F move-result v5 mul-float v5, v5, v2 sub-float/2addr v4, v5 invoke-virtual {p0}, Lcom/moji/ArcProcess;->getHeight()I move-result v5 int-to-float v5, v5 invoke-static {}, Lcom/moji/tool/DeviceTool;->f()F move-result v6 mul-float v6, v6, v2 sub-float/2addr v5, v6 .line 65 invoke-virtual {v0, v1, v3, v4, v5}, Landroid/graphics/RectF;->set(FFFF)V .line 67 iget-object v0, p0, Lcom/moji/ArcProcess;->d:Landroid/graphics/Paint; invoke-virtual {v0}, Landroid/graphics/Paint;->getFontMetrics()Landroid/graphics/Paint$FontMetrics; move-result-object v0 iput-object v0, p0, Lcom/moji/ArcProcess;->g:Landroid/graphics/Paint$FontMetrics; .line 68 invoke-virtual {p0}, Lcom/moji/ArcProcess;->getWidth()I move-result v0 int-to-float v0, v0 const/high16 v1, 0x40000000 # 2.0f div-float/2addr v0, v1 .line 69 invoke-virtual {p0}, Lcom/moji/ArcProcess;->getHeight()I move-result v3 int-to-float v3, v3 div-float/2addr v3, v1 iget-object v4, p0, Lcom/moji/ArcProcess;->g:Landroid/graphics/Paint$FontMetrics; iget v4, v4, Landroid/graphics/Paint$FontMetrics;->descent:F sub-float/2addr v3, v4 iget-object v4, p0, Lcom/moji/ArcProcess;->g:Landroid/graphics/Paint$FontMetrics; iget v4, v4, Landroid/graphics/Paint$FontMetrics;->descent:F iget-object v5, p0, Lcom/moji/ArcProcess;->g:Landroid/graphics/Paint$FontMetrics; iget v5, v5, Landroid/graphics/Paint$FontMetrics;->ascent:F sub-float/2addr v4, v5 div-float/2addr v4, v1 add-float/2addr v3, v4 .line 71 invoke-virtual {p0}, Lcom/moji/ArcProcess;->getWidth()I move-result v4 int-to-float v4, v4 div-float/2addr v4, v1 invoke-virtual {p0}, Lcom/moji/ArcProcess;->getHeight()I move-result v5 int-to-float v5, v5 div-float/2addr v5, v1 .line 72 invoke-virtual {p0}, Lcom/moji/ArcProcess;->getWidth()I move-result v6 int-to-float v6, v6 invoke-static {}, Lcom/moji/tool/DeviceTool;->f()F move-result v7 mul-float v7, v7, v1 mul-float v7, v7, v2 sub-float/2addr v6, v7 div-float/2addr v6, v1 iget-object v1, p0, Lcom/moji/ArcProcess;->c:Landroid/graphics/Paint; .line 71 invoke-virtual {p1, v4, v5, v6, v1}, Landroid/graphics/Canvas;->drawCircle(FFFLandroid/graphics/Paint;)V .line 73 iget-object v1, p0, Lcom/moji/ArcProcess;->h:Ljava/lang/String; iget-object v2, p0, Lcom/moji/ArcProcess;->d:Landroid/graphics/Paint; invoke-virtual {p1, v1, v0, v3, v2}, Landroid/graphics/Canvas;->drawText(Ljava/lang/String;FFLandroid/graphics/Paint;)V .line 74 iget-object v1, p0, Lcom/moji/ArcProcess;->e:Landroid/graphics/RectF; iget v3, p0, Lcom/moji/ArcProcess;->f:F iget-object v5, p0, Lcom/moji/ArcProcess;->a:Landroid/graphics/Paint; const/high16 v2, 0x43870000 # 270.0f const/4 v4, 0x0 move-object v0, p1 invoke-virtual/range {v0 .. v5}, Landroid/graphics/Canvas;->drawArc(Landroid/graphics/RectF;FFZLandroid/graphics/Paint;)V .line 75 iget-object v1, p0, Lcom/moji/ArcProcess;->e:Landroid/graphics/RectF; iget v0, p0, Lcom/moji/ArcProcess;->f:F add-float/2addr v2, v0 iget v0, p0, Lcom/moji/ArcProcess;->f:F const/high16 v3, 0x43b40000 # 360.0f sub-float/2addr v3, v0 iget-object v5, p0, Lcom/moji/ArcProcess;->b:Landroid/graphics/Paint; move-object v0, p1 invoke-virtual/range {v0 .. v5}, Landroid/graphics/Canvas;->drawArc(Landroid/graphics/RectF;FFZLandroid/graphics/Paint;)V .line 76 iget v0, p0, Lcom/moji/ArcProcess;->i:I const/16 v1, 0x63 if-lt v0, v1, :cond_0 .line 77 iget v0, p0, Lcom/moji/ArcProcess;->i:I iput v0, p0, Lcom/moji/ArcProcess;->j:I .line 78 iget v0, p0, Lcom/moji/ArcProcess;->j:I invoke-direct {p0, v0}, Lcom/moji/ArcProcess;->setNextAngle(I)V goto :goto_0 .line 79 :cond_0 iget v0, p0, Lcom/moji/ArcProcess;->j:I const/16 v1, 0x64 if-ge v0, v1, :cond_1 iget v0, p0, Lcom/moji/ArcProcess;->j:I iget v1, p0, Lcom/moji/ArcProcess;->i:I if-ge v0, v1, :cond_1 .line 80 iget v0, p0, Lcom/moji/ArcProcess;->j:I add-int/lit8 v0, v0, 0x1 iput v0, p0, Lcom/moji/ArcProcess;->j:I .line 81 iget v0, p0, Lcom/moji/ArcProcess;->j:I invoke-direct {p0, v0}, Lcom/moji/ArcProcess;->setNextAngle(I)V goto :goto_0 .line 82 :cond_1 iget v0, p0, Lcom/moji/ArcProcess;->j:I iget v1, p0, Lcom/moji/ArcProcess;->i:I if-le v0, v1, :cond_2 .line 83 iget v0, p0, Lcom/moji/ArcProcess;->i:I iput v0, p0, Lcom/moji/ArcProcess;->j:I .line 84 iget v0, p0, Lcom/moji/ArcProcess;->j:I invoke-direct {p0, v0}, Lcom/moji/ArcProcess;->setNextAngle(I)V :cond_2 :goto_0 return-void .end method .method public setAngle(I)V .locals 0 .line 90 iput p1, p0, Lcom/moji/ArcProcess;->i:I .line 91 iget p1, p0, Lcom/moji/ArcProcess;->j:I invoke-direct {p0, p1}, Lcom/moji/ArcProcess;->setNextAngle(I)V return-void .end method