diff options
author | Thiago Marcos P. Santos <thiago@mapbox.com> | 2016-04-28 19:43:24 +0300 |
---|---|---|
committer | Thiago Marcos P. Santos <thiago@mapbox.com> | 2016-05-02 19:33:54 +0300 |
commit | da653ec537efc37d619f3984ddeead0bee018e89 (patch) | |
tree | 19be89a8681f6d681aee82b1160004f96460bbb9 /platform/qt/include/qquickmapboxgl.hpp | |
parent | c8d6540bc1dcf75a51ecfcfaae638419ae778c60 (diff) | |
download | qtlocation-mapboxgl-da653ec537efc37d619f3984ddeead0bee018e89.tar.gz |
[Qt] Allow setting the style via QML
Diffstat (limited to 'platform/qt/include/qquickmapboxgl.hpp')
-rw-r--r-- | platform/qt/include/qquickmapboxgl.hpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/platform/qt/include/qquickmapboxgl.hpp b/platform/qt/include/qquickmapboxgl.hpp index 906087f7b6..0475bb4b39 100644 --- a/platform/qt/include/qquickmapboxgl.hpp +++ b/platform/qt/include/qquickmapboxgl.hpp @@ -13,6 +13,7 @@ class Q_DECL_EXPORT QQuickMapboxGL : public QQuickFramebufferObject { Q_OBJECT + // Map QML Type interface implementation. Q_ENUMS(QGeoServiceProvider::Error) Q_PROPERTY(QDeclarativeGeoServiceProvider *plugin READ plugin WRITE setPlugin NOTIFY pluginChanged) Q_PROPERTY(qreal minimumZoomLevel READ minimumZoomLevel WRITE setMinimumZoomLevel NOTIFY minimumZoomLevelChanged) @@ -25,6 +26,9 @@ class Q_DECL_EXPORT QQuickMapboxGL : public QQuickFramebufferObject Q_PROPERTY(bool copyrightsVisible READ copyrightsVisible WRITE setCopyrightsVisible NOTIFY copyrightsVisibleChanged) Q_PROPERTY(QColor color READ color WRITE setColor NOTIFY colorChanged) + // MapboxGL QML Type interface. + Q_PROPERTY(QString style READ style WRITE setStyle NOTIFY styleChanged) + public: QQuickMapboxGL(QQuickItem *parent = 0); virtual ~QQuickMapboxGL(); @@ -59,10 +63,14 @@ public: void setColor(const QColor &color); QColor color() const; + void setStyle(const QString &style); + QString style() const; + enum SyncState { NothingNeedsSync = 0x00, ZoomNeedsSync = 0x01, CenterNeedsSync = 0x02, + StyleNeedsSync = 0x04, }; int swapSyncState(); @@ -80,6 +88,8 @@ signals: void copyrightsVisibleChanged(bool visible); void colorChanged(const QColor &color); + void styleChanged(); + private: qreal m_minimumZoomLevel = 0; qreal m_maximumZoomLevel = 20; @@ -88,6 +98,8 @@ private: QGeoCoordinate m_center; QGeoShape m_visibleRegion; + QString m_style; + int m_syncState = NothingNeedsSync; }; |