John Firebaugh
d7227e13a7
[all] Replace Result<T> with optional<T> plus out Error parameter
2017-03-23 13:31:13 -07:00
Bruno de Oliveira Abinader
1f8910de18
Make Source::getZoomRange return an optional range
2017-03-21 19:33:36 +02:00
Bruno de Oliveira Abinader
c1a410be8b
[core] s/onSourceDidChange/onSourceChanged/ + source ref
2017-03-21 17:36:56 +02:00
Bruno de Oliveira Abinader
24198ebca8
[core] Expose Source::getZoomRange
2017-03-20 18:25:04 +02:00
John Firebaugh
af75736857
[core] Avoid unnecessary convert template instantiations
2017-03-09 10:31:21 -08:00
Anand Thakker
bb846fd6cd
For data-driven paint setters, transition immediately to target value ( #8306 )
...
Closes #8237
2017-03-08 11:53:44 -05:00
John Firebaugh
b6e5edc268
[core] Restore support for *-transition properties
2017-02-09 15:08:51 -06:00
John Firebaugh
f35ca0d9df
[core, ios, macos] Refactor composite stop types and conversions
2017-02-09 11:16:26 -06:00
Ivo van Dongen
8a5bff8ee6
[core] default value support in categorical function conversion
2017-02-02 09:44:42 -08:00
John Firebaugh
141e995806
[core] Add support for data-driven styling
2017-02-02 09:44:42 -08:00
Konstantin Käfer
62ea1f2185
[core] remove trailing whitespace, add trailing newlines, add space after //
2017-01-27 11:44:16 +01:00
John Firebaugh
531a1c3070
[core] Fix calculation of delayed transitions
2017-01-17 15:18:14 -06:00
Konstantin Käfer
3b8e50a2a9
[core] add tests for function parsing
2017-01-16 10:28:21 +01:00
John Firebaugh
b65b1e2c48
[tests] Sidestep a gcc or gtest bug
...
https://github.com/google/googletest/issues/458
https://github.com/google/googletest/issues/322
Not seen in CI because of 0ef52d7f7c/scripts/travis_setup.sh (L17-L22)
2017-01-11 12:43:15 -08:00
John Firebaugh
e7778509c5
[core] Fix flickering caused by regression in #7586
...
It should be safe to invoke GeometryTileWorker::setData multiple times without invoking GeometryTileWorker::setLayers. Therefore GeometryTileWorker::redoLayout() must not consume the layers.
2017-01-10 10:15:22 -08:00
John Firebaugh
0c0064c050
[core] Get rid of user-specified refs
2017-01-04 17:38:33 -08:00
John Firebaugh
083cee8956
[core] Correct boolean function interpolation
2016-12-22 18:14:00 -08:00
Ivo van Dongen
028db7feba
[core] guard against duplicate layer ids
2016-12-12 09:05:23 -05:00
John Firebaugh
7d16824fda
[core] Functions must have at least one stop
...
This is already enforced by the style validator in mapbox-gl-style-spec. Enforce it here too.
2016-12-01 09:00:06 -08:00
Ivo van Dongen
60e451174f
[core] guard against duplicate source id’s
2016-11-30 19:35:29 +02:00
Konstantin Käfer
4fe071b518
[build] upgrade to variant 1.1.4 and dependencies
2016-11-28 18:02:00 +01:00
Konstantin Käfer
e76de05402
[build] move logging to util
2016-11-22 20:58:51 +01:00
Konstantin Käfer
3bc79e316e
[build] move default ThreadPool implementation to platform/default
2016-11-22 20:58:51 +01:00
John Firebaugh
38fcbe21d4
[core] Convert style properties to a tuple-based approach
...
This converts the style property classes (CirclePaintProperties and so on) to the same tuple-based approach as gl::Attribute and gl::Uniform. The approach is outlined in https://github.com/mapbox/cpp/blob/master/C%2B%2B%20Structural%20Metaprogramming.md .
The main advantage of this approach is it allows writing algorithms that work on sets of style properties, without resorting to code generation or manually repetitive code. This lets us iterate on approaches to data-driven properties more easily.
Another advantage is that the cascading, unevaluated, and evaluated states of a set of properties exist as independent structures, instead of individual properties holding their own state. This is a more functional approach that makes data flow clearer and reduces state.
2016-11-17 15:13:38 -08:00
Ivo van Dongen
39b0bc0a40
[core] symbol layer - recalculate style on icon/text size changes
2016-11-11 20:18:16 +01:00
Konstantin Käfer
62b56b799a
[core] change std::array<uint16_t, 2> to mbgl::Size
2016-10-27 18:30:58 -07:00
Ivo van Dongen
e31a2c1c11
[core] fixup formatting
2016-10-21 10:05:00 -07:00
Mike Morris
817c26111a
[core] [node] pass thread pool impl to Map constructor
...
Updates mbgl::Map constructor usage everywhere
Adds NodeThreadPool implementation using AsyncQueue to call
Nan::AsyncQueueWorker from main thread
2016-10-20 14:37:36 -04:00
Ivo van Dongen
ab63a9494f
[core] reload geojson source on url change
2016-10-20 16:18:08 +03:00
Konstantin Käfer
3f3fc7b772
[test] add .test.cpp suffix to test case files
2016-09-28 16:34:22 +02:00
Minh Nguyễn
f307652548
[core] Source-driven attribution
...
Implemented observer callbacks so the style knows when the source’s attribution changes and the map knows when the style’s attribution changes. Also implemented a getter for a tile source’s attribution.
Fixes #2723 .
2016-09-26 11:37:06 -07:00
Bruno de Oliveira Abinader
2ed81bbaae
[core] Trigger Update::RecalculateStyle when toggling layer visibility
2016-09-26 11:47:34 +02:00
John Firebaugh
dc1861f6d5
[core] Merge GlyphStore and GlyphAtlas
2016-09-19 09:40:43 -07:00
John Firebaugh
940124ff71
[core] Merge SpriteStore and SpriteAtlas
2016-09-19 09:40:43 -07:00
John Firebaugh
41bbd4e4f7
[core] Use an actor model for tile worker concurrency
2016-09-16 12:01:06 -07:00
clydebarrow
767aedc676
[core] Correct evaluation of interval functions
2016-09-16 10:58:42 -07:00
Konstantin Käfer
d1d523686c
[core] upgrade RapidJSON to 1.1.0
2016-09-15 14:05:23 +02:00
Konstantin Käfer
426242fe41
[core] change bool to enum class bool TileLoadState
2016-09-07 17:56:38 +02:00
John Firebaugh
d6f667a5e7
[core] Observe visibility changes
2016-09-06 14:29:22 -07:00
John Firebaugh
6d770cb40f
[core] Initial state of Source::Impl::enabled must be true
...
Until Style::recalculate() is called to check that there are no visible layers using the source, we have to assume there are. Otherwise, Style::isLoaded() can return a false positive.
2016-09-06 14:29:22 -07:00
John Firebaugh
fe2a26225f
[core, ios, android, qt] Observe style layer mutations rather than requiring SDKs to use Map::update
...
This paves the way for updates to filter and layout properties to trigger a source reload, without each SDK having to participate in the implementation.
2016-09-06 14:29:22 -07:00
Konstantin Käfer
4eb54270d7
[core] remove unused TimePoint during Source update
2016-09-05 19:04:34 +02:00
Konstantin Käfer
46b73b8a2c
[core] Source::update => Source::{load,parse}Tiles, Source::load => Source::loadDescription
2016-09-05 19:03:27 +02:00
Thiago Marcos P. Santos
c98f4f476b
[core] Emit MapChangeDidFailLoadingMap when the style cannot be loaded or parsed
...
Currently this signal is never emitted, which can cause the Still mode
to starve in case of an invalid style or failed request.
2016-08-24 20:02:31 +03:00
Ivo van Dongen
df3b44531e
[core] #6071 - extract GeoJSONOptions conversion from GeoJSONSource conversion
...
* [core] geojson_options - retain original error message
* [core] tests - initial style conversion stub methods
* [core] geojsonoptions conversion - initial unit tests
* [core] tests - fix forward reference issue
* [core] geojsonoptions conversion - unit tests
* [core] geojsonoptions conversion - renamed Holder to Value
2016-08-23 14:57:55 +02:00
Konstantin Käfer
cb33c861b4
[core] parse more Style JSON properties
...
We're now parsing "name", "center", "zoom", "bearing", and "pitch" from the stylesheet.
2016-08-19 17:34:10 +02:00
John Firebaugh
da35ef9f49
[core] Add support for $id key to filters
...
https://github.com/mapbox/mapbox-gl-style-spec/issues/391
2016-07-18 12:37:36 -07:00
Young Hahn
71a3b1d0db
[core] geometry@0.8.0 / geojsonvt@6.0.0 ( #5514 )
...
* [core] geometry.hpp 0.8.0
* geojsonvt @ 6.0.0
* Update platform deps, build scripts
* Perf optimizations/cleanup
* Rebase in geometry@080
* D.R.Y. etc
* Ensure fill annotation geometries have closed rings.
* Optimizations
* Update to geojsonvt @ 6.1.0 for clean handoff between geojson parsing and geojsonvt
* Apply close multi/poly geoms for line annotations as well
2016-07-06 17:29:34 -04:00
John Firebaugh
c4e4cc5081
[core] Adjust layer source properties to better reflect reality
...
* Layer source ID is immutable; must be provided to the constructor
* Layer source layer is mutable
* Layers with GeoJSON sources do not have a source layer
While here, make Layer::copy impl-private.
2016-06-24 09:39:15 -07:00
John Firebaugh
089c4e413f
[core] Split up and clean up conversion.hpp
2016-06-24 09:39:15 -07:00