summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMinh Nguyễn <mxn@1ec5.org>2016-12-23 15:14:54 -0800
committerMinh Nguyễn <mxn@1ec5.org>2017-01-05 10:22:10 -0800
commit4700c72e1501aca9509d9e051b1afc2d2112597e (patch)
tree21ee50ed87d9e2ed3f0698186c3a24ce3ec63594
parentb6f7d03e5d4cb632dd3c59e3c6451e33fadca945 (diff)
downloadqtlocation-mapboxgl-4700c72e1501aca9509d9e051b1afc2d2112597e.tar.gz
[ios, macos] Relaxed sources, layers type
Refined the types of MGLStyle’s sources and layers types so that Objective-C code can easily send messages intended for subclasses of MGLSource or MGLStyleLayer that are contained in one of these containers.
-rw-r--r--platform/darwin/src/MGLStyle.h4
-rw-r--r--platform/darwin/src/MGLStyle.mm12
2 files changed, 8 insertions, 8 deletions
diff --git a/platform/darwin/src/MGLStyle.h b/platform/darwin/src/MGLStyle.h
index 58bc57b4fa..ea7f8ed5cb 100644
--- a/platform/darwin/src/MGLStyle.h
+++ b/platform/darwin/src/MGLStyle.h
@@ -189,7 +189,7 @@ static const NSInteger MGLStyleDefaultVersion = 9;
/**
A set containing the style’s sources.
*/
-@property (nonatomic, strong) NS_SET_OF(MGLSource *) *sources;
+@property (nonatomic, strong) NS_SET_OF(__kindof MGLSource *) *sources;
/**
Returns a source with the given identifier in the current style.
@@ -240,7 +240,7 @@ static const NSInteger MGLStyleDefaultVersion = 9;
The layers included in the style, arranged according to their back-to-front
ordering on the screen.
*/
-@property (nonatomic, strong) NS_ARRAY_OF(MGLStyleLayer *) *layers;
+@property (nonatomic, strong) NS_ARRAY_OF(__kindof MGLStyleLayer *) *layers;
/**
Returns a style layer with the given identifier in the current style.
diff --git a/platform/darwin/src/MGLStyle.mm b/platform/darwin/src/MGLStyle.mm
index 959ba4e363..fcfa762972 100644
--- a/platform/darwin/src/MGLStyle.mm
+++ b/platform/darwin/src/MGLStyle.mm
@@ -127,9 +127,9 @@ static NSURL *MGLStyleURL_emerald;
#pragma mark Sources
-- (NS_SET_OF(MGLSource *) *)sources {
+- (NS_SET_OF(__kindof MGLSource *) *)sources {
auto rawSources = self.mapView.mbglMap->getSources();
- NSMutableSet *sources = [NSMutableSet setWithCapacity:rawSources.size()];
+ NS_MUTABLE_SET_OF(__kindof MGLSource *) *sources = [NSMutableSet setWithCapacity:rawSources.size()];
for (auto rawSource = rawSources.begin(); rawSource != rawSources.end(); ++rawSource) {
MGLSource *source = [self sourceFromMBGLSource:*rawSource];
[sources addObject:source];
@@ -137,7 +137,7 @@ static NSURL *MGLStyleURL_emerald;
return sources;
}
-- (void)setSources:(NS_SET_OF(MGLSource *) *)sources {
+- (void)setSources:(NS_SET_OF(__kindof MGLSource *) *)sources {
for (MGLSource *source in self.sources) {
[self removeSource:source];
}
@@ -222,10 +222,10 @@ static NSURL *MGLStyleURL_emerald;
#pragma mark Style layers
-- (NS_ARRAY_OF(MGLStyleLayer *) *)layers
+- (NS_ARRAY_OF(__kindof MGLStyleLayer *) *)layers
{
auto layers = self.mapView.mbglMap->getLayers();
- NSMutableArray *styleLayers = [NSMutableArray arrayWithCapacity:layers.size()];
+ NS_MUTABLE_ARRAY_OF(__kindof MGLStyleLayer *) *styleLayers = [NSMutableArray arrayWithCapacity:layers.size()];
for (auto layer : layers) {
MGLStyleLayer *styleLayer = [self layerFromMBGLLayer:layer];
[styleLayers addObject:styleLayer];
@@ -233,7 +233,7 @@ static NSURL *MGLStyleURL_emerald;
return styleLayers;
}
-- (void)setLayers:(NS_ARRAY_OF(MGLStyleLayer *) *)layers {
+- (void)setLayers:(NS_ARRAY_OF(__kindof MGLStyleLayer *) *)layers {
for (MGLStyleLayer *layer in self.layers) {
[self removeLayer:layer];
}