test_class.declarator: layoutManager
test_class.modifier: @Mock
test_class.original_string: @Mock
      LayoutManager layoutManager;
test_class.type: LayoutManager
test_class.var_name: layoutManager
test_class.declarator: xyPlot
test_class.modifier: @Mock
test_class.original_string: @Mock
      XYPlot xyPlot;
test_class.type: XYPlot
test_class.var_name: xyPlot
test_class.declarator: typedArray
test_class.modifier: @Mock
test_class.original_string: @Mock
      TypedArray typedArray;
test_class.type: TypedArray
test_class.var_name: typedArray
test_class.declarator: seriesRegistry
test_class.modifier: @Mock
test_class.original_string: @Mock
      XYSeriesRegistry seriesRegistry;
test_class.type: XYSeriesRegistry
test_class.var_name: seriesRegistry
test_class.declarator: bounds = new RectRegion(0, 100, 0, 100)
test_class.original_string: RectRegion bounds = new RectRegion(0, 100, 0, 100);
test_class.type: RectRegion
test_class.var_name: bounds
test_class.file: androidplot-core/src/test/java/com/androidplot/xy/PanZoomTest.java
test_class.identifier: PanZoomTest
test_class.superclass: extends AndroidplotTest
test_case.body: @Test
      public void testFingerDistance() {
          PanZoom panZoom = spy(new PanZoom(xyPlot, PanZoom.Pan.BOTH, PanZoom.Zoom.SCALE));
          RectF distance = panZoom.fingerDistance(TestUtils.newPointerDownEvent(0, 0, 10, 10));
          assertEquals(0f, distance.left);
          assertEquals(0f, distance.top);
          assertEquals(10f, distance.right);
          assertEquals(10f, distance.bottom);
  
          // no matter what order the coords are supplied, make sure the same rect is calculated:
          distance = panZoom.fingerDistance(10, 10, 0, 0);
          assertEquals(0f, distance.left);
          assertEquals(0f, distance.top);
          assertEquals(10f, distance.right);
          assertEquals(10f, distance.bottom);
      }
