Weather/smali/com/moji/ArcProcess.smali
2021-05-10 10:13:34 +02:00

534 lines
12 KiB
Smali

.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 <init>(Landroid/content/Context;)V
.locals 0
.line 27
invoke-direct {p0, p1}, Landroid/view/View;-><init>(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 <init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
.locals 0
.line 37
invoke-direct {p0, p1, p2}, Landroid/view/View;-><init>(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 <init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V
.locals 0
.line 32
invoke-direct {p0, p1, p2, p3}, Landroid/view/View;-><init>(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;-><init>()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;-><init>()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;-><init>()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;-><init>()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;-><init>()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;-><init>()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