CirclesDrawable.smali
.class Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;
.super Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/AbstractRefreshDrawable;
# interfaces
.implements Ljava/lang/Runnable;
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable$ProgressStates;
}
.end annotation
# static fields
.field private static final ALPHA_OPAQUE:I = 0xff
.field private static final CIRCLE_COUNT:F
.field private static final MAX_LENGTH:I = 0x4
.field private static final MAX_LEVEL:F = 10000.0f
.field private static final MAX_LEVEL_PER_CIRCLE:F
.field private static mColor1:I
.field private static mColor2:I
.field private static mColor3:I
.field private static mColor4:I
# instance fields
.field private fstColor:I
.field private goesBackward:Z
.field private isRunning:Z
.field private mAbovePaint:Landroid/graphics/Paint;
.field private mAxisValue:I
.field private mBounds:Landroid/graphics/Rect;
.field private mColorFilter:Landroid/graphics/ColorFilter;
.field private mControlPointMaximum:I
.field private mControlPointMinimum:I
.field private mCurrentState:Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable$ProgressStates;
.field private mDiameter:I
.field private mDrawWidth:I
.field private mFstHalfPaint:Landroid/graphics/Paint;
.field private mHalf:I
.field private mHandler:Landroid/os/Handler;
.field private mLevel:I
.field private mOval:Landroid/graphics/RectF;
.field private mPath:Landroid/graphics/Path;
.field private mScndHalfPaint:Landroid/graphics/Paint;
.field private mTop:I
.field private scndColor:I
# direct methods
.method static constructor <clinit>()V
.registers 2
invoke-static {}, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable$ProgressStates;->values()[Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable$ProgressStates;
move-result-object v0
array-length v0, v0
int-to-float v0, v0
sput v0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->CIRCLE_COUNT:F
const v0, 0x461c4000 # 10000.0f
sget v1, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->CIRCLE_COUNT:F
div-float/2addr v0, v1
sput v0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->MAX_LEVEL_PER_CIRCLE:F
return-void
.end method
.method public constructor <init>(Landroid/content/Context;Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/PullRefreshLayout;)V
.registers 4
invoke-direct {p0, p1, p2}, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/AbstractRefreshDrawable;-><init>(Landroid/content/Context;Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/PullRefreshLayout;)V
new-instance v0, Landroid/graphics/RectF;
invoke-direct {v0}, Landroid/graphics/RectF;-><init>()V
iput-object v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mOval:Landroid/graphics/RectF;
new-instance v0, Landroid/os/Handler;
invoke-direct {v0}, Landroid/os/Handler;-><init>()V
iput-object v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mHandler:Landroid/os/Handler;
return-void
.end method
.method private dp2px(I)I
.registers 5
const/4 v0, 0x1
int-to-float v1, p1
invoke-virtual {p0}, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->getContext()Landroid/content/Context;
move-result-object v2
invoke-virtual {v2}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object v2
invoke-virtual {v2}, Landroid/content/res/Resources;->getDisplayMetrics()Landroid/util/DisplayMetrics;
move-result-object v2
invoke-static {v0, v1, v2}, Landroid/util/TypedValue;->applyDimension(IFLandroid/util/DisplayMetrics;)F
move-result v0
float-to-int v0, v0
return v0
.end method
.method private drawXMotion(Landroid/graphics/Canvas;)V
.registers 10
const/4 v4, 0x1
const/4 v7, 0x0
iget-object v1, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mOval:Landroid/graphics/RectF;
const/high16 v2, 0x42b40000 # 90.0f
const/high16 v3, 0x43340000 # 180.0f
iget-object v5, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mFstHalfPaint:Landroid/graphics/Paint;
move-object v0, p1
invoke-virtual/range {v0 .. v5}, Landroid/graphics/Canvas;->drawArc(Landroid/graphics/RectF;FFZLandroid/graphics/Paint;)V
iget-object v1, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mOval:Landroid/graphics/RectF;
const/high16 v2, -0x3c790000 # -270.0f
const/high16 v3, -0x3ccc0000 # -180.0f
iget-object v5, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mScndHalfPaint:Landroid/graphics/Paint;
move-object v0, p1
invoke-virtual/range {v0 .. v5}, Landroid/graphics/Canvas;->drawArc(Landroid/graphics/RectF;FFZLandroid/graphics/Paint;)V
iget-object v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mPath:Landroid/graphics/Path;
invoke-virtual {v0}, Landroid/graphics/Path;->reset()V
iget-object v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mPath:Landroid/graphics/Path;
iget v1, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mHalf:I
int-to-float v1, v1
invoke-virtual {v0, v1, v7}, Landroid/graphics/Path;->moveTo(FF)V
iget-object v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mPath:Landroid/graphics/Path;
iget v1, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mAxisValue:I
int-to-float v1, v1
iget v2, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mAxisValue:I
int-to-float v3, v2
iget v2, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mDiameter:I
int-to-float v4, v2
iget v2, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mHalf:I
int-to-float v5, v2
iget v2, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mDiameter:I
int-to-float v6, v2
move v2, v7
invoke-virtual/range {v0 .. v6}, Landroid/graphics/Path;->cubicTo(FFFFFF)V
return-void
.end method
.method private drawYMotion(Landroid/graphics/Canvas;)V
.registers 13
const/4 v4, 0x1
const/4 v2, 0x0
const/high16 v3, -0x3ccc0000 # -180.0f
iget-object v1, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mOval:Landroid/graphics/RectF;
iget-object v5, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mFstHalfPaint:Landroid/graphics/Paint;
move-object v0, p1
invoke-virtual/range {v0 .. v5}, Landroid/graphics/Canvas;->drawArc(Landroid/graphics/RectF;FFZLandroid/graphics/Paint;)V
iget-object v6, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mOval:Landroid/graphics/RectF;
iget-object v10, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mScndHalfPaint:Landroid/graphics/Paint;
move-object v5, p1
move v7, v3
move v8, v3
move v9, v4
invoke-virtual/range {v5 .. v10}, Landroid/graphics/Canvas;->drawArc(Landroid/graphics/RectF;FFZLandroid/graphics/Paint;)V
iget-object v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mPath:Landroid/graphics/Path;
invoke-virtual {v0}, Landroid/graphics/Path;->reset()V
iget-object v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mPath:Landroid/graphics/Path;
iget v1, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mHalf:I
int-to-float v1, v1
invoke-virtual {v0, v2, v1}, Landroid/graphics/Path;->moveTo(FF)V
iget-object v1, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mPath:Landroid/graphics/Path;
iget v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mAxisValue:I
int-to-float v3, v0
iget v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mDiameter:I
int-to-float v4, v0
iget v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mAxisValue:I
int-to-float v5, v0
iget v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mDiameter:I
int-to-float v6, v0
iget v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mHalf:I
int-to-float v7, v0
invoke-virtual/range {v1 .. v7}, Landroid/graphics/Path;->cubicTo(FFFFFF)V
return-void
.end method
.method private initCirclesProgress([I)V
.registers 4
invoke-direct {p0, p1}, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->initColors([I)V
new-instance v0, Landroid/graphics/Path;
invoke-direct {v0}, Landroid/graphics/Path;-><init>()V
iput-object v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mPath:Landroid/graphics/Path;
new-instance v0, Landroid/graphics/Paint;
invoke-direct {v0}, Landroid/graphics/Paint;-><init>()V
const/4 v1, 0x1
invoke-virtual {v0, v1}, Landroid/graphics/Paint;->setAntiAlias(Z)V
new-instance v1, Landroid/graphics/Paint;
invoke-direct {v1, v0}, Landroid/graphics/Paint;-><init>(Landroid/graphics/Paint;)V
iput-object v1, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mFstHalfPaint:Landroid/graphics/Paint;
new-instance v1, Landroid/graphics/Paint;
invoke-direct {v1, v0}, Landroid/graphics/Paint;-><init>(Landroid/graphics/Paint;)V
iput-object v1, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mScndHalfPaint:Landroid/graphics/Paint;
new-instance v1, Landroid/graphics/Paint;
invoke-direct {v1, v0}, Landroid/graphics/Paint;-><init>(Landroid/graphics/Paint;)V
iput-object v1, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mAbovePaint:Landroid/graphics/Paint;
iget-object v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mColorFilter:Landroid/graphics/ColorFilter;
invoke-virtual {p0, v0}, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->setColorFilter(Landroid/graphics/ColorFilter;)V
return-void
.end method
.method private initColors([I)V
.registers 4
if-eqz p1, :cond_6
array-length v0, p1
const/4 v1, 0x4
if-ge v0, v1, :cond_f
:cond_6
new-instance v0, Ljava/security/InvalidParameterException;
const-string/jumbo v1, "The color scheme length must be 4"
invoke-direct {v0, v1}, Ljava/security/InvalidParameterException;-><init>(Ljava/lang/String;)V
throw v0
:cond_f
const/4 v0, 0x0
aget v0, p1, v0
sput v0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mColor1:I
const/4 v0, 0x1
aget v0, p1, v0
sput v0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mColor2:I
const/4 v0, 0x2
aget v0, p1, v0
sput v0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mColor3:I
const/4 v0, 0x3
aget v0, p1, v0
sput v0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mColor4:I
return-void
.end method
.method private makeCirclesProgress(Landroid/graphics/Canvas;)V
.registers 4
sget-object v0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable$1;->$SwitchMap$com$sdk$orion$ui$baselibrary$widget$pullrefresh$CirclesDrawable$ProgressStates:[I
iget-object v1, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mCurrentState:Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable$ProgressStates;
invoke-virtual {v1}, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable$ProgressStates;->ordinal()I
move-result v1
aget v0, v0, v1
packed-switch v0, :pswitch_data_1e
:goto_d
iget-object v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mPath:Landroid/graphics/Path;
iget-object v1, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mAbovePaint:Landroid/graphics/Paint;
invoke-virtual {p1, v0, v1}, Landroid/graphics/Canvas;->drawPath(Landroid/graphics/Path;Landroid/graphics/Paint;)V
return-void
:pswitch_15
invoke-direct {p0, p1}, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->drawYMotion(Landroid/graphics/Canvas;)V
goto :goto_d
:pswitch_19
invoke-direct {p0, p1}, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->drawXMotion(Landroid/graphics/Canvas;)V
goto :goto_d
nop
:pswitch_data_1e
.packed-switch 0x1
:pswitch_15
:pswitch_19
:pswitch_15
:pswitch_19
.end packed-switch
.end method
.method private measureCircleProgress(II)V
.registers 7
const/4 v3, 0x0
invoke-static {p1, p2}, Ljava/lang/Math;->min(II)I
move-result v0
iput v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mDiameter:I
iget v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mDiameter:I
div-int/lit8 v0, v0, 0x2
iput v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mHalf:I
iget-object v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mOval:Landroid/graphics/RectF;
iget v1, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mDiameter:I
int-to-float v1, v1
iget v2, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mDiameter:I
int-to-float v2, v2
invoke-virtual {v0, v3, v3, v1, v2}, Landroid/graphics/RectF;->set(FFFF)V
iget v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mDiameter:I
neg-int v0, v0
div-int/lit8 v0, v0, 0x6
iput v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mControlPointMinimum:I
iget v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mDiameter:I
iget v1, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mDiameter:I
div-int/lit8 v1, v1, 0x6
add-int/2addr v0, v1
iput v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mControlPointMaximum:I
return-void
.end method
.method private resetColor(Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable$ProgressStates;)V
.registers 6
const/4 v3, 0x1
const/4 v2, 0x0
sget-object v0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable$1;->$SwitchMap$com$sdk$orion$ui$baselibrary$widget$pullrefresh$CirclesDrawable$ProgressStates:[I
invoke-virtual {p1}, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable$ProgressStates;->ordinal()I
move-result v1
aget v0, v0, v1
packed-switch v0, :pswitch_data_3a
:goto_d
return-void
:pswitch_e
sget v0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mColor1:I
iput v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->fstColor:I
sget v0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mColor2:I
iput v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->scndColor:I
iput-boolean v2, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->goesBackward:Z
goto :goto_d
:pswitch_19
sget v0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mColor1:I
iput v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->fstColor:I
sget v0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mColor3:I
iput v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->scndColor:I
iput-boolean v3, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->goesBackward:Z
goto :goto_d
:pswitch_24
sget v0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mColor3:I
iput v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->fstColor:I
sget v0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mColor4:I
iput v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->scndColor:I
iput-boolean v3, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->goesBackward:Z
goto :goto_d
:pswitch_2f
sget v0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mColor2:I
iput v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->fstColor:I
sget v0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mColor4:I
iput v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->scndColor:I
iput-boolean v2, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->goesBackward:Z
goto :goto_d
:pswitch_data_3a
.packed-switch 0x1
:pswitch_e
:pswitch_19
:pswitch_24
:pswitch_2f
.end packed-switch
.end method
.method private updateLevel(I)V
.registers 9
const/4 v1, 0x1
const/high16 v5, 0x40000000 # 2.0f
const/4 v0, 0x0
int-to-float v2, p1
const v3, 0x461c4000 # 10000.0f
cmpl-float v2, v2, v3
if-nez v2, :cond_d
move p1, v0
:cond_d
int-to-float v2, p1
sget v3, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->MAX_LEVEL_PER_CIRCLE:F
div-float/2addr v2, v3
float-to-int v2, v2
invoke-static {}, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable$ProgressStates;->values()[Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable$ProgressStates;
move-result-object v3
aget-object v2, v3, v2
iput-object v2, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mCurrentState:Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable$ProgressStates;
iget-object v2, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mCurrentState:Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable$ProgressStates;
invoke-direct {p0, v2}, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->resetColor(Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable$ProgressStates;)V
int-to-float v2, p1
sget v3, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->MAX_LEVEL_PER_CIRCLE:F
rem-float/2addr v2, v3
float-to-int v2, v2
iget-boolean v3, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->goesBackward:Z
if-nez v3, :cond_6f
int-to-float v3, p1
sget v4, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->MAX_LEVEL_PER_CIRCLE:F
div-float/2addr v4, v5
rem-float/2addr v3, v4
float-to-int v3, v3
if-eq v2, v3, :cond_31
move v0, v1
:cond_31
move v1, v2
:goto_32
iget-object v2, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mFstHalfPaint:Landroid/graphics/Paint;
iget v3, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->fstColor:I
invoke-virtual {v2, v3}, Landroid/graphics/Paint;->setColor(I)V
iget-object v2, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mScndHalfPaint:Landroid/graphics/Paint;
iget v3, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->scndColor:I
invoke-virtual {v2, v3}, Landroid/graphics/Paint;->setColor(I)V
if-nez v0, :cond_82
iget-object v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mAbovePaint:Landroid/graphics/Paint;
iget-object v2, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mScndHalfPaint:Landroid/graphics/Paint;
invoke-virtual {v2}, Landroid/graphics/Paint;->getColor()I
move-result v2
invoke-virtual {v0, v2}, Landroid/graphics/Paint;->setColor(I)V
:goto_4d
iget-object v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mAbovePaint:Landroid/graphics/Paint;
const/high16 v2, 0x425c0000 # 55.0f
int-to-float v3, v1
sget v4, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->MAX_LEVEL_PER_CIRCLE:F
div-float/2addr v3, v4
mul-float/2addr v2, v3
float-to-int v2, v2
add-int/lit16 v2, v2, 0xc8
invoke-virtual {v0, v2}, Landroid/graphics/Paint;->setAlpha(I)V
iget v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mControlPointMinimum:I
int-to-float v0, v0
iget v2, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mControlPointMaximum:I
iget v3, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mControlPointMinimum:I
sub-int/2addr v2, v3
int-to-float v2, v2
int-to-float v1, v1
sget v3, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->MAX_LEVEL_PER_CIRCLE:F
div-float/2addr v1, v3
mul-float/2addr v1, v2
add-float/2addr v0, v1
float-to-int v0, v0
iput v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mAxisValue:I
return-void
:cond_6f
int-to-float v3, p1
sget v4, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->MAX_LEVEL_PER_CIRCLE:F
div-float/2addr v4, v5
rem-float/2addr v3, v4
float-to-int v3, v3
if-ne v2, v3, :cond_80
:goto_77
sget v0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->MAX_LEVEL_PER_CIRCLE:F
int-to-float v2, v2
sub-float/2addr v0, v2
float-to-int v0, v0
move v6, v1
move v1, v0
move v0, v6
goto :goto_32
:cond_80
move v1, v0
goto :goto_77
:cond_82
iget-object v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mAbovePaint:Landroid/graphics/Paint;
iget-object v2, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mFstHalfPaint:Landroid/graphics/Paint;
invoke-virtual {v2}, Landroid/graphics/Paint;->getColor()I
move-result v2
invoke-virtual {v0, v2}, Landroid/graphics/Paint;->setColor(I)V
goto :goto_4d
.end method
# virtual methods
.method public draw(Landroid/graphics/Canvas;)V
.registers 4
iget-object v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mCurrentState:Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable$ProgressStates;
if-eqz v0, :cond_21
invoke-virtual {p1}, Landroid/graphics/Canvas;->save()I
iget-object v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mBounds:Landroid/graphics/Rect;
invoke-virtual {v0}, Landroid/graphics/Rect;->width()I
move-result v0
div-int/lit8 v0, v0, 0x2
iget v1, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mDrawWidth:I
div-int/lit8 v1, v1, 0x2
sub-int/2addr v0, v1
int-to-float v0, v0
iget v1, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mTop:I
int-to-float v1, v1
invoke-virtual {p1, v0, v1}, Landroid/graphics/Canvas;->translate(FF)V
invoke-direct {p0, p1}, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->makeCirclesProgress(Landroid/graphics/Canvas;)V
invoke-virtual {p1}, Landroid/graphics/Canvas;->restore()V
:cond_21
return-void
.end method
.method public isRunning()Z
.registers 2
iget-boolean v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->isRunning:Z
return v0
.end method
.method public offsetTopAndBottom(I)V
.registers 3
iget v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mTop:I
add-int/2addr v0, p1
iput v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mTop:I
invoke-virtual {p0}, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->invalidateSelf()V
return-void
.end method
.method protected onBoundsChange(Landroid/graphics/Rect;)V
.registers 5
invoke-super {p0, p1}, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/AbstractRefreshDrawable;->onBoundsChange(Landroid/graphics/Rect;)V
const/16 v0, 0x28
invoke-direct {p0, v0}, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->dp2px(I)I
move-result v0
iput v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mDrawWidth:I
iget v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mDrawWidth:I
neg-int v1, v0
invoke-virtual {p0}, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->getRefreshLayout()Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/PullRefreshLayout;
move-result-object v2
invoke-virtual {v2}, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/PullRefreshLayout;->getFinalOffset()I
move-result v2
sub-int/2addr v2, v0
div-int/lit8 v2, v2, 0x2
sub-int/2addr v1, v2
iput v1, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mTop:I
iput-object p1, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mBounds:Landroid/graphics/Rect;
iget v1, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mDrawWidth:I
invoke-direct {p0, v1, v0}, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->measureCircleProgress(II)V
return-void
.end method
.method public run()V
.registers 5
iget v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mLevel:I
add-int/lit8 v0, v0, 0x50
iput v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mLevel:I
iget v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mLevel:I
int-to-float v0, v0
const v1, 0x461c4000 # 10000.0f
cmpl-float v0, v0, v1
if-lez v0, :cond_13
const/4 v0, 0x0
iput v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mLevel:I
:cond_13
iget-boolean v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->isRunning:Z
if-eqz v0, :cond_26
iget-object v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mHandler:Landroid/os/Handler;
const-wide/16 v2, 0x14
invoke-virtual {v0, p0, v2, v3}, Landroid/os/Handler;->postDelayed(Ljava/lang/Runnable;J)Z
iget v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mLevel:I
invoke-direct {p0, v0}, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->updateLevel(I)V
invoke-virtual {p0}, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->invalidateSelf()V
:cond_26
return-void
.end method
.method public setColorFilter(Landroid/graphics/ColorFilter;)V
.registers 3
iput-object p1, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mColorFilter:Landroid/graphics/ColorFilter;
iget-object v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mFstHalfPaint:Landroid/graphics/Paint;
invoke-virtual {v0, p1}, Landroid/graphics/Paint;->setColorFilter(Landroid/graphics/ColorFilter;)Landroid/graphics/ColorFilter;
iget-object v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mScndHalfPaint:Landroid/graphics/Paint;
invoke-virtual {v0, p1}, Landroid/graphics/Paint;->setColorFilter(Landroid/graphics/ColorFilter;)Landroid/graphics/ColorFilter;
iget-object v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mAbovePaint:Landroid/graphics/Paint;
invoke-virtual {v0, p1}, Landroid/graphics/Paint;->setColorFilter(Landroid/graphics/ColorFilter;)Landroid/graphics/ColorFilter;
return-void
.end method
.method public setColorSchemeColors([I)V
.registers 2
invoke-direct {p0, p1}, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->initCirclesProgress([I)V
return-void
.end method
.method public setPercent(F)V
.registers 3
const v0, 0x451c4000 # 2500.0f
mul-float/2addr v0, p1
float-to-int v0, v0
invoke-direct {p0, v0}, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->updateLevel(I)V
return-void
.end method
.method public start()V
.registers 5
const/16 v0, 0x9c4
iput v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mLevel:I
const/4 v0, 0x1
iput-boolean v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->isRunning:Z
iget-object v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mHandler:Landroid/os/Handler;
const-wide/16 v2, 0xa
invoke-virtual {v0, p0, v2, v3}, Landroid/os/Handler;->postDelayed(Ljava/lang/Runnable;J)Z
return-void
.end method
.method public stop()V
.registers 2
const/4 v0, 0x0
iput-boolean v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->isRunning:Z
iget-object v0, p0, Lcom/sdk/orion/ui/baselibrary/widget/pullrefresh/CirclesDrawable;->mHandler:Landroid/os/Handler;
invoke-virtual {v0, p0}, Landroid/os/Handler;->removeCallbacks(Ljava/lang/Runnable;)V
return-void
.end method