summaryrefslogtreecommitdiff
path: root/platform/darwin/src/MGLFillStyleLayer.mm
diff options
context:
space:
mode:
authorFabian Guerra <fabian.guerra@mapbox.com>2017-02-27 20:16:50 -0500
committerJustin R. Miller <incanus@codesorcery.net>2017-03-06 17:09:25 -0800
commitde3f8fb9d31c383167ba55b7d999029c1433783e (patch)
tree41f597e2351b8b0e45781f2f192d2d58399af4fd /platform/darwin/src/MGLFillStyleLayer.mm
parentdb282217d88c270aefd237d7c8633f51a36d954a (diff)
downloadqtlocation-mapboxgl-de3f8fb9d31c383167ba55b7d999029c1433783e.tar.gz
[ios] MGLTransition implemented for style layer properties
Diffstat (limited to 'platform/darwin/src/MGLFillStyleLayer.mm')
-rw-r--r--platform/darwin/src/MGLFillStyleLayer.mm88
1 files changed, 88 insertions, 0 deletions
diff --git a/platform/darwin/src/MGLFillStyleLayer.mm b/platform/darwin/src/MGLFillStyleLayer.mm
index 6716e0efb1..81df8f4e0e 100644
--- a/platform/darwin/src/MGLFillStyleLayer.mm
+++ b/platform/darwin/src/MGLFillStyleLayer.mm
@@ -4,6 +4,7 @@
#import "MGLSource.h"
#import "MGLMapView_Private.h"
#import "NSPredicate+MGLAdditions.h"
+#import "NSDate+MGLAdditions.h"
#import "MGLStyleLayer_Private.h"
#import "MGLStyleValue_Private.h"
#import "MGLFillStyleLayer.h"
@@ -129,6 +130,23 @@ namespace mbgl {
#pragma mark - Accessing the Paint Attributes
+- (NSArray *)transitionKeys
+{
+ NSMutableArray *transitionKeys = [NSMutableArray array];
+ [transitionKeys addObject:@"fillAntialiased"];
+ [transitionKeys addObject:@"fillAntialias"];
+ [transitionKeys addObject:@"fillColor"];
+ [transitionKeys addObject:@"fillOpacity"];
+ [transitionKeys addObject:@"fillOutlineColor"];
+ [transitionKeys addObject:@"fillPattern"];
+ [transitionKeys addObject:@"fillTranslation"];
+ [transitionKeys addObject:@"fillTranslate"];
+ [transitionKeys addObject:@"fillTranslationAnchor"];
+ [transitionKeys addObject:@"fillTranslateAnchor"];
+
+ return transitionKeys;
+}
+
- (void)setFillAntialiased:(MGLStyleValue<NSNumber *> *)fillAntialiased {
MGLAssertStyleLayerIsValid();
@@ -136,6 +154,16 @@ namespace mbgl {
self.rawLayer->setFillAntialias(mbglValue);
}
+- (void)mbx_setFillAntialiasedTransition:(NSValue *)transitionValue {
+ MGLAssertStyleLayerIsValid();
+
+ MGLTransition transition;
+ [transitionValue getValue:&transition];
+
+ mbgl::style::TransitionOptions options { { MGLDurationInSecondsFromTimeInterval(transition.duration) }, { MGLDurationInSecondsFromTimeInterval(transition.delay) } };
+ self.rawLayer->setFillAntialiasTransition(options);
+}
+
- (MGLStyleValue<NSNumber *> *)isFillAntialiased {
MGLAssertStyleLayerIsValid();
@@ -160,6 +188,16 @@ namespace mbgl {
self.rawLayer->setFillColor(mbglValue);
}
+- (void)mbx_setFillColorTransition:(NSValue *)transitionValue {
+ MGLAssertStyleLayerIsValid();
+
+ MGLTransition transition;
+ [transitionValue getValue:&transition];
+
+ mbgl::style::TransitionOptions options { { MGLDurationInSecondsFromTimeInterval(transition.duration) }, { MGLDurationInSecondsFromTimeInterval(transition.delay) } };
+ self.rawLayer->setFillColorTransition(options);
+}
+
- (MGLStyleValue<MGLColor *> *)fillColor {
MGLAssertStyleLayerIsValid();
@@ -177,6 +215,16 @@ namespace mbgl {
self.rawLayer->setFillOpacity(mbglValue);
}
+- (void)mbx_setFillOpacityTransition:(NSValue *)transitionValue {
+ MGLAssertStyleLayerIsValid();
+
+ MGLTransition transition;
+ [transitionValue getValue:&transition];
+
+ mbgl::style::TransitionOptions options { { MGLDurationInSecondsFromTimeInterval(transition.duration) }, { MGLDurationInSecondsFromTimeInterval(transition.delay) } };
+ self.rawLayer->setFillOpacityTransition(options);
+}
+
- (MGLStyleValue<NSNumber *> *)fillOpacity {
MGLAssertStyleLayerIsValid();
@@ -194,6 +242,16 @@ namespace mbgl {
self.rawLayer->setFillOutlineColor(mbglValue);
}
+- (void)mbx_setFillOutlineColorTransition:(NSValue *)transitionValue {
+ MGLAssertStyleLayerIsValid();
+
+ MGLTransition transition;
+ [transitionValue getValue:&transition];
+
+ mbgl::style::TransitionOptions options { { MGLDurationInSecondsFromTimeInterval(transition.duration) }, { MGLDurationInSecondsFromTimeInterval(transition.delay) } };
+ self.rawLayer->setFillOutlineColorTransition(options);
+}
+
- (MGLStyleValue<MGLColor *> *)fillOutlineColor {
MGLAssertStyleLayerIsValid();
@@ -211,6 +269,16 @@ namespace mbgl {
self.rawLayer->setFillPattern(mbglValue);
}
+- (void)mbx_setFillPatternTransition:(NSValue *)transitionValue {
+ MGLAssertStyleLayerIsValid();
+
+ MGLTransition transition;
+ [transitionValue getValue:&transition];
+
+ mbgl::style::TransitionOptions options { { MGLDurationInSecondsFromTimeInterval(transition.duration) }, { MGLDurationInSecondsFromTimeInterval(transition.delay) } };
+ self.rawLayer->setFillPatternTransition(options);
+}
+
- (MGLStyleValue<NSString *> *)fillPattern {
MGLAssertStyleLayerIsValid();
@@ -228,6 +296,16 @@ namespace mbgl {
self.rawLayer->setFillTranslate(mbglValue);
}
+- (void)mbx_setFillTranslationTransition:(NSValue *)transitionValue {
+ MGLAssertStyleLayerIsValid();
+
+ MGLTransition transition;
+ [transitionValue getValue:&transition];
+
+ mbgl::style::TransitionOptions options { { MGLDurationInSecondsFromTimeInterval(transition.duration) }, { MGLDurationInSecondsFromTimeInterval(transition.delay) } };
+ self.rawLayer->setFillTranslateTransition(options);
+}
+
- (MGLStyleValue<NSValue *> *)fillTranslation {
MGLAssertStyleLayerIsValid();
@@ -252,6 +330,16 @@ namespace mbgl {
self.rawLayer->setFillTranslateAnchor(mbglValue);
}
+- (void)mbx_setFillTranslationAnchorTransition:(NSValue *)transitionValue {
+ MGLAssertStyleLayerIsValid();
+
+ MGLTransition transition;
+ [transitionValue getValue:&transition];
+
+ mbgl::style::TransitionOptions options { { MGLDurationInSecondsFromTimeInterval(transition.duration) }, { MGLDurationInSecondsFromTimeInterval(transition.delay) } };
+ self.rawLayer->setFillTranslateAnchorTransition(options);
+}
+
- (MGLStyleValue<NSValue *> *)fillTranslationAnchor {
MGLAssertStyleLayerIsValid();