mirror of
https://github.com/subsurface/subsurface.git
synced 2025-01-19 14:25:27 +00:00
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>
This commit is contained in:
parent
6124842b0c
commit
d65b756c4f
3 changed files with 43 additions and 0 deletions
|
@ -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
|
||||
|
|
|
@ -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();
|
||||
}
|
||||
|
|
|
@ -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();
|
||||
|
|
Loading…
Add table
Reference in a new issue