87 lines
1.8 KiB
C++
87 lines
1.8 KiB
C++
#ifndef _uiSocketRemove_h_
|
|
#define _uiSocketRemove_h_
|
|
|
|
#include "uibase.h"
|
|
|
|
class uiSocketRemove : public uiBase
|
|
{
|
|
enum eDIALOG_POS
|
|
{
|
|
eDIALOG_BTN_EXIT,
|
|
eDIALOG_BTN_OK,
|
|
eDIALOG_BTN_CANCLE,
|
|
eDIALOG_TXT_CAPTION,
|
|
eDIALOG_LIST,
|
|
DLGPOS_MAX,
|
|
};
|
|
|
|
enum
|
|
{
|
|
BTN_MAX = eDIALOG_TXT_CAPTION,
|
|
};
|
|
|
|
enum
|
|
{
|
|
SOCKET_LOW = 0,
|
|
SOCKET_HIGH,
|
|
};
|
|
|
|
enum
|
|
{
|
|
SOCKET_STATE_MAX = 5,
|
|
};
|
|
|
|
struct SocketState
|
|
{
|
|
int socketType;
|
|
int socketPos;
|
|
};
|
|
|
|
public:
|
|
uiSocketRemove(InterfaceManager *pUIMan);
|
|
~uiSocketRemove();
|
|
virtual void Init(CDrawBase * pDrawBase);
|
|
virtual void Release();
|
|
virtual void OnUpdateSolarDialog();
|
|
virtual void OnRenderSolarDialog();
|
|
virtual void Process(DWORD dwTick);
|
|
virtual void OnShowWindow(BOOL val);
|
|
virtual void MessageProc(SI_MESSAGE * pMessage);
|
|
virtual void NetworkProc(MSG_BASE * pMsg);
|
|
BOOL IsAvaliableRemoveSocket(SLOTIDX SlotIdx, POSTYPE TargetPos);
|
|
BOOL InsertSocketOption(SLOTIDX SlotIdx, POSTYPE TargetPos);
|
|
void NET_SEND_CG_ITEM_SOCKET_EXTRACT_SYN();
|
|
|
|
protected:
|
|
CControlWZ * getControl(POSTYPE AtPos);
|
|
POSTYPE getControlIDToPos(WzID wzID);
|
|
|
|
private:
|
|
static WzID m_wzID[DLGPOS_MAX];
|
|
CCtrlButtonWZ * m_pButton[BTN_MAX];
|
|
CCtrlListWZ * m_pList;
|
|
CCtrlStaticWZ * m_pStatic;
|
|
SocketState m_iSocketState[SOCKET_STATE_MAX];
|
|
BOOL m_bShow;
|
|
POSTYPE m_TargetSocketItemPos;
|
|
BOOL m_bSendPacket;
|
|
BYTE zard_grades_[SOCKET_MAX];
|
|
TCHAR socket_names[SOCKET_STATE_MAX][INTERFACE_STRING_LENGTH];
|
|
};
|
|
|
|
inline CControlWZ * uiSocketRemove::getControl(POSTYPE AtPos)
|
|
{
|
|
assert(AtPos < DLGPOS_MAX);
|
|
return GetControlWZ(m_wzID[AtPos]);
|
|
}
|
|
|
|
inline POSTYPE uiSocketRemove::getControlIDToPos(WzID wzID)
|
|
{
|
|
for ( int i = 0; i < DLGPOS_MAX ; ++i)
|
|
{
|
|
if ( m_wzID[i] == wzID)
|
|
return i;
|
|
}
|
|
return DLGPOS_MAX;
|
|
}
|
|
#endif // _uiSocketRemove_h_
|