青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品


////mem probs without this next one
#include <CEGUI/elements/CEGUIPushButton.h>
#include <CEGUI/elements/CEGUICombobox.h>
#include <CEGUI/elements/CEGUIListbox.h>
#include <CEGUI/elements/CEGUIListboxTextItem.h>
#include <cegui/elements/CEGUIPopupMenu.h>
#include <OgreNoMemoryMacros.h>
#include <CEGUI/CEGUIImageset.h>
#include <CEGUI/CEGUISystem.h>
#include <CEGUI/CEGUILogger.h>
#include <CEGUI/CEGUISchemeManager.h>
#include <CEGUI/CEGUIWindowManager.h>
#include <CEGUI/CEGUIWindow.h>
#include "OgreCEGUIRenderer.h"
#include "OgreCEGUIResourceProvider.h"
//regular mem handler
#include <OgreMemoryMacros.h>

#include "ExampleApplication.h"
CEGUI::MouseButton convertOgreButtonToCegui(int buttonID)
{
?switch (buttonID)
?{
?case MouseEvent::BUTTON0_MASK:
??return CEGUI::LeftButton;
?case MouseEvent::BUTTON1_MASK:
??return CEGUI::RightButton;
?case MouseEvent::BUTTON2_MASK:
??return CEGUI::MiddleButton;
?case MouseEvent::BUTTON3_MASK:
??return CEGUI::X1Button;
?default:
??return CEGUI::LeftButton;
?}
}

class GuiFrameListener : public ExampleFrameListener, public MouseMotionListener, public MouseListener
{
private:
?CEGUI::Renderer* mGUIRenderer;
?bool mShutdownRequested;

public:
?// NB using buffered input
?GuiFrameListener(RenderWindow* win, Camera* cam, CEGUI::Renderer* renderer)
??: ExampleFrameListener(win, cam, true, true),
??mGUIRenderer(renderer),
??mShutdownRequested(false)
?{
??mEventProcessor->addMouseMotionListener(this);
??mEventProcessor->addMouseListener(this);
??mEventProcessor->addKeyListener(this);
?}

?// Tell the frame listener to exit at the end of the next frame
?void requestShutdown(void)
?{
??mShutdownRequested = true;
?}

?bool frameEnded(const FrameEvent& evt)
?{
??if (mShutdownRequested)
???return false;
??else
???return ExampleFrameListener::frameEnded(evt);
?}

?void mouseMoved (MouseEvent *e)
?{
??CEGUI::System::getSingleton().injectMouseMove(
???e->getRelX() * mGUIRenderer->getWidth(),
???e->getRelY() * mGUIRenderer->getHeight());
??e->consume();
?}

?void mouseDragged (MouseEvent *e)
?{
??mouseMoved(e);
?}

?void mousePressed (MouseEvent *e)
?{
??CEGUI::System::getSingleton().injectMouseButtonDown(
???convertOgreButtonToCegui(e->getButtonID()));
??e->consume();
?}

?void mouseReleased (MouseEvent *e)
?{
??CEGUI::System::getSingleton().injectMouseButtonUp(
???convertOgreButtonToCegui(e->getButtonID()));
??e->consume();
?}

?void mouseClicked(MouseEvent* e) {}
?void mouseEntered(MouseEvent* e) {}
?void mouseExited(MouseEvent* e) {}

?void keyPressed(KeyEvent* e)
?{
??if(e->getKey() == KC_ESCAPE)
??{
???mShutdownRequested = true;
???e->consume();
???return;
??}

??CEGUI::System::getSingleton().injectKeyDown(e->getKey());
??CEGUI::System::getSingleton().injectChar(e->getKeyChar());
??e->consume();
?}

?void keyReleased(KeyEvent* e)
?{
??CEGUI::System::getSingleton().injectKeyUp(e->getKey());
??e->consume();
?}

?void keyClicked(KeyEvent* e)
?{
??// Do nothing
??e->consume();
?}
};

