00001
00023 #ifndef _TelepathyQt4_pending_send_message_h_HEADER_GUARD_
00024 #define _TelepathyQt4_pending_send_message_h_HEADER_GUARD_
00025
00026 #ifndef IN_TELEPATHY_QT4_HEADER
00027 #error IN_TELEPATHY_QT4_HEADER
00028 #endif
00029
00030 #include <TelepathyQt4/PendingOperation>
00031 #include <TelepathyQt4/Types>
00032
00033 class QDBusPendingCallWatcher;
00034 class QString;
00035
00036 namespace Tp
00037 {
00038
00039 class Message;
00040
00041 class TELEPATHY_QT4_EXPORT PendingSendMessage : public PendingOperation
00042 {
00043 Q_OBJECT
00044 Q_DISABLE_COPY(PendingSendMessage)
00045
00046 public:
00047 ~PendingSendMessage();
00048
00049 TextChannelPtr channel() const;
00050
00051 ContactMessengerPtr messenger() const;
00052
00053 QString sentMessageToken() const;
00054 Message message() const;
00055
00056 private Q_SLOTS:
00057 TELEPATHY_QT4_NO_EXPORT void onTextSent(QDBusPendingCallWatcher *watcher);
00058 TELEPATHY_QT4_NO_EXPORT void onMessageSent(QDBusPendingCallWatcher *watcher);
00059 TELEPATHY_QT4_NO_EXPORT void onCDMessageSent(QDBusPendingCallWatcher *watcher);
00060
00061 private:
00062 friend class TextChannel;
00063 friend class ContactMessenger;
00064
00065 TELEPATHY_QT4_NO_EXPORT PendingSendMessage(const TextChannelPtr &channel,
00066 const Message &message);
00067 TELEPATHY_QT4_NO_EXPORT PendingSendMessage(const ContactMessengerPtr &messenger,
00068 const Message &message);
00069
00070 struct Private;
00071 friend struct Private;
00072 Private *mPriv;
00073 };
00074
00075 }
00076
00077 #endif