|
@@ -30,21 +30,21 @@ public class ScalableImageView extends View {
|
|
|
private float mScaleFactor = 1.0f;
|
|
|
private final GestureDetector.SimpleOnGestureListener onGestureListener = new GestureDetector.SimpleOnGestureListener() {
|
|
|
public boolean onDoubleTap(MotionEvent motionEvent) {
|
|
|
- EPLog.m305d(ScalableImageView.TAG, "DOBULE TAP");
|
|
|
- if (ScalableImageView.mScaleFactor == 1.0f) {
|
|
|
- float x = (((-ScalableImageView.mOffsetX) + motionEvent.getX()) / ScalableImageView.mScaleFactor) / ((float) ScalableImageView.this.canvasRect.width());
|
|
|
- float y = (((-ScalableImageView.mOffsetY) + motionEvent.getY()) / ScalableImageView.mScaleFactor) / ((float) ScalableImageView.this.canvasRect.height());
|
|
|
- float unused = ScalableImageView.mScaleFactor = ScalableImageView.MAX_SCALE_FACTOR;
|
|
|
- float width = ((float) ScalableImageView.this.canvasRect.width()) * ScalableImageView.mScaleFactor;
|
|
|
- float height = ((float) ScalableImageView.this.canvasRect.height()) * ScalableImageView.mScaleFactor;
|
|
|
- float unused2 = ScalableImageView.mOffsetX = motionEvent.getX() - (width * x);
|
|
|
- float unused3 = ScalableImageView.mOffsetY = motionEvent.getY() - (height * y);
|
|
|
+ EPLog.m305d(TAG, "DOBULE TAP");
|
|
|
+ if (mScaleFactor == 1.0f) {
|
|
|
+ float x = (((-mOffsetX) + motionEvent.getX()) / mScaleFactor) / ( canvasRect.width());
|
|
|
+ float y = (((-mOffsetY) + motionEvent.getY()) / mScaleFactor) / ( canvasRect.height());
|
|
|
+ float unused = mScaleFactor = MAX_SCALE_FACTOR;
|
|
|
+ float width = ( canvasRect.width()) * mScaleFactor;
|
|
|
+ float height = ( canvasRect.height()) * mScaleFactor;
|
|
|
+ float unused2 = mOffsetX = motionEvent.getX() - (width * x);
|
|
|
+ float unused3 = mOffsetY = motionEvent.getY() - (height * y);
|
|
|
} else {
|
|
|
- float unused4 = ScalableImageView.mScaleFactor = 1.0f;
|
|
|
- float unused5 = ScalableImageView.mOffsetX = 0.0f;
|
|
|
- float unused6 = ScalableImageView.mOffsetY = 0.0f;
|
|
|
+ float unused4 = mScaleFactor = 1.0f;
|
|
|
+ float unused5 = mOffsetX = 0.0f;
|
|
|
+ float unused6 = mOffsetY = 0.0f;
|
|
|
}
|
|
|
- ScalableImageView.this.invalidate();
|
|
|
+ invalidate();
|
|
|
return true;
|
|
|
}
|
|
|
|
|
@@ -53,20 +53,20 @@ public class ScalableImageView extends View {
|
|
|
float f4 = -f2;
|
|
|
if (f3 > 0.0f) {
|
|
|
ScalableImageView scalableImageView = ScalableImageView.this;
|
|
|
- float unused = scalableImageView.mOffsetX = Math.min(scalableImageView.mOffsetX + f3, 0.0f);
|
|
|
+ float unused = mOffsetX = Math.min(mOffsetX + f3, 0.0f);
|
|
|
} else {
|
|
|
ScalableImageView scalableImageView2 = ScalableImageView.this;
|
|
|
- float unused2 = scalableImageView2.mOffsetX = Math.max(scalableImageView2.mOffsetX + f3, ((float) ScalableImageView.this.canvasRect.width()) - (((float) ScalableImageView.this.canvasRect.width()) * ScalableImageView.mScaleFactor));
|
|
|
+ float unused2 = scalableImageView2.mOffsetX = Math.max(scalableImageView2.mOffsetX + f3, ( canvasRect.width()) - (( canvasRect.width()) * mScaleFactor));
|
|
|
}
|
|
|
if (f4 > 0.0f) {
|
|
|
ScalableImageView scalableImageView3 = ScalableImageView.this;
|
|
|
float unused3 = scalableImageView3.mOffsetY = Math.min(scalableImageView3.mOffsetY + f4, 0.0f);
|
|
|
} else {
|
|
|
ScalableImageView scalableImageView4 = ScalableImageView.this;
|
|
|
- float unused4 = scalableImageView4.mOffsetY = Math.max(scalableImageView4.mOffsetY + f4, ((float) ScalableImageView.this.canvasRect.height()) - (((float) ScalableImageView.this.canvasRect.height()) * ScalableImageView.mScaleFactor));
|
|
|
+ float unused4 = scalableImageView4.mOffsetY = Math.max(scalableImageView4.mOffsetY + f4, ( canvasRect.height()) - (( canvasRect.height()) * mScaleFactor));
|
|
|
}
|
|
|
- EPLog.m305d(ScalableImageView.TAG, "mOffsetX = " + ScalableImageView.mOffsetX + " mOffsetY = " + ScalableImageView.mOffsetY);
|
|
|
- ScalableImageView.this.invalidate();
|
|
|
+ EPLog.m305d(TAG, "mOffsetX = " + mOffsetX + " mOffsetY = " + mOffsetY);
|
|
|
+ invalidate();
|
|
|
return true;
|
|
|
}
|
|
|
};
|
|
@@ -79,35 +79,35 @@ public class ScalableImageView extends View {
|
|
|
public boolean onScaleBegin(ScaleGestureDetector scaleGestureDetector) {
|
|
|
focusX = scaleGestureDetector.getFocusX();
|
|
|
focusY = scaleGestureDetector.getFocusY();
|
|
|
- perFocusX = (((-ScalableImageView.mOffsetX) + focusX) / ScalableImageView.mScaleFactor) / ((float) ScalableImageView.this.canvasRect.width());
|
|
|
- perFocusY = (((-ScalableImageView.mOffsetY) + focusY) / ScalableImageView.mScaleFactor) / ((float) ScalableImageView.this.canvasRect.height());
|
|
|
+ perFocusX = (((-mOffsetX) + focusX) / mScaleFactor) / ( canvasRect.width());
|
|
|
+ perFocusY = (((-mOffsetY) + focusY) / mScaleFactor) / ( canvasRect.height());
|
|
|
return super.onScaleBegin(scaleGestureDetector);
|
|
|
}
|
|
|
|
|
|
public boolean onScale(ScaleGestureDetector scaleGestureDetector) {
|
|
|
- ScalableImageView scalableImageView = ScalableImageView.this;
|
|
|
- float unused = scalableImageView.mScaleFactor = scalableImageView.mScaleFactor * scaleGestureDetector.getScaleFactor();
|
|
|
- ScalableImageView scalableImageView2 = ScalableImageView.this;
|
|
|
- float unused2 = scalableImageView2.mScaleFactor = Math.max(1.0f, Math.min(scalableImageView2.mScaleFactor, ScalableImageView.MAX_SCALE_FACTOR));
|
|
|
- if (ScalableImageView.mScaleFactor == 1.0f) {
|
|
|
- float unused3 = ScalableImageView.mOffsetX = 0.0f;
|
|
|
- float unused4 = ScalableImageView.mOffsetY = 0.0f;
|
|
|
+ ScalableImageView scalableImageView = this;
|
|
|
+ float unused = mScaleFactor = mScaleFactor * scaleGestureDetector.getScaleFactor();
|
|
|
+ ScalableImageView scalableImageView2 = this;
|
|
|
+ float unused2 = scalableImageView2.mScaleFactor = Math.max(1.0f, Math.min(scalableImageView2.mScaleFactor, MAX_SCALE_FACTOR));
|
|
|
+ if (mScaleFactor == 1.0f) {
|
|
|
+ float unused3 = mOffsetX = 0.0f;
|
|
|
+ float unused4 = mOffsetY = 0.0f;
|
|
|
} else {
|
|
|
- float width = ((float) ScalableImageView.this.canvasRect.width()) * ScalableImageView.mScaleFactor;
|
|
|
- float height = ((float) ScalableImageView.this.canvasRect.height()) * ScalableImageView.mScaleFactor;
|
|
|
- float unused5 = ScalableImageView.mOffsetX = focusX - (width * perFocusX);
|
|
|
- float unused6 = ScalableImageView.mOffsetY = focusY - (height * perFocusY);
|
|
|
+ float width = ( canvasRect.width()) * mScaleFactor;
|
|
|
+ float height = ( canvasRect.height()) * mScaleFactor;
|
|
|
+ float unused5 = mOffsetX = focusX - (width * perFocusX);
|
|
|
+ float unused6 = mOffsetY = focusY - (height * perFocusY);
|
|
|
ScalableImageView scalableImageView3 = ScalableImageView.this;
|
|
|
float unused7 = scalableImageView3.mOffsetX = Math.min(0.0f, scalableImageView3.mOffsetX);
|
|
|
ScalableImageView scalableImageView4 = ScalableImageView.this;
|
|
|
float unused8 = scalableImageView4.mOffsetY = Math.min(0.0f, scalableImageView4.mOffsetY);
|
|
|
ScalableImageView scalableImageView5 = ScalableImageView.this;
|
|
|
- float unused9 = scalableImageView5.mOffsetX = Math.max(scalableImageView5.mOffsetX, ((float) ScalableImageView.this.canvasRect.width()) - (((float) ScalableImageView.this.canvasRect.width()) * ScalableImageView.mScaleFactor));
|
|
|
+ float unused9 = scalableImageView5.mOffsetX = Math.max(scalableImageView5.mOffsetX, ( canvasRect.width()) - (( canvasRect.width()) * mScaleFactor));
|
|
|
ScalableImageView scalableImageView6 = ScalableImageView.this;
|
|
|
- float unused10 = scalableImageView6.mOffsetY = Math.max(scalableImageView6.mOffsetY, ((float) ScalableImageView.this.canvasRect.height()) - (((float) ScalableImageView.this.canvasRect.height()) * ScalableImageView.mScaleFactor));
|
|
|
+ float unused10 = scalableImageView6.mOffsetY = Math.max(scalableImageView6.mOffsetY, ( canvasRect.height()) - (( canvasRect.height()) * mScaleFactor));
|
|
|
}
|
|
|
- EPLog.m305d(ScalableImageView.TAG, "mScaleFactor = " + ScalableImageView.mScaleFactor + " mOffsetX = " + ScalableImageView.mOffsetX + " mOffsetY = " + ScalableImageView.mOffsetY);
|
|
|
- ScalableImageView.this.invalidate();
|
|
|
+ EPLog.m305d(TAG, "mScaleFactor = " + mScaleFactor + " mOffsetX = " + mOffsetX + " mOffsetY = " + mOffsetY);
|
|
|
+ invalidate();
|
|
|
return true;
|
|
|
}
|
|
|
};
|
|
@@ -128,7 +128,7 @@ public class ScalableImageView extends View {
|
|
|
}
|
|
|
|
|
|
public void SetImageBitmap(Bitmap bitmap, Resources resources) {
|
|
|
- if (this.f332bm != bitmap) {
|
|
|
+ if (f332bm != bitmap) {
|
|
|
f332bm = bitmap;
|
|
|
}
|
|
|
}
|
|
@@ -165,11 +165,11 @@ public class ScalableImageView extends View {
|
|
|
|
|
|
protected void onDraw(Canvas canvas) {
|
|
|
super.onDraw(canvas);
|
|
|
- if (this.f332bm != null) {
|
|
|
+ if (f332bm != null) {
|
|
|
canvasRect.right = canvas.getWidth();
|
|
|
canvasRect.bottom = canvas.getHeight();
|
|
|
- float min = Math.min(((float) canvasRect.width()) / ((float) f332bm.getWidth()), ((float) canvasRect.height()) / ((float) f332bm.getHeight()));
|
|
|
- Rect rect = new Rect(((((float) canvasRect.width()) / 2.0f) - ((((float) f332bm.getWidth()) * min) / 2.0f)), ((((float) canvasRect.height()) / 2.0f) - ((((float) f332bm.getHeight()) * min) / 2.0f)), ((((float) canvasRect.width()) / 2.0f) + ((((float) f332bm.getWidth()) * min) / 2.0f)), ((((float) canvasRect.height()) / 2.0f) + ((((float) f332bm.getHeight()) * min) / 2.0f)));
|
|
|
+ float min = Math.min(( canvasRect.width()) / ( f332bm.getWidth()), ( canvasRect.height()) / ( f332bm.getHeight()));
|
|
|
+ Rect rect = new Rect(((( canvasRect.width()) / 2.0f) - ((( f332bm.getWidth()) * min) / 2.0f)), ((( canvasRect.height()) / 2.0f) - ((( f332bm.getHeight()) * min) / 2.0f)), ((( canvasRect.width()) / 2.0f) + ((( f332bm.getWidth()) * min) / 2.0f)), ((( canvasRect.height()) / 2.0f) + ((( f332bm.getHeight()) * min) / 2.0f)));
|
|
|
canvas.save();
|
|
|
canvas.translate(mOffsetX, mOffsetY);
|
|
|
float f = mScaleFactor;
|
|
@@ -185,7 +185,7 @@ public class ScalableImageView extends View {
|
|
|
return false;
|
|
|
}
|
|
|
scaleGesDetect.onTouchEvent(motionEvent);
|
|
|
- if (this.scaleGesDetect.isInProgress()) {
|
|
|
+ if (scaleGesDetect.isInProgress()) {
|
|
|
return true;
|
|
|
}
|
|
|
gesDetect.onTouchEvent(motionEvent);
|