test_case.class_method_signature: PanZoomTest.testFingerDistance()
test_case.full_signature: @Test public void testFingerDistance()
test_case.identifier: testFingerDistance
test_case.invocations: spy fingerDistance newPointerDownEvent assertEquals assertEquals assertEquals assertEquals fingerDistance assertEquals assertEquals assertEquals assertEquals
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testFingerDistance()
focal_class.declarator: MIN_DIST_2_FING = 5f
focal_class.modifier: protected static final
focal_class.original_string: protected static final float MIN_DIST_2_FING = 5f;
focal_class.type: float
focal_class.var_name: MIN_DIST_2_FING
focal_class.declarator: FIRST_FINGER = 0
focal_class.modifier: protected static final
focal_class.original_string: protected static final int FIRST_FINGER = 0;
focal_class.type: int
focal_class.var_name: FIRST_FINGER
focal_class.declarator: SECOND_FINGER = 1
focal_class.modifier: protected static final
focal_class.original_string: protected static final int SECOND_FINGER = 1;
focal_class.type: int
focal_class.var_name: SECOND_FINGER
focal_class.declarator: plot
focal_class.modifier: private
focal_class.original_string: private XYPlot plot;
focal_class.type: XYPlot
focal_class.var_name: plot
focal_class.declarator: pan
focal_class.modifier: private
focal_class.original_string: private Pan pan;
focal_class.type: Pan
focal_class.var_name: pan
focal_class.declarator: zoom
focal_class.modifier: private
focal_class.original_string: private Zoom zoom;
focal_class.type: Zoom
focal_class.var_name: zoom
focal_class.declarator: zoomLimit
focal_class.modifier: private
focal_class.original_string: private ZoomLimit zoomLimit;
focal_class.type: ZoomLimit
focal_class.var_name: zoomLimit
focal_class.declarator: isEnabled = true
focal_class.modifier: private
focal_class.original_string: private boolean isEnabled = true;
focal_class.type: boolean
focal_class.var_name: isEnabled
focal_class.declarator: dragState = DragState.NONE
focal_class.modifier: private
focal_class.original_string: private DragState dragState = DragState.NONE;
focal_class.type: DragState
focal_class.var_name: dragState
focal_class.declarator: firstFingerPos
focal_class.modifier: private
focal_class.original_string: private PointF firstFingerPos;
focal_class.type: PointF
focal_class.var_name: firstFingerPos
focal_class.declarator: fingersRect
focal_class.modifier: protected
focal_class.original_string: protected RectF fingersRect;
focal_class.type: RectF
focal_class.var_name: fingersRect
focal_class.declarator: delegate
focal_class.modifier: private
focal_class.original_string: private View.OnTouchListener delegate;
focal_class.type: View.OnTouchListener
focal_class.var_name: delegate
focal_class.declarator: state = new State()
focal_class.modifier: private
focal_class.original_string: private State state = new State();
focal_class.type: State
focal_class.var_name: state
focal_class.file: androidplot-core/src/main/java/com/androidplot/xy/PanZoom.java
focal_class.identifier: PanZoom
focal_class.interfaces: implements View.OnTouchListener
focal_class.class_method_signature: PanZoom.PanZoom(@NonNull XYPlot plot, Pan pan, Zoom zoom)
focal_class.full_signature: protected  PanZoom(@NonNull XYPlot plot, Pan pan, Zoom zoom)
focal_class.identifier: PanZoom
focal_class.modifiers: protected
focal_class.parameters: (@NonNull XYPlot plot, Pan pan, Zoom zoom)
focal_class.signature:  PanZoom(@NonNull XYPlot plot, Pan pan, Zoom zoom)
focal_class.class_method_signature: PanZoom.PanZoom(@NonNull XYPlot plot, Pan pan, Zoom zoom, ZoomLimit limit)
focal_class.full_signature: protected  PanZoom(@NonNull XYPlot plot, Pan pan, Zoom zoom, ZoomLimit limit)
focal_class.identifier: PanZoom
focal_class.modifiers: protected
focal_class.parameters: (@NonNull XYPlot plot, Pan pan, Zoom zoom, ZoomLimit limit)
focal_class.signature:  PanZoom(@NonNull XYPlot plot, Pan pan, Zoom zoom, ZoomLimit limit)
focal_class.class_method_signature: PanZoom.getState()
focal_class.full_signature: public State getState()
focal_class.identifier: getState
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: State
focal_class.signature: State getState()
focal_class.class_method_signature: PanZoom.setState(@NonNull State state)
focal_class.full_signature: public void setState(@NonNull State state)
focal_class.identifier: setState
focal_class.modifiers: public
focal_class.parameters: (@NonNull State state)
focal_class.return: void
focal_class.signature: void setState(@NonNull State state)
focal_class.class_method_signature: PanZoom.adjustRangeBoundary(Number lower, Number upper,  BoundaryMode mode)
focal_class.full_signature: protected void adjustRangeBoundary(Number lower, Number upper,  BoundaryMode mode)
focal_class.identifier: adjustRangeBoundary
focal_class.modifiers: protected
focal_class.parameters: (Number lower, Number upper,  BoundaryMode mode)
focal_class.return: void
focal_class.signature: void adjustRangeBoundary(Number lower, Number upper,  BoundaryMode mode)
focal_class.class_method_signature: PanZoom.adjustDomainBoundary(Number lower, Number upper, BoundaryMode mode)
focal_class.full_signature: protected void adjustDomainBoundary(Number lower, Number upper, BoundaryMode mode)
focal_class.identifier: adjustDomainBoundary
focal_class.modifiers: protected
focal_class.parameters: (Number lower, Number upper, BoundaryMode mode)
focal_class.return: void
focal_class.signature: void adjustDomainBoundary(Number lower, Number upper, BoundaryMode mode)
focal_class.class_method_signature: PanZoom.attach(@NonNull XYPlot plot)
focal_class.full_signature: public static PanZoom attach(@NonNull XYPlot plot)
focal_class.identifier: attach
focal_class.modifiers: public static
focal_class.parameters: (@NonNull XYPlot plot)
focal_class.return: PanZoom
focal_class.signature: PanZoom attach(@NonNull XYPlot plot)
focal_class.class_method_signature: PanZoom.attach(@NonNull XYPlot plot, @NonNull Pan pan, @NonNull Zoom zoom)
focal_class.full_signature: public static PanZoom attach(@NonNull XYPlot plot, @NonNull Pan pan, @NonNull Zoom zoom)
focal_class.identifier: attach
focal_class.modifiers: public static
focal_class.parameters: (@NonNull XYPlot plot, @NonNull Pan pan, @NonNull Zoom zoom)
focal_class.return: PanZoom
focal_class.signature: PanZoom attach(@NonNull XYPlot plot, @NonNull Pan pan, @NonNull Zoom zoom)
focal_class.class_method_signature: PanZoom.attach(@NonNull XYPlot plot, @NonNull Pan pan, @NonNull Zoom zoom, @NonNull ZoomLimit limit)
focal_class.full_signature: public static PanZoom attach(@NonNull XYPlot plot, @NonNull Pan pan, @NonNull Zoom zoom, @NonNull ZoomLimit limit)
focal_class.identifier: attach
focal_class.modifiers: public static
focal_class.parameters: (@NonNull XYPlot plot, @NonNull Pan pan, @NonNull Zoom zoom, @NonNull ZoomLimit limit)
focal_class.return: PanZoom
focal_class.signature: PanZoom attach(@NonNull XYPlot plot, @NonNull Pan pan, @NonNull Zoom zoom, @NonNull ZoomLimit limit)
focal_class.class_method_signature: PanZoom.isEnabled()
focal_class.full_signature: public boolean isEnabled()
focal_class.identifier: isEnabled
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean isEnabled()
focal_class.class_method_signature: PanZoom.setEnabled(boolean enabled)
focal_class.full_signature: public void setEnabled(boolean enabled)
focal_class.identifier: setEnabled
focal_class.modifiers: public
focal_class.parameters: (boolean enabled)
focal_class.return: void
focal_class.signature: void setEnabled(boolean enabled)
focal_class.class_method_signature: PanZoom.onTouch(final View view, final MotionEvent event)
focal_class.full_signature: @Override public boolean onTouch(final View view, final MotionEvent event)
focal_class.identifier: onTouch
focal_class.modifiers: @Override public
focal_class.parameters: (final View view, final MotionEvent event)
focal_class.return: boolean
focal_class.signature: boolean onTouch(final View view, final MotionEvent event)
focal_class.class_method_signature: PanZoom.fingerDistance(float firstFingerX, float firstFingerY, float secondFingerX, float secondFingerY)
focal_class.full_signature: protected RectF fingerDistance(float firstFingerX, float firstFingerY, float secondFingerX, float secondFingerY)
focal_class.identifier: fingerDistance
focal_class.modifiers: protected
focal_class.parameters: (float firstFingerX, float firstFingerY, float secondFingerX, float secondFingerY)
focal_class.return: RectF
focal_class.signature: RectF fingerDistance(float firstFingerX, float firstFingerY, float secondFingerX, float secondFingerY)
focal_class.class_method_signature: PanZoom.fingerDistance(final MotionEvent evt)
focal_class.full_signature: protected RectF fingerDistance(final MotionEvent evt)
focal_class.identifier: fingerDistance
focal_class.modifiers: protected
focal_class.parameters: (final MotionEvent evt)
focal_class.return: RectF
focal_class.signature: RectF fingerDistance(final MotionEvent evt)
focal_class.class_method_signature: PanZoom.pan(final MotionEvent motionEvent)
focal_class.full_signature: protected void pan(final MotionEvent motionEvent)
focal_class.identifier: pan
focal_class.modifiers: protected
focal_class.parameters: (final MotionEvent motionEvent)
focal_class.return: void
focal_class.signature: void pan(final MotionEvent motionEvent)
focal_class.class_method_signature: PanZoom.calculatePan(final PointF oldFirstFinger, Region bounds, final boolean horizontal)
focal_class.full_signature: protected void calculatePan(final PointF oldFirstFinger, Region bounds, final boolean horizontal)
focal_class.identifier: calculatePan
focal_class.modifiers: protected
focal_class.parameters: (final PointF oldFirstFinger, Region bounds, final boolean horizontal)
focal_class.return: void
focal_class.signature: void calculatePan(final PointF oldFirstFinger, Region bounds, final boolean horizontal)
focal_class.class_method_signature: PanZoom.isValidScale(float scale)
focal_class.full_signature: protected boolean isValidScale(float scale)
focal_class.identifier: isValidScale
focal_class.modifiers: protected
focal_class.parameters: (float scale)
focal_class.return: boolean
focal_class.signature: boolean isValidScale(float scale)
focal_class.class_method_signature: PanZoom.zoom(final MotionEvent motionEvent)
focal_class.full_signature: protected void zoom(final MotionEvent motionEvent)
focal_class.identifier: zoom
focal_class.modifiers: protected
focal_class.parameters: (final MotionEvent motionEvent)
focal_class.return: void
focal_class.signature: void zoom(final MotionEvent motionEvent)
focal_class.class_method_signature: PanZoom.calculateZoom(RectF newRect, float scale, boolean isHorizontal)
focal_class.full_signature: protected void calculateZoom(RectF newRect, float scale, boolean isHorizontal)
focal_class.identifier: calculateZoom
focal_class.modifiers: protected
focal_class.parameters: (RectF newRect, float scale, boolean isHorizontal)
focal_class.return: void
focal_class.signature: void calculateZoom(RectF newRect, float scale, boolean isHorizontal)
focal_class.class_method_signature: PanZoom.getPan()
focal_class.full_signature: public Pan getPan()
focal_class.identifier: getPan
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: Pan
focal_class.signature: Pan getPan()
focal_class.class_method_signature: PanZoom.setPan(Pan pan)
focal_class.full_signature: public void setPan(Pan pan)
focal_class.identifier: setPan
focal_class.modifiers: public
focal_class.parameters: (Pan pan)
focal_class.return: void
focal_class.signature: void setPan(Pan pan)
focal_class.class_method_signature: PanZoom.getZoom()
focal_class.full_signature: public Zoom getZoom()
focal_class.identifier: getZoom
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: Zoom
focal_class.signature: Zoom getZoom()
focal_class.class_method_signature: PanZoom.setZoom(Zoom zoom)
focal_class.full_signature: public void setZoom(Zoom zoom)
focal_class.identifier: setZoom
focal_class.modifiers: public
focal_class.parameters: (Zoom zoom)
focal_class.return: void
focal_class.signature: void setZoom(Zoom zoom)
focal_class.class_method_signature: PanZoom.getZoomLimit()
focal_class.full_signature: public ZoomLimit getZoomLimit()
focal_class.identifier: getZoomLimit
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: ZoomLimit
focal_class.signature: ZoomLimit getZoomLimit()
focal_class.class_method_signature: PanZoom.setZoomLimit(ZoomLimit zoomLimit)
focal_class.full_signature: public void setZoomLimit(ZoomLimit zoomLimit)
focal_class.identifier: setZoomLimit
focal_class.modifiers: public
focal_class.parameters: (ZoomLimit zoomLimit)
focal_class.return: void
focal_class.signature: void setZoomLimit(ZoomLimit zoomLimit)
focal_class.class_method_signature: PanZoom.getDelegate()
focal_class.full_signature: public View.OnTouchListener getDelegate()
focal_class.identifier: getDelegate
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: View.OnTouchListener
focal_class.signature: View.OnTouchListener getDelegate()
focal_class.class_method_signature: PanZoom.setDelegate(View.OnTouchListener delegate)
focal_class.full_signature: public void setDelegate(View.OnTouchListener delegate)
focal_class.identifier: setDelegate
focal_class.modifiers: public
focal_class.parameters: (View.OnTouchListener delegate)
focal_class.return: void
focal_class.signature: void setDelegate(View.OnTouchListener delegate)
focal_class.class_method_signature: PanZoom.reset()
focal_class.full_signature: public void reset()
focal_class.identifier: reset
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void reset()
focal_class.class_method_signature: PanZoom.getFingersRect()
focal_class.full_signature: protected RectF getFingersRect()
focal_class.identifier: getFingersRect
focal_class.modifiers: protected
focal_class.parameters: ()
focal_class.return: RectF
focal_class.signature: RectF getFingersRect()
focal_class.class_method_signature: PanZoom.setFingersRect(RectF fingersRect)
focal_class.full_signature: protected void setFingersRect(RectF fingersRect)
focal_class.identifier: setFingersRect
focal_class.modifiers: protected
focal_class.parameters: (RectF fingersRect)
focal_class.return: void
focal_class.signature: void setFingersRect(RectF fingersRect)
focal_method.body: protected RectF fingerDistance(float firstFingerX, float firstFingerY, float secondFingerX, float secondFingerY) {
          final float left = firstFingerX > secondFingerX ? secondFingerX : firstFingerX;
          final float right = firstFingerX > secondFingerX ? firstFingerX : secondFingerX;
          final float top = firstFingerY > secondFingerY ? secondFingerY : firstFingerY;
          final float bottom = firstFingerY > secondFingerY ? firstFingerY : secondFingerY;
          return new RectF(left, top, right, bottom);
      }
focal_method.class_method_signature: PanZoom.fingerDistance(float firstFingerX, float firstFingerY, float secondFingerX, float secondFingerY)
focal_method.full_signature: protected RectF fingerDistance(float firstFingerX, float firstFingerY, float secondFingerX, float secondFingerY)
focal_method.identifier: fingerDistance
focal_method.modifiers: protected
focal_method.parameters: (float firstFingerX, float firstFingerY, float secondFingerX, float secondFingerY)
focal_method.return: RectF
focal_method.signature: RectF fingerDistance(float firstFingerX, float firstFingerY, float secondFingerX, float secondFingerY)