mirror of
				https://github.com/TES3MP/openmw-tes3mp.git
				synced 2025-10-31 20:26:48 +00:00 
			
		
		
		
	Merge remote branch 'scrawl/master'
This commit is contained in:
		
						commit
						91f0eed9c4
					
				
					 15 changed files with 335 additions and 80 deletions
				
			
		|  | @ -29,7 +29,7 @@ add_openmw_dir (mwgui | |||
|     dialogue_history window_base stats_window messagebox journalwindow charactercreation | ||||
|     map_window window_pinnable_base cursorreplace tooltips scrollwindow bookwindow list | ||||
|     formatting inventorywindow container hud countdialog tradewindow settingswindow | ||||
|     confirmationdialog alchemywindow referenceinterface spellwindow | ||||
|     confirmationdialog alchemywindow referenceinterface spellwindow mainmenu | ||||
|     ) | ||||
| 
 | ||||
| add_openmw_dir (mwdialogue | ||||
|  |  | |||
|  | @ -16,4 +16,5 @@ CursorReplace::CursorReplace() | |||
|     OEngine::Render::ImageRotate::rotate("textures\\tx_cursormove.dds", "mwpointer_dresize2.png", 45); | ||||
| 
 | ||||
|     OEngine::Render::Atlas::createFromFile("atlas1.cfg", "mwgui1", "textures\\"); | ||||
|     OEngine::Render::Atlas::createFromFile("mainmenu.cfg", "mwgui2", "textures\\"); | ||||
| } | ||||
|  |  | |||
							
								
								
									
										78
									
								
								apps/openmw/mwgui/mainmenu.cpp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										78
									
								
								apps/openmw/mwgui/mainmenu.cpp
									
									
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,78 @@ | |||
| #include "mainmenu.hpp" | ||||
| 
 | ||||
| #include <OgreRoot.h> | ||||
| 
 | ||||
| 
 | ||||
| #include "../mwbase/environment.hpp" | ||||
| #include "../mwbase/world.hpp" | ||||
| 
 | ||||
| #include "window_manager.hpp" | ||||
| 
 | ||||
