summaryrefslogtreecommitdiff
path: root/platform/qt/include/qquickmapboxgl.hpp
diff options
context:
space:
mode:
authorThiago Marcos P. Santos <thiago@mapbox.com>2016-04-28 19:43:24 +0300
committerThiago Marcos P. Santos <thiago@mapbox.com>2016-05-02 19:33:54 +0300
commitda653ec537efc37d619f3984ddeead0bee018e89 (patch)
tree19be89a8681f6d681aee82b1160004f96460bbb9 /platform/qt/include/qquickmapboxgl.hpp
parentc8d6540bc1dcf75a51ecfcfaae638419ae778c60 (diff)
downloadqtlocation-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.hpp12
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;
};