summaryrefslogtreecommitdiff
path: root/include/mbgl/util/default_styles.hpp
diff options
context:
space:
mode:
authorMinh Nguyễn <mxn@1ec5.org>2015-10-29 12:23:50 -0700
committerMinh Nguyễn <mxn@1ec5.org>2015-10-30 13:09:37 -0700
commit557b8afb7c310a6330f741ca0f38fcec098f3156 (patch)
tree701483c58128279167261b55f6ecbdfc3353f9a5 /include/mbgl/util/default_styles.hpp
parent3b6dc37e396931c883fe6ab602802dbb00defed9 (diff)
downloadqtlocation-mapboxgl-557b8afb7c310a6330f741ca0f38fcec098f3156.tar.gz
[core][iOS] Source iOS styles from default_styles
Moved mbgl::util::default_styles to a more appropriate location, where iOS platform code can also find it. Moved -[MGLMapView bundledStyleURLs] (which is now deprecated) and the style switcher in iosapp to default_styles. Added a collection of convenience methods for getting style URLs. It makes little sense to layer an enum atop this, as MapKit does, because MGLMapView styles aren’t limited to this set. A good analogy is UIColor. This also makes for a good entry point for future runtime styling APIs. Introduced independent constants for each default style, because it’s more common to need access to a particular style than to iterate over them. This fact is apparent in the MGLStyle class, which now uses macros and assertions to ensure that it’s kept up-to-date with changes in default_styles. /ref #1462
Diffstat (limited to 'include/mbgl/util/default_styles.hpp')
-rw-r--r--include/mbgl/util/default_styles.hpp32
1 files changed, 32 insertions, 0 deletions
diff --git a/include/mbgl/util/default_styles.hpp b/include/mbgl/util/default_styles.hpp
new file mode 100644
index 0000000000..3f5b6bd312
--- /dev/null
+++ b/include/mbgl/util/default_styles.hpp
@@ -0,0 +1,32 @@
+#ifndef MBGL_PLATFORM_DEFAULT_STYLES
+#define MBGL_PLATFORM_DEFAULT_STYLES
+
+#include <vector>
+#include <string>
+
+namespace mbgl {
+namespace util {
+namespace default_styles {
+
+struct DefaultStyle {
+ const char* url;
+ const char* name;
+};
+
+extern const DefaultStyle streets;
+extern const DefaultStyle emerald;
+extern const DefaultStyle light;
+extern const DefaultStyle dark;
+extern const DefaultStyle satellite;
+extern const DefaultStyle hybrid;
+
+const DefaultStyle orderedStyles[] = {
+ streets, emerald, light, dark, satellite, hybrid,
+};
+const size_t numOrderedStyles = sizeof(orderedStyles) / sizeof(DefaultStyle);
+
+} // end namespace default_styles
+} // end namespace util
+} // end namespace mbgl
+
+#endif