class TutorialApplication : public ExampleApplication
{
private:
?CEGUI::OgreCEGUIRenderer* mGUIRenderer;
?CEGUI::System* mGUISystem;
?CEGUI::Window* mEditorGuiSheet;
?bool mButtonQuitBuild;
?CEGUI::PopupMenu*?? popupMenu;
public:
?TutorialApplication()
??: mGUIRenderer(0),
??mGUISystem(0),
??mEditorGuiSheet(0),mButtonQuitBuild(false),popupMenu(0)
?{
??????
?}

?~TutorialApplication()
?{
??if(mEditorGuiSheet)
??{
???CEGUI::WindowManager::getSingleton().destroyWindow(mEditorGuiSheet);
???
??}
??if(popupMenu)
??{
???CEGUI::WindowManager::getSingleton().destroyWindow(popupMenu);
??}
??if(mGUISystem)
??{
???delete mGUISystem;
???mGUISystem = 0;
??}
??if(mGUIRenderer)
??{
???delete mGUIRenderer;
???mGUIRenderer = 0;
??}
?}
?void setupEventHandlers(void)
?{
??CEGUI::WindowManager& wmgr = CEGUI::WindowManager::getSingleton();
??wmgr.getWindow((CEGUI::utf8*)"MyButton")->subscribeEvent(CEGUI::PushButton::EventClicked, CEGUI::Event::Subscriber(&TutorialApplication::handlePopMenu, this));
?}
???
?bool handlePopMenu(const CEGUI::EventArgs& e)
?{
??
??if(!popupMenu)
??{????? CEGUI::WindowManager& wmgr = CEGUI::WindowManager::getSingleton();
???
???
???? CEGUI::ItemEntry* menuItemOne=(CEGUI::ItemEntry*)wmgr.createWindow("TaharezLook/MenuItem",(CEGUI::utf8*)"MenuItemOne");
??????? menuItemOne->setText((CEGUI::utf8*)"飛機");
???? CEGUI::ItemEntry* menuItemTwo=(CEGUI::ItemEntry*)wmgr.createWindow("TaharezLook/MenuItem",(CEGUI::utf8*)"MenuItemTwo");
???? menuItemTwo->setText((CEGUI::utf8*)"汽車");
???? CEGUI::ItemEntry* menuItemThree=(CEGUI::ItemEntry*)wmgr.createWindow("TaharezLook/MenuItem",(CEGUI::utf8*)"MenuItemThree");
???? menuItemThree->setText((CEGUI::utf8*)"輪船");
???? CEGUI::ItemEntry* menuItemFour=(CEGUI::ItemEntry*)wmgr.createWindow("TaharezLook/MenuItem",(CEGUI::utf8*)"MenuItemFour");
???? menuItemFour->setText((CEGUI::utf8*)"自行車");


???? CEGUI::ItemEntry* menuItemSubItemOne=(CEGUI::ItemEntry*)wmgr.createWindow("TaharezLook/MenuItem",(CEGUI::utf8*)"MenuItemFive");
???? menuItemSubItemOne->setText((CEGUI::utf8*)"紅色");
???? CEGUI::ItemEntry* menuItemSubItemTwo=(CEGUI::ItemEntry*)wmgr.createWindow("TaharezLook/MenuItem",(CEGUI::utf8*)"MenuItemSix");
???? menuItemSubItemTwo->setText((CEGUI::utf8*)"綠色");
???? CEGUI::PopupMenu*?? subPopupMenu=(CEGUI::PopupMenu*)CEGUI::WindowManager::getSingleton().createWindow("TaharezLook/PopupMenu", (CEGUI::utf8*)"SubPopMenu");
??????????
??????? subPopupMenu->setAlwaysOnTop(true);
???? subPopupMenu->addItem(menuItemSubItemOne);
???? subPopupMenu->addItem(menuItemSubItemTwo);
????????????? menuItemSubItemOne->setAlwaysOnTop(true);
???? menuItemSubItemTwo->setAlwaysOnTop(true);
???? menuItemSubItemTwo->subscribeEvent(CEGUI::ItemEntry::EventMouseClick,CEGUI::Event::Subscriber(&TutorialApplication::handleQuit, this));
????
????
???? popupMenu=(CEGUI::PopupMenu*)CEGUI::WindowManager::getSingleton().createWindow("TaharezLook/PopupMenu", (CEGUI::utf8*)"PopMenu");
???? popupMenu->setText("Option");
???? popupMenu->setAlwaysOnTop(true);
??????? popupMenu->addItem(menuItemOne);
???? popupMenu->addItem(menuItemTwo);
???? popupMenu->addItem(menuItemThree);
???? popupMenu->addItem(menuItemFour);

???
???? menuItemOne->setAlwaysOnTop(true);
???? menuItemTwo->setAlwaysOnTop(true);
???? menuItemThree->setAlwaysOnTop(true);
???? menuItemFour->setAlwaysOnTop(true);
????

????????????? menuItemTwo->addChildWindow(subPopupMenu);
???? popupMenu->show();

???? popupMenu->setPosition(CEGUI::Point(0.65,0.45));
???
??? //subPopupMenu->show();

??? //popupMenu->openPopupMenu();
???? //CEGUI::WindowManager& wmgr = CEGUI::WindowManager::getSingleton();
???? wmgr.getWindow((CEGUI::utf8*)"Root")->addChildWindow(popupMenu);
??????? return true;
??}

?

???? //將editbox中的內容送到listbox
??CEGUI::Window* myEditBox = CEGUI::WindowManager::getSingleton().getWindow("MyEditbox");
??CEGUI::ListboxTextItem *listboxitem =
???new CEGUI::ListboxTextItem (myEditBox->getText());
??listboxitem->setSelectionBrushImage("TaharezLook", "ListboxSelectionBrush");
??//listboxitem->setSelected(mList->getItemCount() == 0);
??//listboxitem->setSelectionColours(mPreview->getImageColours());
??CEGUI::Listbox*myListBox=(CEGUI::Listbox*)CEGUI::WindowManager::getSingleton().getWindow("MyListBox");
???myListBox->addItem(listboxitem);

??return true;
?}

?bool handleQuit(const CEGUI::EventArgs& e)
?{
??if(!mButtonQuitBuild)
??{
???/*static_cast<GuiFrameListener*>(mFrameListener)->requestShutdown();*/
???CEGUI::PushButton* quitButton = (CEGUI::PushButton*)CEGUI::WindowManager::getSingleton().createWindow("TaharezLook/Button", (CEGUI::utf8*)"Quit");
???CEGUI::WindowManager& wmgr = CEGUI::WindowManager::getSingleton();
???wmgr.getWindow((CEGUI::utf8*)"MyFrameWindow")->addChildWindow(quitButton);
???//mEditorGuiSheet->addChildWindow(quitButton);
???quitButton->setPosition(CEGUI::Point(0.65f, 0.25f));
???quitButton->setSize(CEGUI::Size(0.3f, 0.06f));
???quitButton->setText((CEGUI::utf8*)"退出");
???mButtonQuitBuild=true;
???return true;
??}
??return true;
?}

protected:
?void createScene(void)
?{
??// Set ambient light
??mSceneMgr->setAmbientLight(ColourValue(0.5, 0.5, 0.5));
??// Set up GUI system
??mGUIRenderer = new CEGUI::OgreCEGUIRenderer(mWindow, Ogre::RENDER_QUEUE_OVERLAY, false, 3000, mSceneMgr);
??mGUISystem = new CEGUI::System(mGUIRenderer);
??CEGUI::Logger::getSingleton().setLoggingLevel(CEGUI::Informative);
??CEGUI::SchemeManager::getSingleton().loadScheme((CEGUI::utf8*)"TaharezLookSkin.scheme");
??mGUISystem->setDefaultMouseCursor((CEGUI::utf8*)"TaharezLook", (CEGUI::utf8*)"MouseArrow");
??CEGUI::MouseCursor::getSingleton().setImage("TaharezLook", "MouseMoveCursor");
??mGUISystem->setDefaultFont((CEGUI::utf8*)"SimHei-12");

??
??//////////////////////////////////////////////////////////////////////////
??mEditorGuiSheet = CEGUI::WindowManager::getSingleton().loadWindowLayout((CEGUI::utf8*)"My2.xml");
??mGUISystem->setGUISheet(mEditorGuiSheet);
??//CEGUI::PushButton* quitButton = (CEGUI::PushButton*)CEGUI::WindowManager::getSingleton().getWindow((CEGUI::utf8*)"MyButton");
??//////////////////////////////////////////////////////////////////////////


??

??CEGUI::Combobox* objectComboBox = (CEGUI::Combobox*)CEGUI::WindowManager::getSingleton().getWindow("MyComboBox");
??CEGUI::ListboxTextItem* item = new CEGUI::ListboxTextItem((CEGUI::utf8*)"飛機", 0);
??objectComboBox->addItem(item);
??item = new CEGUI::ListboxTextItem((CEGUI::utf8*)"汽車", 1);
??objectComboBox->addItem(item);
??item = new CEGUI::ListboxTextItem((CEGUI::utf8*)"輪船", 2);
??objectComboBox->addItem(item);
??item = new CEGUI::ListboxTextItem((CEGUI::utf8*)"StaticText", 3);
??objectComboBox->addItem(item);
??item = new CEGUI::ListboxTextItem((CEGUI::utf8*)"StaticImage", 4);
??objectComboBox->addItem(item);
??item = new CEGUI::ListboxTextItem((CEGUI::utf8*)"Render to Texture", 5);
??objectComboBox->addItem(item);

??//////////////////////////////////////////////////////////////////////////
??setupEventHandlers();


?}
?void createFrameListener(void)
?{
??mFrameListener = new GuiFrameListener(mWindow, mCamera, mGUIRenderer);
??mRoot->addFrameListener(mFrameListener);
?}
};

