/* ========================================================================== * ÆÄ ÀÏ : TipWindow.h * ¸ñ Àû : * ÀÛ ¼º ÀÚ : ±è°¡¶÷ * ÀÛ ¼º ÀÏ : 2007-09-06 * ÁÖÀÇ»çÇ× : *===========================================================================*/ #pragma once #include "UIWindow.h" enum eTip_Kind { eTIP_ITEM, eTIP_SKILL, eTIP_QUICK, eTIP_SKILLPREVIEW, }; class cTipParam { public: /// ÅØ½ºÆ® cStringT mString; /// ÅØ½ºÆ® Ä÷¯ unsigned long mColor; unsigned int mGapCount; cTipParam() : mGapCount(0), mColor(0) {} }; enum { eTIMELINE_COOLTIME = 0, // ÄðŸÀÓ eTIMELINE_LIMITDATE, // ½Ã°£Á¦ eTIMELINE_MAX, }; struct sTimeData { unsigned int timeTipIdx; cStringT saveCoolTime; sTimeData() { timeTipIdx = 0; } }; const unsigned int GAP_SIZE = 6; const unsigned int LINEGAP_SIZE = 3; const unsigned int MAX_TIP = 50; class cPlaneObject; class cTipWindow : public cUIWindow { public: cTipWindow(); virtual ~cTipWindow(); virtual void Open() {} protected: bool OnCreate( cUINodeProperty* prop ); void OnRender( cUIFontItemKeeper* fontKeeper ) = 0; bool SetSkin( const cUINodeSkin* skin ); void OnHide(); virtual void Clear(); /// ÅØ½ºÆ® ±æÀ̰˻ç ( ¿©·¯ÁÙ ) bool CheckText( LPCTSTR str, unsigned long color ); /// ÅØ½ºÆ® ¼¼ÆÃ void AppendText( LPCTSTR str1, LPCTSTR str2, unsigned long color ); void SetText( LPCTSTR str1, LPCTSTR str2, unsigned long color ); void SetText( LPCTSTR str, unsigned long color ); void SetText( const LPCTSTR str, unsigned long value, unsigned long color ); void SetText( const LPCTSTR str, float value, unsigned long color ); void SetText( const LPCTSTR str, short value, unsigned long color ); /// ½ºÆ®¸µ ³Êºñ °è»ê void CalcMaxWidth( const cStringT& str ); void AddGap( unsigned int count ); void UpdateEdge(); protected: enum { eBACKIMAGE_TOP = 0, eBACKIMAGE_BOTTOM, eBACKIMAGE_LEFT, eBACKIMAGE_RIGHT, eBACKIMAGE_MAX }; /// ¹è°æ unsigned int mX; unsigned int mY; unsigned int mWidth; unsigned int mHeight; unsigned int mGapCount; /// Åõ¸í ¹è°æ À̹ÌÁö cPlaneObject* mMiddleBack; /// ÅøÆÁ µ¥ÀÌÅÍ cTipParam mToolTip[MAX_TIP]; /// µ¥ÀÌÅÍ À妽º unsigned int mIndex; /// ½ºÆ®¸µ ³Êºñ unsigned int mMaxWidth; /// ÇÑ°è ³Êºñ unsigned int mLimitMinWidth; unsigned int mLimitMaxWidth; /// ¶óÀÎ ³ôÀÌ unsigned int mLineHeight; /// ¹è°æ À̹ÌÁö cPlaneObject* mpBackImage[eBACKIMAGE_MAX]; /// Àç»ç¿ë½Ã°£, »ç¿ë´ë±â½Ã°£ º¯°æ½Ã ÀúÀå¿ë sTimeData mTimeLine[eTIMELINE_MAX]; bool mUpdateSizebyTime; /// Àç»ç¿ë½Ã°£ Ãâ·Â½Ã ¹ÙÅÁÀ̹ÌÁö Àç°è»ê };