#pragma once //#include "SUIWnd.h" class SUIServerListWnd : public SUIWnd { public: SUIServerListWnd( SGameManager* pGameManager ) : SUIWnd( pGameManager ), m_pServerList(NULL), m_nServerCount(0), m_nScrollPos(0), m_nSelectDataIndex(0) { } ~SUIServerListWnd(); virtual bool InitControls( KPoint kPos ); virtual bool InitData( bool bReload = false ); virtual void ProcMsgAtStatic( SGameMessage* pMsg ); virtual void OnNotifyUIWindowOpen( bool bOpen, bool bLimitWnd = true ); virtual DWORD OnKeyMessage(DWORD dwMessage, DWORD dwKeyCode); void PumpUpMessage( LPCSTR lpszControlID, DWORD nMessage, DWORD lparam, DWORD wparam ); protected: int GetServerIndex(int idx); void SetServerListData( SGameMessage* pMsg ); void InitScroll( int nServerIndex ); void SetServerListControlAll(); void SetServerListControl( int nCtrIndex, int nDataIndex, bool bColoeShow ); void SelectCtrUpdate(); void SelectServer( int nCtrIndex ); void ShowSelectBar( KUIWnd* pStaticServerName ); void SelectOK( const char * pServerName ); /// 서버 Name을 주면, 해당하는 서버의 IP를 "|"과 더해서 돌려 준다. bool GetServerIP( std::string & strServerName ); struct TS_SERVER_INFO * m_pServerList; int m_nServerCount; std::string m_strSelectCtrl; int m_nValue[3]; int m_nSelectDataIndex; int m_nScrollPos; struct _COLOR_RATIO_ { int nRatio; DWORD dwColor; }; int m_nServerMax; //_COLOR_RATIO_ m_server_ratio[4]; int m_server_ratio[4]; };