Kill CoreConnectDlg, kill it with fire!
authorManuel Nickschas <sputnick@quassel-irc.org>
Thu, 19 Nov 2009 17:09:36 +0000 (18:09 +0100)
committerManuel Nickschas <sputnick@quassel-irc.org>
Sat, 28 Nov 2009 23:39:41 +0000 (00:39 +0100)
DIE DIE DIE

src/qtui/CMakeLists.txt
src/qtui/coreconnectdlg.cpp [deleted file]
src/qtui/coreconnectdlg.h [deleted file]
src/qtui/mainwin.cpp
src/qtui/mainwin.h
src/qtui/ui/coreaccounteditdlg.ui [deleted file]
src/qtui/ui/coreconnectdlg.ui [deleted file]

index a0d1665..59d3ce8 100644 (file)
@@ -28,7 +28,6 @@ set(SOURCES
     chatviewsettings.cpp
     columnhandleitem.cpp
     coreconfigwizard.cpp
-    coreconnectdlg.cpp
     coreinfodlg.cpp
     debugbufferviewoverlay.cpp
     debugconsole.cpp
@@ -73,7 +72,6 @@ set(MOC_HDRS
     chatviewsearchcontroller.h
     columnhandleitem.h
     coreconfigwizard.h
-    coreconnectdlg.h
     coreinfodlg.h
     debugbufferviewoverlay.h
     debugconsole.h
@@ -113,12 +111,10 @@ set(FORMS
     bufferwidget.ui
     channellistdlg.ui
     chatviewsearchbar.ui
-    coreaccounteditdlg.ui
     coreconfigwizardintropage.ui
     coreconfigwizardadminuserpage.ui
     coreconfigwizardstorageselectionpage.ui
     coreconfigwizardsyncpage.ui
-    coreconnectdlg.ui
     coreinfodlg.ui
     debugbufferviewoverlay.ui
     debugconsole.ui
diff --git a/src/qtui/coreconnectdlg.cpp b/src/qtui/coreconnectdlg.cpp
deleted file mode 100644 (file)
index e6d3062..0000000
+++ /dev/null
@@ -1,612 +0,0 @@
-/***************************************************************************
- *   Copyright (C) 2005-09 by the Quassel Project                          *
- *   devel@quassel-irc.org                                                 *
- *                                                                         *
- *   This program is free software; you can redistribute it and/or modify  *
- *   it under the terms of the GNU General Public License as published by  *
- *   the Free Software Foundation; either version 2 of the License, or     *
- *   (at your option) version 3.                                           *
- *                                                                         *
- *   This program is distributed in the hope that it will be useful,       *
- *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
- *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
- *   GNU General Public License for more details.                          *
- *                                                                         *
- *   You should have received a copy of the GNU General Public License     *
- *   along with this program; if not, write to the                         *
- *   Free Software Foundation, Inc.,                                       *
- *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
- ***************************************************************************/
-
-#include "coreconnectdlg.h"
-
-#include <QDebug>
-#include <QFormLayout>
-#include <QMessageBox>
-#include <QNetworkProxy>
-
-#ifdef HAVE_SSL
-#include <QSslSocket>
-#include <QSslCertificate>
-#endif
-
-#include "client.h"
-#include "clientsettings.h"
-#include "clientsyncer.h"
-#include "coreconfigwizard.h"
-#include "iconloader.h"
-#include "quassel.h"
-#include "util.h"
-
-CoreConnectDlg::CoreConnectDlg(bool autoconnect, QWidget *parent)
-  : QDialog(parent),
-    _internalAccountId(0)
-{
-  ui.setupUi(this);
-  ui.editAccount->setIcon(SmallIcon("document-properties"));
-  ui.addAccount->setIcon(SmallIcon("list-add"));
-  ui.deleteAccount->setIcon(SmallIcon("list-remove"));
-  ui.connectIcon->setPixmap(BarIcon("network-disconnect"));
-  ui.secureConnection->setPixmap(SmallIcon("document-encrypt"));
-
-  if(Quassel::runMode() != Quassel::Monolithic) {
-    ui.useInternalCore->hide();
-  }
-
-  // make it look more native under Mac OS X:
-  setWindowFlags(Qt::Sheet);
-
-  clientSyncer = new ClientSyncer(this);
-  Client::registerClientSyncer(clientSyncer);
-
-  wizard = 0;
-
-  doingAutoConnect = false;
-
-  ui.stackedWidget->setCurrentWidget(ui.accountPage);
-
-  CoreAccountSettings s;
-  AccountId lastacc = s.lastAccount();
-  autoConnectAccount = s.autoConnectAccount();
-  QListWidgetItem *currentItem = 0;
-  foreach(AccountId id, s.knownAccounts()) {
-    if(!id.isValid()) continue;
-    QVariantMap data = s.retrieveAccountData(id);
-    if(data.contains("InternalAccount") && data["InternalAccount"].toBool()) {
-      _internalAccountId = id;
-      continue;
-    }
-    data["AccountId"] = QVariant::fromValue<AccountId>(id);
-    accounts[id] = data;
-    QListWidgetItem *item = new QListWidgetItem(data["AccountName"].toString(), ui.accountList);
-    item->setData(Qt::UserRole, QVariant::fromValue<AccountId>(id));
-    if(id == lastacc) currentItem = item;
-  }
-  if(currentItem) ui.accountList->setCurrentItem(currentItem);
-  else ui.accountList->setCurrentRow(0);
-
-  setAccountWidgetStates();
-
-  ui.accountButtonBox->button(QDialogButtonBox::Ok)->setFocus();
-  //ui.accountButtonBox->button(QDialogButtonBox::Ok)->setAutoDefault(true);
-
-  connect(clientSyncer, SIGNAL(socketStateChanged(QAbstractSocket::SocketState)),this, SLOT(initPhaseSocketState(QAbstractSocket::SocketState)));
-  connect(clientSyncer, SIGNAL(connectionError(const QString &)), this, SLOT(initPhaseError(const QString &)));
-  connect(clientSyncer, SIGNAL(connectionWarnings(const QStringList &)), this, SLOT(initPhaseWarnings(const QStringList &)));
-  connect(clientSyncer, SIGNAL(connectionMsg(const QString &)), this, SLOT(initPhaseMsg(const QString &)));
-  connect(clientSyncer, SIGNAL(startLogin()), this, SLOT(startLogin()));
-  connect(clientSyncer, SIGNAL(loginFailed(const QString &)), this, SLOT(loginFailed(const QString &)));
-  connect(clientSyncer, SIGNAL(loginSuccess()), this, SLOT(startSync()));
-  connect(clientSyncer, SIGNAL(startCoreSetup(const QVariantList &)), this, SLOT(startCoreConfig(const QVariantList &)));
-  connect(clientSyncer, SIGNAL(sessionProgress(quint32, quint32)), this, SLOT(coreSessionProgress(quint32, quint32)));
-  connect(clientSyncer, SIGNAL(networksProgress(quint32, quint32)), this, SLOT(coreNetworksProgress(quint32, quint32)));
-  connect(clientSyncer, SIGNAL(syncFinished()), this, SLOT(syncFinished()));
-  connect(clientSyncer, SIGNAL(encrypted()), ui.secureConnection, SLOT(show()));
-
-  connect(ui.user, SIGNAL(textChanged(const QString &)), this, SLOT(setLoginWidgetStates()));
-  connect(ui.password, SIGNAL(textChanged(const QString &)), this, SLOT(setLoginWidgetStates()));
-
-  connect(ui.loginButtonBox, SIGNAL(rejected()), this, SLOT(restartPhaseNull()));
-  connect(ui.syncButtonBox->button(QDialogButtonBox::Abort), SIGNAL(clicked()), this, SLOT(restartPhaseNull()));
-
-  if(autoconnect && ui.accountList->count() && autoConnectAccount.isValid()
-     && autoConnectAccount == ui.accountList->currentItem()->data(Qt::UserRole).value<AccountId>()) {
-    doingAutoConnect = true;
-    on_accountButtonBox_accepted();
-  }
-}
-
-CoreConnectDlg::~CoreConnectDlg() {
-  if(ui.accountList->selectedItems().count()) {
-    CoreAccountSettings s;
-    s.setLastAccount(ui.accountList->selectedItems()[0]->data(Qt::UserRole).value<AccountId>());
-  }
-}
-
-
-/****************************************************
- * Account Management
- ***************************************************/
-
-void CoreConnectDlg::on_accountList_itemSelectionChanged() {
-  setAccountWidgetStates();
-}
-
-void CoreConnectDlg::setAccountWidgetStates() {
-  QList<QListWidgetItem *> selectedItems = ui.accountList->selectedItems();
-  ui.editAccount->setEnabled(selectedItems.count());
-  ui.deleteAccount->setEnabled(selectedItems.count());
-  ui.autoConnect->setEnabled(selectedItems.count());
-  if(selectedItems.count()) {
-    ui.autoConnect->setChecked(selectedItems[0]->data(Qt::UserRole).value<AccountId>() == autoConnectAccount);
-  }
-  ui.accountButtonBox->button(QDialogButtonBox::Ok)->setEnabled(ui.accountList->count());
-}
-
-void CoreConnectDlg::on_autoConnect_clicked(bool state) {
-  if(!state) {
-    autoConnectAccount = 0;
-  } else {
-    if(ui.accountList->selectedItems().count()) {
-      autoConnectAccount = ui.accountList->selectedItems()[0]->data(Qt::UserRole).value<AccountId>();
-    } else {
-      qWarning() << "Checked auto connect without an enabled item!";  // should never happen!
-      autoConnectAccount = 0;
-    }
-  }
-  setAccountWidgetStates();
-}
-
-void CoreConnectDlg::on_addAccount_clicked() {
-  QStringList existing;
-  for(int i = 0; i < ui.accountList->count(); i++) existing << ui.accountList->item(i)->text();
-  CoreAccountEditDlg dlg(0, QVariantMap(), existing, this);
-  if(dlg.exec() == QDialog::Accepted) {
-    AccountId id = findFreeAccountId();
-    QVariantMap data = dlg.accountData();
-    data["AccountId"] = QVariant::fromValue<AccountId>(id);
-    accounts[id] = data;
-    QListWidgetItem *item = new QListWidgetItem(data["AccountName"].toString(), ui.accountList);
-    item->setData(Qt::UserRole, QVariant::fromValue<AccountId>(id));
-    ui.accountList->setCurrentItem(item);
-  }
-}
-
-void CoreConnectDlg::on_editAccount_clicked() {
-  QStringList existing;
-  for(int i = 0; i < ui.accountList->count(); i++) existing << ui.accountList->item(i)->text();
-  AccountId id = ui.accountList->currentItem()->data(Qt::UserRole).value<AccountId>();
-  QVariantMap acct = accounts[id];
-  CoreAccountEditDlg dlg(id, acct, existing, this);
-  if(dlg.exec() == QDialog::Accepted) {
-    QVariantMap data = dlg.accountData();
-    ui.accountList->currentItem()->setText(data["AccountName"].toString());
-    accounts[id] = data;
-  }
-}
-
-void CoreConnectDlg::on_deleteAccount_clicked() {
-  AccountId id = ui.accountList->currentItem()->data(Qt::UserRole).value<AccountId>();
-  int ret = QMessageBox::question(this, tr("Remove Account Settings"),
-                                  tr("Do you really want to remove your local settings for this Quassel Core account?<br>"
-                                  "Note: This will <em>not</em> remove or change any data on the Core itself!"),
-                                  QMessageBox::Yes|QMessageBox::No, QMessageBox::No);
-  if(ret == QMessageBox::Yes) {
-    int idx = ui.accountList->currentRow();
-    delete ui.accountList->takeItem(idx);
-    ui.accountList->setCurrentRow(qMin(idx, ui.accountList->count()-1));
-    accounts[id]["Delete"] = true;  // we only flag this here, actual deletion happens on accept!
-    setAccountWidgetStates();
-  }
-}
-
-void CoreConnectDlg::on_accountList_itemDoubleClicked(QListWidgetItem *item) {
-  Q_UNUSED(item);
-  on_accountButtonBox_accepted();
-}
-
-void CoreConnectDlg::on_accountButtonBox_accepted() {
-  // save accounts
-  CoreAccountSettings s;
-  foreach(QVariantMap acct, accounts.values()) {
-    AccountId id = acct["AccountId"].value<AccountId>();
-    if(acct.contains("Delete")) {
-      s.removeAccount(id);
-    } else {
-      s.storeAccountData(id, acct);
-    }
-  }
-  s.setAutoConnectAccount(autoConnectAccount);
-
-  ui.stackedWidget->setCurrentWidget(ui.loginPage);
-  account = ui.accountList->currentItem()->data(Qt::UserRole).value<AccountId>();
-  accountData = accounts[account];
-  s.setLastAccount(account);
-  connectToCore();
-}
-
-void CoreConnectDlg::on_useInternalCore_clicked() {
-  clientSyncer->useInternalCore();
-  ui.loginButtonBox->setStandardButtons(QDialogButtonBox::Cancel);
-}
-
-/*****************************************************
- * Connecting to the Core
- ****************************************************/
-
-/*** Phase One: initializing the core connection ***/
-
-void CoreConnectDlg::connectToCore() {
-  ui.secureConnection->hide();
-  ui.connectIcon->setPixmap(BarIcon("network-disconnect"));
-  ui.connectLabel->setText(tr("Connect to %1").arg(accountData["Host"].toString()));
-  ui.coreInfoLabel->setText("");
-  ui.loginStack->setCurrentWidget(ui.loginEmptyPage);
-  ui.loginButtonBox->setStandardButtons(QDialogButtonBox::Cancel|QDialogButtonBox::Ok);
-  ui.loginButtonBox->button(QDialogButtonBox::Ok)->setDefault(true);
-  ui.loginButtonBox->button(QDialogButtonBox::Ok)->setDisabled(true);
-  disconnect(ui.loginButtonBox, 0, this, 0);
-  connect(ui.loginButtonBox, SIGNAL(rejected()), this, SLOT(restartPhaseNull()));
-
-  clientSyncer->connectToCore(accountData);
-}
-
-void CoreConnectDlg::initPhaseError(const QString &error) {
-  doingAutoConnect = false;
-  ui.secureConnection->hide();
-  ui.connectIcon->setPixmap(BarIcon("dialog-error"));
-  //ui.connectLabel->setBrush(QBrush("red"));
-  ui.connectLabel->setText(tr("<div style=color:red;>Connection to %1 failed!</div>").arg(accountData["Host"].toString()));
-  ui.coreInfoLabel->setText(error);
-  ui.loginButtonBox->setStandardButtons(QDialogButtonBox::Retry|QDialogButtonBox::Cancel);
-  ui.loginButtonBox->button(QDialogButtonBox::Retry)->setFocus();
-  disconnect(ui.loginButtonBox, 0, this, 0);
-  connect(ui.loginButtonBox, SIGNAL(accepted()), this, SLOT(restartPhaseNull()));
-  connect(ui.loginButtonBox, SIGNAL(rejected()), this, SLOT(reject()));
-}
-
-void CoreConnectDlg::initPhaseWarnings(const QStringList &warnings) {
-  doingAutoConnect = false;
-  ui.secureConnection->hide();
-  ui.connectIcon->setPixmap(BarIcon("dialog-warning"));
-  ui.connectLabel->setText(tr("<div>Errors occurred while connecting to \"%1\":</div>").arg(accountData["Host"].toString()));
-  QStringList warningItems;
-  foreach(QString warning, warnings) {
-    warningItems << QString("<li>%1</li>").arg(warning);
-  }
-  ui.coreInfoLabel->setText(QString("<ul>%1</ul>").arg(warningItems.join("")));
-  ui.loginStack->setCurrentWidget(ui.connectionWarningsPage);
-  ui.loginButtonBox->setStandardButtons(QDialogButtonBox::Cancel);
-  ui.loginButtonBox->button(QDialogButtonBox::Cancel)->setFocus();
-  disconnect(ui.loginButtonBox, 0, this, 0);
-  connect(ui.loginButtonBox, SIGNAL(rejected()), this, SLOT(restartPhaseNull()));
-}
-
-void CoreConnectDlg::on_viewSslCertButton_clicked() {
-#ifdef HAVE_SSL
-  const QSslSocket *socket = qobject_cast<const QSslSocket *>(clientSyncer->currentDevice());
-  if(!socket)
-    return;
-
-  SslCertDisplayDialog dialog(socket->peerName(), socket->peerCertificate());
-  dialog.exec();
-#endif
-}
-
-void CoreConnectDlg::on_ignoreWarningsButton_clicked() {
-  clientSyncer->ignoreWarnings(ui.ignoreWarningsPermanently->isChecked());
-}
-
-
-void CoreConnectDlg::initPhaseMsg(const QString &msg) {
-  ui.coreInfoLabel->setText(msg);
-}
-
-void CoreConnectDlg::initPhaseSocketState(QAbstractSocket::SocketState state) {
-  QString s;
-  QString host = accountData["Host"].toString();
-  switch(state) {
-    case QAbstractSocket::UnconnectedState: s = tr("Not connected to %1.").arg(host); break;
-    case QAbstractSocket::HostLookupState: s = tr("Looking up %1...").arg(host); break;
-    case QAbstractSocket::ConnectingState: s = tr("Connecting to %1...").arg(host); break;
-    case QAbstractSocket::ConnectedState: s = tr("Connected to %1").arg(host); break;
-    default: s = tr("Unknown connection state to %1"); break;
-  }
-  ui.connectLabel->setText(s);
-}
-
-void CoreConnectDlg::restartPhaseNull() {
-  doingAutoConnect = false;
-  ui.stackedWidget->setCurrentWidget(ui.accountPage);
-  clientSyncer->disconnectFromCore();
-}
-
-/*********************************************************
- * Phase Two: Login
- *********************************************************/
-
-void CoreConnectDlg::startLogin() {
-  ui.connectIcon->setPixmap(BarIcon("network-connect"));
-  ui.loginStack->setCurrentWidget(ui.loginCredentialsPage);
-  //ui.loginStack->setMinimumSize(ui.loginStack->sizeHint()); ui.loginStack->updateGeometry();
-  ui.loginButtonBox->setStandardButtons(QDialogButtonBox::Ok|QDialogButtonBox::Cancel);
-  ui.loginButtonBox->button(QDialogButtonBox::Ok)->setDefault(true);
-  ui.loginButtonBox->button(QDialogButtonBox::Ok)->setFocus();
-  if(!accountData["User"].toString().isEmpty()) {
-    ui.user->setText(accountData["User"].toString());
-    if(accountData["RememberPasswd"].toBool()) {
-      ui.password->setText(accountData["Password"].toString());
-      ui.rememberPasswd->setChecked(true);
-      ui.loginButtonBox->button(QDialogButtonBox::Ok)->setFocus();
-    } else {
-      ui.rememberPasswd->setChecked(false);
-      ui.password->setFocus();
-    }
-  } else ui.user->setFocus();
-  disconnect(ui.loginButtonBox, 0, this, 0);
-  connect(ui.loginButtonBox, SIGNAL(accepted()), this, SLOT(doLogin()));
-  connect(ui.loginButtonBox, SIGNAL(rejected()), this, SLOT(restartPhaseNull()));
-  if(doingAutoConnect) doLogin();
-}
-
-void CoreConnectDlg::doLogin() {
-  QVariantMap loginData;
-  loginData["User"] = ui.user->text();
-  loginData["Password"] = ui.password->text();
-  loginData["RememberPasswd"] = ui.rememberPasswd->isChecked();
-  doLogin(loginData);
-}
-
-void CoreConnectDlg::doLogin(const QVariantMap &loginData) {
-  disconnect(ui.loginButtonBox, 0, this, 0);
-  connect(ui.loginButtonBox, SIGNAL(accepted()), this, SLOT(doLogin()));
-  connect(ui.loginButtonBox, SIGNAL(rejected()), this, SLOT(restartPhaseNull()));
-  ui.loginStack->setCurrentWidget(ui.loginCredentialsPage);
-  ui.loginGroup->setTitle(tr("Logging in..."));
-  ui.user->setDisabled(true);
-  ui.password->setDisabled(true);
-  ui.rememberPasswd->setDisabled(true);
-  ui.loginButtonBox->button(QDialogButtonBox::Ok)->setDisabled(true);
-  accountData["User"] = loginData["User"];
-  accountData["RememberPasswd"] = loginData["RememberPasswd"];
-  if(loginData["RememberPasswd"].toBool()) accountData["Password"] = loginData["Password"];
-  else accountData.remove("Password");
-  ui.user->setText(loginData["User"].toString());
-  ui.password->setText(loginData["Password"].toString());
-  ui.rememberPasswd->setChecked(loginData["RememberPasswd"].toBool());
-  CoreAccountSettings s;
-  s.storeAccountData(account, accountData);
-  clientSyncer->loginToCore(loginData["User"].toString(), loginData["Password"].toString());
-}
-
-void CoreConnectDlg::setLoginWidgetStates() {
-  ui.loginButtonBox->button(QDialogButtonBox::Ok)->setDisabled(ui.user->text().isEmpty() || ui.password->text().isEmpty());
-}
-
-void CoreConnectDlg::loginFailed(const QString &error) {
-  if(wizard) {
-    wizard->reject();
-  }
-  ui.connectIcon->setPixmap(BarIcon("dialog-error"));
-  ui.loginStack->setCurrentWidget(ui.loginCredentialsPage);
-  ui.loginGroup->setTitle(tr("Login"));
-  ui.user->setEnabled(true);
-  ui.password->setEnabled(true);
-  ui.rememberPasswd->setEnabled(true);
-  ui.coreInfoLabel->setText(error);
-  ui.loginButtonBox->button(QDialogButtonBox::Ok)->setEnabled(true);
-  ui.password->setFocus();
-  doingAutoConnect = false;
-}
-
-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.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);
-  if(ui.loginButtonBox->standardButtons() & QDialogButtonBox::Ok) // in mono mode we don't show an Ok Button
-    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::syncFinished() {
-  if(!wizard) accept();
-  else {
-    hide();
-    disconnect(wizard, 0, this, 0);
-    connect(wizard, SIGNAL(finished(int)), this, SLOT(accept()));
-  }
-}
-
-AccountId CoreConnectDlg::findFreeAccountId() {
-  for(AccountId i = 1;; i++) {
-    if(!accounts.contains(i) && i != _internalAccountId)
-      return i;
-  }
-}
-
-/*****************************************************************************************
- * CoreAccountEditDlg
- *****************************************************************************************/
-CoreAccountEditDlg::CoreAccountEditDlg(AccountId id, const QVariantMap &acct, const QStringList &_existing, QWidget *parent)
-  : QDialog(parent)
-{
-  ui.setupUi(this);
-  ui.useSsl->setIcon(SmallIcon("document-encrypt"));
-
-  existing = _existing;
-  if(id.isValid()) {
-    account = acct;
-
-    existing.removeAll(acct["AccountName"].toString());
-    ui.host->setText(acct["Host"].toString());
-    ui.port->setValue(acct["Port"].toUInt());
-    ui.accountName->setText(acct["AccountName"].toString());
-#ifdef HAVE_SSL
-    ui.useSsl->setChecked(acct["useSsl"].toBool());
-#else
-    ui.useSsl->setChecked(false);
-    ui.useSsl->setEnabled(false);
-#endif
-    ui.useProxy->setChecked(acct["useProxy"].toBool());
-    ui.proxyHost->setText(acct["proxyHost"].toString());
-    ui.proxyPort->setValue(acct["proxyPort"].toUInt());
-    ui.proxyType->setCurrentIndex(acct["proxyType"].toInt() == QNetworkProxy::Socks5Proxy ? 0 : 1);
-    ui.proxyUser->setText(acct["proxyUser"].toString());
-    ui.proxyPassword->setText(acct["proxyPassword"].toString());
-  } else {
-    setWindowTitle(tr("Add Core Account"));
-#ifndef HAVE_SSL
-    ui.useSsl->setChecked(false);
-    ui.useSsl->setEnabled(false);
-#endif
-  }
-}
-
-QVariantMap CoreAccountEditDlg::accountData() {
-  account["AccountName"] = ui.accountName->text().trimmed();
-  account["Host"] = ui.host->text().trimmed();
-  account["Port"] = ui.port->value();
-  account["useSsl"] = ui.useSsl->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;
-}
-
-void CoreAccountEditDlg::setWidgetStates() {
-  bool ok = !ui.accountName->text().trimmed().isEmpty() && !existing.contains(ui.accountName->text()) && !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();
-}
-
-
-
-// ========================================
-//  SslCertDisplayDialog
-// ========================================
-#ifdef HAVE_SSL
-SslCertDisplayDialog::SslCertDisplayDialog(const QString &host, const QSslCertificate &cert, QWidget *parent)
-  : QDialog(parent)
-{
-  setWindowTitle(tr("SSL Certificate used by %1").arg(host));
-
-  QVBoxLayout *mainLayout = new QVBoxLayout(this);
-
-  QGroupBox *issuerBox = new QGroupBox(tr("Issuer Info"), this);
-  QFormLayout *issuerLayout = new QFormLayout(issuerBox);
-  issuerLayout->addRow(tr("Organization:"), new QLabel(cert.issuerInfo(QSslCertificate::Organization), this));
-  issuerLayout->addRow(tr("Locality Name:"), new QLabel(cert.issuerInfo(QSslCertificate::LocalityName), this));
-  issuerLayout->addRow(tr("Organizational Unit Name:"), new QLabel(cert.issuerInfo(QSslCertificate::OrganizationalUnitName), this));
-  issuerLayout->addRow(tr("Country Name:"), new QLabel(cert.issuerInfo(QSslCertificate::CountryName), this));
-  issuerLayout->addRow(tr("State or Province Name:"), new QLabel(cert.issuerInfo(QSslCertificate::StateOrProvinceName), this));
-  mainLayout->addWidget(issuerBox);
-
-  QGroupBox *subjectBox = new QGroupBox(tr("Subject Info"), this);
-  QFormLayout *subjectLayout = new QFormLayout(subjectBox);
-  subjectLayout->addRow(tr("Organization:"), new QLabel(cert.subjectInfo(QSslCertificate::Organization), this));
-  subjectLayout->addRow(tr("Locality Name:"), new QLabel(cert.subjectInfo(QSslCertificate::LocalityName), this));
-  subjectLayout->addRow(tr("Organizational Unit Name:"), new QLabel(cert.subjectInfo(QSslCertificate::OrganizationalUnitName), this));
-  subjectLayout->addRow(tr("Country Name:"), new QLabel(cert.subjectInfo(QSslCertificate::CountryName), this));
-  subjectLayout->addRow(tr("State or Province Name:"), new QLabel(cert.subjectInfo(QSslCertificate::StateOrProvinceName), this));
-  mainLayout->addWidget(subjectBox);
-
-  QGroupBox *additionalBox = new QGroupBox(tr("Additional Info"), this);
-  QFormLayout *additionalLayout = new QFormLayout(additionalBox);
-  additionalLayout->addRow(tr("Valid From:"), new QLabel(cert.effectiveDate().toString(), this));
-  additionalLayout->addRow(tr("Valid To:"), new QLabel(cert.expiryDate().toString(), this));
-  QStringList hostnames = cert.alternateSubjectNames().values(QSsl::DnsEntry);
-  for(int i = 0; i < hostnames.count(); i++) {
-    additionalLayout->addRow(tr("Hostname %1:").arg(i + 1), new QLabel(hostnames[i], this));
-  }
-  QStringList mailaddresses = cert.alternateSubjectNames().values(QSsl::EmailEntry);
-  for(int i = 0; i < mailaddresses.count(); i++) {
-    additionalLayout->addRow(tr("E-Mail Address %1:").arg(i + 1), new QLabel(mailaddresses[i], this));
-  }
-  additionalLayout->addRow(tr("Digest:"), new QLabel(QString(prettyDigest(cert.digest()))));
-  mainLayout->addWidget(additionalBox);
-
-
-  QDialogButtonBox *buttonBox = new QDialogButtonBox(QDialogButtonBox::Ok, Qt::Horizontal, this);
-  mainLayout->addWidget(buttonBox);
-
-  connect(buttonBox, SIGNAL(accepted()), this, SLOT(accept()));
-  connect(buttonBox, SIGNAL(rejected()), this, SLOT(reject()));
-}
-#endif
diff --git a/src/qtui/coreconnectdlg.h b/src/qtui/coreconnectdlg.h
deleted file mode 100644 (file)
index 70cab9a..0000000
+++ /dev/null
@@ -1,148 +0,0 @@
-/***************************************************************************
- *   Copyright (C) 2005-09 by the Quassel Project                          *
- *   devel@quassel-irc.org                                                 *
- *                                                                         *
- *   This program is free software; you can redistribute it and/or modify  *
- *   it under the terms of the GNU General Public License as published by  *
- *   the Free Software Foundation; either version 2 of the License, or     *
- *   (at your option) version 3.                                           *
- *                                                                         *
- *   This program is distributed in the hope that it will be useful,       *
- *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
- *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
- *   GNU General Public License for more details.                          *
- *                                                                         *
- *   You should have received a copy of the GNU General Public License     *
- *   along with this program; if not, write to the                         *
- *   Free Software Foundation, Inc.,                                       *
- *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
- ***************************************************************************/
-
-#ifndef CORECONNECTDLG_H
-#define CORECONNECTDLG_H
-
-#include <QAbstractSocket>
-
-#include "types.h"
-
-#include "ui_coreconnectdlg.h"
-#include "ui_coreaccounteditdlg.h"
-
-class ClientSyncer;
-class CoreConfigWizard;
-
-class CoreConnectDlg : public QDialog {
-  Q_OBJECT
-
-public:
-  CoreConnectDlg(bool = false, QWidget *parent = 0);
-  ~CoreConnectDlg();
-
-// signals:
-//   void newClientSyncer(ClientSyncer *);
-
-private slots:
-  /*** Phase Null: Accounts ***/
-  void restartPhaseNull();
-
-  void on_accountList_itemSelectionChanged();
-  void on_autoConnect_clicked(bool);
-
-  void on_addAccount_clicked();
-  void on_editAccount_clicked();
-  void on_deleteAccount_clicked();
-  void on_useInternalCore_clicked();
-  void on_viewSslCertButton_clicked();
-  void on_ignoreWarningsButton_clicked();
-
-  void on_accountList_itemDoubleClicked(QListWidgetItem *item);
-  void on_accountButtonBox_accepted();
-
-  void setAccountWidgetStates();
-
-  /*** Phase One: Connection ***/
-  void connectToCore();
-
-  void initPhaseError(const QString &error);
-  void initPhaseWarnings(const QStringList &warnings);
-  void initPhaseMsg(const QString &msg);
-  void initPhaseSocketState(QAbstractSocket::SocketState);
-
-  /*** Phase Two: Login ***/
-  void startLogin();
-  void doLogin();
-  void doLogin(const QVariantMap &loginData);
-  void loginFailed(const QString &);
-  void startCoreConfig(const QVariantList &backends);
-  void configWizardAccepted();
-  void configWizardRejected();
-  void on_launchCoreConfigWizard_clicked();
-
-  void setLoginWidgetStates();
-
-  /*** Phase Three: Sync ***/
-  void startSync();
-  void syncFinished();
-
-  void coreSessionProgress(quint32, quint32);
-  void coreNetworksProgress(quint32, quint32);
-
-private:
-  AccountId findFreeAccountId();
-
-  Ui::CoreConnectDlg ui;
-
-  AccountId autoConnectAccount;
-  QHash<AccountId, QVariantMap> accounts;
-  AccountId _internalAccountId;
-  QVariantMap accountData;
-  AccountId account;
-
-  bool doingAutoConnect;
-
-  QVariantList storageBackends;
-
-  ClientSyncer *clientSyncer;
-  CoreConfigWizard *wizard;
-};
-
-
-// ========================================
-//  CoreAccountEditDlg
-// ========================================
-class CoreAccountEditDlg : public QDialog {
-  Q_OBJECT
-
-public:
-  CoreAccountEditDlg(AccountId id, const QVariantMap &data, const QStringList &existing = QStringList(), QWidget *parent = 0);
-
-  QVariantMap accountData();
-
-private slots:
-  void on_host_textChanged(const QString &);
-  void on_accountName_textChanged(const QString &);
-
-  void setWidgetStates();
-
-private:
-  Ui::CoreAccountEditDlg ui;
-
-  QStringList existing;
-  QVariantMap account;
-};
-
-// ========================================
-//  SslCertDisplayDialog
-// ========================================
-#ifdef HAVE_SSL
-class QSslCertificate;
-
-class SslCertDisplayDialog : public QDialog {
-  Q_OBJECT
-
-public:
-  SslCertDisplayDialog(const QString &host, const QSslCertificate &cert, QWidget *parent = 0);
-};
-#endif // HAVE_SSL
-
-#endif // CORECONNECTDLG_H
index 21d4959..df1a7dc 100644 (file)
@@ -57,7 +57,6 @@
 #include "clientbufferviewmanager.h"
 #include "clientignorelistmanager.h"
 #include "coreinfodlg.h"
-#include "coreconnectdlg.h"
 #include "contextmenuactionprovider.h"
 #include "debugbufferviewoverlay.h"
 #include "debuglogwidget.h"
@@ -212,7 +211,7 @@ void MainWin::init() {
   QtUi::actionCollection("General")->action("LockLayout")->setChecked(s.value("LockLayout", false).toBool());
 
   if(Quassel::runMode() != Quassel::Monolithic) {
-    showCoreConnectionDlg(true); // autoconnect if appropriate
+    //showCoreConnectionDlg(true); // autoconnect if appropriate
   } else {
     startInternalCore();
   }
@@ -826,10 +825,6 @@ void MainWin::startInternalCore() {
   syncer->useInternalCore();
 }
 
-void MainWin::showCoreConnectionDlg(bool autoConnect) {
-  CoreConnectDlg(autoConnect, this).exec();
-}
-
 void MainWin::showChannelList(NetworkId netId) {
   ChannelListDlg *channelListDlg = new ChannelListDlg();
 
index bee2cd2..7379f96 100644 (file)
@@ -118,7 +118,6 @@ class MainWin
     void showAboutDlg();
     void showChannelList(NetworkId netId = NetworkId());
     void startInternalCore();
-    void showCoreConnectionDlg(bool autoConnect = false);
     void showCoreInfoDlg();
     void showAwayLog();
     void showSettingsDlg();
diff --git a/src/qtui/ui/coreaccounteditdlg.ui b/src/qtui/ui/coreaccounteditdlg.ui
deleted file mode 100644 (file)
index fcacc1c..0000000
+++ /dev/null
@@ -1,255 +0,0 @@
-<ui version="4.0" >
- <class>CoreAccountEditDlg</class>
- <widget class="QDialog" name="CoreAccountEditDlg" >
-  <property name="geometry" >
-   <rect>
-    <x>0</x>
-    <y>0</y>
-    <width>509</width>
-    <height>458</height>
-   </rect>
-  </property>
-  <property name="windowTitle" >
-   <string>Edit Core Account</string>
-  </property>
-  <layout class="QVBoxLayout" >
-   <item>
-    <layout class="QVBoxLayout" >
-     <item>
-      <widget class="QGroupBox" name="groupBox" >
-       <property name="title" >
-        <string>Account Details</string>
-       </property>
-       <layout class="QVBoxLayout" >
-        <item>
-         <layout class="QHBoxLayout" >
-          <item>
-           <widget class="QLabel" name="label" >
-            <property name="text" >
-             <string>Account Name:</string>
-            </property>
-           </widget>
-          </item>
-          <item>
-           <widget class="QLineEdit" name="accountName" >
-            <property name="text" >
-             <string>Local Core</string>
-            </property>
-           </widget>
-          </item>
-         </layout>
-        </item>
-        <item>
-         <layout class="QGridLayout" >
-          <item row="0" column="0" >
-           <widget class="QLabel" name="label_2" >
-            <property name="text" >
-             <string>Hostname:</string>
-            </property>
-           </widget>
-          </item>
-          <item row="0" column="1" >
-           <widget class="QLabel" name="label_3" >
-            <property name="text" >
-             <string>Port:</string>
-            </property>
-           </widget>
-          </item>
-          <item row="1" column="0" >
-           <widget class="QLineEdit" name="host" >
-            <property name="text" >
-             <string>localhost</string>
-            </property>
-           </widget>
-          </item>
-          <item row="1" column="1" >
-           <widget class="QSpinBox" name="port" >
-            <property name="minimum" >
-             <number>1</number>
-            </property>
-            <property name="maximum" >
-             <number>65535</number>
-            </property>
-            <property name="value" >
-             <number>4242</number>
-            </property>
-           </widget>
-          </item>
-          <item row="2" column="0" colspan="2" >
-           <widget class="QCheckBox" name="useSsl" >
-            <property name="text" >
-             <string>Use secure connection (SSL)</string>
-            </property>
-            <property name="icon" >
-             <iconset>
-              <normaloff>:/16x16/actions/oxygen/16x16/actions/document-encrypt.png</normaloff>:/16x16/actions/oxygen/16x16/actions/document-encrypt.png</iconset>
-            </property>
-            <property name="checked" >
-             <bool>false</bool>
-            </property>
-           </widget>
-          </item>
-         </layout>
-        </item>
-        <item>
-         <widget class="QGroupBox" name="useProxy" >
-          <property name="title" >
-           <string>Use a proxy:</string>
-          </property>
-          <property name="checkable" >
-           <bool>true</bool>
-          </property>
-          <property name="checked" >
-           <bool>false</bool>
-          </property>
-          <layout class="QGridLayout" >
-           <item row="0" column="0" colspan="2" >
-            <widget class="QLabel" name="label_5" >
-             <property name="text" >
-              <string>Proxy Type:</string>
-             </property>
-            </widget>
-           </item>
-           <item row="0" column="2" >
-            <widget class="QComboBox" name="proxyType" >
-             <item>
-              <property name="text" >
-               <string>Socks 5</string>
-              </property>
-             </item>
-             <item>
-              <property name="text" >
-               <string>HTTP</string>
-              </property>
-             </item>
-            </widget>
-           </item>
-           <item row="1" column="0" colspan="2" >
-            <widget class="QLabel" name="label_6" >
-             <property name="text" >
-              <string>Proxy Host:</string>
-             </property>
-            </widget>
-           </item>
-           <item row="1" column="2" >
-            <widget class="QLabel" name="label_7" >
-             <property name="text" >
-              <string>Proxy Port:</string>
-             </property>
-            </widget>
-           </item>
-           <item row="2" column="0" colspan="2" >
-            <widget class="QLineEdit" name="proxyHost" >
-             <property name="text" >
-              <string>localhost</string>
-             </property>
-            </widget>
-           </item>
-           <item row="2" column="2" >
-            <widget class="QSpinBox" name="proxyPort" >
-             <property name="sizePolicy" >
-              <sizepolicy vsizetype="Fixed" hsizetype="Preferred" >
-               <horstretch>0</horstretch>
-               <verstretch>0</verstretch>
-              </sizepolicy>
-             </property>
-             <property name="minimum" >
-              <number>1</number>
-             </property>
-             <property name="maximum" >
-              <number>65535</number>
-             </property>
-             <property name="value" >
-              <number>8080</number>
-             </property>
-            </widget>
-           </item>
-           <item row="3" column="0" >
-            <widget class="QLabel" name="label_8" >
-             <property name="text" >
-              <string>Proxy Username:</string>
-             </property>
-            </widget>
-           </item>
-           <item row="3" column="1" colspan="2" >
-            <widget class="QLineEdit" name="proxyUser" />
-           </item>
-           <item row="4" column="0" >
-            <widget class="QLabel" name="label_9" >
-             <property name="text" >
-              <string>Proxy Password:</string>
-             </property>
-            </widget>
-           </item>
-           <item row="4" column="1" colspan="2" >
-            <widget class="QLineEdit" name="proxyPassword" />
-           </item>
-          </layout>
-         </widget>
-        </item>
-       </layout>
-      </widget>
-     </item>
-     <item>
-      <spacer>
-       <property name="orientation" >
-        <enum>Qt::Vertical</enum>
-       </property>
-       <property name="sizeHint" stdset="0" >
-        <size>
-         <width>20</width>
-         <height>40</height>
-        </size>
-       </property>
-      </spacer>
-     </item>
-     <item>
-      <widget class="QDialogButtonBox" name="buttonBox" >
-       <property name="orientation" >
-        <enum>Qt::Horizontal</enum>
-       </property>
-       <property name="standardButtons" >
-        <set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
-       </property>
-      </widget>
-     </item>
-    </layout>
-   </item>
-  </layout>
- </widget>
- <resources/>
- <connections>
-  <connection>
-   <sender>buttonBox</sender>
-   <signal>accepted()</signal>
-   <receiver>CoreAccountEditDlg</receiver>
-   <slot>accept()</slot>
-   <hints>
-    <hint type="sourcelabel" >
-     <x>275</x>
-     <y>521</y>
-    </hint>
-    <hint type="destinationlabel" >
-     <x>157</x>
-     <y>207</y>
-    </hint>
-   </hints>
-  </connection>
-  <connection>
-   <sender>buttonBox</sender>
-   <signal>rejected()</signal>
-   <receiver>CoreAccountEditDlg</receiver>
-   <slot>reject()</slot>
-   <hints>
-    <hint type="sourcelabel" >
-     <x>343</x>
-     <y>521</y>
-    </hint>
-    <hint type="destinationlabel" >
-     <x>286</x>
-     <y>207</y>
-    </hint>
-   </hints>
-  </connection>
- </connections>
-</ui>
diff --git a/src/qtui/ui/coreconnectdlg.ui b/src/qtui/ui/coreconnectdlg.ui
deleted file mode 100644 (file)
index f876bb7..0000000
+++ /dev/null
@@ -1,631 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<ui version="4.0">
- <class>CoreConnectDlg</class>
- <widget class="QDialog" name="CoreConnectDlg">
-  <property name="geometry">
-   <rect>
-    <x>0</x>
-    <y>0</y>
-    <width>539</width>
-    <height>347</height>
-   </rect>
-  </property>
-  <property name="sizePolicy">
-   <sizepolicy hsizetype="Preferred" vsizetype="Maximum">
-    <horstretch>0</horstretch>
-    <verstretch>0</verstretch>
-   </sizepolicy>
-  </property>
-  <property name="windowTitle">
-   <string>Connect to Quassel Core</string>
-  </property>
-  <property name="windowIcon">
-   <iconset>
-    <normaloff>:/16x16/actions/network-disconnect</normaloff>:/16x16/actions/network-disconnect</iconset>
-  </property>
-  <layout class="QHBoxLayout">
-   <property name="margin">
-    <number>0</number>
-   </property>
-   <item>
-    <widget class="QStackedWidget" name="stackedWidget">
-     <property name="sizePolicy">
-      <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
-       <horstretch>0</horstretch>
-       <verstretch>0</verstretch>
-      </sizepolicy>
-     </property>
-     <property name="currentIndex">
-      <number>0</number>
-     </property>
-     <widget class="QWidget" name="accountPage">
-      <layout class="QVBoxLayout">
-       <item>
-        <widget class="QGroupBox" name="groupBox">
-         <property name="title">
-          <string>Connect to Quassel Core</string>
-         </property>
-         <layout class="QHBoxLayout">
-          <item>
-           <widget class="QListWidget" name="accountList">
-            <property name="sortingEnabled">
-             <bool>true</bool>
-            </property>
-           </widget>
-          </item>
-          <item>
-           <layout class="QVBoxLayout">
-            <item>
-             <widget class="QPushButton" name="editAccount">
-              <property name="text">
-               <string>Edit...</string>
-              </property>
-              <property name="icon">
-               <iconset>
-                <normaloff>:/16x16/actions/oxygen/16x16/actions/document-properties.png</normaloff>:/16x16/actions/oxygen/16x16/actions/document-properties.png</iconset>
-              </property>
-             </widget>
-            </item>
-            <item>
-             <widget class="QPushButton" name="addAccount">
-              <property name="text">
-               <string>Add...</string>
-              </property>
-              <property name="icon">
-               <iconset>
-                <normaloff>:/16x16/actions/oxygen/16x16/actions/list-add.png</normaloff>:/16x16/actions/oxygen/16x16/actions/list-add.png</iconset>
-              </property>
-             </widget>
-            </item>
-            <item>
-             <widget class="QPushButton" name="deleteAccount">
-              <property name="text">
-               <string>Delete</string>
-              </property>
-              <property name="icon">
-               <iconset>
-                <normaloff>:/16x16/actions/oxygen/16x16/actions/list-remove.png</normaloff>:/16x16/actions/oxygen/16x16/actions/list-remove.png</iconset>
-              </property>
-             </widget>
-            </item>
-            <item>
-             <spacer>
-              <property name="orientation">
-               <enum>Qt::Vertical</enum>
-              </property>
-              <property name="sizeHint" stdset="0">
-               <size>
-                <width>20</width>
-                <height>40</height>
-               </size>
-              </property>
-             </spacer>
-            </item>
-            <item>
-             <widget class="QPushButton" name="useInternalCore">
-              <property name="text">
-               <string>Use internal core</string>
-              </property>
-             </widget>
-            </item>
-           </layout>
-          </item>
-         </layout>
-        </widget>
-       </item>
-       <item>
-        <layout class="QHBoxLayout">
-         <item>
-          <widget class="QCheckBox" name="autoConnect">
-           <property name="text">
-            <string>Always use this account</string>
-           </property>
-          </widget>
-         </item>
-         <item>
-          <widget class="QDialogButtonBox" name="accountButtonBox">
-           <property name="orientation">
-            <enum>Qt::Horizontal</enum>
-           </property>
-           <property name="standardButtons">
-            <set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
-           </property>
-          </widget>
-         </item>
-        </layout>
-       </item>
-      </layout>
-     </widget>
-     <widget class="QWidget" name="loginPage">
-      <layout class="QVBoxLayout">
-       <item>
-        <widget class="QGroupBox" name="groupBox_2">
-         <property name="sizePolicy">
-          <sizepolicy hsizetype="Preferred" vsizetype="Preferred">
-           <horstretch>0</horstretch>
-           <verstretch>0</verstretch>
-          </sizepolicy>
-         </property>
-         <property name="title">
-          <string>Initializing your connection</string>
-         </property>
-         <layout class="QVBoxLayout">
-          <item>
-           <layout class="QGridLayout">
-            <item row="0" column="0">
-             <widget class="QLabel" name="connectIcon">
-              <property name="text">
-               <string/>
-              </property>
-              <property name="pixmap">
-               <pixmap>:/22x22/actions/network-disconnect</pixmap>
-              </property>
-             </widget>
-            </item>
-            <item row="0" column="1">
-             <widget class="QLabel" name="connectLabel">
-              <property name="text">
-               <string>Connected to apollo.mindpool.net.</string>
-              </property>
-              <property name="alignment">
-               <set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
-              </property>
-              <property name="wordWrap">
-               <bool>false</bool>
-              </property>
-             </widget>
-            </item>
-            <item row="0" column="2">
-             <spacer>
-              <property name="orientation">
-               <enum>Qt::Horizontal</enum>
-              </property>
-              <property name="sizeHint" stdset="0">
-               <size>
-                <width>358</width>
-                <height>21</height>
-               </size>
-              </property>
-             </spacer>
-            </item>
-            <item row="1" column="1" colspan="2">
-             <widget class="QLabel" name="coreInfoLabel">
-              <property name="sizePolicy">
-               <sizepolicy hsizetype="Preferred" vsizetype="Maximum">
-                <horstretch>0</horstretch>
-                <verstretch>0</verstretch>
-               </sizepolicy>
-              </property>
-              <property name="text">
-               <string>THIS IS A PLACEHOLDER
-TO
-RESERVE
-SOME SPACE</string>
-              </property>
-              <property name="alignment">
-               <set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
-              </property>
-              <property name="wordWrap">
-               <bool>true</bool>
-              </property>
-             </widget>
-            </item>
-            <item row="0" column="3">
-             <widget class="QLabel" name="secureConnection">
-              <property name="text">
-               <string/>
-              </property>
-              <property name="pixmap">
-               <pixmap>:/22x22/actions/oxygen/22x22/actions/document-encrypt.png</pixmap>
-              </property>
-             </widget>
-            </item>
-           </layout>
-          </item>
-          <item>
-           <widget class="QStackedWidget" name="loginStack">
-            <property name="sizePolicy">
-             <sizepolicy hsizetype="Preferred" vsizetype="Maximum">
-              <horstretch>0</horstretch>
-              <verstretch>0</verstretch>
-             </sizepolicy>
-            </property>
-            <property name="currentIndex">
-             <number>1</number>
-            </property>
-            <widget class="QWidget" name="loginCredentialsPage">
-             <layout class="QVBoxLayout">
-              <property name="margin">
-               <number>0</number>
-              </property>
-              <item>
-               <spacer>
-                <property name="orientation">
-                 <enum>Qt::Vertical</enum>
-                </property>
-                <property name="sizeHint" stdset="0">
-                 <size>
-                  <width>20</width>
-                  <height>40</height>
-                 </size>
-                </property>
-               </spacer>
-              </item>
-              <item>
-               <widget class="QGroupBox" name="loginGroup">
-                <property name="sizePolicy">
-                 <sizepolicy hsizetype="Preferred" vsizetype="Maximum">
-                  <horstretch>0</horstretch>
-                  <verstretch>0</verstretch>
-                 </sizepolicy>
-                </property>
-                <property name="title">
-                 <string>Login</string>
-                </property>
-                <layout class="QVBoxLayout">
-                 <item>
-                  <layout class="QGridLayout">
-                   <item row="0" column="0">
-                    <widget class="QLabel" name="label_2">
-                     <property name="text">
-                      <string>User:</string>
-                     </property>
-                    </widget>
-                   </item>
-                   <item row="0" column="1">
-                    <widget class="QLineEdit" name="user">
-                     <property name="text">
-                      <string/>
-                     </property>
-                    </widget>
-                   </item>
-                   <item row="1" column="0">
-                    <widget class="QLabel" name="label_3">
-                     <property name="text">
-                      <string>Password:</string>
-                     </property>
-                    </widget>
-                   </item>
-                   <item row="1" column="1">
-                    <widget class="QLineEdit" name="password">
-                     <property name="echoMode">
-                      <enum>QLineEdit::Password</enum>
-                     </property>
-                    </widget>
-                   </item>
-                   <item row="2" column="1">
-                    <widget class="QCheckBox" name="rememberPasswd">
-                     <property name="text">
-                      <string>Remember</string>
-                     </property>
-                    </widget>
-                   </item>
-                  </layout>
-                 </item>
-                </layout>
-               </widget>
-              </item>
-             </layout>
-            </widget>
-            <widget class="QWidget" name="connectionWarningsPage">
-             <layout class="QVBoxLayout" name="verticalLayout">
-              <property name="margin">
-               <number>0</number>
-              </property>
-              <item>
-               <layout class="QHBoxLayout" name="horizontalLayout">
-                <item>
-                 <spacer name="horizontalSpacer">
-                  <property name="orientation">
-                   <enum>Qt::Horizontal</enum>
-                  </property>
-                  <property name="sizeHint" stdset="0">
-                   <size>
-                    <width>40</width>
-                    <height>20</height>
-                   </size>
-                  </property>
-                 </spacer>
-                </item>
-                <item>
-                 <widget class="QPushButton" name="viewSslCertButton">
-                  <property name="text">
-                   <string>View SSL Certificate</string>
-                  </property>
-                 </widget>
-                </item>
-                <item>
-                 <spacer name="horizontalSpacer_2">
-                  <property name="orientation">
-                   <enum>Qt::Horizontal</enum>
-                  </property>
-                  <property name="sizeHint" stdset="0">
-                   <size>
-                    <width>40</width>
-                    <height>20</height>
-                   </size>
-                  </property>
-                 </spacer>
-                </item>
-               </layout>
-              </item>
-              <item>
-               <spacer name="verticalSpacer">
-                <property name="orientation">
-                 <enum>Qt::Vertical</enum>
-                </property>
-                <property name="sizeHint" stdset="0">
-                 <size>
-                  <width>20</width>
-                  <height>48</height>
-                 </size>
-                </property>
-               </spacer>
-              </item>
-              <item>
-               <layout class="QHBoxLayout" name="horizontalLayout_2">
-                <item>
-                 <widget class="QCheckBox" name="ignoreWarningsPermanently">
-                  <property name="text">
-                   <string>Add to known hosts</string>
-                  </property>
-                 </widget>
-                </item>
-                <item>
-                 <spacer name="horizontalSpacer_3">
-                  <property name="orientation">
-                   <enum>Qt::Horizontal</enum>
-                  </property>
-                  <property name="sizeHint" stdset="0">
-                   <size>
-                    <width>40</width>
-                    <height>20</height>
-                   </size>
-                  </property>
-                 </spacer>
-                </item>
-                <item>
-                 <widget class="QPushButton" name="ignoreWarningsButton">
-                  <property name="text">
-                   <string>Continue connection</string>
-                  </property>
-                 </widget>
-                </item>
-               </layout>
-              </item>
-             </layout>
-            </widget>
-            <widget class="QWidget" name="coreConfigPage">
-             <layout class="QVBoxLayout">
-              <property name="margin">
-               <number>0</number>
-              </property>
-              <item>
-               <spacer>
-                <property name="orientation">
-                 <enum>Qt::Vertical</enum>
-                </property>
-                <property name="sizeHint" stdset="0">
-                 <size>
-                  <width>20</width>
-                  <height>40</height>
-                 </size>
-                </property>
-               </spacer>
-              </item>
-              <item>
-               <widget class="QGroupBox" name="groupBox_4">
-                <property name="sizePolicy">
-                 <sizepolicy hsizetype="Preferred" vsizetype="Maximum">
-                  <horstretch>0</horstretch>
-                  <verstretch>0</verstretch>
-                 </sizepolicy>
-                </property>
-                <property name="title">
-                 <string>Configure your Quassel Core</string>
-                </property>
-                <layout class="QVBoxLayout">
-                 <item>
-                  <widget class="QLabel" name="label_7">
-                   <property name="text">
-                    <string>The Quassel Core you are connected to is not configured yet. You may now launch a configuration wizard that helps you setting up your Core.</string>
-                   </property>
-                   <property name="alignment">
-                    <set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
-                   </property>
-                   <property name="wordWrap">
-                    <bool>true</bool>
-                   </property>
-                  </widget>
-                 </item>
-                 <item>
-                  <layout class="QHBoxLayout">
-                   <item>
-                    <spacer>
-                     <property name="orientation">
-                      <enum>Qt::Horizontal</enum>
-                     </property>
-                     <property name="sizeHint" stdset="0">
-                      <size>
-                       <width>40</width>
-                       <height>20</height>
-                      </size>
-                     </property>
-                    </spacer>
-                   </item>
-                   <item>
-                    <widget class="QPushButton" name="launchCoreConfigWizard">
-                     <property name="text">
-                      <string>Launch Wizard</string>
-                     </property>
-                    </widget>
-                   </item>
-                   <item>
-                    <spacer>
-                     <property name="orientation">
-                      <enum>Qt::Horizontal</enum>
-                     </property>
-                     <property name="sizeHint" stdset="0">
-                      <size>
-                       <width>40</width>
-                       <height>20</height>
-                      </size>
-                     </property>
-                    </spacer>
-                   </item>
-                  </layout>
-                 </item>
-                </layout>
-                <zorder>label_7</zorder>
-                <zorder></zorder>
-               </widget>
-              </item>
-             </layout>
-            </widget>
-            <widget class="QWidget" name="loginEmptyPage"/>
-           </widget>
-          </item>
-         </layout>
-        </widget>
-       </item>
-       <item>
-        <widget class="QDialogButtonBox" name="loginButtonBox">
-         <property name="standardButtons">
-          <set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
-         </property>
-        </widget>
-       </item>
-      </layout>
-     </widget>
-     <widget class="QWidget" name="syncPage">
-      <layout class="QVBoxLayout">
-       <item>
-        <widget class="QGroupBox" name="groupBox_3">
-         <property name="title">
-          <string>Initializing your session...</string>
-         </property>
-         <layout class="QVBoxLayout">
-          <item>
-           <layout class="QVBoxLayout">
-            <item>
-             <widget class="QLabel" name="label_6">
-              <property name="text">
-               <string>&lt;b&gt;Please be patient while your client synchronizes with the Quassel Core!&lt;/b&gt;</string>
-              </property>
-              <property name="alignment">
-               <set>Qt::AlignHCenter|Qt::AlignTop</set>
-              </property>
-              <property name="wordWrap">
-               <bool>true</bool>
-              </property>
-             </widget>
-            </item>
-            <item>
-             <layout class="QGridLayout">
-              <item row="0" column="0">
-               <widget class="QLabel" name="progressLabel">
-                <property name="text">
-                 <string>Session state:</string>
-                </property>
-               </widget>
-              </item>
-              <item row="0" column="1">
-               <widget class="QProgressBar" name="sessionProgress">
-                <property name="maximum">
-                 <number>1</number>
-                </property>
-                <property name="value">
-                 <number>0</number>
-                </property>
-               </widget>
-              </item>
-              <item row="1" column="0">
-               <widget class="QLabel" name="label">
-                <property name="text">
-                 <string>Network states:</string>
-                </property>
-               </widget>
-              </item>
-              <item row="1" column="1">
-               <widget class="QProgressBar" name="networksProgress">
-                <property name="maximum">
-                 <number>1</number>
-                </property>
-                <property name="value">
-                 <number>0</number>
-                </property>
-                <property name="format">
-                 <string>0/0</string>
-                </property>
-               </widget>
-              </item>
-             </layout>
-            </item>
-            <item>
-             <spacer>
-              <property name="orientation">
-               <enum>Qt::Vertical</enum>
-              </property>
-              <property name="sizeHint" stdset="0">
-               <size>
-                <width>483</width>
-                <height>61</height>
-               </size>
-              </property>
-             </spacer>
-            </item>
-           </layout>
-          </item>
-         </layout>
-        </widget>
-       </item>
-       <item>
-        <widget class="QDialogButtonBox" name="syncButtonBox">
-         <property name="standardButtons">
-          <set>QDialogButtonBox::Abort</set>
-         </property>
-         <property name="centerButtons">
-          <bool>true</bool>
-         </property>
-        </widget>
-       </item>
-      </layout>
-     </widget>
-    </widget>
-   </item>
-  </layout>
- </widget>
- <tabstops>
-  <tabstop>accountList</tabstop>
-  <tabstop>accountButtonBox</tabstop>
-  <tabstop>autoConnect</tabstop>
-  <tabstop>editAccount</tabstop>
-  <tabstop>addAccount</tabstop>
-  <tabstop>deleteAccount</tabstop>
-  <tabstop>user</tabstop>
-  <tabstop>password</tabstop>
-  <tabstop>rememberPasswd</tabstop>
-  <tabstop>loginButtonBox</tabstop>
-  <tabstop>launchCoreConfigWizard</tabstop>
-  <tabstop>syncButtonBox</tabstop>
- </tabstops>
- <resources/>
- <connections>
-  <connection>
-   <sender>accountButtonBox</sender>
-   <signal>rejected()</signal>
-   <receiver>CoreConnectDlg</receiver>
-   <slot>reject()</slot>
-   <hints>
-    <hint type="sourcelabel">
-     <x>279</x>
-     <y>434</y>
-    </hint>
-    <hint type="destinationlabel">
-     <x>286</x>
-     <y>237</y>
-    </hint>
-   </hints>
-  </connection>
- </connections>
-</ui>