Rabbit-R1/original r1/java/sources/androidx/constraintlayout/utils/widget/MockView.java

141 lines
6 KiB
Java
Raw Normal View History

2024-05-21 16:08:36 -05:00
package androidx.constraintlayout.utils.widget;
import android.content.Context;
import android.content.res.TypedArray;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.Rect;
import android.util.AttributeSet;
import android.view.View;
import androidx.constraintlayout.widget.R;
/* loaded from: classes.dex */
public class MockView extends View {
private int mDiagonalsColor;
private boolean mDrawDiagonals;
private boolean mDrawLabel;
private int mMargin;
private Paint mPaintDiagonals;
private Paint mPaintText;
private Paint mPaintTextBackground;
protected String mText;
private int mTextBackgroundColor;
private Rect mTextBounds;
private int mTextColor;
public MockView(Context context) {
super(context);
this.mPaintDiagonals = new Paint();
this.mPaintText = new Paint();
this.mPaintTextBackground = new Paint();
this.mDrawDiagonals = true;
this.mDrawLabel = true;
this.mText = null;
this.mTextBounds = new Rect();
this.mDiagonalsColor = Color.argb(255, 0, 0, 0);
this.mTextColor = Color.argb(255, 200, 200, 200);
this.mTextBackgroundColor = Color.argb(255, 50, 50, 50);
this.mMargin = 4;
init(context, null);
}
public MockView(Context context, AttributeSet attributeSet) {
super(context, attributeSet);
this.mPaintDiagonals = new Paint();
this.mPaintText = new Paint();
this.mPaintTextBackground = new Paint();
this.mDrawDiagonals = true;
this.mDrawLabel = true;
this.mText = null;
this.mTextBounds = new Rect();
this.mDiagonalsColor = Color.argb(255, 0, 0, 0);
this.mTextColor = Color.argb(255, 200, 200, 200);
this.mTextBackgroundColor = Color.argb(255, 50, 50, 50);
this.mMargin = 4;
init(context, attributeSet);
}
public MockView(Context context, AttributeSet attributeSet, int i) {
super(context, attributeSet, i);
this.mPaintDiagonals = new Paint();
this.mPaintText = new Paint();
this.mPaintTextBackground = new Paint();
this.mDrawDiagonals = true;
this.mDrawLabel = true;
this.mText = null;
this.mTextBounds = new Rect();
this.mDiagonalsColor = Color.argb(255, 0, 0, 0);
this.mTextColor = Color.argb(255, 200, 200, 200);
this.mTextBackgroundColor = Color.argb(255, 50, 50, 50);
this.mMargin = 4;
init(context, attributeSet);
}
private void init(Context context, AttributeSet attributeSet) {
if (attributeSet != null) {
TypedArray obtainStyledAttributes = context.obtainStyledAttributes(attributeSet, R.styleable.MockView);
int indexCount = obtainStyledAttributes.getIndexCount();
for (int i = 0; i < indexCount; i++) {
int index = obtainStyledAttributes.getIndex(i);
if (index == R.styleable.MockView_mock_label) {
this.mText = obtainStyledAttributes.getString(index);
} else if (index == R.styleable.MockView_mock_showDiagonals) {
this.mDrawDiagonals = obtainStyledAttributes.getBoolean(index, this.mDrawDiagonals);
} else if (index == R.styleable.MockView_mock_diagonalsColor) {
this.mDiagonalsColor = obtainStyledAttributes.getColor(index, this.mDiagonalsColor);
} else if (index == R.styleable.MockView_mock_labelBackgroundColor) {
this.mTextBackgroundColor = obtainStyledAttributes.getColor(index, this.mTextBackgroundColor);
} else if (index == R.styleable.MockView_mock_labelColor) {
this.mTextColor = obtainStyledAttributes.getColor(index, this.mTextColor);
} else if (index == R.styleable.MockView_mock_showLabel) {
this.mDrawLabel = obtainStyledAttributes.getBoolean(index, this.mDrawLabel);
}
}
}
if (this.mText == null) {
try {
this.mText = context.getResources().getResourceEntryName(getId());
} catch (Exception unused) {
}
}
this.mPaintDiagonals.setColor(this.mDiagonalsColor);
this.mPaintDiagonals.setAntiAlias(true);
this.mPaintText.setColor(this.mTextColor);
this.mPaintText.setAntiAlias(true);
this.mPaintTextBackground.setColor(this.mTextBackgroundColor);
this.mMargin = Math.round(this.mMargin * (getResources().getDisplayMetrics().xdpi / 160.0f));
}
@Override // android.view.View
public void onDraw(Canvas canvas) {
super.onDraw(canvas);
int width = getWidth();
int height = getHeight();
if (this.mDrawDiagonals) {
width--;
height--;
float f = width;
float f2 = height;
canvas.drawLine(0.0f, 0.0f, f, f2, this.mPaintDiagonals);
canvas.drawLine(0.0f, f2, f, 0.0f, this.mPaintDiagonals);
canvas.drawLine(0.0f, 0.0f, f, 0.0f, this.mPaintDiagonals);
canvas.drawLine(f, 0.0f, f, f2, this.mPaintDiagonals);
canvas.drawLine(f, f2, 0.0f, f2, this.mPaintDiagonals);
canvas.drawLine(0.0f, f2, 0.0f, 0.0f, this.mPaintDiagonals);
}
String str = this.mText;
if (str == null || !this.mDrawLabel) {
return;
}
this.mPaintText.getTextBounds(str, 0, str.length(), this.mTextBounds);
float width2 = (width - this.mTextBounds.width()) / 2.0f;
float height2 = ((height - this.mTextBounds.height()) / 2.0f) + this.mTextBounds.height();
this.mTextBounds.offset((int) width2, (int) height2);
Rect rect = this.mTextBounds;
rect.set(rect.left - this.mMargin, this.mTextBounds.top - this.mMargin, this.mTextBounds.right + this.mMargin, this.mTextBounds.bottom + this.mMargin);
canvas.drawRect(this.mTextBounds, this.mPaintTextBackground);
canvas.drawText(this.mText, width2, height2, this.mPaintText);
}
}