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
33 lines
715 B
C++
33 lines
715 B
C++
#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
|