/* ========================================================================== * ÆÄ ÀÏ : FriendWindow.h * ¸ñ Àû : * ÀÛ ¼º ÀÚ : ±è°¡¶÷ * ÀÛ ¼º ÀÏ : 2007-07-06 * ÁÖÀÇ»çÇ× : *===========================================================================*/ #pragma once #include "UIWindow.h" #include "Chat_Common.h" const unsigned int MAXPAGE_NUM = 5; const unsigned int FRIEND_IMGNUM = 6; /// Ä£±¸ Á¤º¸ struct sFriendData { long Idx; // °íÀ¯¹øÈ£ unsigned long CharacterIdx; // ij¸¯ÅÍ °íÀ¯¹øÈ£ wchar_t CharacterName[ MAX_NAME_BUFFER_SIZE ]; // ij¸¯ÅÍ À̸§(Ä£±¸) char Race; // Á¾Á· char Gender; // ¼ºº° char Level; // ·¹º§ unsigned long Job; // Á÷¾÷(ePLAYER_JOB) short MapNum; // ¸Ê(À§Ä¡) DWORD ChannelNum; BYTE Status; // Ä£±¸»óÅÂ(0µî·Ï¿Ï·á/1µî·Ï½Åû) BYTE Block; // Â÷´Ü»óÅÂ(0Â÷´Ü¾ÈÇÔ/1Â÷´ÜÇÔ) }; class cFriendListbox; class cUIImage; class cButton; class cFriendWindow : public cUIWindow { public: cFriendWindow(); virtual ~cFriendWindow(); virtual void Open() {} void Clear(); bool AddFriend( sFriendData* data ); protected: bool OnCreate( cUINodeProperty* pproperty ); void OnCommand( cUINode* pcaller, unsigned int id ); void OnRadioPressed( cUINode* pcaller, unsigned int id ); void OnListBoxChanged( cUINode* caller, unsigned int id ); void UpdateSkin(); void OnNetLock( int lockTry ); void OnNetUnLock( int lockTry ); char GetFriendImage( char race, char gender ); void Update(); void UpdateButton(); private: cUINodeSkin* mpNodeSkin[FRIEND_IMGNUM]; /// Ä£±¸±â´É ¹öưµé cFriendListbox* mpFriendList; cButton* mParty; cButton* mAddFriend; cButton* mDelFriend; cButton* mWhisper; /// ÆäÀÌÁö ¹öư cUINode* mpRadioNode[ MAXPAGE_NUM ]; }; ////////////////////////////////////////////////////////////////////////////////////////// #include "StyleListBox.h" /// ÀÏ¹Ý ¸®½ºÆ®¹Ú½º¿Í ´Ù¸£°Ô Ä÷³À» ¾Æ·§ÁÙ¿¡ Ãâ·ÂÇϱâ À§ÇØ /// Ãâ·ÂºÎ°¡ º¯°æµÈ ¸®½ºÆ®¹Ú½º class cFriendListbox : public cImageListBox { public: cFriendListbox( eUINodeType type = eUINODE_LISTBOX ); virtual ~cFriendListbox(); protected: /// ¸®½ºÆ® ¹Ú½ºÀÇ ¾ÆÀÌÅÛÀ» ±×·ÁÁÜ. virtual void RenderData( cUIFontItemKeeper* pKeeper ); };