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

96 lines
2.9 KiB
C++

// InterestedUserDlg.cpp : 구현 파일입니다.
//
#include "stdafx.h"
#include "AdminToolClient.h"
#include "InterestedUserDlg.h"
#include "PacketManager.h"
#include "WindowMgr.h"
#include "GlobalFunctions.h"
// CInterestedUserDlg 대화 상자입니다.
IMPLEMENT_DYNAMIC(CInterestedUserDlg, CDialog)
CInterestedUserDlg::CInterestedUserDlg(CWnd* pParent /*=NULL*/)
: CDialog(CInterestedUserDlg::IDD, pParent)
{
INSERT_WINDOW(IDD_INTERESTEDUSERDLG, static_cast<CWnd*>(this));
}
CInterestedUserDlg::~CInterestedUserDlg()
{
ERASE_WINDOW(IDD_INTERESTEDUSERDLG);
}
void CInterestedUserDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
DDX_Control(pDX, IDC_INTERESTUSER_LIST, m_ctrlInterestUserList);
}
BEGIN_MESSAGE_MAP(CInterestedUserDlg, CDialog)
ON_BN_CLICKED(IDC_ADDUSER_BTN, OnBnClickedAdduserBtn)
ON_BN_CLICKED(IDC_REMOVEUSER_BTN, OnBnClickedRemoveuserBtn)
END_MESSAGE_MAP()
// CInterestedUserDlg 메시지 처리기입니다.
BOOL CInterestedUserDlg::OnInitDialog()
{
CDialog::OnInitDialog();
m_ctrlInterestUserList.SetExtendedStyle(LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES | LVS_EX_FLATSB);
m_ctrlInterestUserList.InsertColumn(0, GetLocalString("ACCOUNT"), LVCFMT_LEFT, 80);
m_ctrlInterestUserList.InsertColumn(1, GetLocalString("REASON"), LVCFMT_LEFT, 390);
CPacketMgr::GetInstance()->SendPktInterestedUser(PktAdminMgr::PktInterestedUser::REQUEST_LIST);
SetWindowText(GetLocalString("IDD_INTERESTEDUSERDLG"));
SetUIString(this->m_hWnd, IDC_INTERESTED_01, "IDC_INTERESTED_01");
SetUIString(this->m_hWnd, IDC_INTERESTED_02, "IDC_INTERESTED_02");
SetUIString(this->m_hWnd, IDC_INTERESTED_03, "IDC_INTERESTED_03");
SetUIString(this->m_hWnd, IDC_ADDUSER_BTN, "IDC_ADDUSER_BTN");
SetUIString(this->m_hWnd, IDC_REMOVEUSER_BTN, "IDC_REMOVEUSER_BTN");
return TRUE;
}
void CInterestedUserDlg::OnBnClickedAdduserBtn()
{
if (30 <= m_ctrlInterestUserList.GetItemCount())
{
Report(GetLocalString("MSG_0003"), CAUTION);
return;
}
TCHAR szAccount[PktAdminMgr::MAX_ACCOUNT], szReason[MAX_PATH];
if (0 != GetDlgItemText(IDC_NEWACCOUNT_EDIT, szAccount, PktAdminMgr::MAX_ACCOUNT)
&& 0 != GetDlgItemText(IDC_NEWACCOUNTREASON_EDIT, szReason, MAX_PATH))
{
CPacketMgr::GetInstance()->SendPktInterestedUser(
PktAdminMgr::PktInterestedUser::ADD_USER, szAccount, szReason);
m_ctrlInterestUserList.DeleteAllItems();
CPacketMgr::GetInstance()->SendPktInterestedUser(PktAdminMgr::PktInterestedUser::REQUEST_LIST);
}
}
void CInterestedUserDlg::OnBnClickedRemoveuserBtn()
{
TCHAR szAccount[PktAdminMgr::MAX_ACCOUNT];
int Index = m_ctrlInterestUserList.GetNextItem(-1, LVIS_SELECTED);
if (0 != m_ctrlInterestUserList.GetItemText(Index, 0, szAccount, PktAdminMgr::MAX_ACCOUNT))
{
CPacketMgr::GetInstance()->SendPktInterestedUser(
PktAdminMgr::PktInterestedUser::REMOVE_USER, szAccount);
m_ctrlInterestUserList.DeleteAllItems();
CPacketMgr::GetInstance()->SendPktInterestedUser(PktAdminMgr::PktInterestedUser::REQUEST_LIST);
}
}