summaryrefslogtreecommitdiff
path: root/include/mbgl/style
Commit message (Collapse)AuthorAgeFilesLines
* [core] Drop LayerTypeMikhail Pozdnyakov2019-01-042-21/+0
| | | | | Drop LayerType and its remaining usages. The generic code should be layer type agnostic.
* [core, android, darwin] Move layer factories to separate filesMikhail Pozdnyakov2018-12-1011-99/+0
|
* [core] convert CompoundExpressionRegistry to constexpr hash mapKonstantin Käfer2018-12-042-11/+3
|
* [core] use constexpr map using eternal for expression lookupsKonstantin Käfer2018-12-041-2/+1
|
* [core] layermanager folderMikhail Pozdnyakov2018-11-3012-80/+11
| | | | Move `LayerManager` and `LayerFactory` abstract classes to a dedicated folder.
* [core] Support fill-extrusion-vertical-gradientBruno de Oliveira Abinader2018-11-291-0/+6
|
* [core] LayerManager can disable annotationsMikhail Pozdnyakov2018-11-281-0/+22
| | | | | | | | | | | | | At the moment, the annotations implementation in the `mapbox-gl-native` core is creating concrete layer instances apart from `LayerManager/LayerFactory` code path. So, annotations must be disabled if the `LayerManager` implementation does not provide line, fill or symbol layers (those, used by the annotations). Note: in future, annotations implementation will be moved from the core to the platform SDK level(see https://github.com/mapbox/mapbox-plugins-android/tree/master/plugin-annotation) and `LayerManager` won't need to disable it.
* [core][Android][Darwin] LayerManager creates RenderLayer instancesMikhail Pozdnyakov2018-11-2712-98/+84
| | | | | | | | `LayerManager` is now responsible for `RenderLayer` instances creation, so that there is a single entry point for creating of objects, which correspond to a certain layer type. The `LayerType type` field is dropped from `Layer::Impl`.
* [core] Let placement transitions use the transition duration, if set, and ↵Bruno de Oliveira Abinader2018-11-211-3/+7
| | | | allow disabling them entirely
* [core] Add static layer properties to mbgl::style::LayerTypeInfoAlexander Shalamov2018-11-191-3/+22
|
* [core][android] Introduce mbgl::style::LayerTypeInfoMikhail Pozdnyakov2018-11-1512-78/+53
| | | | | | | | | The `LayerTypeInfo` contains static meta data about certain layer type. Each layer module should have a single immutable `LayerTypeInfo` instance for the represented layer type. Both `LayerImpl` and `LayerFactory` from the module always refer to the same `LayerTypeInfo` instance, so address of this instance can be used as a layer module Id during the process life time.
* noexcept specifier for layer factory methodsMikhail Pozdnyakov2018-11-0712-27/+27
|
* Refer corresponding LayerFactory instance from the Layer::ImplMikhail Pozdnyakov2018-11-0712-35/+110
|
* Introduce the style::Layer factory classesMikhail Pozdnyakov2018-10-3111-2/+119
| | | | | | | | | This patch introduces the initial implementation of - A `LayerFactory` abstract class that creates `style::Layer` instances of a certain layer type (line, hillshade, round, ..) - A singleton `LayerManager` class, which is responsible for initializing the `LayerFactory` instances and forwarding the `create()` calls to the corresponding factory.
* Remove style::Layer::is()/as()Mikhail Pozdnyakov2018-10-3111-75/+0
|
* Consolidate `style::Layer` properties APIMikhail Pozdnyakov2018-10-2512-196/+55
| | | | | | | | The `style::Layer` class now exposes all the properties contained at `style::LayerImpl`. This allowed to drop `style::Layer::accept()` method usage, avoid the repeated generated code and thus save some binary size. This patch is a part of the layers modularization effort.
* [ios, macos] Minimal darwin wrappers of 'format' expressionChris Loer2018-10-151-1/+5
| | | | Add support for `MGL_FUNCTION('format', <text>, <options dictionary>)`
* [core] Initial implementation of 'format' expressionChris Loer2018-10-1518-8/+153
|
* [core] For string-valued properties, do coercion rather than assertionJohn Firebaugh2018-09-191-10/+23
|
* [core] Auto-convert concat arguments to stringsJohn Firebaugh2018-09-191-0/+2
|
* [core] Implement array assertion fallback behaviorJohn Firebaugh2018-09-133-48/+1
| | | | This was added in gl-js in #7095.
* Port symbol-z-order symbol layout style-spec property to Nativeupstream/sort-by-yryanhamley2018-09-072-0/+9
|
* [core] Fix cubic-bezier interpolation for zooms outside stop range.Chris Loer2018-09-061-1/+7
| | | | | Fixes issue #12812. Using `util::interpolationFactor` handles the case where inputLevels.min == inputLevels.max, so it returns an interpolation factor of "0" instead of dividing by 0.
* [core] Add `line-gradient` propertyMikhail Pozdnyakov2018-08-232-1/+8
| | | | | | | | Porting of https://github.com/mapbox/mapbox-gl-js/pull/6303 See the link above for the description of the feature and its limitations). Based on patch from @lbud (Lauren Budorick).
* [core] make style/conversion.hpp implementation privateKonstantin Käfer2018-08-1922-393/+335
|
* [core] Factor out setVisibility conversionJohn Firebaugh2018-08-131-0/+1
|
* [core] Eliminate setProperty & co.John Firebaugh2018-08-1313-3/+49
|
* [core] Replace unique_any with peer from mapbox-bindgenBruno de Oliveira Abinader2018-08-082-4/+4
|
* [core] Add lineMetrics to GeoJSONOptionsMikhail Pozdnyakov2018-08-081-0/+1
| | | | | This patch also bumps geojson-vt-cpp version to 6.6.0, which enables the `lineMetrics` option.
* Rename `EvaluationContext::heatmapDensity` to `colorRampParameter`Mikhail Pozdnyakov2018-08-071-4/+4
| | | | | More generic name as the same class member is to be used by the linear gradient properties.
* Relax typing for comparison operators (#12537)Anand Thakker2018-08-024-36/+70
| | | | | | | | | | * Relax typing for comparison operators Ports https://github.com/mapbox/mapbox-gl-js/pull/6961 * Review comments * Lint fixes
* [core] Merge DataDrivenPropertyValue into PropertyValue (#12513)John Firebaugh2018-07-3115-329/+210
|
* [core] Tweak conversions to reduce binary sizeJohn Firebaugh2018-07-306-126/+29
| | | | | * return {} → return nullopt * error = { "..." } → error.message = "..."
* [core] Simplify CompoundExpression implementationJohn Firebaugh2018-07-302-102/+21
|
* Fix compilation errors with libc++ on QNX 7Sudarsana Babu Nagineni2018-07-301-1/+4
| | | | | | | | | | This patch fixes the compilation errors on QNX 7: 1) QNX 7 compiler (i.e qcc based GCC 5.4.0 with libc++ from LLVM) has a limited c++11 feature support and causing the compilation errors with the inheriting constructors. This fixes the issues by providing the required constructors explicitly. 2) Resolves an ambiguous overload error with optional<T>
* [core] Replace expressions RTTI with enums + static castBruno de Oliveira Abinader2018-07-2415-27/+68
|
* [core] Add `symbol-placement: line-center`Chris Loer2018-07-231-1/+2
| | | | | - Remove unused/vestigial 'maxCameraDistance' - Create a single collision circle for line labels that are less than half the width of a collision circle
* Keep original input for filters using legacy syntax.Asheem Mamoowala2018-07-231-3/+17
|
* [core] Convert token strings to expressionsJohn Firebaugh2018-07-207-29/+41
|
* [core] Replace {Source,Camera,Composite}Function with PropertyExpressionJohn Firebaugh2018-07-2011-293/+164
|
* [core] Convert legacy functions directly to expressionsJohn Firebaugh2018-07-1312-966/+64
|
* [core] Simplify Value conversionsJohn Firebaugh2018-07-121-41/+23
| | | | | | Use a single template function for each of {to,from}ExpressionValue, always dispatching to ValueConverter. Remove unused ValueConverter::ExpressionType typedefs.
* Rename `HeatmapColorPropertyValue` to `ColorRampPropertyValue`Mikhail Pozdnyakov2018-07-054-23/+23
| | | | | | | | Based on patch from @lbud (Lauren Budorick). Give `HeatmapColorPropertyValue` a more generic name, since the same value type will be used for both `heatmap-color` and `line-gradient` properties.
* [core] Introduce "collator" expressionsChris Loer2018-07-035-1/+86
| | | | Cross platform parsing and evaluation code.
* [core] Add assertions to expression constructorsJohn Firebaugh2018-06-293-20/+7
|
* [core] Remove stops-based *Function constructorsJohn Firebaugh2018-06-295-155/+81
|
* [darwin] Replace use of *Stops with expressions DSLJohn Firebaugh2018-06-291-0/+7
|
* [core] Replace use of *Stops with expressions DSLJohn Firebaugh2018-06-295-20/+68
|
* [core] InterpolateBase → Interpolate; Interpolate → InterpolateImplJohn Firebaugh2018-06-284-9/+9
|
* [core] Privatize Interpolate<T>John Firebaugh2018-06-282-102/+30
|