package jjil.android;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.util.AttributeSet;
import android.view.View;
public class CrosshairOverlay extends View {
private Integer mnHorizStart, mnHorizEnd;
private Integer mnVertStart, mnVertEnd;
public CrosshairOverlay(Context context) {
super(context);
}
public CrosshairOverlay(Context context, AttributeSet attrs)
{
super(context, attrs);
}
public CrosshairOverlay(Context context, AttributeSet attrs, int defStyle)
{
super(context, attrs, defStyle);
}
public void clearLimits() {
mnHorizStart = mnHorizEnd = mnVertStart = mnVertEnd = null;
}
@Override
public void onDraw(Canvas c) {
super.onDraw(c);
// draw a partially transparent crosshairs on the canvas
Paint p = new Paint();
p.setColor(Color.RED);
p.setAlpha(128);
c.drawLine(0.0f, getHeight()/2, getWidth(), getHeight()/2, p);
c.drawLine(getWidth()/2, 0.0f, getWidth()/2, getHeight(), p);
if (mnHorizStart != null) {
c.drawLine(mnHorizStart, getHeight()/2-5, mnHorizStart, getHeight()/2+5, p);
c.drawLine(mnHorizEnd, getHeight()/2-5, mnHorizEnd, getHeight()/2+5, p);
}
if (mnVertStart != null) {
c.drawLine(getWidth()/2-5, mnVertStart, getWidth()/2+5, mnVertStart, p);
c.drawLine(getWidth()/2-5, mnVertEnd, getWidth()/2+5, mnVertEnd, p);
}
}
public void setHorizLimits(int nStart, int nEnd) {
mnHorizStart = nStart;
mnHorizEnd = nEnd;
}
public void setVertLimits(int nStart, int nEnd) {
mnVertStart = nStart;
mnVertEnd = nEnd;
}
}