Authored by Justin R. Miller

Merge branch 'develop' into 270-autolayout-storyboards

... ... @@ -31,6 +31,7 @@
#import "RMAnnotation.h"
#import "RMCacheObject.h"
#import "RMCircle.h"
#import "RMCircleAnnotation.h"
#import "RMCompositeSource.h"
#import "RMConfiguration.h"
#import "RMCoordinateGridSource.h"
... ...
... ... @@ -30,7 +30,7 @@
@class RMMapView, RMMapLayer, RMQuadTreeNode;
/** An RMAnnotation defines a container for annotation data to be placed on a map. At a future point in time, depending on map use, a visible layer may be requested and displayed for the annotation. The layer can be set ahead of time using the annotation's layer property, or, in the recommended approach, can be provided by an RMMapView's delegate when first needed for display.
/** An RMAnnotation defines a container for annotation data to be placed on a map. At a future point in time, depending on map use, a visible layer may be requested and displayed for the annotation. The layer is provided by an RMMapView's delegate when first needed for display.
*
* Subclasses of RMAnnotation such as RMPointAnnotation, RMPolylineAnnotation, and RMPolygonAnnotation are useful for simple needs such as easily putting points and shapes onto a map view. They manage their own layer and don't require configuration in the map view delegate in order to be displayed. */
@interface RMAnnotation : NSObject
... ...
... ... @@ -54,7 +54,7 @@
/** The circle's line color. Defaults to black. */
@property (nonatomic, strong) UIColor *lineColor;
/** The circle's fill color. Defaults to blue. */
/** The circle's fill color. Defaults to blue with a 25% alpha value. */
@property (nonatomic, strong) UIColor *fillColor;
/** The fill pattern image of the circle. If set, the fillColor is set to `nil`. */
... ... @@ -63,7 +63,7 @@
/** The radius of the circle in projected meters. Regardless of map zoom, the circle will change visible size to continously represent this radius on the map. */
@property (nonatomic, assign) CGFloat radiusInMeters;
/** The circle's line width. Defaults to 10.0. */
/** The circle's line width. Defaults to 2.0. */
@property (nonatomic, assign) CGFloat lineWidthInPixels;
/** @name Creating Circle Objects */
... ...
... ... @@ -29,9 +29,9 @@
#import "RMProjection.h"
#import "RMMapView.h"
#define kDefaultLineWidth 10.0
#define kDefaultLineWidth 2.0
#define kDefaultLineColor [UIColor blackColor]
#define kDefaultFillColor [UIColor blueColor]
#define kDefaultFillColor [UIColor colorWithRed:0 green:0 blue:1.0 alpha:0.25]
@interface RMCircle ()
... ...
//
// RMCircleAnnotation.h
// MapView
//
// Copyright (c) 2008-2013, Route-Me Contributors
// All rights reserved.
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are met:
//
// * Redistributions of source code must retain the above copyright notice, this
// list of conditions and the following disclaimer.
// * Redistributions in binary form must reproduce the above copyright notice,
// this list of conditions and the following disclaimer in the documentation
// and/or other materials provided with the distribution.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
// ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
// LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
// CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
// CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
// POSSIBILITY OF SUCH DAMAGE.
#import "RMShapeAnnotation.h"
/** An RMCircleAnnotation is a concrete subclass of RMShapeAnnotation that is used to represent a circle shape on the map. The annotation will automatically have a layer created when needed that displays an RMCircle.
*
* If you wish to customize the layer appearance in more detail, you should instead create an RMAnnotation and configure its layer directly. Providing a layer manually for instances of RMCircleAnnotation will not have any effect. */
@interface RMCircleAnnotation : RMShapeAnnotation
/** Initialize a circle annotation.
* @param aMapView The map view on which to place the annotation.
* @param centerCoordinate The center of the annotation.
* @param radiusInMeters The radius of the circle in projected meters.
* @return An initialized circle annotation object, or `nil` if an annotation was unable to be initialized. */
- (id)initWithMapView:(RMMapView *)aMapView centerCoordinate:(CLLocationCoordinate2D)centerCoordinate radiusInMeters:(CGFloat)radiusInMeters;
/** The circle annotation's center coordinate. */
@property (nonatomic, assign) CLLocationCoordinate2D centerCoordinate;
/** The circle annotation's line width. */
@property (nonatomic, assign) CGFloat lineWidthInPixels;
/** The radius of the circle annotation in projected meters. Regardless of map zoom, the circle will change visible size to continously represent this radius on the map. */
@property (nonatomic, assign) CGFloat radiusInMeters;
@end
... ...
//
// RMCircleAnnotation.m
// MapView
//
// Copyright (c) 2008-2013, Route-Me Contributors
// All rights reserved.
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are met:
//
// * Redistributions of source code must retain the above copyright notice, this
// list of conditions and the following disclaimer.
// * Redistributions in binary form must reproduce the above copyright notice,
// this list of conditions and the following disclaimer in the documentation
// and/or other materials provided with the distribution.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
// ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
// LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
// CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
// CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
// POSSIBILITY OF SUCH DAMAGE.
#import "RMCircleAnnotation.h"
#import "RMCircle.h"
@implementation RMCircleAnnotation
@synthesize radiusInMeters=_radiusInMeters;
- (id)initWithMapView:(RMMapView *)aMapView centerCoordinate:(CLLocationCoordinate2D)centerCoordinate radiusInMeters:(CGFloat)radiusInMeters
{
if (!(self = [super initWithMapView:aMapView points:[NSArray arrayWithObject:[[CLLocation alloc] initWithLatitude:centerCoordinate.latitude longitude:centerCoordinate.longitude]]]))
return nil;
_radiusInMeters = radiusInMeters;
return self;
}
- (void)setLayer:(RMMapLayer *)newLayer
{
if ( ! newLayer)
[super setLayer:nil];
else
RMLog(@"Setting a custom layer on an %@ is a no-op", [self class]);
}
- (RMMapLayer *)layer
{
if ( ! [super layer])
super.layer = [[RMCircle alloc] initWithView:self.mapView radiusInMeters:_radiusInMeters];
return [super layer];
}
- (CLLocationCoordinate2D)centerCoordinate
{
return self.coordinate;
}
- (void)setLineWidthInPixels:(CGFloat)lineWidthInPixels
{
[(RMCircle *)[self layer] setLineWidthInPixels:lineWidthInPixels];
}
- (CGFloat)lineWidthInPixels
{
return ((RMCircle *)[self layer]).lineWidthInPixels;
}
- (void)setLineWidth:(CGFloat)lineWidth
{
[self setLineWidthInPixels:lineWidth];
}
- (CGFloat)lineWidth
{
return [self lineWidthInPixels];
}
- (void)setRadiusInMeters:(CGFloat)radiusInMeters
{
[(RMCircle *)[self layer] setRadiusInMeters:radiusInMeters];
}
- (CGFloat)radiusInMeters
{
return [((RMCircle *)[self layer]) radiusInMeters];
}
@end
... ...
... ... @@ -62,7 +62,7 @@
/** @name Querying Tile Source Information */
/** Any available HTML-formatted map legend data for the tile source, suitable for display in a UIWebView. */
/** Any available HTML-formatted map legend data for the tile source, suitable for display in a `UIWebView`. */
- (NSString *)legend;
/** A suggested starting center coordinate for the map layer. */
... ...
... ... @@ -39,8 +39,7 @@
#define kMapBoxDefaultLatLonBoundingBox ((RMSphericalTrapezium){ .northEast = { .latitude = 90, .longitude = 180 }, \
.southWest = { .latitude = -90, .longitude = -180 } })
#define kMapBoxPlaceholderNormalMapID @"examples.map-z2effxa8"
#define kMapBoxPlaceholderRetinaMapID @"examples.map-zswgei2n"
#define kMapBoxPlaceholderMapID @"examples.map-z2effxa8"
// constants for the image quality API (see http://mapbox.com/developers/api/#image_quality)
typedef enum : NSUInteger {
... ... @@ -131,7 +130,7 @@ typedef enum : NSUInteger {
/** @name Querying Tile Source Information */
/** Any available HTML-formatted map legend data for the tile source, suitable for display in a UIWebView. */
/** Any available HTML-formatted map legend data for the tile source, suitable for display in a `UIWebView`. */
- (NSString *)legend;
/** A suggested starting center coordinate for the map layer. */
... ...
... ... @@ -52,11 +52,7 @@
- (id)init
{
BOOL useRetina = ([[UIScreen mainScreen] scale] > 1.0);
NSString *localTileJSONPath = [RMMapView pathForBundleResourceNamed:(useRetina ? kMapBoxPlaceholderRetinaMapID : kMapBoxPlaceholderNormalMapID) ofType:@"json"];
return [self initWithReferenceURL:[NSURL fileURLWithPath:localTileJSONPath]];
return [self initWithReferenceURL:[NSURL fileURLWithPath:[RMMapView pathForBundleResourceNamed:kMapBoxPlaceholderMapID ofType:@"json"]]];
}
- (id)initWithMapID:(NSString *)mapID
... ... @@ -211,6 +207,9 @@
tileURLString = [tileURLString stringByReplacingOccurrencesOfString:@"{x}" withString:[[NSNumber numberWithInteger:x] stringValue]];
tileURLString = [tileURLString stringByReplacingOccurrencesOfString:@"{y}" withString:[[NSNumber numberWithInteger:y] stringValue]];
if ([[UIScreen mainScreen] scale] > 1.0)
tileURLString = [tileURLString stringByReplacingOccurrencesOfString:@".png" withString:@"@2x.png"];
if (_imageQuality != RMMapBoxSourceQualityFull)
{
NSString *qualityExtension = nil;
... ...
... ... @@ -37,7 +37,8 @@
if (self.mapScrollViewDelegate)
[self.mapScrollViewDelegate scrollView:self correctedContentOffset:&contentOffset];
[super setContentOffset:contentOffset];
if (contentOffset.x && contentOffset.y)
[super setContentOffset:contentOffset];
}
- (void)setContentOffset:(CGPoint)contentOffset animated:(BOOL)animated
... ... @@ -45,7 +46,8 @@
if (self.mapScrollViewDelegate)
[self.mapScrollViewDelegate scrollView:self correctedContentOffset:&contentOffset];
[super setContentOffset:contentOffset animated:animated];
if (contentOffset.x && contentOffset.y)
[super setContentOffset:contentOffset animated:animated];
}
- (void)setContentSize:(CGSize)contentSize
... ...
... ... @@ -406,6 +406,16 @@ typedef enum : NSUInteger {
* @param index The index of the tile source to hide or show. */
- (void)setHidden:(BOOL)isHidden forTileSourceAtIndex:(NSUInteger)index;
/** Change a tile source's alpha value.
* @param alpha The desired alpha value.
* @param tileSource The tile source to change. */
- (void)setAlpha:(CGFloat)alpha forTileSource:(id <RMTileSource>)tileSource;
/** Change the alpha value of a tile source at a given index.
* @param alpha The desired alpha value.
* @param index The index of the tile source to change. */
- (void)setAlpha:(CGFloat)alpha forTileSourceAtIndex:(NSUInteger)index;
/** Reload the tiles for a given tile source.
* @param tileSource The tile source to reload. */
- (void)reloadTileSource:(id <RMTileSource>)tileSource;
... ...
... ... @@ -2111,13 +2111,13 @@
NSArray *tileSources = [self tileSources];
[tileSources enumerateObjectsUsingBlock:^(id <RMTileSource> currentTileSource, NSUInteger index, BOOL *stop)
{
{
if (tileSource == currentTileSource)
{
[self setHidden:isHidden forTileSourceAtIndex:index];
*stop = YES;
}
}];
}];
}
- (void)setHidden:(BOOL)isHidden forTileSourceAtIndex:(NSUInteger)index
... ... @@ -2128,6 +2128,28 @@
((RMMapTiledLayerView *)[_tiledLayersSuperview.subviews objectAtIndex:index]).hidden = isHidden;
}
- (void)setAlpha:(CGFloat)alpha forTileSource:(id <RMTileSource>)tileSource
{
NSArray *tileSources = [self tileSources];
[tileSources enumerateObjectsUsingBlock:^(id <RMTileSource> currentTileSource, NSUInteger index, BOOL *stop)
{
if (tileSource == currentTileSource)
{
[self setAlpha:alpha forTileSourceAtIndex:index];
*stop = YES;
}
}];
}
- (void)setAlpha:(CGFloat)alpha forTileSourceAtIndex:(NSUInteger)index
{
if (index >= [_tiledLayersSuperview.subviews count])
return;
((RMMapTiledLayerView *)[_tiledLayersSuperview.subviews objectAtIndex:index]).alpha = alpha;
}
- (void)reloadTileSource:(id <RMTileSource>)tileSource
{
// Reload the map layer
... ...
... ... @@ -138,7 +138,7 @@
NSURL *imageURL = [NSURL URLWithString:[NSString stringWithFormat:@"http://api.tiles.mapbox.com/v3/marker/pin-%@%@%@%@.png",
(sizeString ? [sizeString substringToIndex:1] : @"m"),
(symbolName ? [@"-" stringByAppendingString:symbolName] : @"-star"),
(symbolName ? [@"-" stringByAppendingString:symbolName] : @""),
(colorHex ? [@"+" stringByAppendingString:[colorHex stringByReplacingOccurrencesOfString:@"#" withString:@""]] : @"+ff0000"),
(useRetina ? @"@2x" : @"")]];
... ...
... ... @@ -28,9 +28,12 @@
#import "RMAnnotation.h"
/** An RMPointAnnotation is used to represent a single point on a map. The annotation will automatically have a layer created when needed that displays an RMMarker with a default point icon.
/** An RMPointAnnotation is used to represent a single point on a map. The annotation will automatically have a layer created when needed that displays an RMMarker with either a default point icon or the supplied image.
*
* If you wish to customize the appearance, you should instead create an RMAnnotation and configure its layer directly. Providing a layer manually for instances of RMPointAnnotation will not have any effect. */
* If you wish to customize the layer appearance in more detail, you should instead create an RMAnnotation and configure its layer directly. Providing a layer manually for instances of RMPointAnnotation will not have any effect. */
@interface RMPointAnnotation : RMAnnotation
/** An image for the annotation's point. */
@property (nonatomic, strong) UIImage *image;
@end
... ...
... ... @@ -54,4 +54,14 @@
return [super layer];
}
- (void)setImage:(UIImage *)image
{
[(RMMarker *)[self layer] replaceUIImage:image];
}
- (UIImage *)image
{
return [UIImage imageWithCGImage:(CGImageRef)[self layer].contents];
}
@end
... ...
... ... @@ -32,14 +32,14 @@
*
* When creating a polygon, you can mask out portions of the polygon by specifying one or more interior polygons. Areas that are masked by an interior polygon are not considered part of the polygon’s occupied area.
*
* If you wish to customize the appearance, you should instead create an RMAnnotation and configure its layer directly. Providing a layer manually for instances of RMPolygonAnnotation will not have any effect. */
* If you wish to customize the layer appearance in more detail, you should instead create an RMAnnotation and configure its layer directly. Providing a layer manually for instances of RMPolygonAnnotation will not have any effect. */
@interface RMPolygonAnnotation : RMShapeAnnotation
/** Initialize a polygon annotation.
* @param aMapView The map view on which to place the annotation.
* @param points An array of CLLocation points defining the shape. The data in this array is copied to the new object.
* @param points An array of CLLocation points defining the polygon. The data in this array is copied to the new object.
* @param interiorPolygons An array of RMPolygonAnnotation objects that define one or more cutout regions for the receiver’s polygon.
* @return An initialized shape annotation object, or `nil` if an annotation was unable to be initialized. */
* @return An initialized polygon annotation object, or `nil` if an annotation was unable to be initialized. */
- (id)initWithMapView:(RMMapView *)aMapView points:(NSArray *)points interiorPolygons:(NSArray *)interiorPolygons;
/** The array of polygons nested inside the receiver. (read-only)
... ...
... ... @@ -28,9 +28,9 @@
#import "RMShapeAnnotation.h"
/** An RMPolylineAnnotation is a concrete subclass of RMShapeAnnotation that is used to represent a shape consisting of one or more points that define connecting line segments. The points are connected end-to-end in the order they are provided. The first and last points are not connected to each other. The annotation will automatically have a layer created when needed that displays an RMShape.
*
* If you wish to customize the appearance, you should instead create an RMAnnotation and configure its layer directly. Providing a layer manually for instances of RMPolylineAnnotation will not have any effect. */
/** An RMPolylineAnnotation is a concrete subclass of RMShapeAnnotation that is used to represent a shape consisting of one or more points that define connecting line segments. The points are connected end-to-end in the order they are provided. The first and last points are not connected to each other. The annotation will automatically have a layer created when needed that displays an RMShape.
*
* If you wish to customize the layer appearance in more detail, you should instead create an RMAnnotation and configure its layer directly. Providing a layer manually for instances of RMPolylineAnnotation will not have any effect. */
@interface RMPolylineAnnotation : RMShapeAnnotation
@end
... ...
... ... @@ -42,4 +42,13 @@
/** The array of points associated with the shape. (read-only) */
@property (nonatomic, readonly, strong) NSArray *points;
/** A line color for the annotation's shape. */
@property (nonatomic, strong) UIColor *lineColor;
/** A line width for the annotation's shape. */
@property (nonatomic, assign) CGFloat lineWidth;
/** A fill color for the annotation's shape. */
@property (nonatomic, strong) UIColor *fillColor;
@end
... ...
... ... @@ -28,6 +28,8 @@
#import "RMShapeAnnotation.h"
#import "RMShape.h"
@implementation RMShapeAnnotation
@synthesize points=_points;
... ... @@ -49,4 +51,34 @@
return self;
}
- (void)setLineColor:(UIColor *)lineColor
{
[(RMShape *)[self layer] setLineColor:lineColor];
}
- (UIColor *)lineColor
{
return ((RMShape *)[self layer]).lineColor;
}
- (void)setLineWidth:(CGFloat)lineWidth
{
[(RMShape *)[self layer] setLineWidth:lineWidth];
}
- (CGFloat)lineWidth
{
return ((RMShape *)[self layer]).lineWidth;
}
- (void)setFillColor:(UIColor *)lineColor
{
[(RMShape *)[self layer] setFillColor:lineColor];
}
- (UIColor *)fillColor
{
return ((RMShape *)[self layer]).fillColor;
}
@end
... ...
... ... @@ -89,9 +89,7 @@
- (void)performInitializationWithMapID:(NSString *)mapID centerCoordinate:(CLLocationCoordinate2D)centerCoordinate zoomLevel:(CGFloat)zoomLevel completionHandler:(void (^)(UIImage *))handler
{
mapID = (mapID ? mapID : (([[UIScreen mainScreen] scale] > 1.0 ? kMapBoxPlaceholderRetinaMapID : kMapBoxPlaceholderNormalMapID)));
RMMapBoxSource *tileSource = [[RMMapBoxSource alloc] initWithMapID:mapID enablingDataOnMapView:self];
RMMapBoxSource *tileSource = [[RMMapBoxSource alloc] initWithMapID:kMapBoxPlaceholderMapID enablingDataOnMapView:self];
self.tileSource = tileSource;
... ...
{"attribution":"<a href='http://mapbox.com/about/maps' target='_blank'>Terms & Feedback</a>","bounds":[-180,-85.0511,180,85.0511],"center":[0,0,3],"description":"","geocoder":"http://a.tiles.mapbox.com/v3/examples.map-zswgei2n/geocode/{query}.jsonp","id":"examples.map-zswgei2n","maxzoom":19,"minzoom":0,"name":"MapBox iOS Example (Retina)","private":true,"scheme":"xyz","tilejson":"2.0.0","tiles":["http://a.tiles.mapbox.com/v3/examples.map-zswgei2n/{z}/{x}/{y}.png","http://b.tiles.mapbox.com/v3/examples.map-zswgei2n/{z}/{x}/{y}.png","http://c.tiles.mapbox.com/v3/examples.map-zswgei2n/{z}/{x}/{y}.png","http://d.tiles.mapbox.com/v3/examples.map-zswgei2n/{z}/{x}/{y}.png"],"webpage":"http://tiles.mapbox.com/examples/map/map-zswgei2n"}
\ No newline at end of file
... ... @@ -88,7 +88,6 @@
DD1E3C6E161F954F004FC649 /* SMCalloutView.h in Headers */ = {isa = PBXBuildFile; fileRef = DD1E3C6C161F954F004FC649 /* SMCalloutView.h */; };
DD1E3C6F161F954F004FC649 /* SMCalloutView.m in Sources */ = {isa = PBXBuildFile; fileRef = DD1E3C6D161F954F004FC649 /* SMCalloutView.m */; };
DD280D1416EFDDD30014B549 /* examples.map-z2effxa8.json in Resources */ = {isa = PBXBuildFile; fileRef = DD280D1216EFDDD30014B549 /* examples.map-z2effxa8.json */; };
DD280D1516EFDDD30014B549 /* examples.map-zswgei2n.json in Resources */ = {isa = PBXBuildFile; fileRef = DD280D1316EFDDD30014B549 /* examples.map-zswgei2n.json */; };
DD2B374514CF8041008DE8CB /* FMDatabase.h in Headers */ = {isa = PBXBuildFile; fileRef = DD2B373F14CF8041008DE8CB /* FMDatabase.h */; };
DD2B374614CF8041008DE8CB /* FMDatabase.m in Sources */ = {isa = PBXBuildFile; fileRef = DD2B374014CF8041008DE8CB /* FMDatabase.m */; };
DD2B374714CF8041008DE8CB /* FMDatabaseAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = DD2B374114CF8041008DE8CB /* FMDatabaseAdditions.h */; };
... ... @@ -112,6 +111,8 @@
DD5A200B15CAD09400FE4157 /* GRMustache.h in Headers */ = {isa = PBXBuildFile; fileRef = DD5A200A15CAD09400FE4157 /* GRMustache.h */; };
DD5FA1EB15E2B020004EB6C5 /* RMLoadingTileView.h in Headers */ = {isa = PBXBuildFile; fileRef = DD5FA1E915E2B020004EB6C5 /* RMLoadingTileView.h */; settings = {ATTRIBUTES = (Private, ); }; };
DD5FA1EC15E2B020004EB6C5 /* RMLoadingTileView.m in Sources */ = {isa = PBXBuildFile; fileRef = DD5FA1EA15E2B020004EB6C5 /* RMLoadingTileView.m */; };
DD63176317D15EB5008CA79B /* RMCircleAnnotation.h in Headers */ = {isa = PBXBuildFile; fileRef = DD63176117D15EB5008CA79B /* RMCircleAnnotation.h */; settings = {ATTRIBUTES = (Public, ); }; };
DD63176417D15EB5008CA79B /* RMCircleAnnotation.m in Sources */ = {isa = PBXBuildFile; fileRef = DD63176217D15EB5008CA79B /* RMCircleAnnotation.m */; };
DD7C7E38164C894F0021CCA5 /* RMStaticMapView.h in Headers */ = {isa = PBXBuildFile; fileRef = DD7C7E36164C894F0021CCA5 /* RMStaticMapView.h */; settings = {ATTRIBUTES = (Public, ); }; };
DD7C7E39164C894F0021CCA5 /* RMStaticMapView.m in Sources */ = {isa = PBXBuildFile; fileRef = DD7C7E37164C894F0021CCA5 /* RMStaticMapView.m */; };
DD8CDB4A14E0507100B73EB9 /* RMMapQuestOSMSource.h in Headers */ = {isa = PBXBuildFile; fileRef = DD8CDB4814E0507100B73EB9 /* RMMapQuestOSMSource.h */; settings = {ATTRIBUTES = (Private, ); }; };
... ... @@ -248,7 +249,6 @@
DD1E3C6C161F954F004FC649 /* SMCalloutView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SMCalloutView.h; path = SMCalloutView/SMCalloutView.h; sourceTree = "<group>"; };
DD1E3C6D161F954F004FC649 /* SMCalloutView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = SMCalloutView.m; path = SMCalloutView/SMCalloutView.m; sourceTree = "<group>"; };
DD280D1216EFDDD30014B549 /* examples.map-z2effxa8.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; name = "examples.map-z2effxa8.json"; path = "Map/Resources/examples.map-z2effxa8.json"; sourceTree = "<group>"; };
DD280D1316EFDDD30014B549 /* examples.map-zswgei2n.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; name = "examples.map-zswgei2n.json"; path = "Map/Resources/examples.map-zswgei2n.json"; sourceTree = "<group>"; };
DD2B373F14CF8041008DE8CB /* FMDatabase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FMDatabase.h; sourceTree = "<group>"; };
DD2B374014CF8041008DE8CB /* FMDatabase.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FMDatabase.m; sourceTree = "<group>"; };
DD2B374114CF8041008DE8CB /* FMDatabaseAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FMDatabaseAdditions.h; sourceTree = "<group>"; };
... ... @@ -272,6 +272,8 @@
DD5A200A15CAD09400FE4157 /* GRMustache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = GRMustache.h; path = GRMustache/include/GRMustache.h; sourceTree = "<group>"; };
DD5FA1E915E2B020004EB6C5 /* RMLoadingTileView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RMLoadingTileView.h; sourceTree = "<group>"; };
DD5FA1EA15E2B020004EB6C5 /* RMLoadingTileView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RMLoadingTileView.m; sourceTree = "<group>"; };
DD63176117D15EB5008CA79B /* RMCircleAnnotation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RMCircleAnnotation.h; sourceTree = "<group>"; };
DD63176217D15EB5008CA79B /* RMCircleAnnotation.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RMCircleAnnotation.m; sourceTree = "<group>"; };
DD6A83751644A20C0097F31F /* MapBox.bundle */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = MapBox.bundle; sourceTree = BUILT_PRODUCTS_DIR; };
DD7C7E36164C894F0021CCA5 /* RMStaticMapView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RMStaticMapView.h; sourceTree = "<group>"; };
DD7C7E37164C894F0021CCA5 /* RMStaticMapView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RMStaticMapView.m; sourceTree = "<group>"; };
... ... @@ -503,6 +505,8 @@
DDE357F316522661001DB842 /* RMPolylineAnnotation.m */,
DDE357F616522CD8001DB842 /* RMPolygonAnnotation.h */,
DDE357F716522CD8001DB842 /* RMPolygonAnnotation.m */,
DD63176117D15EB5008CA79B /* RMCircleAnnotation.h */,
DD63176217D15EB5008CA79B /* RMCircleAnnotation.m */,
16FAB66213E03D55002F4E1C /* RMQuadTree.h */,
16FAB66313E03D55002F4E1C /* RMQuadTree.m */,
B86F26AC0E87442C007A3773 /* RMMapLayer.h */,
... ... @@ -616,7 +620,6 @@
DD932BB1165C287000D69D49 /* TrackingLocation.png */,
DD932BB2165C287000D69D49 /* TrackingLocation@2x.png */,
DD280D1216EFDDD30014B549 /* examples.map-z2effxa8.json */,
DD280D1316EFDDD30014B549 /* examples.map-zswgei2n.json */,
);
name = Resources;
path = ..;
... ... @@ -697,6 +700,7 @@
DDE357F416522661001DB842 /* RMPolylineAnnotation.h in Headers */,
DDE357F816522CD8001DB842 /* RMPolygonAnnotation.h in Headers */,
DD1985C1165C5F6400DF667F /* RMTileMillSource.h in Headers */,
DD63176317D15EB5008CA79B /* RMCircleAnnotation.h in Headers */,
B8C974220E8A19B2007D16AD /* RMProjection.h in Headers */,
B8C974260E8A19B2007D16AD /* RMTile.h in Headers */,
B8C974270E8A19B2007D16AD /* RMPixel.h in Headers */,
... ... @@ -821,7 +825,6 @@
DD94D46C16C2E064003D5739 /* HeadingAngleMedium.png in Resources */,
DD94D46D16C2E064003D5739 /* HeadingAngleMedium@2x.png in Resources */,
DD280D1416EFDDD30014B549 /* examples.map-z2effxa8.json in Resources */,
DD280D1516EFDDD30014B549 /* examples.map-zswgei2n.json in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
... ... @@ -839,6 +842,7 @@
B8C974430E8A19B2007D16AD /* RMPixel.c in Sources */,
B8C974440E8A19B2007D16AD /* RMFractalTileProjection.m in Sources */,
B8C974480E8A19B2007D16AD /* RMTileCache.m in Sources */,
DD63176417D15EB5008CA79B /* RMCircleAnnotation.m in Sources */,
B8C9744A0E8A19B2007D16AD /* RMProjection.m in Sources */,
B8C9746C0E8A1A50007D16AD /* RMMapView.m in Sources */,
B8F3FC610EA2B382004D8F85 /* RMMapLayer.m in Sources */,
... ...