| namespace MWGui | ||||
| { | ||||
| 
 | ||||
|     MainMenu::MainMenu(int w, int h) | ||||
|         : OEngine::GUI::Layout("openmw_mainmenu.layout") | ||||
|     { | ||||
|         setCoord(0,0,w,h); | ||||
| 
 | ||||
|         int height = 64 * 3; | ||||
| 
 | ||||
|         mButtonBox = mMainWidget->createWidget<MyGUI::Widget>("", MyGUI::IntCoord(w/2 - 64, h/2 - height/2, 128, height), MyGUI::Align::Default); | ||||
|         int curH = 0; | ||||
| 
 | ||||
|         mReturn = mButtonBox->createWidget<MyGUI::Button> ("ButtonImage", MyGUI::IntCoord(0, curH, 128, 64), MyGUI::Align::Default); | ||||
|         mReturn->setImageResource ("Menu_Return"); | ||||
|         mReturn->eventMouseButtonClick += MyGUI::newDelegate(this, &MainMenu::returnToGame); | ||||
|         curH += 64; | ||||
| 
 | ||||
| 
 | ||||
|         /*
 | ||||
|         mNewGame = mButtonBox->createWidget<MyGUI::Button> ("ButtonImage", MyGUI::IntCoord(0, curH, 128, 64), MyGUI::Align::Default); | ||||
|         mNewGame->setImageResource ("Menu_NewGame"); | ||||
|         curH += 64; | ||||
| 
 | ||||
|         mLoadGame = mButtonBox->createWidget<MyGUI::Button> ("ButtonImage", MyGUI::IntCoord(0, curH, 128, 64), MyGUI::Align::Default); | ||||
|         mLoadGame->setImageResource ("Menu_LoadGame"); | ||||
|         curH += 64; | ||||
| 
 | ||||
| 
 | ||||
|         mSaveGame = mButtonBox->createWidget<MyGUI::Button> ("ButtonImage", MyGUI::IntCoord(0, curH, 128, 64), MyGUI::Align::Default); | ||||
|         mSaveGame->setImageResource ("Menu_SaveGame"); | ||||
|         curH += 64; | ||||
|         */ | ||||
| 
 | ||||
|         mOptions = mButtonBox->createWidget<MyGUI::Button> ("ButtonImage", MyGUI::IntCoord(0, curH, 128, 64), MyGUI::Align::Default); | ||||
|         mOptions->setImageResource ("Menu_Options"); | ||||
|         mOptions->eventMouseButtonClick += MyGUI::newDelegate(this, &MainMenu::showOptions); | ||||
|         curH += 64; | ||||
| 
 | ||||
|         /*
 | ||||
|         mCredits = mButtonBox->createWidget<MyGUI::Button> ("ButtonImage", MyGUI::IntCoord(0, curH, 128, 64), MyGUI::Align::Default); | ||||
|         mCredits->setImageResource ("Menu_Credits"); | ||||
|         curH += 64; | ||||
|         */ | ||||
| 
 | ||||
|         mExitGame = mButtonBox->createWidget<MyGUI::Button> ("ButtonImage", MyGUI::IntCoord(0, curH, 128, 64), MyGUI::Align::Default); | ||||
|         mExitGame->setImageResource ("Menu_ExitGame"); | ||||
|         mExitGame->eventMouseButtonClick += MyGUI::newDelegate(this, &MainMenu::exitGame); | ||||
|         curH += 64; | ||||
| 
 | ||||
|     } | ||||
| 
 | ||||
|     void MainMenu::returnToGame(MyGUI::Widget* sender) | ||||
|     { | ||||
|         MWBase::Environment::get().getWindowManager ()->removeGuiMode (GM_MainMenu); | ||||
|     } | ||||
| 
 | ||||
|     void MainMenu::showOptions(MyGUI::Widget* sender) | ||||
|     { | ||||
|         MWBase::Environment::get().getWindowManager ()->pushGuiMode (GM_Settings); | ||||
|     } | ||||
| 
 | ||||
|     void MainMenu::exitGame(MyGUI::Widget* sender) | ||||
|     { | ||||
|         Ogre::Root::getSingleton ().queueEndRendering (); | ||||
|     } | ||||
| 
 | ||||
| } | ||||
|  | @ -6,11 +6,22 @@ namespace MWGui | |||
|     class MainMenu : public OEngine::GUI::Layout | ||||
|     { | ||||
|     public: | ||||
|         MainMenu(int w, int h) | ||||
|         : Layout("openmw_mainmenu.layout") | ||||
|         { | ||||
|             setCoord(0,0,w,h); | ||||
|         } | ||||
|         MainMenu(int w, int h); | ||||
| 
 | ||||
|     private: | ||||
|         MyGUI::Button* mReturn; | ||||
|         MyGUI::Button* mNewGame; | ||||
|         MyGUI::Button* mLoadGame; | ||||
|         MyGUI::Button* mSaveGame; | ||||
|         MyGUI::Button* mOptions; | ||||
|         MyGUI::Button* mCredits; | ||||
|         MyGUI::Button* mExitGame; | ||||
| 
 | ||||
|         MyGUI::Widget* mButtonBox; | ||||
| 
 | ||||
|         void returnToGame(MyGUI::Widget* sender); | ||||
|         void showOptions(MyGUI::Widget* sender); | ||||
|         void exitGame(MyGUI::Widget* sender); | ||||
|     }; | ||||
| 
 | ||||
| } | ||||
|  |  | |||
|  | @ -263,6 +263,7 @@ namespace MWGui | |||
|         dialog->eventOkClicked.clear(); | ||||
|         dialog->eventOkClicked += MyGUI::newDelegate(this, &SettingsWindow::onResolutionAccept); | ||||
|         dialog->eventCancelClicked.clear(); | ||||
|         dialog->eventCancelClicked += MyGUI::newDelegate(this, &SettingsWindow::onResolutionCancel); | ||||
|     } | ||||
| 
 | ||||
