Files
Sun1602/Client/GameClient/Interface/ui_XMas_SoloCoupleReward/ui_XMas_SoloCoupleReward.h
T
2022-10-26 12:25:11 +08:00

86 lines
2.1 KiB
C++

#pragma once
#include "uibase.h"
#include "FTextRender.h"
#include "FTextSentence.h"
class ui_XMas_SoloCoupleReward : public uiBase
{
public:
enum eDIALOG_XMAS_SOLO_COUPLE_REWARD
{
eDIALOG_XMAS_SOLO_COUPLE_REWARD_TITLE_TEXT,
eDIALOG_XMAS_SOLO_COUPLE_REWARD_MAIN_TEXT_LIST,
eDIALOG_XMAS_SOLO_COUPLE_REWARD_SLOT_BTN,
eDIALOG_XMAS_SOLO_COUPLE_REWARD_OK_BTN,
eDIALOG_XMAS_SOLO_COUPLE_REWARD_CANCEL_BTN,
eDIALOG_XMAS_SOLO_COUPLE_REWARD_ITEM_TEXT_LIST,
eDIALOG_XMAS_SOLO_COUPLE_REWARD_EXIT_BTN,
eDIALOG_XMAS_SOLO_COUPLE_REWARD_MAX,
};
enum eSOLO_COUPLE_STATE
{
eSOLO_COUPLE_STATE_NONE,
eSOLO_COUPLE_STATE_SOLO,
eSOLO_COUPLE_STATE_COUPLE,
};
ui_XMas_SoloCoupleReward(InterfaceManager * pUIMan );
~ui_XMas_SoloCoupleReward();
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);
protected:
CControlWZ * getControl(POSTYPE AtPos);
POSTYPE getControlIDToPos(WzID wzID);
void InitControl();
void AddFormatText();
void RenderSlotTexture();
void LoadItemTextureHandle();
public:
void SetSoloCoupleState(eSOLO_COUPLE_STATE eState){m_eSoloCoupleState = eState;}
eSOLO_COUPLE_STATE GetSoloCoupleState(){return m_eSoloCoupleState;}
private:
static WzID m_wzID[eDIALOG_XMAS_SOLO_COUPLE_REWARD_MAX];
FTextRender m_FtextRender[4];
FTextSentence m_FSentence;
BOOL m_bTextLoad;
CCtrlListWZ* m_ctrlMainList;
CCtrlListWZ* m_ctrlItemList;
CCtrlStaticWZ* m_ctrlTitleStatic;
CCtrlButtonWZ* m_ctrlSlotBtn;
HANDLE m_hSlotTexture;
eSOLO_COUPLE_STATE m_eSoloCoupleState;
BOOL m_bShow;
};
inline CControlWZ * ui_XMas_SoloCoupleReward::getControl(POSTYPE AtPos)
{
assert(AtPos < eDIALOG_XMAS_SOLO_COUPLE_REWARD_MAX);
return GetControlWZ(m_wzID[AtPos]);
}
inline POSTYPE ui_XMas_SoloCoupleReward::getControlIDToPos(WzID wzID)
{
for ( int i = 0; i < eDIALOG_XMAS_SOLO_COUPLE_REWARD_MAX ; ++i)
{
if ( m_wzID[i] == wzID)
return i;
}
return eDIALOG_XMAS_SOLO_COUPLE_REWARD_MAX;
}