CircleImageView$OvalShadow.smali 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176
  1. .class Landroid/support/v4/widget/CircleImageView$OvalShadow;
  2. .super Landroid/graphics/drawable/shapes/OvalShape;
  3. .source "CircleImageView.java"
  4. # annotations
  5. .annotation system Ldalvik/annotation/EnclosingClass;
  6. value = Landroid/support/v4/widget/CircleImageView;
  7. .end annotation
  8. .annotation system Ldalvik/annotation/InnerClass;
  9. accessFlags = 0x2
  10. name = "OvalShadow"
  11. .end annotation
  12. # instance fields
  13. .field private mCircleDiameter:I
  14. .field private mRadialGradient:Landroid/graphics/RadialGradient;
  15. .field private mShadowPaint:Landroid/graphics/Paint;
  16. .field final synthetic this$0:Landroid/support/v4/widget/CircleImageView;
  17. # direct methods
  18. .method public constructor <init>(Landroid/support/v4/widget/CircleImageView;II)V
  19. .locals 7
  20. .param p2, "shadowRadius" # I
  21. .param p3, "circleDiameter" # I
  22. .prologue
  23. .line 132
  24. iput-object p1, p0, Landroid/support/v4/widget/CircleImageView$OvalShadow;->this$0:Landroid/support/v4/widget/CircleImageView;
  25. .line 133
  26. invoke-direct {p0}, Landroid/graphics/drawable/shapes/OvalShape;-><init>()V
  27. .line 134
  28. new-instance v0, Landroid/graphics/Paint;
  29. invoke-direct {v0}, Landroid/graphics/Paint;-><init>()V
  30. iput-object v0, p0, Landroid/support/v4/widget/CircleImageView$OvalShadow;->mShadowPaint:Landroid/graphics/Paint;
  31. .line 135
  32. invoke-static {p1, p2}, Landroid/support/v4/widget/CircleImageView;->access$002(Landroid/support/v4/widget/CircleImageView;I)I
  33. .line 136
  34. iput p3, p0, Landroid/support/v4/widget/CircleImageView$OvalShadow;->mCircleDiameter:I
  35. .line 137
  36. new-instance v0, Landroid/graphics/RadialGradient;
  37. iget v1, p0, Landroid/support/v4/widget/CircleImageView$OvalShadow;->mCircleDiameter:I
  38. div-int/lit8 v1, v1, 0x2
  39. int-to-float v1, v1
  40. iget v2, p0, Landroid/support/v4/widget/CircleImageView$OvalShadow;->mCircleDiameter:I
  41. div-int/lit8 v2, v2, 0x2
  42. int-to-float v2, v2
  43. invoke-static {p1}, Landroid/support/v4/widget/CircleImageView;->access$000(Landroid/support/v4/widget/CircleImageView;)I
  44. move-result v3
  45. int-to-float v3, v3
  46. const/4 v4, 0x2
  47. new-array v4, v4, [I
  48. fill-array-data v4, :array_0
  49. const/4 v5, 0x0
  50. sget-object v6, Landroid/graphics/Shader$TileMode;->CLAMP:Landroid/graphics/Shader$TileMode;
  51. invoke-direct/range {v0 .. v6}, Landroid/graphics/RadialGradient;-><init>(FFF[I[FLandroid/graphics/Shader$TileMode;)V
  52. iput-object v0, p0, Landroid/support/v4/widget/CircleImageView$OvalShadow;->mRadialGradient:Landroid/graphics/RadialGradient;
  53. .line 141
  54. iget-object v0, p0, Landroid/support/v4/widget/CircleImageView$OvalShadow;->mShadowPaint:Landroid/graphics/Paint;
  55. iget-object v1, p0, Landroid/support/v4/widget/CircleImageView$OvalShadow;->mRadialGradient:Landroid/graphics/RadialGradient;
  56. invoke-virtual {v0, v1}, Landroid/graphics/Paint;->setShader(Landroid/graphics/Shader;)Landroid/graphics/Shader;
  57. .line 142
  58. return-void
  59. .line 137
  60. :array_0
  61. .array-data 4
  62. 0x3d000000 # 0.03125f
  63. 0x0
  64. .end array-data
  65. .end method
  66. # virtual methods
  67. .method public draw(Landroid/graphics/Canvas;Landroid/graphics/Paint;)V
  68. .locals 6
  69. .param p1, "canvas" # Landroid/graphics/Canvas;
  70. .param p2, "paint" # Landroid/graphics/Paint;
  71. .prologue
  72. .line 146
  73. iget-object v2, p0, Landroid/support/v4/widget/CircleImageView$OvalShadow;->this$0:Landroid/support/v4/widget/CircleImageView;
  74. invoke-virtual {v2}, Landroid/support/v4/widget/CircleImageView;->getWidth()I
  75. move-result v1
  76. .line 147
  77. .local v1, "viewWidth":I
  78. iget-object v2, p0, Landroid/support/v4/widget/CircleImageView$OvalShadow;->this$0:Landroid/support/v4/widget/CircleImageView;
  79. invoke-virtual {v2}, Landroid/support/v4/widget/CircleImageView;->getHeight()I
  80. move-result v0
  81. .line 148
  82. .local v0, "viewHeight":I
  83. div-int/lit8 v2, v1, 0x2
  84. int-to-float v2, v2
  85. div-int/lit8 v3, v0, 0x2
  86. int-to-float v3, v3
  87. iget v4, p0, Landroid/support/v4/widget/CircleImageView$OvalShadow;->mCircleDiameter:I
  88. div-int/lit8 v4, v4, 0x2
  89. iget-object v5, p0, Landroid/support/v4/widget/CircleImageView$OvalShadow;->this$0:Landroid/support/v4/widget/CircleImageView;
  90. invoke-static {v5}, Landroid/support/v4/widget/CircleImageView;->access$000(Landroid/support/v4/widget/CircleImageView;)I
  91. move-result v5
  92. add-int/2addr v4, v5
  93. int-to-float v4, v4
  94. iget-object v5, p0, Landroid/support/v4/widget/CircleImageView$OvalShadow;->mShadowPaint:Landroid/graphics/Paint;
  95. invoke-virtual {p1, v2, v3, v4, v5}, Landroid/graphics/Canvas;->drawCircle(FFFLandroid/graphics/Paint;)V
  96. .line 150
  97. div-int/lit8 v2, v1, 0x2
  98. int-to-float v2, v2
  99. div-int/lit8 v3, v0, 0x2
  100. int-to-float v3, v3
  101. iget v4, p0, Landroid/support/v4/widget/CircleImageView$OvalShadow;->mCircleDiameter:I
  102. div-int/lit8 v4, v4, 0x2
  103. int-to-float v4, v4
  104. invoke-virtual {p1, v2, v3, v4, p2}, Landroid/graphics/Canvas;->drawCircle(FFFLandroid/graphics/Paint;)V
  105. .line 151
  106. return-void
  107. .end method