|     void SettingsWindow::onResolutionAccept() | ||||
|  |  | |||
|  | @ -1,11 +1,12 @@ | |||
| #include "inputmanager.hpp" | ||||
| 
 | ||||
| #include <OgreRoot.h> | ||||
| 
 | ||||
| #include <openengine/input/dispatcher.hpp> | ||||
| #include <openengine/input/poller.hpp> | ||||
| 
 | ||||
| #include <openengine/gui/events.hpp> | ||||
| 
 | ||||
| #include <openengine/ogre/exitlistener.hpp> | ||||
| #include <openengine/ogre/renderer.hpp> | ||||
| 
 | ||||
| #include "../mwgui/window_manager.hpp" | ||||
|  | @ -20,6 +21,7 @@ | |||
| #include "../engine.hpp" | ||||
| 
 | ||||
| #include "../mwworld/player.hpp" | ||||
| #include "../mwbase/world.hpp" | ||||
| 
 | ||||
| #include <boost/bind.hpp> | ||||
| #include <boost/filesystem.hpp> | ||||
|  | @ -68,8 +70,6 @@ namespace MWInput | |||
|       A_ToggleWeapon, | ||||
|       A_ToggleSpell, | ||||
| 
 | ||||
|       A_Settings, // Temporary hotkey
 | ||||
| 
 | ||||
|       A_LAST            // Marker for the last item
 | ||||
|     }; | ||||
| 
 | ||||
|  | @ -78,7 +78,6 @@ namespace MWInput | |||
|   { | ||||
|     OEngine::Input::DispatcherPtr disp; | ||||
|     OEngine::Render::OgreRenderer &ogre; | ||||
|     OEngine::Render::ExitListener exit; | ||||
|     Mangle::Input::OISDriver input; | ||||
|     OEngine::Input::Poller poller; | ||||
|     MouseLookEventPtr mouse; | ||||
|  | @ -140,15 +139,6 @@ private: | |||
|         windows.messageBox ("Screenshot saved", empty); | ||||
|     } | ||||
| 
 | ||||
|     void showSettings() | ||||
|     { | ||||
|         if (mDragDrop) | ||||
|             return; | ||||
| 
 | ||||
|         if (!windows.isGuiMode() || windows.getMode() != MWGui::GM_Settings) | ||||
|             windows.pushGuiMode(MWGui::GM_Settings); | ||||
|     } | ||||
| 
 | ||||
|     /* toggleInventory() is called when the user presses the button to toggle the inventory screen. */ | ||||
|     void toggleInventory() | ||||
|     { | ||||
|  | @ -222,11 +212,19 @@ private: | |||
|         player.toggleRunning(); | ||||
|     } | ||||
| 
 | ||||
|     void toggleMainMenu() | ||||
|     { | ||||
|         if (windows.isGuiMode () && windows.getMode () == MWGui::GM_MainMenu) | ||||
|             windows.removeGuiMode (MWGui::GM_MainMenu); | ||||
|         else | ||||
|             windows.pushGuiMode (MWGui::GM_MainMenu); | ||||
|     } | ||||
| 
 | ||||
|     // Exit program now button (which is disabled in GUI mode)
 | ||||
|     void exitNow() | ||||
|     { | ||||
|         if(!windows.isGuiMode()) | ||||
|             exit.exitNow(); | ||||
|             Ogre::Root::getSingleton().queueEndRendering (); | ||||
|     } | ||||
| 
 | ||||
|   public: | ||||
|  | @ -236,7 +234,6 @@ private: | |||
|                    bool debug, | ||||
|                    OMW::Engine& engine) | ||||
|       : ogre(_ogre), | ||||
|         exit(ogre.getWindow()), | ||||
|         input(ogre.getWindow(), !debug), | ||||
|         poller(input), | ||||
|         player(_player), | ||||
|  | @ -273,10 +270,8 @@ private: | |||
|                       "Draw Weapon"); | ||||
|       disp->funcs.bind(A_ToggleSpell,boost::bind(&InputImpl::toggleSpell,this), | ||||
|                       "Ready hands"); | ||||
|       disp->funcs.bind(A_Settings, boost::bind(&InputImpl::showSettings, this), | ||||
|                       "Show settings window"); | ||||
|       // Add the exit listener
 | ||||
