#pragma once // sonador #2.1.2.11.1 곰던전 구현 //#include "SUIWnd.h" #include "SUIProperty.h" class KUIControlScrollBase; struct TS_HUNTAHOLIC_INSTANCE_INFO; typedef TS_HUNTAHOLIC_INSTANCE_INFO HuntaHolicInstance; // // HuntaHolic System Lobby Interface // /// 헌터홀릭 시스템중 로비 인터페이스의 역활을 담당하는 윈도우 클래스. class SUIHuntaHolicLobbyWnd : public SUIWnd { public: SUIHuntaHolicLobbyWnd( SGameManager* pGameManager ); virtual ~SUIHuntaHolicLobbyWnd(); virtual void Process( DWORD time ); virtual bool InitControls( KPoint pos ); virtual bool InitData( bool reload = false ); virtual void* Perform( KID id, KArg& msg ); virtual void PumpUpMessage( LPCTSTR controlID, DWORD msg, DWORD lparam, DWORD wparam ); virtual void ProcMsgAtStatic( SGameMessage* msg ); virtual void OnNotifyUIWindowOpen( bool open, bool limitWnd = true ); virtual DWORD OnMouseMessage( DWORD msg, int x, int y ); private: void cleanUp(); void refreshInstance( int index, const HuntaHolicInstance& instance ); void refreshInstanceAll(); void cleanUpLobby(); void cleanUpAllInstance(); int getInstanceIndex( int listIndex ) const; int getInstanceIndexOfListEnd() const; int getListIndex( int instanceIndex ) const; typedef std::vector< sui::kui_updatable_window_array* > UpdatableWindowArrayVector; sui::kui_updatable_window* mTitle; UpdatableWindowArrayVector mInstances; sui::kui_updatable_window_array mPageView; sui::Page mPage; KUIControlScrollBase* mScroll; int mOffset; bool mUserCommandEnabled; };