本文整理汇总了C++中cegui::Window::getUserData方法的典型用法代码示例。如果您正苦于以下问题:C++ Window::getUserData方法的具体用法?C++ Window::getUserData怎么用?C++ Window::getUserData使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类cegui::Window
的用法示例。
在下文中一共展示了Window::getUserData方法的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: createFactory
bool DynamicEditor::createFactory(const CEGUI::EventArgs& _args)
{
unsigned int index = typeTab->getSelectedTabIndex();
CEGUI::Window* tab = typeTab->getTabContentsAtIndex(index);
static_cast<EditorFactoryType*>(tab->getUserData())->createButton(_args);
return true;
}
示例2: OnPlayerShopBuyNumChange
bool OnPlayerShopBuyNumChange(const CEGUI::EventArgs& e)
{
CEGUI::Window* wnd = WEArgs(e).window;
if(!wnd) return false;
CEGUI::String buyNum = wnd->getText();
char str[32] = "";
CEGUI::Window* goodsWnd = wnd->getParent();
if (goodsWnd)
{
CGoods* goods = static_cast<CGoods*>(goodsWnd->getUserData());
if (!goods) return false;
PlayerShop::tagGoodsItem* pGoodsItem = GetPlayerShop().FindtagGoods(goods);
if (pGoodsItem!=NULL)
{
ulong num = atoi(buyNum.c_str());
if (num>=pGoodsItem->groupNum)
{
sprintf(str,"%d",pGoodsItem->groupNum);
}
else if (num<=0)
{
sprintf(str,"%d",0);
}
sprintf(str,"%d",num);
wnd->setText(ToCEGUIString(str));
pGoodsItem->readyTradeNum = num;
}
}
return true;
}
示例3: OnPlayerShopResetGoods
bool OnPlayerShopResetGoods(const CEGUI::EventArgs& e)
{
CEGUI::Window* wnd = WEArgs(e).window;
if(!wnd) return false;
CGoods* goods = static_cast<CGoods*>(wnd->getUserData());
if (!goods) return false;
CPlayer *pPlayer = GetGame()->GetMainPlayer();
CMainPlayerHand* pHand = GetGame()->GetMainPlayerHand();
if (!pPlayer || !pHand) return false;
int shopState = GetPlayerShop().GetCurShopState();
if (shopState==PlayerShop::SET_SHOP)
{
GetPlayerShop().ReMoveShopGoods(goods->GetIndex(),goods->GetExID());
wnd->setUserData(NULL);
int index = GetPlayerShop().GetCurGoodsNum();
GetPlayerShop().OnOrderPageOpen(goods, index);
FireUIEvent("PlayerShop","ClearGoodsInfo");
FireUIEvent("PlayerShop","UpdateMoneyInfo");
return true;
}
return false;
}
示例4: OnPlayerShopShowGoodsInfo
bool OnPlayerShopShowGoodsInfo(const CEGUI::EventArgs& e)
{
CEGUI::Window* wnd = WEArgs(e).window;
if(!wnd) return false;
CGoods* goods = static_cast<CGoods*>(wnd->getUserData());
if (!goods) return false;
CEGUI::DefaultWindow* iconWnd = WDefaultWindow(GetWndMgr().getWindow("PlayerShop/backgrond/GoodsInfo/Icon"));
CEGUI::Window* nameWnd = GetWndMgr().getWindow("PlayerShop/backgrond/GoodsInfo/Name");
CEGUI::Window* oneGroupNumWnd = GetWndMgr().getWindow("PlayerShop/backgrond/GoodsInfo/OneGroupNum");
CEGUI::Window* priceWnd = GetWndMgr().getWindow("PlayerShop/backgrond/GoodsInfo/Price");
CEGUI::Window* averagePriceWnd = GetWndMgr().getWindow("PlayerShop/backgrond/GoodsInfo/AveragePrice");
if (!iconWnd || !nameWnd || !oneGroupNumWnd || !priceWnd || !averagePriceWnd)
return false;
char tempText[256];
char strImageFilePath[128] = "";
char strImageFileName[128] = "";
PlayerShop::tagGoodsItem* pGoodsItem = GetPlayerShop().FindtagGoods(goods);
if (pGoodsItem!=NULL)
{
// 物品名字
DWORD dwNameSize = (DWORD)strlen(pGoodsItem->strGoodsName.c_str());
if (dwNameSize>20)
{
_snprintf(tempText,21,"%s", pGoodsItem->strGoodsName.c_str());
sprintf((tempText+20),"...");
}else
sprintf(tempText,"%s", pGoodsItem->strGoodsName.c_str());
nameWnd->setText(ToCEGUIString(tempText));
// 物品图片
const char *strIconPath = GetGame()->GetPicList()->GetPicFilePathName(CPicList::PT_GOODS_ICON, pGoodsItem->goodsIconId);
GetFilePath(strIconPath,strImageFilePath);
GetFileName(strIconPath,strImageFileName);
CEGUI::String strImagesetName = "GoodIcon/";
strImagesetName += strImageFileName;
SetBackGroundImage(iconWnd,strImagesetName.c_str(),strImageFilePath,strImageFileName);
// 物品单组个数
sprintf(tempText,"%d",pGoodsItem->oneGroupNum);
oneGroupNumWnd->setText(ToCEGUIString(tempText));
// 物品售价
sprintf(tempText,"%d", pGoodsItem->price);
priceWnd->setText(ToCEGUIString(tempText));
// 物品单个均价
char strGoodsPrice[64] = "",strNumLen[64] = "";
sprintf(strNumLen,"%d",pGoodsItem->price/pGoodsItem->oneGroupNum);
float fPrice = static_cast<float>(pGoodsItem->price)/static_cast<float>(pGoodsItem->oneGroupNum);
sprintf(strGoodsPrice,"%*.2f",(int)strlen(strNumLen)+2,fPrice);
averagePriceWnd->setText(ToCEGUIString(strGoodsPrice));
}
return true;
}
示例5: entryKeyDownHandler
bool OgreCmdWindow::entryKeyDownHandler(const CEGUI::EventArgs& e)
{
std::stringstream ss;
if(((const CEGUI::KeyEventArgs&)e).scancode == 28)
{
CEGUI::Window * wnd = ((const CEGUI::KeyEventArgs&)e).window;
((OgreCmdWindow*)wnd->getUserData())->readString(wnd->getText().c_str());
wnd->setText("");
}
return true;
}
示例6: GetSelectedTab
CGUITab* CGUITabPanel_Impl::GetSelectedTab ( void )
{
CEGUI::TabControl* pControl = reinterpret_cast < CEGUI::TabControl* > ( m_pWindow );
if ( pControl->getTabCount() > 0 )
{
CEGUI::Window* pTab = pControl->getTabContentsAtIndex ( pControl->getSelectedTabIndex() );
try
{
return reinterpret_cast < CGUITab* > ( pTab->getUserData() );
}
catch ( CEGUI::Exception )
{
return NULL;
}
}
return NULL;
}
示例7: OnPlayerShopSubBuyNum
bool OnPlayerShopSubBuyNum(const CEGUI::EventArgs& e)
{
CEGUI::Window* wnd = WEArgs(e).window;
if(!wnd) return false;
CEGUI::Window* goodsWnd = wnd->getParent();
if (goodsWnd)
{
CGoods* goods = static_cast<CGoods*>(goodsWnd->getUserData());
if (!goods) return false;
PlayerShop::tagGoodsItem* pGoodsItem = GetPlayerShop().FindtagGoods(goods);
if (pGoodsItem!=NULL)
{
char str[32];
// 取得输入框控件名
CEGUI::String name = wnd->getName();
name.assign(name, 0, name.find_last_of("/"));
name += "/BuyNum";
CEGUI::Window* buyNumWnd = GetWndMgr().getWindow(name);
int num = atoi(buyNumWnd->getText().c_str());
if (num<=0)
{
sprintf(str,"%d",0);
wnd->disable();
}
else
sprintf(str,"%d",num--);
buyNumWnd->setText(ToCEGUIString(str));
pGoodsItem->readyTradeNum = num;
}
}
return true;
}
示例8: getActiveEditor
InputContext* DynamicEditor::getActiveEditor()
{
CEGUI::Window* page = instanceTab->getTabContentsAtIndex(instanceTab->getSelectedTabIndex());
return static_cast<InputContext*>(page->getUserData());
}
示例9: DoDraw
void DrawBase::DoDraw(Logic::SendCoreToGui *evnt){
if(!isOpen&&evnt->isReSend){
return;
}
if(evnt->isReSend&& PriorIdDraw){
return;
}
mIsResend= false;
CEGUI::WindowManager &wmgr = CEGUI::WindowManager::getSingleton();
CEGUI::Window *res;
isOpen = true;
Ogre::String name;
int x=0,y=0;
name= "BaseDraw";
if(wmgr.isWindowPresent(name)){
mFrameWindow= wmgr.getWindow(name);
}else{
mFrameWindow= wmgr.createWindow("DefaultWindow", name);
mFrameWindow->setSize(CEGUI::UVector2(CEGUI::UDim(0.5, 0), CEGUI::UDim(0.5, 0)));
mFrameWindow->setMousePassThroughEnabled(true);
mCloseBtn= wmgr.createWindow("TaharezLook/Button", "BaseDraw/Close");
mCloseBtn->setPosition(CEGUI::UVector2(CEGUI::UDim(0,0), CEGUI::UDim(0, 0)));
mCloseBtn->setSize(CEGUI::UVector2(CEGUI::UDim(0.3, 0), CEGUI::UDim(0.1, 0)));
mCloseBtn->setText("Close");
mCloseBtn->subscribeEvent(CEGUI::PushButton::EventClicked,
CEGUI::Event::Subscriber(&BaseDraw::Close,(BaseDraw*)this));
mFrameWindow->addChildWindow(mCloseBtn);
}
for(int i=0; i < evnt->SlotCnt;++i){
name= "BaseDraw/BuildNum_"+Logic::LogicStd::IntToString(i);
if(wmgr.isWindowPresent(name)){
res= wmgr.getWindow(name);
delete static_cast<Logic::BuildingForSent *>( res->getUserData());
res->setUserData(evnt->allSlots[i]);
}else{
res= wmgr.createWindow("TaharezLook/Button", name);
res->setPosition(CEGUI::UVector2(CEGUI::UDim(0.33*x,0), CEGUI::UDim(0.1*(y+1), 0)));
res->setSize(CEGUI::UVector2(CEGUI::UDim(0.33, 0), CEGUI::UDim(0.1, 0)));
res->setUserData(evnt->allSlots[i]);
res->subscribeEvent(CEGUI::Window::EventDestructionStarted,
CEGUI::Event::Subscriber(&BaseDraw::ClearUserData,(BaseDraw*)this));
mFrameWindow->addChildWindow(res);
res->subscribeEvent(CEGUI::PushButton::EventClicked,
CEGUI::Event::Subscriber(&DrawBase::SlotClick, this));
}
if(evnt->allSlots[i]->empty){
res->setText("EMPTY");
}else{
res->setText(evnt->allSlots[i]->name);
}
if(++x>2){
x=0;
y++;
}
}
SetBase(evnt->target);
if(!evnt->isReSend){
mMainWindow->addChildWindow(mFrameWindow);
PriorIdDraw= true;
}else{
PriorIdDraw= false;
}
}