summaryrefslogtreecommitdiff
path: root/src/settings.cpp
diff options
context:
space:
mode:
authorTannin <devnull@localhost>2015-05-12 19:00:41 +0200
committerTannin <devnull@localhost>2015-05-12 19:00:41 +0200
commit4c1155a6ab2d81ceeab5af78e20873917f3072d0 (patch)
treeac93d8d32ff4d50c96eb97e73b44a445de0270f5 /src/settings.cpp
parent90365041f463f6c062b154e94fedbf75f96fb880 (diff)
parentcd68c9d53c75761a3766f93d4c6bbe3015cb89ce (diff)
Merge
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 002db3ef..57e422bb 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
{
@@ -547,6 +575,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
@@ -614,6 +645,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());
@@ -743,6 +781,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());