summaryrefslogtreecommitdiff
path: root/src/settings.cpp
diff options
context:
space:
mode:
authorTom Tanner <thosrtanner2@users.sourceforge.net>2015-05-10 12:35:52 +0100
committerTom Tanner <thosrtanner2@users.sourceforge.net>2015-05-10 12:35:52 +0100
commitcd68c9d53c75761a3766f93d4c6bbe3015cb89ce (patch)
tree68d329b8e7261648118401d13d728cb0313fac60 /src/settings.cpp
parent65b64d111bd7926c995d64d4257162d84e75b86e (diff)
parentffb470a38035b2eb2cf63909572e8d56082dc83b (diff)
Merge from master
Diffstat (limited to 'src/settings.cpp')
-rw-r--r--src/settings.cpp39
1 files changed, 39 insertions, 0 deletions
diff --git a/src/settings.cpp b/src/settings.cpp
index 54be183a..c5fa954c 100644
--- a/src/settings.cpp
+++ b/src/settings.cpp
@@ -257,6 +257,20 @@ bool Settings::getNexusLogin(QString &username, QString &password) const
}
}
+bool Settings::getSteamLogin(QString &username, QString &password) const
+{
+ if (m_Settings.contains("Settings/steam_username")) {
+ username = m_Settings.value("Settings/steam_username", "").toString();
+ if (m_Settings.contains("Settings/steam_password")) {
+ password = deObfuscate(m_Settings.value("Settings/steam_password", "").toString());
+ } else {
+ password = "";
+ }
+ return true;
+ } else {
+ return false;
+ }
+}
bool Settings::compactDownloads() const
{
return m_Settings.value("Settings/compact_downloads", false).toBool();
@@ -285,6 +299,20 @@ void Settings::setNexusLogin(QString username, QString password)
m_Settings.setValue("Settings/nexus_password", obfuscate(password));
}
+void Settings::setSteamLogin(QString username, QString password)
+{
+ if (username == "") {
+ m_Settings.remove("Settings/steam_username");
+ password = "";
+ } else {
+ m_Settings.setValue("Settings/steam_username", username);
+ }
+ if (password == "") {
+ m_Settings.remove("Settings/steam_password");
+ } else {
+ m_Settings.setValue("Settings/steam_password", obfuscate(password));
+ }
+}
LoadMechanism::EMechanism Settings::getLoadMechanism() const
{
@@ -538,6 +566,9 @@ void Settings::query(QWidget *parent)
QCheckBox *hideUncheckedBox = dialog.findChild<QCheckBox*>("hideUncheckedBox");
QCheckBox *displayForeignBox = dialog.findChild<QCheckBox*>("displayForeignBox");
+ // steam login page
+ QLineEdit *steamUserEdit = dialog.findChild<QLineEdit*>("steamUserEdit");
+ QLineEdit *steamPassEdit = dialog.findChild<QLineEdit*>("steamPassEdit");
//
// set up current settings
@@ -605,6 +636,13 @@ void Settings::query(QWidget *parent)
passwordEdit->setText(deObfuscate(m_Settings.value("Settings/nexus_password", "").toString()));
}
+ if (m_Settings.contains("Settings/steam_username")) {
+ steamUserEdit->setText(m_Settings.value("Settings/steam_username", "").toString());
+ if (m_Settings.contains("Settings/steam_password")) {
+ steamPassEdit->setText(deObfuscate(m_Settings.value("Settings/steam_password", "").toString()));
+ }
+ }
+
downloadDirEdit->setText(getDownloadDirectory());
modDirEdit->setText(getModDirectory());
cacheDirEdit->setText(getCacheDirectory());
@@ -734,6 +772,7 @@ void Settings::query(QWidget *parent)
m_Settings.remove("Settings/nexus_username");
m_Settings.remove("Settings/nexus_password");
}
+ setSteamLogin(steamUserEdit->text(), steamPassEdit->text());
m_Settings.setValue("Settings/offline_mode", offlineBox->isChecked());
m_Settings.setValue("Settings/use_proxy", proxyBox->isChecked());
m_Settings.setValue("Settings/display_foreign", displayForeignBox->isChecked());