-void CoreConnectDlg::startCoreConfig(const QVariantList &backends) {
- storageBackends = backends;
- ui.loginStack->setCurrentWidget(ui.coreConfigPage);
-
- //on_launchCoreConfigWizard_clicked();
-
-}
-
-void CoreConnectDlg::on_launchCoreConfigWizard_clicked() {
- Q_ASSERT(!wizard);
- wizard = new CoreConfigWizard(storageBackends, this);
- connect(wizard, SIGNAL(setupCore(const QVariant &)), clientSyncer, SLOT(doCoreSetup(const QVariant &)));
- connect(wizard, SIGNAL(loginToCore(const QVariantMap &)), this, SLOT(doLogin(const QVariantMap &)));
- connect(clientSyncer, SIGNAL(coreSetupSuccess()), wizard, SLOT(coreSetupSuccess()));
- connect(clientSyncer, SIGNAL(coreSetupFailed(const QString &)), wizard, SLOT(coreSetupFailed(const QString &)));
- connect(wizard, SIGNAL(accepted()), this, SLOT(configWizardAccepted()));
- connect(wizard, SIGNAL(rejected()), this, SLOT(configWizardRejected()));
- connect(clientSyncer, SIGNAL(loginSuccess()), wizard, SLOT(loginSuccess()));
- connect(clientSyncer, SIGNAL(syncFinished()), wizard, SLOT(syncFinished()));
- wizard->show();
-}
-
-void CoreConnectDlg::configWizardAccepted() {
-
- wizard->deleteLater();
- wizard = 0;
-}
-
-void CoreConnectDlg::configWizardRejected() {
-
- wizard->deleteLater();
- wizard = 0;
- //exit(1); // FIXME
-}
-
-
-/************************************************************
- * Phase Three: Syncing
- ************************************************************/
-
-void CoreConnectDlg::startSync() {
- ui.sessionProgress->setRange(0, 1);
- ui.sessionProgress->setValue(0);
- ui.networksProgress->setRange(0, 1);
- ui.networksProgress->setValue(0);
- ui.channelsProgress->setRange(0, 1);
- ui.channelsProgress->setValue(0);
- ui.ircUsersProgress->setRange(0, 1);
- ui.ircUsersProgress->setValue(0);
-
- ui.stackedWidget->setCurrentWidget(ui.syncPage);
- // clean up old page
- ui.loginGroup->setTitle(tr("Login"));
- ui.user->setEnabled(true);
- ui.password->setEnabled(true);
- ui.rememberPasswd->setEnabled(true);
- ui.loginButtonBox->button(QDialogButtonBox::Ok)->setEnabled(true);
-}
-
-void CoreConnectDlg::coreSessionProgress(quint32 val, quint32 max) {
- ui.sessionProgress->setRange(0, max);
- ui.sessionProgress->setValue(val);
-
-}
-
-void CoreConnectDlg::coreNetworksProgress(quint32 val, quint32 max) {
- if(max == 0) {
- ui.networksProgress->setFormat("0/0");
- ui.networksProgress->setRange(0, 1);
- ui.networksProgress->setValue(1);
- } else {
- ui.networksProgress->setFormat("%v/%m");
- ui.networksProgress->setRange(0, max);
- ui.networksProgress->setValue(val);
- }
-}
-
-void CoreConnectDlg::coreChannelsProgress(quint32 val, quint32 max) {
- if(max == 0) {
- ui.channelsProgress->setFormat("0/0");
- ui.channelsProgress->setRange(0, 1);
- ui.channelsProgress->setValue(1);
- } else {
- ui.channelsProgress->setFormat("%v/%m");
- ui.channelsProgress->setRange(0, max);
- ui.channelsProgress->setValue(val);
- }
-}
-
-void CoreConnectDlg::coreIrcUsersProgress(quint32 val, quint32 max) {
- if(max == 0) {
- ui.ircUsersProgress->setFormat("0/0");
- ui.ircUsersProgress->setRange(0, 1);
- ui.ircUsersProgress->setValue(1);
- } else {
- if(val % 100) return;
- ui.ircUsersProgress->setFormat("%v/%m");
- ui.ircUsersProgress->setRange(0, max);
- ui.ircUsersProgress->setValue(val);
- }
-}
-
-void CoreConnectDlg::syncFinished() {
- if(!wizard) accept();
- else {
- hide();
- disconnect(wizard, 0, this, 0);
- connect(wizard, SIGNAL(finished(int)), this, SLOT(accept()));
- }
-}
-
-/*****************************************************************************************
- * CoreAccountEditDlg
- *****************************************************************************************/
-
-CoreAccountEditDlg::CoreAccountEditDlg(AccountId id, const QVariantMap &acct, const QStringList &_existing, QWidget *parent) : QDialog(parent) {
- ui.setupUi(this);
- existing = _existing;
- account = acct;
- if(id.isValid()) {
- 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());
- } else {
- setWindowTitle(tr("Add Core Account"));
- }
-}
-
-QVariantMap CoreAccountEditDlg::accountData() {
- account["AccountName"] = ui.accountName->text();
- account["Host"] = ui.host->text();
- account["Port"] = ui.port->value();
- account["UseInternal"] = ui.useInternal->isChecked();
- return account;
-}
-
-void CoreAccountEditDlg::setWidgetStates() {
- bool ok = !ui.accountName->text().isEmpty() && !existing.contains(ui.accountName->text()) && (ui.useInternal->isChecked() || !ui.host->text().isEmpty());
- ui.buttonBox->button(QDialogButtonBox::Ok)->setEnabled(ok);
-}
-
-void CoreAccountEditDlg::on_host_textChanged(const QString &text) {
- Q_UNUSED(text);
- setWidgetStates();
-}
-
-void CoreAccountEditDlg::on_accountName_textChanged(const QString &text) {
- Q_UNUSED(text);
- setWidgetStates();
-}