diff options
| author | rsudev <rasch@munin-soft.de> | 2011-08-22 08:00:15 +0200 |
|---|---|---|
| committer | rsudev <rasch@munin-soft.de> | 2011-08-22 08:00:15 +0200 |
| commit | 119dd86b0df044c76b9dfaf2414429fa4ad681f3 (patch) | |
| tree | 2ec2c9efae2233c33706b2af8152c92ff8aa91cb /src/cgeo/geocaching/googlemaps/googleMapView.java | |
| parent | 2af3798e6bcb2f5a572c8a61860aa41fe43e93ff (diff) | |
| download | cgeo-119dd86b0df044c76b9dfaf2414429fa4ad681f3.zip cgeo-119dd86b0df044c76b9dfaf2414429fa4ad681f3.tar.gz cgeo-119dd86b0df044c76b9dfaf2414429fa4ad681f3.tar.bz2 | |
Fix issue #15
mapsforge uses a different pattern for communicating updates for
overlays
Diffstat (limited to 'src/cgeo/geocaching/googlemaps/googleMapView.java')
| -rw-r--r-- | src/cgeo/geocaching/googlemaps/googleMapView.java | 42 |
1 files changed, 34 insertions, 8 deletions
diff --git a/src/cgeo/geocaching/googlemaps/googleMapView.java b/src/cgeo/geocaching/googlemaps/googleMapView.java index 737e64e..6fa1eb7 100644 --- a/src/cgeo/geocaching/googlemaps/googleMapView.java +++ b/src/cgeo/geocaching/googlemaps/googleMapView.java @@ -1,18 +1,23 @@ package cgeo.geocaching.googlemaps; +import android.app.Activity; import android.content.Context; import android.graphics.Canvas; import android.graphics.drawable.Drawable; import android.util.AttributeSet; import android.util.Log; import cgeo.geocaching.cgSettings; +import cgeo.geocaching.mapcommon.cgMapMyOverlay; import cgeo.geocaching.mapcommon.cgMapOverlay; +import cgeo.geocaching.mapcommon.cgOverlayScale; import cgeo.geocaching.mapcommon.cgUsersOverlay; import cgeo.geocaching.mapinterfaces.GeoPointImpl; import cgeo.geocaching.mapinterfaces.MapControllerImpl; import cgeo.geocaching.mapinterfaces.MapProjectionImpl; import cgeo.geocaching.mapinterfaces.MapViewImpl; +import cgeo.geocaching.mapinterfaces.OverlayBase; import cgeo.geocaching.mapinterfaces.OverlayImpl; +import cgeo.geocaching.mapinterfaces.OverlayImpl.overlayType; import com.google.android.maps.GeoPoint; import com.google.android.maps.MapView; @@ -97,6 +102,24 @@ public class googleMapView extends MapView implements MapViewImpl{ } @Override + public cgMapMyOverlay createAddPositionOverlay(Activity activity, + cgSettings settingsIn) { + + googleOverlay ovl = new googleOverlay(activity, settingsIn, overlayType.PositionOverlay); + getOverlays().add(ovl); + return (cgMapMyOverlay) ovl.getBase(); + } + + @Override + public cgOverlayScale createAddScaleOverlay(Activity activity, + cgSettings settingsIn) { + + googleOverlay ovl = new googleOverlay(activity, settingsIn, overlayType.ScaleOverlay); + getOverlays().add(ovl); + return (cgOverlayScale) ovl.getBase(); + } + + @Override public int getMapZoomLevel() { return getZoomLevel(); } @@ -105,14 +128,12 @@ public class googleMapView extends MapView implements MapViewImpl{ public void setMapSource(cgSettings settings) { switch(settings.mapSource) { - case googleSat: - setSatellite(true); - break; - default: - setSatellite(false); - } - - + case googleSat: + setSatellite(true); + break; + default: + setSatellite(false); + } } @Override @@ -124,4 +145,9 @@ public class googleMapView extends MapView implements MapViewImpl{ public void setBuiltinScale(boolean b) { //Nothing to do for google maps... } + + @Override + public void repaintRequired(OverlayBase overlay) { + invalidate(); + } } |
