diff --git a/platform/qt/include/qmapboxgl.hpp b/platform/qt/include/qmapboxgl.hpp index e7f363c05..4c02c4273 100644 --- a/platform/qt/include/qmapboxgl.hpp +++ b/platform/qt/include/qmapboxgl.hpp @@ -31,7 +31,8 @@ public: }; enum ConstrainMode { - ConstrainHeightOnly = 0, + NoConstrain = 0, + ConstrainHeightOnly, ConstrainWidthAndHeight }; @@ -89,19 +90,19 @@ public: // Reflects mbgl::MapChange. enum MapChange { MapChangeRegionWillChange = 0, - MapChangeRegionWillChangeAnimated = 1, - MapChangeRegionIsChanging = 2, - MapChangeRegionDidChange = 3, - MapChangeRegionDidChangeAnimated = 4, - MapChangeWillStartLoadingMap = 5, - MapChangeDidFinishLoadingMap = 6, - MapChangeDidFailLoadingMap = 7, - MapChangeWillStartRenderingFrame = 8, - MapChangeDidFinishRenderingFrame = 9, - MapChangeDidFinishRenderingFrameFullyRendered = 10, - MapChangeWillStartRenderingMap = 11, - MapChangeDidFinishRenderingMap = 12, - MapChangeDidFinishRenderingMapFullyRendered = 13 + MapChangeRegionWillChangeAnimated, + MapChangeRegionIsChanging, + MapChangeRegionDidChange, + MapChangeRegionDidChangeAnimated, + MapChangeWillStartLoadingMap, + MapChangeDidFinishLoadingMap, + MapChangeDidFailLoadingMap, + MapChangeWillStartRenderingFrame, + MapChangeDidFinishRenderingFrame, + MapChangeDidFinishRenderingFrameFullyRendered, + MapChangeWillStartRenderingMap, + MapChangeDidFinishRenderingMap, + MapChangeDidFinishRenderingMapFullyRendered }; QMapboxGL(QObject *parent = 0, const QMapboxGLSettings& = QMapboxGLSettings()); diff --git a/platform/qt/src/qmapbox.cpp b/platform/qt/src/qmapbox.cpp index 143891c4a..bc60ce3e5 100644 --- a/platform/qt/src/qmapbox.cpp +++ b/platform/qt/src/qmapbox.cpp @@ -1,6 +1,7 @@ #include #include #include +#include #include @@ -8,31 +9,20 @@ #include #endif +// mbgl::MapMode +static_assert(mbgl::underlying_type(QMapbox::Online) == mbgl::underlying_type(mbgl::NetworkStatus::Status::Online), "error"); +static_assert(mbgl::underlying_type(QMapbox::Offline) == mbgl::underlying_type(mbgl::NetworkStatus::Status::Offline), "error"); + namespace QMapbox { Q_DECL_EXPORT NetworkMode networkMode() { - switch (mbgl::NetworkStatus::Get()) { - case mbgl::NetworkStatus::Status::Online: - return NetworkMode::Online; - case mbgl::NetworkStatus::Status::Offline: - return NetworkMode::Offline; - } - - // Silence compile warnings, should never happen. - return NetworkMode::Online; + return static_cast(mbgl::NetworkStatus::Get()); } Q_DECL_EXPORT void setNetworkMode(NetworkMode mode) { - switch (mode) { - case Online: - mbgl::NetworkStatus::Set(mbgl::NetworkStatus::Status::Online); - break; - case Offline: - mbgl::NetworkStatus::Set(mbgl::NetworkStatus::Status::Offline); - break; - } + mbgl::NetworkStatus::Set(static_cast(mode)); } Q_DECL_EXPORT QList>& defaultStyles() diff --git a/platform/qt/src/qmapboxgl.cpp b/platform/qt/src/qmapboxgl.cpp index 5f580c6f3..990997bb6 100644 --- a/platform/qt/src/qmapboxgl.cpp +++ b/platform/qt/src/qmapboxgl.cpp @@ -9,6 +9,7 @@ #include #include #include +#include #include #include @@ -22,6 +23,41 @@ using namespace QMapbox; +// mbgl::MapMode +static_assert(mbgl::underlying_type(QMapboxGLSettings::ContinuousMap) == mbgl::underlying_type(mbgl::MapMode::Continuous), "error"); +static_assert(mbgl::underlying_type(QMapboxGLSettings::StillMap) == mbgl::underlying_type(mbgl::MapMode::Still), "error"); + +// mbgl::GLContextMode +static_assert(mbgl::underlying_type(QMapboxGLSettings::UniqueGLContext) == mbgl::underlying_type(mbgl::GLContextMode::Unique), "error"); +static_assert(mbgl::underlying_type(QMapboxGLSettings::SharedGLContext) == mbgl::underlying_type(mbgl::GLContextMode::Shared), "error"); + +// mbgl::ConstrainMode +static_assert(mbgl::underlying_type(QMapboxGLSettings::NoConstrain) == mbgl::underlying_type(mbgl::ConstrainMode::None), "error"); +static_assert(mbgl::underlying_type(QMapboxGLSettings::ConstrainHeightOnly) == mbgl::underlying_type(mbgl::ConstrainMode::HeightOnly), "error"); +static_assert(mbgl::underlying_type(QMapboxGLSettings::ConstrainWidthAndHeight) == mbgl::underlying_type(mbgl::ConstrainMode::WidthAndHeight), "error"); + +// mbgl::NorthOrientation +static_assert(mbgl::underlying_type(QMapboxGL::NorthUpwards) == mbgl::underlying_type(mbgl::NorthOrientation::Upwards), "error"); +static_assert(mbgl::underlying_type(QMapboxGL::NorthRightwards) == mbgl::underlying_type(mbgl::NorthOrientation::Rightwards), "error"); +static_assert(mbgl::underlying_type(QMapboxGL::NorthDownwards) == mbgl::underlying_type(mbgl::NorthOrientation::Downwards), "error"); +static_assert(mbgl::underlying_type(QMapboxGL::NorthLeftwards) == mbgl::underlying_type(mbgl::NorthOrientation::Leftwards), "error"); + +// mbgl::MapChange +static_assert(mbgl::underlying_type(QMapboxGL::MapChangeRegionWillChange) == mbgl::underlying_type(mbgl::MapChangeRegionWillChange), "error"); +static_assert(mbgl::underlying_type(QMapboxGL::MapChangeRegionWillChangeAnimated) == mbgl::underlying_type(mbgl::MapChangeRegionWillChangeAnimated), "error"); +static_assert(mbgl::underlying_type(QMapboxGL::MapChangeRegionIsChanging) == mbgl::underlying_type(mbgl::MapChangeRegionIsChanging), "error"); +static_assert(mbgl::underlying_type(QMapboxGL::MapChangeRegionDidChange) == mbgl::underlying_type(mbgl::MapChangeRegionDidChange), "error"); +static_assert(mbgl::underlying_type(QMapboxGL::MapChangeRegionDidChangeAnimated) == mbgl::underlying_type(mbgl::MapChangeRegionDidChangeAnimated), "error"); +static_assert(mbgl::underlying_type(QMapboxGL::MapChangeWillStartLoadingMap) == mbgl::underlying_type(mbgl::MapChangeWillStartLoadingMap), "error"); +static_assert(mbgl::underlying_type(QMapboxGL::MapChangeDidFinishLoadingMap) == mbgl::underlying_type(mbgl::MapChangeDidFinishLoadingMap), "error"); +static_assert(mbgl::underlying_type(QMapboxGL::MapChangeDidFailLoadingMap) == mbgl::underlying_type(mbgl::MapChangeDidFailLoadingMap), "error"); +static_assert(mbgl::underlying_type(QMapboxGL::MapChangeWillStartRenderingFrame) == mbgl::underlying_type(mbgl::MapChangeWillStartRenderingFrame), "error"); +static_assert(mbgl::underlying_type(QMapboxGL::MapChangeDidFinishRenderingFrame) == mbgl::underlying_type(mbgl::MapChangeDidFinishRenderingFrame), "error"); +static_assert(mbgl::underlying_type(QMapboxGL::MapChangeDidFinishRenderingFrameFullyRendered) == mbgl::underlying_type(mbgl::MapChangeDidFinishRenderingFrameFullyRendered), "error"); +static_assert(mbgl::underlying_type(QMapboxGL::MapChangeWillStartRenderingMap) == mbgl::underlying_type(mbgl::MapChangeWillStartRenderingMap), "error"); +static_assert(mbgl::underlying_type(QMapboxGL::MapChangeDidFinishRenderingMap) == mbgl::underlying_type(mbgl::MapChangeDidFinishRenderingMap), "error"); +static_assert(mbgl::underlying_type(QMapboxGL::MapChangeDidFinishRenderingMapFullyRendered) == mbgl::underlying_type(mbgl::MapChangeDidFinishRenderingMapFullyRendered), "error"); + QMapboxGLSettings::QMapboxGLSettings() : m_mapMode(QMapboxGLSettings::ContinuousMap) , m_contextMode(QMapboxGLSettings::SharedGLContext) @@ -257,24 +293,12 @@ void QMapboxGL::setPitch(double pitch_) QMapboxGL::NorthOrientation QMapboxGL::northOrientation() const { - using NO = mbgl::NorthOrientation; - switch (d_ptr->mapObj->getNorthOrientation()) { - case NO::Rightwards: return NorthRightwards; - case NO::Downwards: return NorthDownwards; - case NO::Leftwards: return NorthLeftwards; - default: return NorthUpwards; - } + return static_cast(d_ptr->mapObj->getNorthOrientation()); } void QMapboxGL::setNorthOrientation(NorthOrientation orientation) { - using NO = mbgl::NorthOrientation; - switch (orientation) { - case NorthRightwards: d_ptr->mapObj->setNorthOrientation(NO::Rightwards); break; - case NorthDownwards: d_ptr->mapObj->setNorthOrientation(NO::Downwards); break; - case NorthLeftwards: d_ptr->mapObj->setNorthOrientation(NO::Leftwards); break; - default: d_ptr->mapObj->setNorthOrientation(NO::Upwards); break; - } + d_ptr->mapObj->setNorthOrientation(static_cast(orientation)); } void QMapboxGL::setGestureInProgress(bool inProgress)