00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #if !defined(AFX_CHATWINDOWS_H__F756916C_1CDF_460A_B1F2_8EC53E72B6C2__INCLUDED_)
00023 #define AFX_CHATWINDOWS_H__F756916C_1CDF_460A_B1F2_8EC53E72B6C2__INCLUDED_
00024
00025 #pragma once
00026
00027 class CChatFrame;
00028 class CPrivateChatFrame;
00029
00030
00031 class CChatWindows
00032 {
00033
00034 public:
00035 CChatWindows();
00036 virtual ~CChatWindows();
00037
00038
00039 protected:
00040 CPtrList m_pList;
00041
00042
00043 public:
00044 POSITION GetIterator() const;
00045 CChatFrame* GetNext(POSITION& pos) const;
00046 int GetCount() const;
00047 void Close();
00048 public:
00049 CPrivateChatFrame* FindPrivate(GGUID* pGUID);
00050 CPrivateChatFrame* FindPrivate(IN_ADDR* pAddress);
00051 CPrivateChatFrame* FindED2KFrame(SOCKADDR_IN* pAddress);
00052 CPrivateChatFrame* FindED2KFrame(DWORD nClientID, SOCKADDR_IN* pServerAddress);
00053 CPrivateChatFrame* OpenPrivate(GGUID* pGUID, SOCKADDR_IN* pHost, BOOL bMustPush = FALSE, PROTOCOLID nProtocol = PROTOCOL_NULL, SOCKADDR_IN* pServer = NULL );
00054 CPrivateChatFrame* OpenPrivate(GGUID* pGUID, IN_ADDR* pAddress, WORD nPort = 6346, BOOL bMustPush = FALSE, PROTOCOLID nProtocol = PROTOCOL_NULL, IN_ADDR* pServerAddress = NULL, WORD nServerPort = 0 );
00055 protected:
00056 void Add(CChatFrame* pFrame);
00057 void Remove(CChatFrame* pFrame);
00058
00059 friend class CChatFrame;
00060 };
00061
00062 extern CChatWindows ChatWindows;
00063
00064 #endif // !defined(AFX_CHATWINDOWS_H__F756916C_1CDF_460A_B1F2_8EC53E72B6C2__INCLUDED_)