#pragma once #include "../GridControl/GridCtrl_src/GridCtrl.h" #include "afxwin.h" //#include "afxcmn.h" #define MSG_INVENTORY_GRID WM_USER + 1 // CCharInventoryPage ´ëÈ­ »óÀÚÀÔ´Ï´Ù. namespace Item { class CItem; }; class CModifyCharacter; /*! \class CCharInventoryPage ij¸¯ÅÍ Àκ¥Å丮 Á¤º¸ ÆäÀÌÁö */ class CCharInventoryPage : public CPropertyPage { DECLARE_DYNAMIC(CCharInventoryPage) public: CCharInventoryPage(); virtual ~CCharInventoryPage(); enum { IDD = IDD_CHARINVENTORYPAGE }; enum SORT_TYPE{ SERIAL, NAME, TYPE, COORDINATE, QUANTITY }; protected: virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV Áö¿øÀÔ´Ï´Ù. DECLARE_MESSAGE_MAP() virtual BOOL OnInitDialog(); virtual void PostNcDestroy(); private: bool m_InInventoryList; bool m_InEquipList; bool m_bSortListAsc; int m_iSortListItem; CModifyCharacter* m_lpInventoryPageInfo; unsigned int m_dwDocKey; CGridCtrl m_ctrlInventoryGrid; CTabCtrl m_ctrlInventoryTab; CListCtrl m_ctrlEquipItemList; CListCtrl m_ctrlInventoryItemList; unsigned long m_dwInventoryGold; afx_msg void OnInventoryGridClick(NMHDR *pNotifyStruct, LRESULT* pResult); afx_msg void OnInventoryGridDblClick(NMHDR *pNotifyStruct, LRESULT* pResult); afx_msg void OnTcnSelchangeInventorytab(NMHDR *pNMHDR, LRESULT *pResult); afx_msg void OnContextMenu(CWnd* pWnd, CPoint point); afx_msg void OnBnClickedItemmake(); afx_msg void OnNMDblclkEquipitemlist(NMHDR *pNMHDR, LRESULT *pResult); afx_msg void OnNMDblclkInventoryitemlist(NMHDR *pNMHDR, LRESULT *pResult); afx_msg void OnLvnColumnclickitemlist(NMHDR *pNMHDR, LRESULT *pResult); afx_msg void OnUpdateItem(); afx_msg void OnRemoveItem(); afx_msg void OnBnClickedEquipReset(); afx_msg void OnBnClickedInvenReset(); afx_msg void OnBnClickedInvenGoldUpdate(); afx_msg void OnStoreCopy(); afx_msg void OnBnClickedInvenpageEguipclipBtn(); afx_msg void OnBnClickedInvenpageInvenclipBtn(); void SortListWndItem(CListCtrl *lpListCtrl, const int iCol); void SetInventoryItem(CModifyCharacter* lpModifyCharacter); void SetEquip(CModifyCharacter* lpModifyCharacter); void InventoryGridSet(Item::CItem* InventoryItem, unsigned int nTab); BOOL IsEnableItemDrop(CPoint selGridCoordinates, CPoint selItemSize); public: bool SetInventoryPageData(unsigned int dwDocKey, CModifyCharacter* lpModifyCharacter); void SetInventoryPage(CModifyCharacter* lpModifyCharacter); };