X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fqtui%2Fcoreconnectdlg.cpp;h=fd4e5900b9b6439c43f1d9fa2f386a6b7fe193a4;hp=3510926dc59f37092d9c1bffc87ac999c7308267;hb=26c15c14a067c8709d2e04ef9d8965550dcee52d;hpb=b552e0cee567fdd105dc78d4c22c5c62ad4b446c diff --git a/src/qtui/coreconnectdlg.cpp b/src/qtui/coreconnectdlg.cpp index 3510926d..fd4e5900 100644 --- a/src/qtui/coreconnectdlg.cpp +++ b/src/qtui/coreconnectdlg.cpp @@ -20,6 +20,7 @@ #include #include +#include #include "coreconnectdlg.h" @@ -454,11 +455,26 @@ CoreAccountEditDlg::CoreAccountEditDlg(AccountId id, const QVariantMap &acct, co existing = _existing; account = acct; if(id.isValid()) { + // add new settings + if(!acct.contains("useProxy")) { + account["useProxy"] = false; + account["proxyHost"] = "localhost"; + account["proxyPort"] = 8080; + account["proxyType"] = QNetworkProxy::Socks5Proxy; + account["proxyUser"] = ""; + account["proxyPassword"] = ""; + } existing.removeAll(acct["AccountName"].toString()); ui.host->setText(acct["Host"].toString()); ui.port->setValue(acct["Port"].toUInt()); ui.useInternal->setChecked(acct["UseInternal"].toBool()); ui.accountName->setText(acct["AccountName"].toString()); + ui.useProxy->setChecked(account["useProxy"].toBool()); + ui.proxyHost->setText(account["proxyHost"].toString()); + ui.proxyPort->setValue(account["proxyPort"].toUInt()); + ui.proxyType->setCurrentIndex(account["proxyType"].toInt() == QNetworkProxy::Socks5Proxy ? 0 : 1); + ui.proxyHost->setText(account["proxyUser"].toString()); + ui.proxyHost->setText(account["proxyPassword"].toString()); } else { setWindowTitle(tr("Add Core Account")); } @@ -469,6 +485,12 @@ QVariantMap CoreAccountEditDlg::accountData() { account["Host"] = ui.host->text().trimmed(); account["Port"] = ui.port->value(); account["UseInternal"] = ui.useInternal->isChecked(); + account["useProxy"] = ui.useProxy->isChecked(); + account["proxyHost"] = ui.proxyHost->text().trimmed(); + account["proxyPort"] = ui.proxyPort->value(); + account["proxyType"] = ui.proxyType->currentIndex() == 0 ? QNetworkProxy::Socks5Proxy : QNetworkProxy::HttpProxy; + account["proxyUser"] = ui.proxyUser->text().trimmed(); + account["proxyPassword"] = ui.proxyPassword->text().trimmed(); return account; }