From ace137beb1d736fa095b3109931038d309497bcc Mon Sep 17 00:00:00 2001 From: Brad Leege Date: Fri, 16 Oct 2015 17:43:34 -0500 Subject: [PATCH] [android] #2631 - Removing AnnotationsOptions and MultiPointOptions in favor of concrete implementation --- .../annotations/AnnotationOptions.java | 22 ----------------- .../mapboxsdk/annotations/CircleOptions.java | 14 ++++++++++- .../mapboxsdk/annotations/MarkerOptions.java | 12 +++++++++- .../annotations/MultiPointOptions.java | 15 ------------ .../mapboxsdk/annotations/PolygonOptions.java | 22 ++++++++++++++++- .../annotations/PolylineOptions.java | 24 ++++++++++++++++++- 6 files changed, 68 insertions(+), 41 deletions(-) delete mode 100644 android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/AnnotationOptions.java delete mode 100644 android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/MultiPointOptions.java diff --git a/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/AnnotationOptions.java b/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/AnnotationOptions.java deleted file mode 100644 index 5962e25c7..000000000 --- a/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/AnnotationOptions.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.mapbox.mapboxsdk.annotations; - -public abstract class AnnotationOptions { - - protected Annotation annotation; - - public AnnotationOptions() {} - - public AnnotationOptions alpha(float alpha) { - annotation.alpha = alpha; - return this; - } - - public float getAlpha() { - return annotation.alpha; - } - - public boolean isVisible() { - return annotation.visible; - } - -} diff --git a/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/CircleOptions.java b/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/CircleOptions.java index 9eb6e7ca3..9e542c8ae 100644 --- a/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/CircleOptions.java +++ b/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/CircleOptions.java @@ -9,7 +9,7 @@ import com.mapbox.mapboxsdk.geometry.LatLng; * https://github.com/mapbox/mapbox-gl-native/issues/1882 * https://github.com/mapbox/mapbox-gl-native/issues/1726 */ -public class CircleOptions extends AnnotationOptions { +public class CircleOptions { private Circle circle; @@ -61,4 +61,16 @@ public class CircleOptions extends AnnotationOptions { return this; } + public CircleOptions alpha(float alpha) { + circle.alpha = alpha; + return this; + } + + public float getAlpha() { + return circle.alpha; + } + + public boolean isVisible() { + return circle.visible; + } } diff --git a/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/MarkerOptions.java b/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/MarkerOptions.java index 67700851b..7dc55f256 100644 --- a/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/MarkerOptions.java +++ b/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/MarkerOptions.java @@ -4,7 +4,9 @@ import android.support.annotation.Nullable; import android.text.TextUtils; import com.mapbox.mapboxsdk.geometry.LatLng; -public class MarkerOptions extends AnnotationOptions { +public class MarkerOptions { + + protected Annotation annotation; public MarkerOptions() { annotation = new Marker(); @@ -119,6 +121,14 @@ public class MarkerOptions extends AnnotationOptions { return this; } + public MarkerOptions alpha(float alpha) { + annotation.setAlpha(alpha); + return this; + } + + public float getAlpha() { + return annotation.alpha; + } // TODO: Implement this method of Google Maps Android API // public MarkerOptions icon(BitmapDescriptor icon) { diff --git a/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/MultiPointOptions.java b/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/MultiPointOptions.java deleted file mode 100644 index b201cb2aa..000000000 --- a/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/MultiPointOptions.java +++ /dev/null @@ -1,15 +0,0 @@ -package com.mapbox.mapboxsdk.annotations; - -import com.mapbox.mapboxsdk.geometry.LatLng; - -import java.util.List; - -public abstract class MultiPointOptions extends AnnotationOptions { - - public MultiPointOptions() {} - - public List getPoints() { - // the getter gives us a copy, which is the safe thing to do... - return ((MultiPoint)annotation).getPoints(); - } -} diff --git a/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/PolygonOptions.java b/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/PolygonOptions.java index 12f482776..000c96f24 100644 --- a/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/PolygonOptions.java +++ b/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/PolygonOptions.java @@ -6,7 +6,9 @@ import com.mapbox.mapboxsdk.geometry.LatLng; import java.util.ArrayList; import java.util.List; -public class PolygonOptions extends MultiPointOptions { +public class PolygonOptions { + + protected Annotation annotation; public PolygonOptions() { annotation = new Polygon(); @@ -47,6 +49,15 @@ public class PolygonOptions extends MultiPointOptions { return this; } + public PolygonOptions alpha(float alpha) { + annotation.alpha = alpha; + return this; + } + + public float getAlpha() { + return annotation.alpha; + } + /** * Sets the color of the polygon. * @@ -117,6 +128,15 @@ public class PolygonOptions extends MultiPointOptions { return this; } + public boolean isVisible() { + return annotation.visible; + } + + public List getPoints() { + // the getter gives us a copy, which is the safe thing to do... + return ((MultiPoint)annotation).getPoints(); + } + // TODO: Implement writeToParcel of Google Maps Android API // public void writeToParcel(Parcel out, int flags) { // diff --git a/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/PolylineOptions.java b/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/PolylineOptions.java index 3d1ea6c60..cd80798d7 100644 --- a/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/PolylineOptions.java +++ b/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/PolylineOptions.java @@ -2,7 +2,11 @@ package com.mapbox.mapboxsdk.annotations; import com.mapbox.mapboxsdk.geometry.LatLng; -public class PolylineOptions extends MultiPointOptions { +import java.util.List; + +public class PolylineOptions { + + protected Annotation annotation; public PolylineOptions() { annotation = new Polyline(); @@ -27,6 +31,15 @@ public class PolylineOptions extends MultiPointOptions { return this; } + public PolylineOptions alpha(float alpha) { + annotation.alpha = alpha; + return this; + } + + public float getAlpha() { + return annotation.alpha; + } + /** * Sets the color of the polyline. * @@ -54,6 +67,10 @@ public class PolylineOptions extends MultiPointOptions { return this; } + public boolean isVisible() { + return annotation.visible; + } + /** * Sets the width of the polyline. * @@ -65,6 +82,11 @@ public class PolylineOptions extends MultiPointOptions { return this; } + public List getPoints() { + // the getter gives us a copy, which is the safe thing to do... + return ((MultiPoint)annotation).getPoints(); + } + // TODO: Implement writeToParcel of Google Maps Android API // public void writeToParcel(Parcel out, int flags) { //