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