www.pudn.com > fanccMSNr.src.rar > ChatFrame.h


#pragma once 
#include "messenger/ChatterModel.hpp" 
#include "messenger/FileTransferListener.hpp" 
#include "ChatView.h" 
#include "SendView.h" 
 
using namespace poral; 
 
// CChatFrame ÇÁ·¹ÀÓÀÔ´Ï´Ù. 
 
class CChatFrame :  
	public CFrameWnd,				// ±¸Çö 
	public ChatterListener,			// ÀÎÅÍÆäÀ̽º 
	public FileTransferListener		// ÀÎÅÍÆäÀ̽º 
{ 
	DECLARE_DYNCREATE(CChatFrame) 
	CChatFrame(); 
	virtual ~CChatFrame(); 
protected: 
	ChatterModel *model; 
	CSplitterWnd m_wndSplitter; 
	CSendView *sendView; 
	CChatView *chatView; 
	CStatusBar  statusBar; 
 
protected: 
	DECLARE_MESSAGE_MAP() 
public: 
	void setChatterModel(ChatterModel& model); 
	/** chatViewÈ­¸é¿¡ ¹®ÀÚ¿­À» Ãâ·ÂÇÑ´Ù. */ 
	void writeMessage(const CString &message); 
	/** »óŹٿ¡ ¹®ÀÚ¿­À» Ãâ·ÂÇÑ´Ù. ÆÄÀÏ Àü¼ÛÁßÀÌ ¾Æ´Ò ¶§¿¡¸¸ Ãâ·ÂÇÑ´Ù. */ 
	void writeStatus(const CString &status); 
	/** »óŹٿ¡ ÆÄÀÏ Àü¼Û ÁøÇà»óȲÀ» Ãâ·ÂÇÑ´Ù. */ 
	void writeProgress(const FileTransferModel &model); 
 
	// ChatterListener ±¸Çö 
	virtual void chatterUpdate(const ChatterModel &model, ChatterListener::Event event); 
	virtual void typing(const string &user); 
	virtual void messageArrived(const ChatMessage &message); 
	virtual void fileTransferInvited(const string &filename, size_t size, const string &cookie); 
	virtual void fileTransferRejected(const string &cookie); 
 
 
	// FileTransferListener ±¸Çö 
	virtual void fileTransferUpdate(FileTransferModel &model, FileTransferListener::Event event); 
 
	afx_msg void OnFileClose(); 
protected: 
	virtual BOOL OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext); 
 
	friend class CSendView; 
public: 
//	afx_msg void OnUserFileTransfer(); 
	afx_msg void OnFileTransfer(); 
};