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();
};