Files
Client/Tools/PatchMaker/PatchMakerSheet.cpp
LGram16 e067522598 Initial commit: ROW Client source code
Game client codebase including:
- CharacterActionControl: Character and creature management
- GlobalScript: Network, items, skills, quests, utilities
- RYLClient: Main client application with GUI and event handlers
- Engine: 3D rendering engine (RYLGL)
- MemoryManager: Custom memory allocation
- Library: Third-party dependencies (DirectX, boost, etc.)
- Tools: Development utilities

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 16:24:34 +09:00

110 lines
2.6 KiB
C++

// PatchMakerSheet.cpp : 구현 파일입니다.
//
#include "stdafx.h"
#include "PatchMaker.h"
#include "PatchMakerSheet.h"
// PatchMakerSheet
IMPLEMENT_DYNAMIC(CPatchMakerSheet, CPropertySheet)
CPatchMakerSheet::CPatchMakerSheet(UINT nIDCaption, CWnd* pParentWnd, UINT iSelectPage)
:CPropertySheet(nIDCaption, pParentWnd, iSelectPage)
{
}
CPatchMakerSheet::CPatchMakerSheet(LPCTSTR pszCaption, CWnd* pParentWnd, UINT iSelectPage)
:CPropertySheet(pszCaption, pParentWnd, iSelectPage)
{
}
CPatchMakerSheet::~CPatchMakerSheet()
{
}
BEGIN_MESSAGE_MAP(CPatchMakerSheet, CPropertySheet)
ON_WM_CREATE()
END_MESSAGE_MAP()
// PatchMakerSheet 메시지 처리기입니다.
BOOL CPatchMakerSheet::OnInitDialog()
{
BOOL bResult = CPropertySheet::OnInitDialog();
// TODO: 여기에 특수화된 코드를 추가합니다.
// 버튼을 제거합니다.
int ids[] = { IDOK, IDCANCEL, IDHELP, ID_APPLY_NOW };
CRect rcButton;
for (int i = 0; i < sizeof(ids)/sizeof(int); i++)
{
CWnd* lpWnd = GetDlgItem(ids[i]);
if (lpWnd)
{
lpWnd->GetWindowRect(&rcButton);
lpWnd->ShowWindow(FALSE);
}
}
int nEditWidthMargin = 20;
int nEditHeightMargin = 20;
int nEditHeight = 80;
CRect rect;
GetWindowRect(&rect);
rect.bottom += nEditHeight - rcButton.Height() + nEditHeightMargin / 2;
MoveWindow(rect);
GetClientRect (&rect);
// 에딧 컨트롤을 바닥에 붙인다.
int nX = rect.left + nEditWidthMargin / 2;
int nY = rect.bottom - nEditHeight - nEditHeightMargin / 2;
int nEditWidth = rect.Width() - nEditWidthMargin;
m_edLogMsg.CreateEx (WS_EX_CLIENTEDGE, _T("EDIT"), NULL,
WS_CHILD | WS_VISIBLE | WS_BORDER | WS_VSCROLL | ES_MULTILINE | ES_AUTOVSCROLL,
nX, nY, nEditWidth, nEditHeight, m_hWnd, 0, 0 );
m_edLogMsg.SetFont(GetFont());
const int nMaxPageCount = GetPageCount();
for(int nIndex = 0; nIndex < nMaxPageCount; ++nIndex)
{
// 한번씩 Active를 해서, Page의 OnInitDialog를 호출하도록 한다.
SetActivePage(nIndex);
}
SetActivePage(0);
return bResult;
}
int CPatchMakerSheet::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (CPropertySheet::OnCreate(lpCreateStruct) == -1)
return -1;
// TODO: 여기에 특수화된 작성 코드를 추가합니다.
ModifyStyle(0, WS_MINIMIZEBOX);
return 0;
}
BOOL CPatchMakerSheet::OnCommand(WPARAM wParam, LPARAM lParam)
{
// TODO: 여기에 특수화된 코드를 추가 및/또는 기본 클래스를 호출합니다.
if (LOWORD(wParam) == IDOK)
{
// 엔터 눌러도 안먹게 함.
return TRUE;
}
return CPropertySheet::OnCommand(wParam, lParam);
}