1 package mhr.appandroid.views;
3 import mhr.appandroid.R;
4 import android.content.Context;
5 import android.graphics.Bitmap;
6 import android.graphics.BitmapFactory;
7 import android.graphics.Canvas;
8 import android.graphics.Paint;
9 import android.graphics.Paint.Cap;
10 import android.graphics.Paint.Join;
11 import android.graphics.Paint.Style;
12 import android.graphics.Rect;
13 import android.graphics.RectF;
14 import android.util.AttributeSet;
15 import android.view.MotionEvent;
16 import android.view.View;
32 public float TLx, TLy, TRx, TRy, BLx, BLy, BRx, BRy;
36 public Quadrilateral(
float TLx,
float TLy,
float TRx,
float TRy,
float BLx,
float BLy,
float BRx,
float BRy) {
86 setLayerType(View.LAYER_TYPE_SOFTWARE, null);
87 cPressed = BitmapFactory.decodeResource(getResources(),
R.drawable.scrubber_control_pressed_bw);
88 cNormal = BitmapFactory.decodeResource(getResources(),
R.drawable.scrubber_control_normal_bw);
121 super(context, attrs);
126 super(context, attrs, defStyle);
185 public void onMeasure(
int widthMeasureSpec,
int heightMeasureSpec) {
186 super.onMeasure(widthMeasureSpec, heightMeasureSpec);
192 super.onSizeChanged(w, h, oldw, oldh);
194 origRect =
new RectF(w / 4.0f, h / 4.0f, 3 * w / 4.0f, 3 * h / 4.0f);
215 canvas.drawColor(0x00000000);
217 canvas.drawLines(
new float[] {
228 canvas.drawLines(
new float[] {
237 canvas.drawBitmap(
cPressed, null, r, null);
239 canvas.drawBitmap(
cNormal, null, r, null);
252 switch (ev.getAction()) {
253 case MotionEvent.ACTION_DOWN:
255 if (r.contains((
int) x, (
int) y)) {
268 case MotionEvent.ACTION_MOVE:
279 case MotionEvent.ACTION_UP: