Updated autogen script and code to support Light

This commit is contained in:
Nick
2017-10-23 16:41:51 -07:00
parent 8783684195
commit 9bf099ffd0
9 changed files with 306 additions and 51 deletions
+8
View File
@@ -19,6 +19,10 @@
NSArray<NSString*> *styleProps = [reactStyle allKeys];
for (NSString *prop in styleProps) {
if ([prop isEqualToString:@"__MAPBOX_STYLESHEET__"]) {
continue;
}
RCTMGLStyleValue *styleValue = [RCTMGLStyleValue make:reactStyle[prop]];
<% for (let i = 0; i < layer.properties.length; i++) { -%>
@@ -56,7 +60,11 @@
return;
}
<%_ } _%>
<%_ if (layer.name === 'light' && prop.name === 'position') { _%>
layer.position = [styleValue getSphericalPosition];
<%_ } else { _%>
layer.<%- iosPropName(prop.name) -%> = styleValue.mglStyleValue;
<%_ } _%>
}
<%_ if (prop.transition) { _%>
@@ -16,6 +16,8 @@ import com.mapbox.mapboxsdk.style.layers.PropertyValue;
import com.mapbox.mapboxsdk.style.layers.RasterLayer;
import com.mapbox.mapboxsdk.style.layers.SymbolLayer;
import com.mapbox.mapboxsdk.style.layers.TransitionOptions;
import com.mapbox.mapboxsdk.style.light.Light;
import com.mapbox.mapboxsdk.style.light.Position;
import java.util.List;
@@ -78,7 +80,14 @@ public class RCTMGLStyleFactory {
layer.setProperties(PropertyFactory.<%= prop.name %>(<%- androidGetConfigType(androidInputType(prop.type, prop.value)) -%>));
}
<%_ } else { _%>
<%_ if (layer.name === 'light' && prop.name === 'position') { _%>
Float[] values = styleValue.getFloatArray(VALUE_KEY);
layer.set<%- pascelCase(prop.name) -%>(Position.fromPosition(values[0], values[1], values[2]));
<%_ } else if (layer.name === 'light') { _%>
layer.set<%- pascelCase(prop.name) -%>(<%- androidGetConfigType(androidInputType(prop.type, prop.value)) -%>);
<%_ } else { _%>
layer.setProperties(PropertyFactory.<%= prop.name %>(<%- androidGetConfigType(androidInputType(prop.type, prop.value)) -%>));
<%_ } _%>
<%_ } _%>
}