diff options
author | Thiago Marcos P. Santos <thiago@mapbox.com> | 2016-12-23 01:33:47 -0200 |
---|---|---|
committer | Thiago Marcos P. Santos <tmpsantos@gmail.com> | 2017-01-03 16:52:24 -0200 |
commit | b8564299e5e76918ba0ec01eb4fb99bd9756638b (patch) | |
tree | 517c6b72daa932c69782e24d64d355ed37c9025b /platform | |
parent | 5437c7b5b377d215baacea5f593559cfc9a6b7e6 (diff) | |
download | qtlocation-mapboxgl-b8564299e5e76918ba0ec01eb4fb99bd9756638b.tar.gz |
[Qt] Simplify setTransitionOptions
Diffstat (limited to 'platform')
-rw-r--r-- | platform/qt/app/mapwindow.cpp | 4 | ||||
-rw-r--r-- | platform/qt/include/qmapbox.hpp | 5 | ||||
-rw-r--r-- | platform/qt/include/qmapboxgl.hpp | 3 | ||||
-rw-r--r-- | platform/qt/src/qmapboxgl.cpp | 30 |
4 files changed, 8 insertions, 34 deletions
diff --git a/platform/qt/app/mapwindow.cpp b/platform/qt/app/mapwindow.cpp index 28a3f1df4b..4c2c0ed2ad 100644 --- a/platform/qt/app/mapwindow.cpp +++ b/platform/qt/app/mapwindow.cpp @@ -79,7 +79,7 @@ void MapWindow::changeStyle() void MapWindow::keyPressEvent(QKeyEvent *ev) { - static const QMapbox::TransitionOptions transition { 300, {} }; + static const qint64 transitionDuration = 300; switch (ev->key()) { case Qt::Key_S: @@ -201,7 +201,7 @@ void MapWindow::keyPressEvent(QKeyEvent *ev) m_map->cycleDebugOptions(); break; case Qt::Key_R: { - m_map->setTransitionOptions(transition); + m_map->setTransitionOptions(transitionDuration); if (m_map->hasClass("night")) { m_map->removeClass("night"); } else { diff --git a/platform/qt/include/qmapbox.hpp b/platform/qt/include/qmapbox.hpp index 9de4a7041d..b8a4399fa5 100644 --- a/platform/qt/include/qmapbox.hpp +++ b/platform/qt/include/qmapbox.hpp @@ -74,11 +74,6 @@ struct Q_DECL_EXPORT CustomLayerRenderParameters { double altitude; }; -struct Q_DECL_EXPORT TransitionOptions { - QVariant duration; // qint64 - QVariant delay; // qint64 -}; - typedef void (*CustomLayerInitializeFunction)(void* context) ; typedef void (*CustomLayerRenderFunction)(void* context, const CustomLayerRenderParameters&); typedef void (*CustomLayerDeinitializeFunction)(void* context); diff --git a/platform/qt/include/qmapboxgl.hpp b/platform/qt/include/qmapboxgl.hpp index 14fe1369cf..d832bc821d 100644 --- a/platform/qt/include/qmapboxgl.hpp +++ b/platform/qt/include/qmapboxgl.hpp @@ -147,8 +147,7 @@ public: void setClasses(const QStringList &); QStringList getClasses() const; - QMapbox::TransitionOptions getTransitionOptions() const; - void setTransitionOptions(const QMapbox::TransitionOptions&); + void setTransitionOptions(qint64 duration, qint64 delay = 0); QMapbox::AnnotationID addPointAnnotation(const QMapbox::PointAnnotation &); QMapbox::AnnotationID addShapeAnnotation(const QMapbox::ShapeAnnotation &); diff --git a/platform/qt/src/qmapboxgl.cpp b/platform/qt/src/qmapboxgl.cpp index 18e9a9f4da..d6111839f3 100644 --- a/platform/qt/src/qmapboxgl.cpp +++ b/platform/qt/src/qmapboxgl.cpp @@ -81,26 +81,6 @@ auto fromQMapboxGLShapeAnnotation(const ShapeAnnotation &shapeAnnotation) { return mbgl::StyleSourcedAnnotation { std::move(mbglLineString), styleLayer.toStdString() }; } -auto fromQMapboxTransitionOptions(const QMapbox::TransitionOptions &options) { - auto convert = [](auto& value) -> mbgl::optional<mbgl::Duration> { - if (value.isValid()) { - return std::chrono::duration_cast<mbgl::Duration>(mbgl::Milliseconds(value.template value<qint64>())); - }; - return {}; - }; - return mbgl::style::TransitionOptions { convert(options.duration), convert(options.delay) }; -} - -auto toQMapboxTransitionOptions(const mbgl::style::TransitionOptions &options) { - auto convert = [](auto& value) -> QVariant { - if (value) { - return qint64(std::chrono::duration_cast<mbgl::Milliseconds>(*value).count()); - } - return {}; - }; - return QMapbox::TransitionOptions { convert(options.duration), convert(options.delay) }; -} - auto fromQStringList(const QStringList &list) { std::vector<std::string> strings; @@ -485,12 +465,12 @@ QStringList QMapboxGL::getClasses() const return classNames; } -QMapbox::TransitionOptions QMapboxGL::getTransitionOptions() const { - return toQMapboxTransitionOptions(d_ptr->mapObj->getTransitionOptions()); -} +void QMapboxGL::setTransitionOptions(qint64 duration, qint64 delay) { + static auto convert = [](qint64 value) -> mbgl::optional<mbgl::Duration> { + return std::chrono::duration_cast<mbgl::Duration>(mbgl::Milliseconds(value)); + }; -void QMapboxGL::setTransitionOptions(const QMapbox::TransitionOptions &options) { - d_ptr->mapObj->setTransitionOptions(fromQMapboxTransitionOptions(options)); + d_ptr->mapObj->setTransitionOptions(mbgl::style::TransitionOptions{ convert(duration), convert(delay) }); } mbgl::Annotation fromPointAnnotation(const PointAnnotation &pointAnnotation) { |