1// 2// AIRGoogleMapsCircle.m 3// 4// Created by Nick Italiano on 10/24/16. 5// 6 7#ifdef HAVE_GOOGLE_MAPS 8#import <UIKit/UIKit.h> 9#import "AIRGoogleMapCircle.h" 10#import <GoogleMaps/GoogleMaps.h> 11#import <React/RCTUtils.h> 12 13@implementation AIRGoogleMapCircle 14{ 15 BOOL _didMoveToWindow; 16} 17 18- (instancetype)init 19{ 20 if (self = [super init]) { 21 _didMoveToWindow = false; 22 _circle = [[GMSCircle alloc] init]; 23 } 24 return self; 25} 26 27- (void)didMoveToWindow { 28 [super didMoveToWindow]; 29 if(_didMoveToWindow) return; 30 _didMoveToWindow = true; 31 if(_fillColor) { 32 _circle.fillColor = _fillColor; 33 } 34 if(_strokeColor) { 35 _circle.strokeColor = _strokeColor; 36 } 37 if(_strokeWidth) { 38 _circle.strokeWidth = _strokeWidth; 39 } 40} 41 42- (void)setRadius:(double)radius 43{ 44 _radius = radius; 45 _circle.radius = radius; 46} 47 48- (void)setCenterCoordinate:(CLLocationCoordinate2D)centerCoordinate 49{ 50 _centerCoordinate = centerCoordinate; 51 _circle.position = centerCoordinate; 52} 53 54-(void)setStrokeColor:(UIColor *)strokeColor 55{ 56 _strokeColor = strokeColor; 57 if(_didMoveToWindow) { 58 _circle.strokeColor = strokeColor; 59 } 60} 61 62-(void)setStrokeWidth:(double)strokeWidth 63{ 64 _strokeWidth = strokeWidth; 65 if(_didMoveToWindow) { 66 _circle.strokeWidth = strokeWidth; 67 } 68} 69 70-(void)setFillColor:(UIColor *)fillColor 71{ 72 _fillColor = fillColor; 73 if(_didMoveToWindow) { 74 _circle.fillColor = fillColor; 75 } 76} 77 78-(void)setZIndex:(int)zIndex 79{ 80 _zIndex = zIndex; 81 _circle.zIndex = zIndex; 82} 83 84@end 85 86#endif 87