diff options
author | Dirk Hohndel <dirk@hohndel.org> | 2015-11-13 17:14:22 -0800 |
---|---|---|
committer | Dirk Hohndel <dirk@hohndel.org> | 2015-11-13 17:15:28 -0800 |
commit | d65b756c4ff3cf929114d2a48d1a0aa22f481ed9 (patch) | |
tree | 446374484824af0165122bf00bc6adebb6d13ce3 | |
parent | 6124842b0c4e8e52a72434f78b4b4177c6e2474b (diff) | |
download | subsurface-d65b756c4ff3cf929114d2a48d1a0aa22f481ed9.tar.gz |
QML UI: add preference for webservice user id
This handles the user id for the Subsurface webservice for GPS location
tracking.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
-rw-r--r-- | qt-mobile/qml/Preferences.qml | 18 | ||||
-rw-r--r-- | qt-mobile/qmlmanager.cpp | 17 | ||||
-rw-r--r-- | qt-mobile/qmlmanager.h | 8 |
3 files changed, 43 insertions, 0 deletions
diff --git a/qt-mobile/qml/Preferences.qml b/qt-mobile/qml/Preferences.qml index b199be739..24f758f6b 100644 --- a/qt-mobile/qml/Preferences.qml +++ b/qt-mobile/qml/Preferences.qml @@ -72,6 +72,24 @@ Item { id: savePassword } + Label { + text: "Subsurface GPS data webservice" + Layout.bottomMargin: units.largeSpacing + font.pointSize: units.titlePointSize + Layout.columnSpan: 2 + } + + Label { + text: "ID" + Layout.alignment: Qt.AlignRight + } + + TextField { + id: userid + text: manager.ssrfGpsWebUserid + Layout.fillWidth: true + } + Item { width: units.gridUnit; height: width } Item { height: saveButton.height diff --git a/qt-mobile/qmlmanager.cpp b/qt-mobile/qmlmanager.cpp index d2c105110..c00134f84 100644 --- a/qt-mobile/qmlmanager.cpp +++ b/qt-mobile/qmlmanager.cpp @@ -25,6 +25,7 @@ QMLManager::QMLManager() : setCloudUserName(prefs.cloud_storage_email); setCloudPassword(prefs.cloud_storage_password); setSaveCloudPassword(prefs.save_password_local); + setSsrfGpsWebUserid(prefs.userid); if (!same_string(prefs.cloud_storage_email, "") && !same_string(prefs.cloud_storage_password, "")) loadDives(); } @@ -39,6 +40,7 @@ void QMLManager::savePreferences() s.beginGroup("CloudStorage"); s.setValue("email", cloudUserName()); s.setValue("save_password_local", saveCloudPassword()); + s.setValue("subsurface_webservice_uid", ssrfGpsWebUserid()); if (saveCloudPassword()) s.setValue("password", cloudPassword()); s.sync(); @@ -55,6 +57,10 @@ void QMLManager::savePreferences() prefs.cloud_storage_password = strdup(qPrintable(cloudPassword())); } } + if (!same_string(prefs.userid, qPrintable(ssrfGpsWebUserid()))) { + free(prefs.userid); + prefs.userid = strdup(qPrintable(ssrfGpsWebUserid())); + } } void QMLManager::loadDives() @@ -213,3 +219,14 @@ void QMLManager::setCloudUserName(const QString &cloudUserName) m_cloudUserName = cloudUserName; emit cloudUserNameChanged(); } + +QString QMLManager::ssrfGpsWebUserid() const +{ + return m_ssrfGpsWebUserid; +} + +void QMLManager::setSsrfGpsWebUserid(const QString &userid) +{ + m_ssrfGpsWebUserid = userid; + emit ssrfGpsWebUseridChanged(); +} diff --git a/qt-mobile/qmlmanager.h b/qt-mobile/qmlmanager.h index 8c42b15ef..b71dcfec5 100644 --- a/qt-mobile/qmlmanager.h +++ b/qt-mobile/qmlmanager.h @@ -16,6 +16,7 @@ class QMLManager : public QObject Q_PROPERTY(bool saveCloudPassword READ saveCloudPassword WRITE setSaveCloudPassword NOTIFY saveCloudPasswordChanged) Q_PROPERTY(QString logText READ logText WRITE setLogText NOTIFY logTextChanged) Q_PROPERTY(bool locationServiceEnabled READ locationServiceEnabled WRITE setLocationServiceEnabled NOTIFY locationServiceEnabledChanged) + Q_PROPERTY(QString ssrfGpsWebUserid READ ssrfGpsWebUserid WRITE setSsrfGpsWebUserid NOTIFY ssrfGpsWebUseridChanged) public: QMLManager(); ~QMLManager(); @@ -26,6 +27,9 @@ public: QString cloudPassword() const; void setCloudPassword(const QString &cloudPassword); + QString ssrfGpsWebUserid() const; + void setSsrfGpsWebUserid(const QString &userid); + bool saveCloudPassword() const; void setSaveCloudPassword(bool saveCloudPassword); @@ -43,10 +47,13 @@ public slots: void saveChanges(); void addDive(); void applyGpsData(); + void sendGpsData(); + void clearGpsData(); private: QString m_cloudUserName; QString m_cloudPassword; + QString m_ssrfGpsWebUserid; bool m_saveCloudPassword; QString m_logText; bool m_locationServiceEnabled; @@ -55,6 +62,7 @@ private: signals: void cloudUserNameChanged(); void cloudPasswordChanged(); + void ssrfGpsWebUseridChanged(); void saveCloudPasswordChanged(); void locationServiceEnabledChanged(); void logTextChanged(); |