45 lines
1.5 KiB
C++
45 lines
1.5 KiB
C++
#pragma once
|
|
|
|
#ifdef _NA_000000_20140120_SMART_NPC_SYSTEM
|
|
#include "uiSmartNpcDialogMan/uiSmartNpcDialogMan.h"
|
|
#include "uiBase.h"
|
|
|
|
class uiSmartNpcDialog : public uiBase
|
|
{
|
|
public:
|
|
struct EVENT_IDSTEP
|
|
{
|
|
DWORD event_id;
|
|
DWORD step;
|
|
};
|
|
|
|
uiSmartNpcDialog(InterfaceManager* ui_manager = &g_InterfaceManager);
|
|
virtual inline ~uiSmartNpcDialog() {}
|
|
|
|
virtual void SetControlText(BYTE contorl_index, const TCHAR *text_massage) = 0;
|
|
virtual void SetControlEventID(BYTE contorl_index, DWORD event_id, DWORD step) = 0;
|
|
|
|
|
|
// ÇÊ¿äÇѰ¡?
|
|
inline int GetID() { return id_; }
|
|
inline void SetID(int id) { id_ = id; }
|
|
inline BYTE GetSubType() { return dialog_sub_type_; }
|
|
inline void SetSubType(BYTE sub_type) { dialog_sub_type_ = sub_type; }
|
|
//
|
|
protected:
|
|
virtual BOOL CreateControls(BYTE sub_type) = 0;
|
|
|
|
CCtrlStaticWZ* CreateContorlStatic(DWORD dialog_key, DWORD control_id);
|
|
CCtrlButtonWZ* CreateContorlButton(DWORD dialog_key, DWORD control_id);
|
|
CCtrlButtonWZ* CreateContorlCloseButton(DWORD dialog_key, DWORD control_id);
|
|
CCtrlListWZ* CreateContorlList(DWORD dialog_key, DWORD control_id);
|
|
CCtrlVScrollWZ* CreateContorlVScroll(DWORD dialog_key, DWORD control_id);
|
|
CCtrlPictureWZ* CreateContorlPicture(DWORD dialog_key, DWORD control_id);
|
|
CCtrlMultilineEditWZ* CreateContorlEdit(DWORD dialog_key, DWORD control_id);
|
|
|
|
BYTE dialog_type_;
|
|
BYTE dialog_sub_type_;
|
|
int id_;
|
|
};
|
|
|
|
#endif //_NA_000000_20140120_SMART_NPC_SYSTEM
|