www.pudn.com > fanccMSNr.src.rar > ChatterListener.hpp


#pragma once 
#include "User.hpp" 
#include "ChatMessage.hpp" 
 
namespace poral { 
	class ChatterModel; 
 
	/** 
	* An interface for object that wish to be informed when ChatterModel 
	* changed. 
	*/ 
	class ChatterListener { 
	public: 
		typedef enum { 
		} Event; 
 
		/** 
		* Notifies update event to listener. possible event enumerated in 
		* ChatterListener::Event. 
		*/ 
		virtual void chatterUpdate(const ChatterModel &model, Event event)=0; 
 
		/** 
		* Notifies remote user types some message. 
		* @param typing True if start typing, false if canceled or submitted the message. 
		*/ 
		virtual void typing(const string &user)=0; 
 
		virtual void messageArrived(const ChatMessage &message)=0; 
 
		virtual void fileTransferInvited(const string &filename, size_t size, const string &cookie)=0; 
		virtual void fileTransferRejected(const string &cookie)=0; 
	}; 
}