final class android.widget.SmartSelectSprite$RoundedRectangleShape extends android.graphics.drawable.shapes.Shape
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: android.widget.SmartSelectSprite$RoundedRectangleShape
super_class: android.graphics.drawable.shapes.Shape
{
private static final java.lang.String PROPERTY_ROUND_RATIO;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "roundRatio"
private final android.graphics.RectF mBoundingRectangle;
descriptor: Landroid/graphics/RectF;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private float mRoundRatio;
descriptor: F
flags: (0x0002) ACC_PRIVATE
private final int mExpansionDirection;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final android.graphics.RectF mDrawRect;
descriptor: Landroid/graphics/RectF;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final android.graphics.Path mClipPath;
descriptor: Landroid/graphics/Path;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private float mLeftBoundary;
descriptor: F
flags: (0x0002) ACC_PRIVATE
private float mRightBoundary;
descriptor: F
flags: (0x0002) ACC_PRIVATE
private final boolean mInverted;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final float mBoundingWidth;
descriptor: F
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private static int invert(int);
descriptor: (I)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: iload 0
iconst_m1
imul
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 expansionDirection I
MethodParameters:
Name Flags
expansionDirection
private void <init>(android.graphics.RectF, int, boolean);
descriptor: (Landroid/graphics/RectF;IZ)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokespecial android.graphics.drawable.shapes.Shape.<init>:()V
1: aload 0
fconst_1
putfield android.widget.SmartSelectSprite$RoundedRectangleShape.mRoundRatio:F
2: aload 0
new android.graphics.RectF
dup
invokespecial android.graphics.RectF.<init>:()V
putfield android.widget.SmartSelectSprite$RoundedRectangleShape.mDrawRect:Landroid/graphics/RectF;
3: aload 0
new android.graphics.Path
dup
invokespecial android.graphics.Path.<init>:()V
putfield android.widget.SmartSelectSprite$RoundedRectangleShape.mClipPath:Landroid/graphics/Path;
4: aload 0
fconst_0
putfield android.widget.SmartSelectSprite$RoundedRectangleShape.mLeftBoundary:F
5: aload 0
fconst_0
putfield android.widget.SmartSelectSprite$RoundedRectangleShape.mRightBoundary:F
6: aload 0
new android.graphics.RectF
dup
aload 1
invokespecial android.graphics.RectF.<init>:(Landroid/graphics/RectF;)V
putfield android.widget.SmartSelectSprite$RoundedRectangleShape.mBoundingRectangle:Landroid/graphics/RectF;
7: aload 0
aload 1
invokevirtual android.graphics.RectF.width:()F
putfield android.widget.SmartSelectSprite$RoundedRectangleShape.mBoundingWidth:F
8: aload 0
iload 3
ifeq 9
iload 2
ifeq 9
iconst_1
goto 10
StackMap locals: android.widget.SmartSelectSprite$RoundedRectangleShape android.graphics.RectF int int
StackMap stack: android.widget.SmartSelectSprite$RoundedRectangleShape
9: iconst_0
StackMap locals: android.widget.SmartSelectSprite$RoundedRectangleShape android.graphics.RectF int int
StackMap stack: android.widget.SmartSelectSprite$RoundedRectangleShape int
10: putfield android.widget.SmartSelectSprite$RoundedRectangleShape.mInverted:Z
11: iload 3
ifeq 14
12: aload 0
iload 2
invokestatic android.widget.SmartSelectSprite$RoundedRectangleShape.invert:(I)I
putfield android.widget.SmartSelectSprite$RoundedRectangleShape.mExpansionDirection:I
13: goto 15
14: StackMap locals:
StackMap stack:
aload 0
iload 2
putfield android.widget.SmartSelectSprite$RoundedRectangleShape.mExpansionDirection:I
15: StackMap locals:
StackMap stack:
aload 1
invokevirtual android.graphics.RectF.height:()F
aload 1
invokevirtual android.graphics.RectF.width:()F
fcmpl
ifle 18
16: aload 0
fconst_0
invokevirtual android.widget.SmartSelectSprite$RoundedRectangleShape.setRoundRatio:(F)V
17: goto 19
18: StackMap locals:
StackMap stack:
aload 0
fconst_1
invokevirtual android.widget.SmartSelectSprite$RoundedRectangleShape.setRoundRatio:(F)V
19: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Landroid/widget/SmartSelectSprite$RoundedRectangleShape;
0 20 1 boundingRectangle Landroid/graphics/RectF;
0 20 2 expansionDirection I
0 20 3 inverted Z
MethodParameters:
Name Flags
boundingRectangle final
expansionDirection final
inverted final
public void draw(android.graphics.Canvas, android.graphics.Paint);
descriptor: (Landroid/graphics/Canvas;Landroid/graphics/Paint;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield android.widget.SmartSelectSprite$RoundedRectangleShape.mLeftBoundary:F
aload 0
getfield android.widget.SmartSelectSprite$RoundedRectangleShape.mRightBoundary:F
fcmpl
ifne 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual android.widget.SmartSelectSprite$RoundedRectangleShape.getCornerRadius:()F
fstore 3
start local 3 3: aload 0
invokevirtual android.widget.SmartSelectSprite$RoundedRectangleShape.getAdjustedCornerRadius:()F
fstore 4
start local 4 4: aload 0
getfield android.widget.SmartSelectSprite$RoundedRectangleShape.mDrawRect:Landroid/graphics/RectF;
aload 0
getfield android.widget.SmartSelectSprite$RoundedRectangleShape.mBoundingRectangle:Landroid/graphics/RectF;
invokevirtual android.graphics.RectF.set:(Landroid/graphics/RectF;)V
5: aload 0
getfield android.widget.SmartSelectSprite$RoundedRectangleShape.mDrawRect:Landroid/graphics/RectF;
aload 0
getfield android.widget.SmartSelectSprite$RoundedRectangleShape.mBoundingRectangle:Landroid/graphics/RectF;
getfield android.graphics.RectF.left:F
aload 0
getfield android.widget.SmartSelectSprite$RoundedRectangleShape.mLeftBoundary:F
fadd
fload 3
fconst_2
fdiv
fsub
putfield android.graphics.RectF.left:F
6: aload 0
getfield android.widget.SmartSelectSprite$RoundedRectangleShape.mDrawRect:Landroid/graphics/RectF;
aload 0
getfield android.widget.SmartSelectSprite$RoundedRectangleShape.mBoundingRectangle:Landroid/graphics/RectF;
getfield android.graphics.RectF.left:F
aload 0
getfield android.widget.SmartSelectSprite$RoundedRectangleShape.mRightBoundary:F
fadd
fload 3
fconst_2
fdiv
fadd
putfield android.graphics.RectF.right:F
7: aload 1
invokevirtual android.graphics.Canvas.save:()I
pop
8: aload 0
getfield android.widget.SmartSelectSprite$RoundedRectangleShape.mClipPath:Landroid/graphics/Path;
invokevirtual android.graphics.Path.reset:()V
9: aload 0
getfield android.widget.SmartSelectSprite$RoundedRectangleShape.mClipPath:Landroid/graphics/Path;
10: aload 0
getfield android.widget.SmartSelectSprite$RoundedRectangleShape.mDrawRect:Landroid/graphics/RectF;
11: fload 4
12: fload 4
13: getstatic android.graphics.Path$Direction.CW:Landroid/graphics/Path$Direction;
14: invokevirtual android.graphics.Path.addRoundRect:(Landroid/graphics/RectF;FFLandroid/graphics/Path$Direction;)V
15: aload 1
aload 0
getfield android.widget.SmartSelectSprite$RoundedRectangleShape.mClipPath:Landroid/graphics/Path;
invokevirtual android.graphics.Canvas.clipPath:(Landroid/graphics/Path;)Z
pop
16: aload 1
aload 0
getfield android.widget.SmartSelectSprite$RoundedRectangleShape.mBoundingRectangle:Landroid/graphics/RectF;
aload 2
invokevirtual android.graphics.Canvas.drawRect:(Landroid/graphics/RectF;Landroid/graphics/Paint;)V
17: aload 1
invokevirtual android.graphics.Canvas.restore:()V
18: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Landroid/widget/SmartSelectSprite$RoundedRectangleShape;
0 19 1 canvas Landroid/graphics/Canvas;
0 19 2 paint Landroid/graphics/Paint;
3 19 3 cornerRadius F
4 19 4 adjustedCornerRadius F
MethodParameters:
Name Flags
canvas
paint
void setRoundRatio(float);
descriptor: (F)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
fload 1
putfield android.widget.SmartSelectSprite$RoundedRectangleShape.mRoundRatio:F
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Landroid/widget/SmartSelectSprite$RoundedRectangleShape;
0 2 1 roundRatio F
MethodParameters:
Name Flags
roundRatio final
float getRoundRatio();
descriptor: ()F
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield android.widget.SmartSelectSprite$RoundedRectangleShape.mRoundRatio:F
freturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/widget/SmartSelectSprite$RoundedRectangleShape;
private void setStartBoundary(float);
descriptor: (F)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield android.widget.SmartSelectSprite$RoundedRectangleShape.mInverted:Z
ifeq 3
1: aload 0
aload 0
getfield android.widget.SmartSelectSprite$RoundedRectangleShape.mBoundingWidth:F
fload 1
fsub
putfield android.widget.SmartSelectSprite$RoundedRectangleShape.mRightBoundary:F
2: goto 4
3: StackMap locals:
StackMap stack:
aload 0
fload 1
putfield android.widget.SmartSelectSprite$RoundedRectangleShape.mLeftBoundary:F
4: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Landroid/widget/SmartSelectSprite$RoundedRectangleShape;
0 5 1 startBoundary F
MethodParameters:
Name Flags
startBoundary final
private void setEndBoundary(float);
descriptor: (F)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield android.widget.SmartSelectSprite$RoundedRectangleShape.mInverted:Z
ifeq 3
1: aload 0
aload 0
getfield android.widget.SmartSelectSprite$RoundedRectangleShape.mBoundingWidth:F
fload 1
fsub
putfield android.widget.SmartSelectSprite$RoundedRectangleShape.mLeftBoundary:F
2: goto 4
3: StackMap locals:
StackMap stack:
aload 0
fload 1
putfield android.widget.SmartSelectSprite$RoundedRectangleShape.mRightBoundary:F
4: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Landroid/widget/SmartSelectSprite$RoundedRectangleShape;
0 5 1 endBoundary F
MethodParameters:
Name Flags
endBoundary final
private float getCornerRadius();
descriptor: ()F
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield android.widget.SmartSelectSprite$RoundedRectangleShape.mBoundingRectangle:Landroid/graphics/RectF;
invokevirtual android.graphics.RectF.width:()F
aload 0
getfield android.widget.SmartSelectSprite$RoundedRectangleShape.mBoundingRectangle:Landroid/graphics/RectF;
invokevirtual android.graphics.RectF.height:()F
invokestatic java.lang.Math.min:(FF)F
freturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/widget/SmartSelectSprite$RoundedRectangleShape;
private float getAdjustedCornerRadius();
descriptor: ()F
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual android.widget.SmartSelectSprite$RoundedRectangleShape.getCornerRadius:()F
aload 0
getfield android.widget.SmartSelectSprite$RoundedRectangleShape.mRoundRatio:F
fmul
freturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/widget/SmartSelectSprite$RoundedRectangleShape;
private float getBoundingWidth();
descriptor: ()F
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield android.widget.SmartSelectSprite$RoundedRectangleShape.mBoundingRectangle:Landroid/graphics/RectF;
invokevirtual android.graphics.RectF.width:()F
aload 0
invokevirtual android.widget.SmartSelectSprite$RoundedRectangleShape.getCornerRadius:()F
fadd
f2i
i2f
freturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/widget/SmartSelectSprite$RoundedRectangleShape;
}
SourceFile: "SmartSelectSprite.java"
NestHost: android.widget.SmartSelectSprite
InnerClasses:
public final Direction = android.graphics.Path$Direction of android.graphics.Path
private final RoundedRectangleShape = android.widget.SmartSelectSprite$RoundedRectangleShape of android.widget.SmartSelectSprite
private abstract ExpansionDirection = android.widget.SmartSelectSprite$RoundedRectangleShape$ExpansionDirection of android.widget.SmartSelectSprite$RoundedRectangleShape