Files
Client/Server/AdminTool/AdminToolClient/CharSkillPage.h
LGram16 dd97ddec92 Restructure repository to include all source folders
Move git root from Client/ to src/ to track all source code:
- Client: Game client source (moved to Client/Client/)
- Server: Game server source
- GameTools: Development tools
- CryptoSource: Encryption utilities
- database: Database scripts
- Script: Game scripts
- rylCoder_16.02.2008_src: Legacy coder tools
- GMFont, Game: Additional resources

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 20:17:20 +09:00

79 lines
1.9 KiB
C++

#pragma once
#include "afxcmn.h"
class CModifyCharacter;
class SkillMgr;
/*!
\class CCharSkillPage
캐릭터 스킬 정보 페이지
*/
class CCharSkillPage : public CPropertyPage
{
DECLARE_DYNAMIC(CCharSkillPage)
public:
CCharSkillPage();
virtual ~CCharSkillPage();
// 대화 상자 데이터입니다.
enum { IDD = IDD_CHARSKILLPAGE };
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 지원입니다.
DECLARE_MESSAGE_MAP()
virtual BOOL OnInitDialog();
public:
enum CONTEXT_MENU_TYPE { NONE, IN_SKILL_LIST, IN_WANTSKILL_LIST };
enum SORT_TYPE { SLOT_NUM, SKILL_ID, SKILL_NAME, SKILL_TYPE, SKILL_LEVEL };
enum SKILL_EDIT_MODE
{
MODE_EMPTY = 0,
MODE_CREATE = 1,
MODE_EDIT = 2,
MODE_DELETE = 3
};
private:
bool m_bSortListAsc;
int m_iSortListItem;
CModifyCharacter* m_lpSkillPageInfo;
unsigned int m_dwDocKey;
SKILLSLOT m_ManageSkill;
CListCtrl m_ctrlCharSkillList;
CListBox m_ctrlWantSkillList;
unsigned int m_dwSkillMaxNum;
unsigned int m_dwSkillUseNum;
CONTEXT_MENU_TYPE m_ContextType;
SKILL_EDIT_MODE m_EditMode;
void SetSkill(SKILL& Skill);
bool SetManageSkillInfo();
void SetAcquirableSkillList();
void SortListWndItem(CListCtrl *pListCtrl, const int iCol);
afx_msg void OnContextMenu(CWnd* pWnd, CPoint point);
afx_msg void OnSkillAddCM();
afx_msg void OnSkillEditCM();
afx_msg void OnSkillDelCM();
afx_msg void OnLbnDblclkSkillList();
afx_msg void OnNMDblclkCharskilllist(NMHDR *pNMHDR, LRESULT *pResult);
afx_msg void OnLvnColumnclickCharskilllist(NMHDR *pNMHDR, LRESULT *pResult);
afx_msg void OnBnClickedSkillpageClipskillBtn();
public:
bool SetSkillPageData(unsigned int dwDocKey, CModifyCharacter* lpModifyCharacter);
void SetSkillPage(CModifyCharacter* lpModifyCharacter);
SKILLSLOT& GetLastSkill();
SKILL_EDIT_MODE GetMode() { return m_EditMode; }
CModifyCharacter* GetCharacter() { return m_lpSkillPageInfo; }
};