diff options
Diffstat (limited to 'Swift/Controllers/Chat/ChatController.h')
-rw-r--r-- | Swift/Controllers/Chat/ChatController.h | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/Swift/Controllers/Chat/ChatController.h b/Swift/Controllers/Chat/ChatController.h new file mode 100644 index 0000000..58ea797 --- /dev/null +++ b/Swift/Controllers/Chat/ChatController.h @@ -0,0 +1,27 @@ +#ifndef SWIFTEN_ChatController_H +#define SWIFTEN_ChatController_H + +#include "Swift/Controllers/Chat/ChatControllerBase.h" + +namespace Swift { + class AvatarManager; + class NickResolver; + class ChatController : public ChatControllerBase { + public: + ChatController(const JID& self, StanzaChannel* stanzaChannel, IQRouter* iqRouter, ChatWindowFactory* chatWindowFactory, const JID &contact, NickResolver* nickResolver, PresenceOracle* presenceOracle, AvatarManager*); + + private: + void handlePresenceChange(boost::shared_ptr<Presence> newPresence, boost::shared_ptr<Presence> previousPresence); + String getStatusChangeString(boost::shared_ptr<Presence> presence); + bool isIncomingMessageFromMe(boost::shared_ptr<Message> message); + void postSendMessage(const String &body); + void preHandleIncomingMessage(boost::shared_ptr<Message> message); + String senderDisplayNameFromMessage(const JID& from); + + private: + NickResolver* nickResolver_; + JID contact_; + }; +} +#endif + |