diff options
Diffstat (limited to 'platform/qt/src/qquickmapboxgl.cpp')
-rw-r--r-- | platform/qt/src/qquickmapboxgl.cpp | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/platform/qt/src/qquickmapboxgl.cpp b/platform/qt/src/qquickmapboxgl.cpp index a368ba56fe..9ebe526939 100644 --- a/platform/qt/src/qquickmapboxgl.cpp +++ b/platform/qt/src/qquickmapboxgl.cpp @@ -18,7 +18,7 @@ namespace { static const QRegularExpression s_camelCase {"([a-z0-9])([A-Z])"}; -static const QStringList s_parameterTypes = QStringList() << "style" << "paint" << "layout" << "layer" << "source" << "filter"; +static const QStringList s_parameterTypes = QStringList() << "style" << "paint" << "layout" << "layer" << "source" << "filter" << "image"; } // namespace @@ -251,6 +251,15 @@ void QQuickMapboxGL::onMapChanged(QMapbox::MapChange change) } } +bool QQuickMapboxGL::parseImage(QQuickMapboxGLMapParameter *param) +{ + m_imageChanges << Image { + param->property("name").toString(), + QImage(param->property("sprite").toString()) + }; + return true; +} + bool QQuickMapboxGL::parseStyle(QQuickMapboxGLMapParameter *param) { QString url = param->property("url").toString(); @@ -367,6 +376,9 @@ void QQuickMapboxGL::processMapParameter(QQuickMapboxGLMapParameter *param) case 5: // filter needsUpdate |= parseStyleFilter(param); break; + case 6: // image + needsUpdate |= parseImage(param); + break; } if (needsUpdate) update(); } @@ -405,6 +417,9 @@ void QQuickMapboxGL::onParameterPropertyUpdated(const QString &propertyName) case 5: // filter needsUpdate |= parseStyleFilter(param); break; + case 6: // image + needsUpdate |= parseImage(param); + break; } if (needsUpdate) update(); } |