X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fqtopia%2Fcoreconnectdlg.h;h=36ce26f1cbf3ddd96b3e04bdaa131c9c6d10212f;hp=b730d8bb5804c159d71646fefd59bc10258e47b7;hb=906789f761e5d1b37b46b5a05a2f649e28900e36;hpb=6ecdc735718f39110baf3be8c4773c3a26712b6f diff --git a/src/qtopia/coreconnectdlg.h b/src/qtopia/coreconnectdlg.h index b730d8bb..36ce26f1 100644 --- a/src/qtopia/coreconnectdlg.h +++ b/src/qtopia/coreconnectdlg.h @@ -21,10 +21,15 @@ #ifndef _CORECONNECTDLG_H #define _CORECONNECTDLG_H +#include + +#include "types.h" + #include "ui_coreconnectdlg.h" #include "ui_coreconnectprogressdlg.h" -#include "ui_editcoreacctdlg.h" +#include "ui_coreaccounteditdlg.h" +class ClientSyncer; class CoreConnectProgressDlg; class CoreConnectDlg : public QDialog { @@ -44,9 +49,28 @@ class CoreConnectDlg : public QDialog { void connectionSuccess(); void connectionFailure(); + /*** Phase One: Connection ***/ + + void restartPhaseNull(); + void initPhaseError(const QString &error); + void initPhaseMsg(const QString &msg); + void initPhaseSocketState(QAbstractSocket::SocketState); + + /*** Phase Two: Login ***/ + void startLogin(); + void loginFailed(const QString &); + + /*** Phase Three: Sync ***/ + void startSync(); + private: Ui::CoreConnectDlg ui; - QVariant coreState; + ClientSyncer *clientSyncer; + + AccountId autoConnectAccount; + QHash accounts; + QVariantMap accountData; + AccountId account; void editAccount(QString); @@ -55,12 +79,12 @@ class CoreConnectDlg : public QDialog { CoreConnectProgressDlg *progressDlg; }; -class EditCoreAcctDlg : public QDialog { +class CoreAccountEditDlg : public QDialog { Q_OBJECT public: - EditCoreAcctDlg(QString accname = 0, QDialog *parent = 0); - QString accountName() const; + CoreAccountEditDlg(AccountId id, const QVariantMap &data, const QStringList &existing = QStringList(), QWidget *parent = 0); + QVariantMap accountData(); public slots: void accept(); @@ -69,8 +93,9 @@ class EditCoreAcctDlg : public QDialog { private: - Ui::EditCoreAcctDlg ui; - QString accName; + Ui::CoreAccountEditDlg ui; + QVariantMap account; + QStringList existing; }; @@ -78,20 +103,19 @@ class CoreConnectProgressDlg : public QDialog { Q_OBJECT public: - CoreConnectProgressDlg(QDialog *parent = 0); - bool isConnected() const; - - public slots: - void connectToCore(QVariantMap connInfo); + CoreConnectProgressDlg(ClientSyncer *, QDialog *parent = 0); private slots: - void coreConnected(); - void coreConnectionError(QString); - void updateProgressBar(uint partial, uint total); + + void syncFinished(); + + void coreSessionProgress(quint32, quint32); + void coreNetworksProgress(quint32, quint32); + void coreChannelsProgress(quint32, quint32); + void coreIrcUsersProgress(quint32, quint32); private: Ui::CoreConnectProgressDlg ui; - bool connectsuccess; };