99 lines
2.8 KiB
C++
99 lines
2.8 KiB
C++
#pragma once
|
|
|
|
#include "uiBase.h"
|
|
#include "uiConvenienceStoreMan.h"
|
|
//#include "uiConvenienceStore_Purchase.h"
|
|
//#include "uiConvenienceStore_Dialog.h"
|
|
#include "VScrollDialog.h"
|
|
#include "FTextRender.h"
|
|
|
|
class uiConvenienceStoreMan;
|
|
class uiConvenienceStore_Dialog;
|
|
class ConvenienceStore::ShopItemObject;
|
|
|
|
//------------------------------------------------------------------------------
|
|
class uiConvenienceStore_Ask : public uiBase, public VScrollDialog
|
|
{
|
|
public:
|
|
static const DWORD kDialog_ID;
|
|
|
|
|
|
|
|
private:
|
|
FTextRender ftext_render_;
|
|
|
|
//!调用对话框
|
|
uiConvenienceStore_Dialog* owner_;
|
|
|
|
//!点击OK键时,移交。
|
|
void* user_data_;
|
|
uiConvenienceStore_Dialog::AskShowType ask_show_type_;
|
|
|
|
#ifdef _NA_000000_20130710_CHARGE_SUB_FIXED_AMOUNT_EX2
|
|
ConvenienceStore::ShopItemObject* is_now_ask_item_;
|
|
#endif
|
|
|
|
|
|
public:
|
|
void OpenAsk( uiConvenienceStore_Dialog* owner, uiConvenienceStore_Dialog::AskShowType ask_show_type );
|
|
void AppendItemText( ConvenienceStore::ShopItemObject* object );
|
|
|
|
#ifdef _NA_000000_20130710_CHARGE_SUB_FIXED_AMOUNT_EX2
|
|
void AppendItemTextToString(DWORD index,ConvenienceStore::ShopItemObject* object);
|
|
#endif
|
|
|
|
void AppendFText(const TCHAR* msg);
|
|
void DisableCloseButton();
|
|
void EnableCloseButton();
|
|
bool IsEnableCloseButton();
|
|
|
|
// user_data是单个购买物品时的指针 (ConvenienceStore::ShopItemObject*)
|
|
void SetItemObject( ConvenienceStore::ShopItemObject* item_object) { user_data_ = item_object; }
|
|
|
|
#ifdef _NA_000000_20130710_CHARGE_SUB_FIXED_AMOUNT_EX2
|
|
ConvenienceStore::ShopItemObject* GetNowAskItem() { return is_now_ask_item_; }
|
|
#endif
|
|
|
|
public:
|
|
uiConvenienceStore_Ask(InterfaceManager* ui_man);
|
|
virtual ~uiConvenienceStore_Ask(void);
|
|
|
|
private:
|
|
virtual void Init(CDrawBase* drawbase);
|
|
virtual void Release(void);
|
|
virtual void OnShowWindow(BOOL val);
|
|
virtual void Process(DWORD tick);
|
|
virtual void OnUpdateSolarDialog();
|
|
virtual void OnRenderSolarDialog();
|
|
virtual void NetworkProc(MSG_BASE* msgbase);
|
|
virtual void MessageProc(SI_MESSAGE* message);
|
|
|
|
|
|
private:
|
|
virtual CCtrlVScrollWZ* vscroll_control();
|
|
virtual bool GetScrollArea(RECT& area);
|
|
virtual bool OnVScrollDown(SI_MESSAGE* msg);
|
|
virtual bool OnVScrollUp(SI_MESSAGE* msg);
|
|
virtual bool OnVScrollThumb(SI_MESSAGE* msg);
|
|
|
|
private:
|
|
uiConvenienceStore_Dialog* owner() const { return owner_; }
|
|
FTextRender& ftext_render() { return ftext_render_; }
|
|
|
|
void UpdateTextScroll();
|
|
|
|
bool OnLButtonClick(SI_MESSAGE* message);
|
|
bool OnRButtonClick(SI_MESSAGE* message);
|
|
bool OnMouseOver(SI_MESSAGE* message);
|
|
void OnOK();
|
|
void OnCancel();
|
|
|
|
void InitFText(FTextParser& parser);
|
|
void UpdateButtonState();
|
|
|
|
void MakeItemFullName( ConvenienceStore::ShopItemObject* item_object_ptr, OUT LPTSTR full_name );
|
|
|
|
static void _OnClickEscape(DWORD wParam,DWORD lParam); // ESC输入处理
|
|
|
|
};
|