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>
105 lines
2.3 KiB
C++
105 lines
2.3 KiB
C++
|
|
#pragma once
|
|
#include "afxcmn.h"
|
|
|
|
|
|
/*!
|
|
\class CUserCharTreeView
|
|
계정이 소유하고 있는 캐릭터를 서버군별로 열람할 수 있는 트리뷰
|
|
*/
|
|
class CUserCharTreeView : public CFormView
|
|
{
|
|
DECLARE_DYNCREATE(CUserCharTreeView)
|
|
|
|
protected:
|
|
CUserCharTreeView(); // 동적 만들기에 사용되는 protected 생성자입니다.
|
|
virtual ~CUserCharTreeView();
|
|
|
|
public:
|
|
enum { IDD = IDD_CHARTREEVIEW };
|
|
#ifdef _DEBUG
|
|
virtual void AssertValid() const;
|
|
virtual void Dump(CDumpContext& dc) const;
|
|
#endif
|
|
|
|
protected:
|
|
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 지원입니다.
|
|
|
|
DECLARE_MESSAGE_MAP()
|
|
|
|
virtual void OnInitialUpdate();
|
|
virtual BOOL PreTranslateMessage(MSG* pMsg);
|
|
|
|
public:
|
|
struct BLOCK_INFO
|
|
{
|
|
enum TYPE
|
|
{
|
|
NONE = 0,
|
|
ACCOUNT = 1,
|
|
CHARACTER = 2,
|
|
|
|
MAX_NAME = 20,
|
|
};
|
|
|
|
unsigned char m_cType;
|
|
unsigned long m_dwUID;
|
|
unsigned long m_dwServerGroup;
|
|
TCHAR m_szCharacterName[MAX_NAME];
|
|
};
|
|
|
|
struct SEL_TREEITEM_INFO
|
|
{
|
|
enum SEL_TYPE
|
|
{
|
|
NONE = 0,
|
|
UID_NODE = 1,
|
|
GROUP_NODE = 2,
|
|
CHAR_NODE = 3,
|
|
|
|
MAX_NAME = 20
|
|
};
|
|
|
|
unsigned char m_cSelType;
|
|
unsigned long m_dwUID;
|
|
unsigned long m_dwCID;
|
|
unsigned long m_dwServerGroup;
|
|
TCHAR m_szAccountName[MAX_NAME];
|
|
TCHAR m_szCharName[MAX_NAME];
|
|
};
|
|
|
|
unsigned long m_dwWndKey;
|
|
|
|
BLOCK_INFO& GetLastBlockInfo() { return m_stLastBlockInfo; }
|
|
void UserCharTreeSet();
|
|
|
|
private:
|
|
unsigned int m_clrR;
|
|
unsigned int m_clrG;
|
|
unsigned int m_clrB;
|
|
|
|
CTreeCtrl m_ctrlCharTree;
|
|
CImageList m_imgCharTree;
|
|
CImageList m_hImageList;
|
|
HTREEITEM m_hUIDNode;
|
|
HTREEITEM m_hServerNode;
|
|
|
|
BLOCK_INFO m_stLastBlockInfo;
|
|
SEL_TREEITEM_INFO m_stSelTreeItemInfo;
|
|
|
|
afx_msg void OnContextMenu(CWnd* pWnd, CPoint point);
|
|
afx_msg HBRUSH OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor);
|
|
afx_msg void OnTvnSelchangedChartree(NMHDR *pNMHDR, LRESULT *pResult);
|
|
afx_msg void OnNMDblclkChartree(NMHDR *pNMHDR, LRESULT *pResult);
|
|
afx_msg void OnNMRclickChartree(NMHDR *pNMHDR, LRESULT *pResult);
|
|
afx_msg void OnModifyCharName();
|
|
afx_msg void OnBlockAccount();
|
|
afx_msg void OnBlockCharacter();
|
|
afx_msg void OnDeleteChar();
|
|
afx_msg void OnForcedDis();
|
|
afx_msg void OnGmlogmanageUid();
|
|
afx_msg void OnGmlogmanageCid();
|
|
|
|
HTREEITEM InsertItemEX(HTREEITEM hNode, unsigned char cIcon, CString strText);
|
|
int IsBlockedChar(UINT CID);
|
|
}; |