+ : QDialog(parent)
+{
+ ui.setupUi(this);
+
+ _account = acct;
+
+ ui.hostName->setText(acct.hostName());
+ ui.port->setValue(acct.port());
+ ui.accountName->setText(acct.accountName());
+ ui.user->setText(acct.user());
+ ui.password->setText(acct.password());
+ ui.rememberPassword->setChecked(acct.storePassword());
+ ui.useProxy->setChecked(acct.useProxy());
+ ui.proxyHostName->setText(acct.proxyHostName());
+ ui.proxyPort->setValue(acct.proxyPort());
+ ui.proxyType->setCurrentIndex(acct.proxyType() == QNetworkProxy::Socks5Proxy ? 0 : 1);
+ ui.proxyUser->setText(acct.proxyUser());
+ ui.proxyPassword->setText(acct.proxyPassword());
+
+ if (acct.accountId().isValid())
+ setWindowTitle(tr("Edit Core Account"));
+ else
+ setWindowTitle(tr("Add Core Account"));
+}
+
+
+CoreAccount CoreAccountEditDlg::account()
+{
+ _account.setAccountName(ui.accountName->text().trimmed());
+ _account.setHostName(ui.hostName->text().trimmed());
+ _account.setPort(ui.port->value());
+ _account.setUser(ui.user->text().trimmed());
+ _account.setPassword(ui.password->text());
+ _account.setStorePassword(ui.rememberPassword->isChecked());
+ _account.setUseProxy(ui.useProxy->isChecked());
+ _account.setProxyHostName(ui.proxyHostName->text().trimmed());
+ _account.setProxyPort(ui.proxyPort->value());
+ _account.setProxyType(ui.proxyType->currentIndex() == 0 ? QNetworkProxy::Socks5Proxy : QNetworkProxy::HttpProxy);
+ _account.setProxyUser(ui.proxyUser->text().trimmed());
+ _account.setProxyPassword(ui.proxyPassword->text());
+ return _account;
+}
+
+
+void CoreAccountEditDlg::setWidgetStates()