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>
This commit is contained in:
101
Tools/PatchMaker/LogEdit.cpp
Normal file
101
Tools/PatchMaker/LogEdit.cpp
Normal file
@@ -0,0 +1,101 @@
|
||||
// LogEdit.cpp : <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
|
||||
//
|
||||
|
||||
#include "stdafx.h"
|
||||
#include "LogEdit.h"
|
||||
|
||||
// CLogEdit
|
||||
|
||||
IMPLEMENT_DYNAMIC(CLogEdit, CEdit)
|
||||
CLogEdit::CLogEdit()
|
||||
{
|
||||
}
|
||||
|
||||
CLogEdit::~CLogEdit()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
BEGIN_MESSAGE_MAP(CLogEdit, CEdit)
|
||||
ON_WM_CHAR()
|
||||
ON_WM_RBUTTONDOWN()
|
||||
END_MESSAGE_MAP()
|
||||
|
||||
|
||||
|
||||
// CLogEdit <20><EFBFBD><DEBD><EFBFBD> ó<><C3B3><EFBFBD><EFBFBD><EFBFBD>Դϴ<D4B4>.
|
||||
|
||||
|
||||
void CLogEdit::OnChar(UINT nChar, UINT nRepCnt, UINT nFlags)
|
||||
{
|
||||
// TODO: <20><><EFBFBD> <20><EFBFBD><DEBD><EFBFBD> ó<><C3B3><EFBFBD><EFBFBD> <20>ڵ带 <20>߰<EFBFBD> <20><>/<2F>Ǵ<EFBFBD> <20>⺻<EFBFBD><E2BABB><EFBFBD><EFBFBD> ȣ<><C8A3><EFBFBD>մϴ<D5B4>.
|
||||
|
||||
// CEdit::OnChar(nChar, nRepCnt, nFlags);
|
||||
}
|
||||
|
||||
void CLogEdit::OnRButtonDown(UINT nFlags, CPoint point)
|
||||
{
|
||||
// TODO: <20><><EFBFBD> <20><EFBFBD><DEBD><EFBFBD> ó<><C3B3><EFBFBD><EFBFBD> <20>ڵ带 <20>߰<EFBFBD> <20><>/<2F>Ǵ<EFBFBD> <20>⺻<EFBFBD><E2BABB><EFBFBD><EFBFBD> ȣ<><C8A3><EFBFBD>մϴ<D5B4>.
|
||||
|
||||
CEdit::OnRButtonDown(nFlags, point);
|
||||
}
|
||||
|
||||
void CLogEdit::AddLine(LPCTSTR szLine, int nIndex, bool bNewLine)
|
||||
{
|
||||
m_szTempLine.SetString(szLine);
|
||||
if (bNewLine) { m_szTempLine.Append("\r\n"); }
|
||||
|
||||
if (OpenClipboard())
|
||||
{
|
||||
EmptyClipboard();
|
||||
|
||||
BOOL bAddedLine = FALSE;
|
||||
|
||||
int nLength = m_szTempLine.GetLength();
|
||||
HANDLE hGlobalCopy = GlobalAlloc(GMEM_MOVEABLE, (nLength + 1) * sizeof(TCHAR));
|
||||
if (0 != hGlobalCopy)
|
||||
{
|
||||
// Lock the handle and copy the text to the buffer.
|
||||
LPTSTR lptstrCopy = reinterpret_cast<LPTSTR>(GlobalLock(hGlobalCopy));
|
||||
memcpy(lptstrCopy, m_szTempLine.GetString(), nLength * sizeof(TCHAR));
|
||||
lptstrCopy[nLength] = _T('\0');
|
||||
GlobalUnlock(hGlobalCopy);
|
||||
|
||||
// Place the handle on the clipboard.
|
||||
if(0 != SetClipboardData(CF_TEXT, hGlobalCopy))
|
||||
{
|
||||
bAddedLine = TRUE;
|
||||
}
|
||||
else
|
||||
{
|
||||
GlobalFree(hGlobalCopy);
|
||||
}
|
||||
}
|
||||
|
||||
CloseClipboard();
|
||||
|
||||
if (bAddedLine)
|
||||
{
|
||||
int nCharPos = 0;
|
||||
int nLinePos = 0;
|
||||
|
||||
if (-1 == nIndex || -1 == (nCharPos = LineIndex(nIndex)))
|
||||
{
|
||||
// <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>ο<EFBFBD> <20>߰<EFBFBD>
|
||||
nLinePos = GetLineCount();
|
||||
nCharPos = GetWindowTextLength();
|
||||
SetSel(nCharPos, nCharPos);
|
||||
}
|
||||
else
|
||||
{
|
||||
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD>ο<EFBFBD> <20>߰<EFBFBD>
|
||||
SetSel(nCharPos, nCharPos);
|
||||
nLinePos = LineFromChar(nCharPos);
|
||||
}
|
||||
|
||||
Paste();
|
||||
LineScroll(nLinePos);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user