#if OGRE_PLATFORM == OGRE_PLATFORM_WIN32
#define WIN32_LEAN_AND_MEAN
#include "windows.h"

INT WINAPI WinMain( HINSTANCE hInst, HINSTANCE, LPSTR strCmdLine, INT )
#else
int main(int argc, char **argv)
#endif
{
?// Create application object
?TutorialApplication app;

?try {
??app.go();
?} catch( Exception& e ) {
#if OGRE_PLATFORM == OGRE_PLATFORM_WIN32
??MessageBox( NULL, e.getFullDescription().c_str(), "An exception has occured!", MB_OK | MB_ICONERROR | MB_TASKMODAL);
#else
??fprintf(stderr, "An exception has occured: %s\n",
???e.getFullDescription().c_str());
#endif
?}

?return 0;
}

?

posted on 2006-10-19 17:16 清源游民 閱讀(3020) 評論(1)  編輯 收藏 引用

FeedBack:
# ugqpndup
2007-12-25 21:42 | ugqpndup
[URL=http://vjpicxic.com]fyukkshj[/URL] hmudomnv http://bcjkzpdi.com wyclnfww tvqvanvg <a href="http://tcxwuvyf.com">yiynryyd</a>   回復  更多評論
  

只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


<2009年4月>
2930311234
567891011
12131415161718
19202122232425
262728293012
3456789

留言簿(35)

隨筆分類(78)

隨筆檔案(74)

文章檔案(5)

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            久久香蕉国产线看观看av| 国产一区二区毛片| 欧美激情91| 激情综合自拍| 久久国产精品亚洲77777| 欧美14一18处毛片| 久久动漫亚洲| 国产日产亚洲精品系列| 亚洲视频在线观看免费| 亚洲人成7777| 久久狠狠久久综合桃花| 国产一二三精品| 久久九九免费视频| 欧美一区影院| 狠狠色狠狠色综合日日91app| 久久久久国色av免费看影院| 午夜视频在线观看一区二区| 国产女主播视频一区二区| 久久久精品一区二区三区| 国产乱码精品一区二区三区忘忧草| 欧美日韩国产一区精品一区| 亚洲精品欧美精品| 亚洲精品久久在线| 欧美三区不卡| 香蕉久久一区二区不卡无毒影院 | 亚洲黄色成人| 欧美成人性网| 亚洲少妇中出一区| 亚洲视频在线观看网站| 国产精品视频成人| 久久久久www| 免费观看一级特黄欧美大片| 最新日韩av| av成人天堂| 国产免费亚洲高清| 老司机午夜精品视频在线观看| 久久午夜视频| 宅男精品视频| 欧美一区二视频| 91久久精品日日躁夜夜躁欧美| 亚洲三级电影在线观看| 国产精品毛片在线| 免费不卡在线观看| 欧美日韩情趣电影| 久久―日本道色综合久久| 欧美激情按摩在线| 性色一区二区| 欧美激情精品| 欧美中文字幕视频| 欧美va亚洲va国产综合| 翔田千里一区二区| 美女亚洲精品| 欧美专区第一页| 欧美高清在线视频观看不卡| 欧美一级精品大片| 欧美成在线视频| 亚洲免费久久| a4yy欧美一区二区三区| 国产热re99久久6国产精品| 亚洲高清av| 国产日韩欧美黄色| 亚洲欧洲精品一区二区精品久久久| 国产精品欧美日韩一区二区| 欧美激情视频一区二区三区免费| 国产乱码精品1区2区3区| 亚洲国产欧美精品| 黑人一区二区| 亚洲欧美日韩在线一区| 99视频精品全国免费| 欧美在线免费观看亚洲| 亚洲一区欧美激情| 欧美成人精品在线观看| 久久综合久久久| 国产精品视频自拍| 日韩系列欧美系列| 最新国产の精品合集bt伙计| 久久成人一区二区| 欧美在线视频一区| 欧美性猛交xxxx乱大交退制版| 亚洲福利小视频| 亚洲二区视频在线| 欧美一区二区黄| 一区二区三区日韩欧美精品| 亚洲欧洲日产国码二区| 久久久99国产精品免费| 欧美在线观看视频| 国产精品久久久久久av福利软件| 亚洲国产天堂久久综合网| 在线观看国产精品网站| 欧美专区18| 久久免费偷拍视频| 国内精品久久久久影院 日本资源| 亚洲综合首页| 亚洲欧美国产va在线影院| 欧美日韩视频免费播放| 日韩小视频在线观看专区| 亚洲一区免费网站| 久久精品人人| 久久这里有精品15一区二区三区| 国产日韩欧美在线看| 性娇小13――14欧美| 午夜精品成人在线视频| 国产精品乱码一区二三区小蝌蚪 | 亚洲中午字幕| 国产精品久久久久国产a级| 亚洲专区一二三| 久久精品国产77777蜜臀| 国内精品视频在线观看| 久久综合国产精品| 亚洲黄色成人网| 一区二区三区精品在线| 国产精品久久久久久久久久尿 | 欧美亚洲免费在线| 久久久久久亚洲精品杨幂换脸| 激情亚洲一区二区三区四区| 久久婷婷亚洲| 亚洲精品久久嫩草网站秘色| 性做久久久久久久免费看| 国产伦精品一区二区三区四区免费| 午夜亚洲福利在线老司机| 久久精品国产精品亚洲综合 | 亚洲激情网站| 亚洲一区视频在线| 国产亚洲制服色| 欧美成人精品在线观看| 99在线热播精品免费| 久久久久青草大香线综合精品| 亚洲区欧美区| 国产欧美日韩在线| 免费亚洲电影| 亚洲欧美在线一区| 亚洲国产网站| 欧美一区二区在线观看| 亚洲国产日韩精品| 久久性天堂网| 日韩香蕉视频| 男女精品网站| 亚洲一区二区三| 黄色成人91| 欧美午夜精品电影| 老司机精品久久| 亚洲欧美韩国| 亚洲欧洲日产国码二区| 欧美尤物巨大精品爽| 欧美日本免费一区二区三区| 美女国产一区| 亚洲天堂av电影| 一区二区三区在线视频免费观看| 欧美日韩亚洲一区三区| 久久婷婷一区| 香蕉成人久久| 日韩小视频在线观看| 欧美国产日产韩国视频| 欧美中日韩免费视频| 中文日韩在线视频| 亚洲国产欧美国产综合一区| 国产欧美短视频| 欧美午夜精彩| 欧美日韩在线影院| 欧美激情第一页xxx| 久久人人爽人人爽爽久久| 亚洲综合欧美日韩| 亚洲视频999| 99亚洲一区二区| 亚洲国产一成人久久精品| 牛牛影视久久网| 久久精品日产第一区二区| 亚洲欧美另类国产| 一区二区三区色| 亚洲免费观看高清完整版在线观看| 狠狠色噜噜狠狠狠狠色吗综合| 国产毛片一区二区| 国产嫩草一区二区三区在线观看| 国产精品a级| 国产精品久久久久久妇女6080 | 亚洲一区二区精品视频| 国产日韩欧美精品| 欧美国产视频在线| 欧美电影免费观看高清完整版| 久久色在线观看| 久久综合精品国产一区二区三区| 欧美一区二区福利在线| 欧美一区二区三区免费观看| 小黄鸭精品密入口导航| 欧美一区二区三区在线免费观看| 欧美一区二区三区婷婷月色| 久久gogo国模裸体人体| 久久精品一区蜜桃臀影院 | 夜夜嗨一区二区| 亚洲视频一区二区| 中日韩美女免费视频网址在线观看| 一区二区免费在线观看| 亚洲综合国产| 久久米奇亚洲| 欧美极品在线播放| 国产精品伦一区| 国产亚洲一区二区三区在线观看 | 亚洲国产精品综合| 99一区二区| 午夜在线播放视频欧美|