diff options
Diffstat (limited to 'src/cgeo/geocaching/googlemaps/googleMapView.java')
| -rw-r--r-- | src/cgeo/geocaching/googlemaps/googleMapView.java | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/src/cgeo/geocaching/googlemaps/googleMapView.java b/src/cgeo/geocaching/googlemaps/googleMapView.java index 8a06edb..1ca2d8e 100644 --- a/src/cgeo/geocaching/googlemaps/googleMapView.java +++ b/src/cgeo/geocaching/googlemaps/googleMapView.java @@ -18,6 +18,7 @@ import cgeo.geocaching.mapinterfaces.GeoPointImpl; import cgeo.geocaching.mapinterfaces.MapControllerImpl; import cgeo.geocaching.mapinterfaces.MapProjectionImpl; import cgeo.geocaching.mapinterfaces.MapViewImpl; +import cgeo.geocaching.mapinterfaces.OnDragListener; import cgeo.geocaching.mapinterfaces.OverlayBase; import cgeo.geocaching.mapinterfaces.OverlayImpl; import cgeo.geocaching.mapinterfaces.OverlayImpl.overlayType; @@ -26,8 +27,9 @@ import com.google.android.maps.GeoPoint; import com.google.android.maps.MapView; import com.google.android.maps.Overlay; -public class googleMapView extends MapView implements MapViewImpl{ +public class googleMapView extends MapView implements MapViewImpl { private GestureDetector gestureDetector; + private OnDragListener onDragListener; public googleMapView(Context context, AttributeSet attrs) { super(context, attrs); @@ -159,6 +161,11 @@ public class googleMapView extends MapView implements MapViewImpl{ } @Override + public void setOnDragListener(OnDragListener onDragListener) { + this.onDragListener = onDragListener; + } + + @Override public boolean onTouchEvent(MotionEvent ev) { gestureDetector.onTouchEvent(ev); return super.onTouchEvent(ev); @@ -170,5 +177,14 @@ public class googleMapView extends MapView implements MapViewImpl{ getController().zoomInFixing((int) e.getX(), (int) e.getY()); return true; } + + @Override + public boolean onScroll(MotionEvent e1, MotionEvent e2, + float distanceX, float distanceY) { + if (onDragListener != null) { + onDragListener.onDrag(); + } + return super.onScroll(e1, e2, distanceX, distanceY); + } } } |