|       ogre.getRoot()->addFrameListener(&exit); | ||||
|       disp->funcs.bind(A_GameMenu, boost::bind(&InputImpl::toggleMainMenu, this), | ||||
|                       "Toggle main menu"); | ||||
| 
 | ||||
|       mouse = MouseLookEventPtr(new MouseLookEvent()); | ||||
| 
 | ||||
|  | @ -316,7 +311,7 @@ private: | |||
|       // NOTE: These keys do not require constant polling - use in conjuction with variables in loops.
 | ||||
| 
 | ||||
|       disp->bind(A_Quit, KC_Q); | ||||
|       disp->bind(A_Quit, KC_ESCAPE); | ||||
|       disp->bind(A_GameMenu, KC_ESCAPE); | ||||
|       disp->bind(A_Screenshot, KC_SYSRQ); | ||||
|       disp->bind(A_Inventory, KC_I); | ||||
|       disp->bind(A_Console, KC_F1); | ||||
|  | @ -327,7 +322,6 @@ private: | |||
|       disp->bind(A_ToggleWalk, KC_C); | ||||
|       disp->bind(A_ToggleWeapon,KC_F); | ||||
|       disp->bind(A_ToggleSpell,KC_R); | ||||
|       disp->bind(A_Settings, KC_F2); | ||||
| 
 | ||||
|       // Key bindings for polled keys
 | ||||
|       // NOTE: These keys are constantly being polled. Only add keys that must be checked each frame.
 | ||||
|  |  | |||
|  | @ -1147,4 +1147,5 @@ namespace MWWorld | |||
|         } | ||||
|         return pos.z < cell.water; | ||||
|     } | ||||
| 
 | ||||
| } | ||||
|  |  | |||
|  | @ -274,6 +274,7 @@ namespace MWWorld | |||
| 
 | ||||
|             virtual bool isSwimming(const MWWorld::Ptr &object); | ||||
|             virtual bool isUnderwater(const ESM::Cell &cell, const Ogre::Vector3 &pos); | ||||
| 
 | ||||
|     }; | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -5,6 +5,7 @@ set(DDIR ${OpenMW_BINARY_DIR}/resources/mygui) | |||
| 
 | ||||
