#pragma once //#include "SUIWnd.h" #include class SUIDisplayInfo; /// 2011.02.25 - prodongi /// 2011.02.22 - prodongi class SUIRaceDescTreeWnd : public SUIWnd { public: SUIRaceDescTreeWnd(SGameManager* gameManager) : SUIWnd(gameManager) {} virtual void PumpUpMessage( LPCSTR lpszControlID, DWORD nMessage, DWORD lparam, DWORD wparam ); }; class SUIRaceDescExplainWnd : public SUIWnd { public: SUIRaceDescExplainWnd(SGameManager* gameManager) : SUIWnd(gameManager) {} }; class SUIRaceDescClanExplainWnd : public SUIRaceDescExplainWnd { public: SUIRaceDescClanExplainWnd(SGameManager* gameManager) : SUIRaceDescExplainWnd(gameManager) {} void setSkillToolTip(SUIDisplayInfo* displayInfo); }; class SUIRaceDescJobExplainWnd : public SUIRaceDescExplainWnd { public: SUIRaceDescJobExplainWnd(SGameManager* gameManager) : SUIRaceDescExplainWnd(gameManager) {} virtual void PumpUpMessage( LPCSTR lpszControlID, DWORD nMessage, DWORD lparam, DWORD wparam ); }; class SUIRaceDescWnd : public SUIWnd { public: /// 2011.02.25 - prodongi SUIRaceDescWnd( SGameManager* pGameManager, SUIDisplayInfo* displayInfo ); virtual SUIWnd* CreateWnd( const char* szFile, KUIWndManager* pWndManager, KPoint kPos, int nWindowID ); /// 2011.02.22 - prodongi virtual ~SUIRaceDescWnd() { m_jobNuiName.clear(); m_removeWndList.clear(); } virtual bool InitData( bool bReload = false ); virtual void PumpUpMessage( LPCSTR lpszControlID, DWORD nMessage, DWORD lparam, DWORD wparam ); virtual void Process(DWORD dwTime); void clickButton(char const* controlId); virtual void ProcMsgAtStatic( SGameMessage* pMsg ); class SUILobbyProcessWnd : public SUIWnd { public: SUILobbyProcessWnd( SGameManager* pGameManager); virtual void PumpUpMessage( LPCSTR lpszControlID, DWORD nMessage, DWORD lparam, DWORD wparam ); }; //~SUIRaceDescWnd(); // bool InitControls( KPoint kPos ); //virtual void ProcMsgAtStatic( SGameMessage* pMsg ); //virtual void PumpUpMessage( LPCSTR lpszControlID, DWORD nMessage, DWORD lparam, DWORD wparam ); //virtual bool InitData( bool bReload = false ); //virtual void Process(DWORD dwTime); //virtual void OnNotifyUIWindowOpen( bool bOpen, bool bLimitWnd = true ); protected: /// 2011.02.22 - prodongi void initJobNuiName(); char const* findJobNuiName(char const* controlId); void setExplainInfoNui(int clan); void setTreeNui(int clan); void setInfoNui(int clan); void setTagNui(int clan); void adjustResolutionPos(SUIWnd* wnd, int x, int y); void procRemoveWnd(); void addRemoveWnd(SUIWnd* wnd); template SUIWnd* setNui(T2*& wnd, char const* nuiName, int x, int y) { if (!nuiName) return NULL; addRemoveWnd(wnd); wnd = new T1(m_pGameManager); wnd->CreateWnd(nuiName, m_pManager, KPoint(0, 0) ); wnd->SetParent(this); AddChild(wnd); wnd->SetShow(true); adjustResolutionPos(wnd, x, y); return wnd; } template SUIWnd* setExplainNui(char const* nuiName, int x, int y) { return setNui(m_explainWnd, nuiName, x, y); } private: /// 2011.02.22 - prodongi std::map m_jobNuiName; /// std::vector m_removeWndList; SUIRaceDescTreeWnd* m_treeWnd; SUIRaceDescExplainWnd* m_explainWnd; SUIWnd* m_infoWnd; SUIWnd* m_tagWnd; int m_selectClan; SUIDisplayInfo* m_displayInfo; /// 2011.02.25 - prodongi /*void RemoveRaceMovie(); void ClearQJTV(); void InitMovie( class QJTVObj*& pJTV, trf::MetaData& meta, const char* pFile ); void InitTexture( QJTVObj* pJTV ); void SetRace( int nRace ); void RefreshText( const char* szControlName, const char* szScrollName, const char* szText, int nMaxLine, int nScrollPos ); void StopAllSound(); private: int m_nRaceInfoScrollPos; int m_nJopInfoScrollPos; DWORD m_dwRaceInfoStringID; DWORD m_dwJopInfoStringID; int m_nSelectRace; bool m_bSound; std::string m_strCrrSound; class QJTVObj* m_pCrrRenderQJTVObj; class QJTVObj* m_pASURA_QJTVObj; class QJTVObj* m_pDEVA_QJTVObj; class QJTVObj* m_pGAIA_QJTVObj; trf::MetaData m_ASURA_meta; trf::MetaData m_DEVA_meta; trf::MetaData m_GAIA_meta; K3DTextureSPtr m_spLogoTexture; bool m_bInitAni; int m_nCurFrame; DWORD m_dwRefreshTime;*/ }; /*/ //종족 설명 윈도우 class SUIRaceDescWnd : public SUIWnd { public: SUIRaceDescWnd( SGameManager* pGameManager ); ~SUIRaceDescWnd(); virtual bool InitControls( KPoint kPos ); virtual void ProcMsgAtStatic( SGameMessage* pMsg ); virtual void PumpUpMessage( LPCSTR lpszControlID, DWORD nMessage, DWORD lparam, DWORD wparam ); virtual bool InitData( bool bReload = false ); virtual void Process(DWORD dwTime); virtual void OnNotifyUIWindowOpen( bool bOpen, bool bLimitWnd = true ); protected: void RemoveRaceMovie(); void ClearQJTV(); void InitMovie( class QJTVObj*& pJTV, trf::MetaData& meta, const char* pFile ); void InitTexture( QJTVObj* pJTV ); void SetRace( int nRace ); void RefreshText( const char* szControlName, const char* szScrollName, const char* szText, int nMaxLine, int nScrollPos ); void StopAllSound(); private: int m_nRaceInfoScrollPos; int m_nJopInfoScrollPos; DWORD m_dwRaceInfoStringID; DWORD m_dwJopInfoStringID; int m_nSelectRace; bool m_bSound; std::string m_strCrrSound; class QJTVObj* m_pCrrRenderQJTVObj; class QJTVObj* m_pASURA_QJTVObj; class QJTVObj* m_pDEVA_QJTVObj; class QJTVObj* m_pGAIA_QJTVObj; trf::MetaData m_ASURA_meta; trf::MetaData m_DEVA_meta; trf::MetaData m_GAIA_meta; K3DTextureSPtr m_spLogoTexture; bool m_bInitAni; int m_nCurFrame; DWORD m_dwRefreshTime; };*/