1 package org.robolectric.shadows; 2 3 import android.content.Context; 4 import android.view.MotionEvent; 5 import android.view.ScaleGestureDetector; 6 import org.robolectric.annotation.Implementation; 7 import org.robolectric.annotation.Implements; 8 9 @SuppressWarnings({"UnusedDeclaration"}) 10 @Implements(ScaleGestureDetector.class) 11 public class ShadowScaleGestureDetector { 12 13 private MotionEvent onTouchEventMotionEvent; 14 private ScaleGestureDetector.OnScaleGestureListener listener; 15 private float scaleFactor = 1; 16 private float focusX; 17 private float focusY; 18 19 @Implementation 20 public void __constructor__(Context context, ScaleGestureDetector.OnScaleGestureListener listener) { 21 this.listener = listener; 22 } 23 24 @Implementation 25 public boolean onTouchEvent(MotionEvent event) { 26 onTouchEventMotionEvent = event; 27 return true; 28 } 29 30 public MotionEvent getOnTouchEventMotionEvent() { 31 return onTouchEventMotionEvent; 32 } 33 34 public void reset() { 35 onTouchEventMotionEvent = null; 36 scaleFactor = 1; 37 focusX = 0; 38 focusY = 0; 39 } 40 41 public ScaleGestureDetector.OnScaleGestureListener getListener() { 42 return listener; 43 } 44 45 public void setScaleFactor(float scaleFactor) { 46 this.scaleFactor = scaleFactor; 47 } 48 49 @Implementation 50 public float getScaleFactor() { 51 return scaleFactor; 52 } 53 54 public void setFocusXY(float focusX, float focusY) { 55 this.focusX = focusX; 56 this.focusY = focusY; 57 } 58 59 @Implementation 60 public float getFocusX(){ 61 return focusX; 62 } 63 64 @Implementation 65 public float getFocusY(){ 66 return focusY; 67 } 68 } 69