#ifndef __PageChat_h__ #define __PageChat_h__ #if _MSC_VER > 1000 #pragma once #endif // _MSC_VER > 1000 ///////////////////////////////////////////////////////////////////////////// // PageChat.h : header file // #include "DlgChatPreferences.h" #include "AutoSizer.h" ///////////////////////////////////////////////////////////////////////////// // Forward Declaration class CAllSrvUISheet; class CAdminPageThreadWnd; ///////////////////////////////////////////////////////////////////////////// // CPageChat dialog class CPageChat : public CPropertyPage { // Declarations public: DECLARE_DYNAMIC(CPageChat) DECLARE_MESSAGE_MAP() // Construction public: CPageChat(); // Attributes public: // Overrides public: void OnEvent(IAGCEvent* pEvent); // ClassWizard generate virtual function overrides //{{AFX_VIRTUAL(CPageChat) public: virtual BOOL OnSetActive(); virtual BOOL PreTranslateMessage(MSG* pMsg); protected: virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support virtual LRESULT WindowProc(UINT message, WPARAM wParam, LPARAM lParam); //}}AFX_VIRTUAL // Implementation protected: CAllSrvUISheet* GetSheet() { return reinterpret_cast(GetParent()); } void LoadFromRegistry(); void SaveToRegistry(); void SaveChatListColumnOrderToRegistry(); void SaveChatListColumnWidthsToRegistry(); void SaveSendChatMRUToRegistry(); void SaveSendChatAllGames(); void TrimExcessChats(); void UpdateActivateAdminPage(); void UpdateActivateChatMessage(); void UpdateUI(bool bUpdateData = false); void SendChat(); static UINT AdminPageMsgThreadThunk(void* pvParam); static UINT AdminPageRunThreadThunk(void* pvParam); void AdminPageMsgThreadProc(); void AdminPageRunThreadProc(); // Message Handlers protected: // Generated message map functions //{{AFX_MSG(CPageChat) virtual BOOL OnInitDialog(); afx_msg void OnEndDragChatList(NMHDR* pNMHDR, LRESULT* pResult); afx_msg void OnEndTrackChatList(NMHDR* pNMHDR, LRESULT* pResult); afx_msg void OnChatPreferences(); afx_msg void OnChatListClear(); afx_msg void OnDestroy(); afx_msg void OnTimer(UINT nIDEvent); afx_msg void OnSendChatAllGames(); //}}AFX_MSG // Data Members protected: //{{AFX_DATA(CPageChat) enum { IDD = IDD_PAGE_CHAT }; CButton m_btnSendChatAllGames; CListCtrl m_listChat; CStatic m_staticSendChat; CComboBox m_comboSendChat; CButton m_btnSendChat; CString m_strSendChat; BOOL m_bSendChatAllGames; //}}AFX_DATA protected: enum { c_iColumnSender, c_iColumnTarget, c_iColumnMessage, c_cColumns }; enum { c_idTimerReorder = 1, c_idTimerResize, }; enum { c_dwDelayReorder = 200, c_dwDelayResize = 200, }; ITCStringsPtr m_spStrings; CDlgChatPreferences m_Prefs; bool m_bAdminPageActivated; bool m_bChatActivated; CWinThread* m_pthAdminPageMsg; CWinThread* m_pthAdminPageRun; CEvent m_evtAdminPageMsgThreadStartup; CEvent m_evtAdminPageRunThreadStartup; CAdminPageThreadWnd* m_pWndAdminPageMsgThread; CAdminPageThreadWnd* m_pWndAdminPageRunThread; CAutoSizer m_AutoSizer; // Friends protected: friend class CInvisibleWnd; }; ///////////////////////////////////////////////////////////////////////////// //{{AFX_INSERT_LOCATION}} // Microsoft Visual C++ will insert additional declarations immediately before the previous line. ///////////////////////////////////////////////////////////////////////////// #endif // !__PageChat_h__