package net.osmand.plus.views.controls;
import android.graphics.Canvas;
import android.graphics.Paint;
import android.graphics.RectF;
import android.graphics.drawable.shapes.Shape;
public class ListDividerShape extends Shape {
private RectF mRect = new RectF();
private int lineColor;
private int paddingLeft;
private int pointColor;
private float pointRadius;
private boolean drawPoint;
public ListDividerShape(int lineColor, int paddingLeft) {
this.lineColor = lineColor;
this.paddingLeft = paddingLeft;
this.pointColor = 0;
this.pointRadius = 0f;
this.drawPoint = false;
}
public ListDividerShape(int lineColor, int paddingLeft, int pointColor, float pointRadius, boolean drawPoint) {
this.lineColor = lineColor;
this.paddingLeft = paddingLeft;
this.pointColor = pointColor;
this.pointRadius = pointRadius;
this.drawPoint = drawPoint;
}
@Override
public void draw(Canvas canvas, Paint paint) {
paint.setColor(lineColor);
mRect.left = paddingLeft;
canvas.drawRect(mRect, paint);
if (paddingLeft > 0 && drawPoint) {
paint.setColor(pointColor);
canvas.drawCircle(paddingLeft / 2f, (mRect.bottom - mRect.top) / 2f, pointRadius, paint);
}
}
@Override
protected void onResize(float width, float height) {
mRect.set(0, 0, width, height);
}
@Override
public ListDividerShape clone() throws CloneNotSupportedException {
final ListDividerShape shape = (ListDividerShape) super.clone();
shape.mRect = new RectF(mRect);
shape.lineColor = lineColor;
shape.paddingLeft = paddingLeft;
shape.pointColor = pointColor;
shape.pointRadius = pointRadius;
shape.drawPoint = drawPoint;
return shape;
}
}