/* ========================================================================== * ÆÄ ÀÏ : QuestSimpleWindow.h * ¸ñ Àû : * ÀÛ ¼º ÀÚ : ±è°¡¶÷ * ÀÛ ¼º ÀÏ : 2008-04-21 * ÁÖÀÇ»çÇ× : *===========================================================================*/ #pragma once #include "UIWindow.h" #include "QuestWindow.h" const int START_GAPX = 7; const int START_GAPY = 9; struct sSimpleData { unsigned long mTimeLine; /// Ãâ·ÂÇØ¾ßÇÒ ¶óÀÎ unsigned long mQuestIndex; /// Äù½ºÆ® À妽º }; /// struct sQuestHaveData { tPointerList mQuestProgressList; /// Äù½ºÆ® »ó¼¼Á¤º¸¸®½ºÆ® bool mClose; /// close Á¤º¸ (Äù½ºÆ® ¸®½ºÆ® º¸±â ¿©ºÎ) cUIImage* mCloseImage; /// close Á¤º¸ÀÇ À̹ÌÁö cStringT mMapName; /// ¸ÊÀ̸§ unsigned int mTotalCount; /// º¸À¯ÇÑ Äù½ºÆ® °¹¼ö sQuestHaveData() { mClose = false; mCloseImage = 0; mTotalCount = 0; } }; /// Äù½ºÆ® ÁøÇàÁ¤º¸ struct sQuestProgress { unsigned long mIndex; /// Äù½ºÆ® À妽º cQuestDefine* mDefine; /// Äù½ºÆ® Á¤ÀÇ cStringT mQuestName; /// Äù½ºÆ®¸í __int64* mCheck; /// Á¶°Ç ÁøÇàÁ¤º¸ unsigned long mTime; /// ½Ã°£Á¤º¸ cUIImage* mCloseImage;/// close Á¤º¸ÀÇ À̹ÌÁö sQuestProgress() { mIndex = 0; mDefine = 0; mCheck = 0; mTime = 0; mCloseImage = 0; } }; class cPlaneObject; class cQuestSimpleWindow : public cUIWindow { public: cQuestSimpleWindow(); virtual ~cQuestSimpleWindow(); virtual void Open(); virtual void Close(); void Clear(); void AddQuestInfo( unsigned long questIndex, __int64* check ); void DeleteQuestInfo( unsigned long questIndex ); // void UpdateSelect(); void Show( bool onsound = true ); void GetHideMapCategorySet( tHashSet& mapSet ); void SetHideMapCategory( unsigned long mapIndex ); protected: bool OnCreate( cUINodeProperty* pproperty ); void OnRender( cUIFontItemKeeper* pKeeper ); void OnLButtonDown( const cUIPos& pos, bool ctrl, bool alt, bool ); void OnLButtonDoubleClick( const cUIPos& pos ); void UpdateRect(); void UpdateSkin(); /// À©µµ¿ì »çÀÌÁî °»½Å void UpdateSize(); // ÇØ´ç Äù½ºÆ®ÀÇ ½ÃÀÛ ÁÙ À§Ä¡ ±¸Çϱâ int FindStartRow( unsigned long questIndex ); private: enum { eBACKIMAGE_TOP = 0, eBACKIMAGE_CENTER, eBACKIMAGE_BOTTOM, eBACKIMAGE_LEFT, eBACKIMAGE_RIGHT, eBACKIMAGE_MAX }; /// ¸Ê ´ÜÀ§ Äù½ºÆ® Á¤º¸ ( ¸ÊÀ妽º, Äù½ºÆ® ¸®½ºÆ® sQuestHaveData ) typedef tPointerHashMap cQuestMap; cQuestMap mQuestMap; cUIImage* mpHighImage; cUIImage* mpLowImage; /// üũ, ³ëüũ ÅØ½ºÃÄ À§Ä¡ cUIPos mHighCheckPos; cUIPos mHighNoCheckPos; cUIPos mLowCheckPos; cUISize mImageSize; /// ¹è°æ À̹ÌÁö cUINodeSkin* mpBackSkin[eBACKIMAGE_MAX]; cPlaneObject* mpBackImage[eBACKIMAGE_MAX]; /// ±âº» ³ÐÀÌ unsigned int mInitWidth; unsigned int mInitX; /// ¼±ÅÃÀ̹ÌÁö cPlaneObject* mpSelectImage; bool mShowSelect; /// ÃßÀûÀ̹ÌÁö cUINodeSkin* mpOnSkin; cPlaneObject* mpOnImage; bool mShowOn; };