diff options
author | Leith Bade <leith@mapbox.com> | 2015-10-22 17:18:03 +1100 |
---|---|---|
committer | Leith Bade <leith@mapbox.com> | 2015-10-30 09:23:56 +1100 |
commit | be817260d77ed22649fcb74bb829e0255f844c5e (patch) | |
tree | d76e90777f351d6baec2ce89005d1e8acf02e256 /android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/PolygonOptions.java | |
parent | 84a767b5f39df3e53b6c3e12cb9c9d4c9eda1b1e (diff) | |
download | qtlocation-mapboxgl-be817260d77ed22649fcb74bb829e0255f844c5e.tar.gz |
[android] Implement Parcelable annotations
Fixes #2638
Diffstat (limited to 'android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/PolygonOptions.java')
-rw-r--r-- | android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/PolygonOptions.java | 40 |
1 files changed, 39 insertions, 1 deletions
diff --git a/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/PolygonOptions.java b/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/PolygonOptions.java index 42e80edc2c..c716d10edf 100644 --- a/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/PolygonOptions.java +++ b/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/PolygonOptions.java @@ -1,11 +1,49 @@ package com.mapbox.mapboxsdk.annotations; +import android.os.Parcel; +import android.os.Parcelable; + import com.mapbox.mapboxsdk.geometry.LatLng; +import java.util.ArrayList; import java.util.List; -public final class PolygonOptions { +public final class PolygonOptions implements Parcelable { + + public static final Parcelable.Creator<PolygonOptions> CREATOR + = new Parcelable.Creator<PolygonOptions>() { + public PolygonOptions createFromParcel(Parcel in) { + return new PolygonOptions(in); + } + + public PolygonOptions[] newArray(int size) { + return new PolygonOptions[size]; + } + }; + + private PolygonOptions(Parcel in) { + polygon = new Polygon(); + ArrayList<LatLng> pointsList = new ArrayList<>(); + in.readList(pointsList, LatLng.class.getClassLoader()); + addAll(pointsList); + alpha(in.readFloat()); + fillColor(in.readInt()); + strokeColor(in.readInt()); + } + + @Override + public int describeContents() { + return 0; + } + + @Override + public void writeToParcel(Parcel out, int flags) { + out.writeList(getPoints()); + out.writeFloat(getAlpha()); + out.writeInt(getFillColor()); + out.writeInt(getStrokeColor()); + } private Polygon polygon; |