IndicatorStayLayout.smali

.class public Lcom/warkiz/widget/IndicatorStayLayout;
.super Landroid/widget/LinearLayout;
.source "IndicatorStayLayout.java"


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

    const/4 v0, 0x0

    .line 1
    invoke-direct {p0, p1, v0}, Lcom/warkiz/widget/IndicatorStayLayout;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V

    return-void
.end method

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

    const/4 v0, 0x0

    .line 2
    invoke-direct {p0, p1, p2, v0}, Lcom/warkiz/widget/IndicatorStayLayout;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V

    return-void
.end method

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

    .line 3
    invoke-direct {p0, p1, p2, p3}, Landroid/widget/LinearLayout;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V

    const/4 p1, 0x1

    .line 4
    invoke-virtual {p0, p1}, Lcom/warkiz/widget/IndicatorStayLayout;->setOrientation(I)V

    return-void
.end method

.method private layoutIndicator(Landroid/view/View;I)V
    .registers 10

    .line 1
    instance-of v0, p1, Lcom/warkiz/widget/IndicatorSeekBar;

    if-eqz v0, :cond_4e

    .line 2
    check-cast p1, Lcom/warkiz/widget/IndicatorSeekBar;

    const/4 v0, 0x1

    .line 3
    invoke-virtual {p1, v0}, Lcom/warkiz/widget/IndicatorSeekBar;->setIndicatorStayAlways(Z)V

    .line 4
    invoke-virtual {p1}, Lcom/warkiz/widget/IndicatorSeekBar;->getIndicatorContentView()Landroid/view/View;

    move-result-object v0

    if-eqz v0, :cond_46

    .line 5
    instance-of v1, v0, Lcom/warkiz/widget/IndicatorSeekBar;

    if-nez v1, :cond_3e

    .line 6
    new-instance v1, Landroid/view/ViewGroup$LayoutParams;

    const/4 v2, -0x2

    invoke-direct {v1, v2, v2}, Landroid/view/ViewGroup$LayoutParams;-><init>(II)V

    .line 7
    new-instance v2, Landroid/view/ViewGroup$MarginLayoutParams;

    invoke-direct {v2, v1}, Landroid/view/ViewGroup$MarginLayoutParams;-><init>(Landroid/view/ViewGroup$LayoutParams;)V

    .line 8
    iget v1, v2, Landroid/view/ViewGroup$MarginLayoutParams;->leftMargin:I

    iget v3, v2, Landroid/view/ViewGroup$MarginLayoutParams;->topMargin:I

    iget v4, v2, Landroid/view/ViewGroup$MarginLayoutParams;->rightMargin:I

    .line 9
    invoke-virtual {p1}, Landroid/view/View;->getContext()Landroid/content/Context;

    move-result-object v5

    const/high16 v6, 0x40000000    # 2.0f

    invoke-static {v5, v6}, Lcom/warkiz/widget/j;->a(Landroid/content/Context;F)I

    move-result v5

    invoke-virtual {p1}, Landroid/view/View;->getPaddingTop()I

    move-result v6

    sub-int/2addr v5, v6

    .line 10
    invoke-virtual {v2, v1, v3, v4, v5}, Landroid/view/ViewGroup$MarginLayoutParams;->setMargins(IIII)V

    .line 11
    invoke-virtual {p0, v0, p2, v2}, Landroid/widget/LinearLayout;->addView(Landroid/view/View;ILandroid/view/ViewGroup$LayoutParams;)V

    .line 12
    invoke-virtual {p1}, Lcom/warkiz/widget/IndicatorSeekBar;->showStayIndicator()V

    goto :goto_4e

    .line 13
    :cond_3e
    new-instance p1, Ljava/lang/IllegalStateException;

    const-string p2, "IndicatorSeekBar can not be a contentView for Indicator in case this inflating loop."

    invoke-direct {p1, p2}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 14
    :cond_46
    new-instance p1, Ljava/lang/IllegalStateException;

    const-string p2, "Can not find any indicator in the IndicatorSeekBar, please make sure you have called the attr: SHOW_INDICATOR_TYPE for IndicatorSeekBar and the value is not IndicatorType.NONE."

    invoke-direct {p1, p2}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V

    throw p1

    :cond_4e
    :goto_4e
    return-void
.end method


# virtual methods
.method public attachTo(Lcom/warkiz/widget/IndicatorSeekBar;)V
    .registers 3

    const/4 v0, -0x2

    .line 1
    invoke-virtual {p0, p1, v0}, Lcom/warkiz/widget/IndicatorStayLayout;->attachTo(Lcom/warkiz/widget/IndicatorSeekBar;I)V

    return-void
.end method

.method public attachTo(Lcom/warkiz/widget/IndicatorSeekBar;I)V
    .registers 3

    if-eqz p1, :cond_b

    .line 2
    invoke-direct {p0, p1, p2}, Lcom/warkiz/widget/IndicatorStayLayout;->layoutIndicator(Landroid/view/View;I)V

    add-int/lit8 p2, p2, 0x1

    .line 3
    invoke-virtual {p0, p1, p2}, Landroid/widget/LinearLayout;->addView(Landroid/view/View;I)V

    return-void

    .line 4
    :cond_b
    new-instance p1, Ljava/lang/NullPointerException;

    const-string p2, "the seek bar wanna attach to IndicatorStayLayout can not be null value."

    invoke-direct {p1, p2}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method protected onFinishInflate()V
    .registers 3

    .line 1
    invoke-virtual {p0}, Landroid/widget/LinearLayout;->getChildCount()I

    move-result v0

    add-int/lit8 v0, v0, -0x1

    :goto_6
    if-ltz v0, :cond_12

    .line 2
    invoke-virtual {p0, v0}, Landroid/widget/LinearLayout;->getChildAt(I)Landroid/view/View;

    move-result-object v1

    invoke-direct {p0, v1, v0}, Lcom/warkiz/widget/IndicatorStayLayout;->layoutIndicator(Landroid/view/View;I)V

    add-int/lit8 v0, v0, -0x1

    goto :goto_6

    .line 3
    :cond_12
    invoke-super {p0}, Landroid/widget/LinearLayout;->onFinishInflate()V

    return-void
.end method

.method public setOrientation(I)V
    .registers 3

    const/4 v0, 0x1

    if-ne p1, v0, :cond_7

    .line 1
    invoke-super {p0, p1}, Landroid/widget/LinearLayout;->setOrientation(I)V

    return-void

    .line 2
    :cond_7
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string v0, "IndicatorStayLayout is always vertical and does not support horizontal orientation"

    invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1
.end method