Files
Client/Server/AdminTool/AdminToolClient/CharPropertySheet.cpp
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

114 lines
3.8 KiB
C++

// CharPropertySheet.cpp : 구현 파일입니다.
//
#include "stdafx.h"
#include "AdminToolClient.h"
#include "CharPropertySheet.h"
#include "PacketManager.h"
#include <Character/ModifyCharacter.h>
// CCharPropertySheet
IMPLEMENT_DYNAMIC(CCharPropertySheet, CPropertySheet)
CCharPropertySheet::CCharPropertySheet(UINT nIDCaption, CWnd* pParentWnd, UINT iSelectPage)
:CPropertySheet(nIDCaption, pParentWnd, iSelectPage)
, m_lpModifyCharInfo(NULL)
, m_dwDocKey(0)
{
AddPage(&m_wndCharStatusPage);
AddPage(&m_wndCharInventoryPage);
AddPage(&m_wndCharItemStorePage);
AddPage(&m_wndCharSkillPage);
AddPage(&m_wndCharSocietyPage);
AddPage(&m_wndCharQuestPage);
AddPage(&m_wndCharTempInvenPage);
AddPage(&m_wndCharExtraItemPage);
AddPage(&m_wndCharEXInfoPage);
}
CCharPropertySheet::CCharPropertySheet(LPCTSTR pszCaption, CWnd* pParentWnd, UINT iSelectPage)
:CPropertySheet(pszCaption, pParentWnd, iSelectPage)
, m_lpModifyCharInfo(NULL)
, m_dwDocKey(0)
{
AddPage(&m_wndCharStatusPage);
AddPage(&m_wndCharInventoryPage);
AddPage(&m_wndCharItemStorePage);
AddPage(&m_wndCharSkillPage);
AddPage(&m_wndCharSocietyPage);
AddPage(&m_wndCharQuestPage);
AddPage(&m_wndCharTempInvenPage);
AddPage(&m_wndCharExtraItemPage);
AddPage(&m_wndCharEXInfoPage);
}
CCharPropertySheet::~CCharPropertySheet()
{
if(NULL != m_lpModifyCharInfo && (m_dwDocKey != 0))
{
// 캐릭터 시트 뷰가 없어질때 선택되 있던 캐릭터 독점권 해제
CPacketMgr::GetInstance()->SendCloseCharacter(
m_lpModifyCharInfo->GetServerGroup(), m_lpModifyCharInfo->GetCID(), m_dwDocKey);
}
}
BEGIN_MESSAGE_MAP(CCharPropertySheet, CPropertySheet)
END_MESSAGE_MAP()
// CCharPropertySheet 메시지 처리기입니다.
BOOL CCharPropertySheet::OnInitDialog()
{
BOOL bResult = CPropertySheet::OnInitDialog();
SetActivePage(&m_wndCharTempInvenPage);
SetActivePage(&m_wndCharInventoryPage);
SetActivePage(&m_wndCharItemStorePage);
SetActivePage(&m_wndCharSkillPage);
SetActivePage(&m_wndCharSocietyPage);
SetActivePage(&m_wndCharQuestPage);
SetActivePage(&m_wndCharEXInfoPage);
SetActivePage(&m_wndCharExtraItemPage);
SetActivePage(&m_wndCharStatusPage);
return bResult;
}
bool CCharPropertySheet::SetAllPage( unsigned int dwDocKey, CModifyCharacter* lpModifyCharInfo )
{
m_lpModifyCharInfo = lpModifyCharInfo;
m_dwDocKey = dwDocKey;
// 각 페이지에 선택된 캐릭터 정보 셋팅
m_wndCharStatusPage.SetStatusPageData (dwDocKey, lpModifyCharInfo); // 스테이터스 페이지
m_wndCharInventoryPage.SetInventoryPageData (dwDocKey, lpModifyCharInfo); // 인벤토리 페이지
m_wndCharItemStorePage.SetStorePageData (dwDocKey, lpModifyCharInfo); // 창고 페이지
m_wndCharSkillPage.SetSkillPageData (dwDocKey, lpModifyCharInfo); // 스킬 페이지
m_wndCharSocietyPage.SetSocietyPageData (dwDocKey, lpModifyCharInfo); // 사회창 페이지
m_wndCharQuestPage.SetQuestPageData (dwDocKey, lpModifyCharInfo); // 퀘스트 페이지
m_wndCharTempInvenPage.SetTempInvenPageData (dwDocKey, lpModifyCharInfo); // 임시 인벤 정보 페이지
m_wndCharExtraItemPage.SetExtraItemPageData (dwDocKey, lpModifyCharInfo); // 기타 아이템 공간 페이지
m_wndCharEXInfoPage.SetCharEXInfoPageData (dwDocKey, lpModifyCharInfo); // 기타 정보 페이지
// 각 페이지에 정보 갱신
m_wndCharStatusPage.SetStatusPage (lpModifyCharInfo);
m_wndCharInventoryPage.SetInventoryPage (lpModifyCharInfo);
m_wndCharItemStorePage.SetStorePage (lpModifyCharInfo);
m_wndCharSkillPage.SetSkillPage (lpModifyCharInfo);
m_wndCharSocietyPage.SetSocietyPage (lpModifyCharInfo);
m_wndCharQuestPage.SetQuestPage (lpModifyCharInfo);
m_wndCharEXInfoPage.SetCharEXInfoPage (lpModifyCharInfo);
m_wndCharTempInvenPage.SetTempInvenPage (lpModifyCharInfo);
m_wndCharExtraItemPage.SetExtraItemPage (lpModifyCharInfo);
return true;
}
void CCharPropertySheet::PostNcDestroy()
{
CPropertySheet::PostNcDestroy();
}