| set(MYGUI_FILES | ||||
|     atlas1.cfg | ||||
|     mainmenu.cfg | ||||
|     bigbars.png | ||||
|     black.png | ||||
|     core.skin | ||||
|  |  | |||
							
								
								
									
										95
									
								
								files/mygui/mainmenu.cfg
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										95
									
								
								files/mygui/mainmenu.cfg
									
									
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,95 @@ | |||
| [settings] | ||||
|     size_x = 512 | ||||
|     size_y = 512 | ||||
| 
 | ||||
| 
 | ||||
| [menu_newgame.dds] | ||||
|     x = 0 | ||||
|     y = 0 | ||||
| 
 | ||||
| [menu_newgame_pressed.dds] | ||||
|     x = 128 | ||||
|     y = 0 | ||||
| 
 | ||||
| [menu_newgame_over.dds] | ||||
|     x = 256 | ||||
|     y = 0 | ||||
| 
 | ||||
| 
 | ||||
| [menu_loadgame.dds] | ||||
|     x = 384 | ||||
|     y = 0 | ||||
| 
 | ||||
| [menu_loadgame_pressed.dds] | ||||
|     x = 0 | ||||
|     y = 64 | ||||
| 
 | ||||
| [menu_loadgame_over.dds] | ||||
|     x = 128 | ||||
|     y = 64 | ||||
| 
 | ||||
| 
 | ||||
| [menu_options.dds] | ||||
|     x = 256 | ||||
|     y = 64 | ||||
| 
 | ||||
| [menu_options_pressed.dds] | ||||
|     x = 384 | ||||
|     y = 64 | ||||
| 
 | ||||
| [menu_options_over.dds] | ||||
|     x = 0 | ||||
|     y = 128 | ||||
| 
 | ||||
| 
 | ||||
| [menu_credits.dds] | ||||
|     x = 128 | ||||
|     y = 128 | ||||
| 
 | ||||
| [menu_credits_pressed.dds] | ||||
|     x = 256 | ||||
|     y = 128 | ||||
| 
 | ||||
| [menu_credits_over.dds] | ||||
|     x = 384 | ||||
|     y = 128 | ||||
| 
 | ||||
| 
 | ||||
| [menu_exitgame.dds] | ||||
|     x = 0 | ||||
|     y = 192 | ||||
| 
 | ||||
| [menu_exitgame_pressed.dds] | ||||
|     x = 128 | ||||
|     y = 192 | ||||
| 
 | ||||
| [menu_exitgame_over.dds] | ||||
|     x = 256 | ||||
|     y = 192 | ||||
| 
 | ||||
| 
 | ||||
| [menu_savegame.dds] | ||||
|     x = 384 | ||||
|     y = 192 | ||||
| 
 | ||||
| [menu_savegame_pressed.dds] | ||||
|     x = 0 | ||||
|     y = 256 | ||||
| 
 | ||||
| [menu_savegame_over.dds] | ||||
|     x = 128 | ||||
|     y = 256 | ||||
| 
 | ||||
| 
 | ||||
| [menu_return.dds] | ||||
|     x = 256 | ||||
|     y = 256 | ||||
| 
 | ||||
| [menu_return_pressed.dds] | ||||
|     x = 384 | ||||
|     y = 256 | ||||
| 
 | ||||
| [menu_return_over.dds] | ||||
|     x = 0 | ||||
|     y = 320 | ||||
| 
 | ||||
|  | @ -4,8 +4,6 @@ | |||
|     <Layer name="Scene" overlapped="false" peek="true"/> | ||||
|     <Layer name="HUD" overlapped="false" peek="true"/> | ||||
|     <Layer name="Windows" overlapped="true" peek="true"/> | ||||
|     <Layer name="Books" overlapped="false" peek="false"/> | ||||
|     <Layer name="MainMenu" overlapped="false" peek="false"/> | ||||
|     <Layer name="Console" overlapped="false" peek="true"/> | ||||
|     <Layer name="Notification" overlapped="false" peek="false"/> | ||||
|     <Layer name="Popup" overlapped="true" peek="true"/> | ||||
|  |  | |||
|  | @ -2,16 +2,5 @@ | |||
| 
 | ||||
| <MyGUI type="Layout"> | ||||
|     <!-- The entire screen --> | ||||
|     <Widget type="Widget" layer="MainMenu" position="0 0 300 300" name="_Main"> | ||||
|         <!-- Centered box containing the buttons --> | ||||
|         <Widget type="Widget" position="86 12 128 276" align="Center"> | ||||
|             <!-- Menu boxes --> | ||||
|             <Widget type="Button" skin="ReturnButton" position="0 0 128 64" align="Top Left" name="Return"/> | ||||
|             <Widget type="Button" skin="NewButton" position="0 46 128 64" align="Top Left" name="New"/> | ||||
|             <Widget type="Button" skin="SaveButton" position="0 92 128 64" align="Top Left" name="Save"/> | ||||
|             <Widget type="Button" skin="LoadButton" position="0 138 128 64" align="Top Left" name="Load"/> | ||||
|             <Widget type="Button" skin="OptionsButton" position="0 184 128 64" align="Top Left" name="Options"/> | ||||
|             <Widget type="Button" skin="ExitButton" position="0 230 128 64" align="Top Left" name="Exit"/> | ||||
|         </Widget> | ||||
|     </Widget> | ||||
|     <Widget type="Widget" layer="Windows" position="0 0 300 300" name="_Main" /> | ||||
| </MyGUI> | ||||
|  |  | |||
|  | @ -1,6 +1,8 @@ | |||
| <?xml version="1.0" encoding="UTF-8"?> | ||||
| 
 | ||||
| <MyGUI type="Resource"> | ||||
| 
 | ||||
|     <!-- Cursors --> | ||||
|     <Resource type="ResourceImageSet" name="ArrowPointerImage"> | ||||
|         <Group name="Pointer" texture="textures\tx_cursor.dds" size="32 32"> | ||||
|             <Index name="Pointer" > | ||||
|  | @ -44,6 +46,10 @@ | |||
|         </Group> | ||||
|     </Resource> | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
|     <!-- Journal, book, scroll --> | ||||
|     <Resource type="ResourceImageSet" name="MenuBook_Close"> | ||||
|         <Group name="States" texture="mwgui1" size="96 24"> | ||||
|             <Index name="disabled"> | ||||
|  | @ -113,6 +119,124 @@ | |||
|     </Resource> | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
|     <!-- Main menu --> | ||||
|     <Resource type="ResourceImageSet" name="Menu_NewGame"> | ||||
|         <Group name="States" texture="mwgui2" size="128 64"> | ||||
|             <Index name="disabled"> | ||||
|                 <Frame point="0 0"/> | ||||
|             </Index> | ||||
|             <Index name="normal"> | ||||
|                 <Frame point="0 0"/> | ||||
|             </Index> | ||||
|             <Index name="highlighted"> | ||||
|                 <Frame point="256 0"/> | ||||
|             </Index> | ||||
|             <Index name="pushed"> | ||||
|                 <Frame point="128 0"/> | ||||
|             </Index> | ||||
|         </Group> | ||||
|     </Resource> | ||||
|     <Resource type="ResourceImageSet" name="Menu_LoadGame"> | ||||
|         <Group name="States" texture="mwgui2" size="128 64"> | ||||
|             <Index name="disabled"> | ||||
|                 <Frame point="384 0"/> | ||||
|             </Index> | ||||
|             <Index name="normal"> | ||||
|                 <Frame point="384 0"/> | ||||
|             </Index> | ||||
|             <Index name="highlighted"> | ||||
|                 <Frame point="128 64"/> | ||||
|             </Index> | ||||
|             <Index name="pushed"> | ||||
|                 <Frame point="0 64"/> | ||||
|             </Index> | ||||
|         </Group> | ||||
|     </Resource> | ||||
|     <Resource type="ResourceImageSet" name="Menu_Options"> | ||||
|         <Group name="States" texture="mwgui2" size="128 64"> | ||||
|             <Index name="disabled"> | ||||
|                 <Frame point="256 64"/> | ||||
|             </Index> | ||||
|             <Index name="normal"> | ||||
|                 <Frame point="256 64"/> | ||||
|             </Index> | ||||
|             <Index name="highlighted"> | ||||
|                 <Frame point="0 128"/> | ||||
|             </Index> | ||||
|             <Index name="pushed"> | ||||
|                 <Frame point="384 64"/> | ||||
|             </Index> | ||||
|         </Group> | ||||
|     </Resource> | ||||
|     <Resource type="ResourceImageSet" name="Menu_Credits"> | ||||
|         <Group name="States" texture="mwgui2" size="128 64"> | ||||
|             <Index name="disabled"> | ||||
|                 <Frame point="128 128"/> | ||||
|             </Index> | ||||
|             <Index name="normal"> | ||||
|                 <Frame point="128 128"/> | ||||
|             </Index> | ||||
|             <Index name="highlighted"> | ||||
|                 <Frame point="384 128"/> | ||||
|             </Index> | ||||
|             <Index name="pushed"> | ||||
|                 <Frame point="256 128"/> | ||||
|             </Index> | ||||
|         </Group> | ||||
|     </Resource> | ||||
|     <Resource type="ResourceImageSet" name="Menu_ExitGame"> | ||||
|         <Group name="States" texture="mwgui2" size="128 64"> | ||||
|             <Index name="disabled"> | ||||
|                 <Frame point="0 192"/> | ||||
|             </Index> | ||||
|             <Index name="normal"> | ||||
|                 <Frame point="0 192"/> | ||||
|             </Index> | ||||
|             <Index name="highlighted"> | ||||
|                 <Frame point="256 192"/> | ||||
|             </Index> | ||||
|             <Index name="pushed"> | ||||
|                 <Frame point="128 192"/> | ||||
|             </Index> | ||||
|         </Group> | ||||
|     </Resource> | ||||
|     <Resource type="ResourceImageSet" name="Menu_SaveGame"> | ||||
|         <Group name="States" texture="mwgui2" size="128 64"> | ||||
|             <Index name="disabled"> | ||||
|                 <Frame point="384 192"/> | ||||
|             </Index> | ||||
|             <Index name="normal"> | ||||
|                 <Frame point="384 192"/> | ||||
|             </Index> | ||||
|             <Index name="highlighted"> | ||||
|                 <Frame point="128 256"/> | ||||
|             </Index> | ||||
|             <Index name="pushed"> | ||||
|                 <Frame point="0 256"/> | ||||
|             </Index> | ||||
|         </Group> | ||||
|     </Resource> | ||||
|     <Resource type="ResourceImageSet" name="Menu_Return"> | ||||
|         <Group name="States" texture="mwgui2" size="128 64"> | ||||
|             <Index name="disabled"> | ||||
|                 <Frame point="256 256"/> | ||||
|             </Index> | ||||
|             <Index name="normal"> | ||||
|                 <Frame point="256 256"/> | ||||
|             </Index> | ||||
|             <Index name="highlighted"> | ||||
|                 <Frame point="0 320"/> | ||||
|             </Index> | ||||
|             <Index name="pushed"> | ||||
|                 <Frame point="384 256"/> | ||||
|             </Index> | ||||
|         </Group> | ||||
|     </Resource> | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
|     <!-- Skins --> | ||||
| 
 | ||||
|     <Resource type="ResourceLayout" name="ButtonImage" version="3.2.0"> | ||||
|  |  | |||
|  | @ -1,37 +0,0 @@ | |||
| #ifndef OENGINE_OGRE_EXITLISTEN_H | ||||
| #define OENGINE_OGRE_EXITLISTEN_H | ||||
| 
 | ||||
| /*
 | ||||
|   This FrameListener simply exits the rendering loop when the window | ||||
|   is closed. You can also tell it to exit manually by setting the exit | ||||
|   member to true; | ||||
|  */ | ||||
| 
 | ||||
| #include <OgreFrameListener.h> | ||||
| #include <OgreRenderWindow.h> | ||||
| 
 | ||||
| namespace OEngine { | ||||
| namespace Render | ||||
| { | ||||
|   struct ExitListener : Ogre::FrameListener | ||||
|   { | ||||
|     Ogre::RenderWindow *window; | ||||
|     bool exit; | ||||
| 
 | ||||
|     ExitListener(Ogre::RenderWindow *wnd) | ||||
|       : window(wnd), exit(false) {} | ||||
| 
 | ||||
|     bool frameStarted(const Ogre::FrameEvent &evt) | ||||
|     { | ||||
|       if(window->isClosed()) | ||||
|         exit = true; | ||||
| 
 | ||||
|       return !exit; | ||||
|     } | ||||
| 
 | ||||
|     // Function equivalent of setting exit=true. Handy when you need a
 | ||||
|     // delegate to bind to an event.
 | ||||
|     void exitNow() { exit = true; } | ||||
|   }; | ||||
| }} | ||||
| #endif | ||||
|  | @ -9,8 +9,6 @@ | |||
|   inspired by http://www.ogre3d.org/tikiwiki/FadeEffectOverlay (heavily adjusted)
 | ||||
|  */ | ||||
|   | ||||
| #include <OgreFrameListener.h> | ||||
| 
 | ||||
| namespace Ogre | ||||
| { | ||||
|     class TextureUnitState; | ||||
|  |  | |||
		Loading…
	
		Reference in a new issue