00001
00023 #ifndef _TelepathyQt4_pending_account_h_HEADER_GUARD_
00024 #define _TelepathyQt4_pending_account_h_HEADER_GUARD_
00025
00026 #ifndef IN_TELEPATHY_QT4_HEADER
00027 #error IN_TELEPATHY_QT4_HEADER
00028 #endif
00029
00030 #include <TelepathyQt4/Account>
00031 #include <TelepathyQt4/PendingOperation>
00032
00033 #include <QString>
00034 #include <QVariantMap>
00035
00036 class QDBusPendingCallWatcher;
00037
00038 namespace Tp
00039 {
00040
00041 class AccountManager;
00042
00043 class TELEPATHY_QT4_EXPORT PendingAccount : public PendingOperation
00044 {
00045 Q_OBJECT
00046 Q_DISABLE_COPY(PendingAccount);
00047
00048 public:
00049 ~PendingAccount();
00050
00051 AccountManagerPtr manager() const;
00052
00053 AccountPtr account() const;
00054
00055 private Q_SLOTS:
00056 TELEPATHY_QT4_NO_EXPORT void onCallFinished(QDBusPendingCallWatcher *watcher);
00057 TELEPATHY_QT4_NO_EXPORT void onAccountBuilt(Tp::PendingOperation *readyOp);
00058 TELEPATHY_QT4_NO_EXPORT void onNewAccount(const Tp::AccountPtr &account);
00059
00060 private:
00061 friend class AccountManager;
00062
00063 TELEPATHY_QT4_NO_EXPORT PendingAccount(const AccountManagerPtr &manager,
00064 const QString &connectionManager, const QString &protocol,
00065 const QString &displayName, const QVariantMap ¶meters,
00066 const QVariantMap &properties = QVariantMap());
00067
00068 struct Private;
00069 friend struct Private;
00070 Private *mPriv;
00071 };
00072
00073 }
00074
00075 #endif