summaryrefslogtreecommitdiff
path: root/platform
diff options
context:
space:
mode:
authorThiago Marcos P. Santos <thiago@mapbox.com>2016-12-23 01:33:47 -0200
committerThiago Marcos P. Santos <tmpsantos@gmail.com>2017-01-03 16:52:24 -0200
commitb8564299e5e76918ba0ec01eb4fb99bd9756638b (patch)
tree517c6b72daa932c69782e24d64d355ed37c9025b /platform
parent5437c7b5b377d215baacea5f593559cfc9a6b7e6 (diff)
downloadqtlocation-mapboxgl-b8564299e5e76918ba0ec01eb4fb99bd9756638b.tar.gz
[Qt] Simplify setTransitionOptions
Diffstat (limited to 'platform')
-rw-r--r--platform/qt/app/mapwindow.cpp4
-rw-r--r--platform/qt/include/qmapbox.hpp5
-rw-r--r--platform/qt/include/qmapboxgl.hpp3
-rw-r--r--platform/qt/src/qmapboxgl.cpp30
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) {