Mercurial > mm7
diff Game/MainMenu.cpp @ 2551:4008b2f34be0
MainMenu rendering moved from event loop to respective window class
author | a.parshin |
---|---|
date | Tue, 12 May 2015 12:03:30 +0200 |
parents | fed97f15d1e1 |
children | ac16f4a3a91e |
line wrap: on
line diff
--- a/Game/MainMenu.cpp Tue May 12 11:28:22 2015 +0200 +++ b/Game/MainMenu.cpp Tue May 12 12:03:30 2015 +0200 @@ -9,21 +9,16 @@ #include "IO/Mouse.h" #include "IO/Keyboard.h" -#include "GUI/GUIWindow.h" -#include "GUI/GUIButton.h" +#include "GUI/UI/UIMainMenu.h" #include "GUI/UI/UIPartyCreation.h" #include "GUI/UI/UISaveLoad.h" +#include "GUI/GUIButton.h" #include "Media/Audio/AudioPlayer.h" #include "Game/MainMenu.h" -GUIButton *pMainMenu_BtnExit = nullptr; -GUIButton *pMainMenu_BtnCredits = nullptr; -GUIButton *pMainMenu_BtnLoad = nullptr; -GUIButton *pMainMenu_BtnNew = nullptr; - RGBTexture main_menu_background; @@ -366,16 +361,7 @@ pIcons_LOD->_inlined_sub2(); - pWindow_MainMenu = new GUIWindow(0, 0, window->GetWidth(), window->GetHeight(), 0, 0); - Texture* pNew = pIcons_LOD->LoadTexturePtr("title_new", TEXTURE_16BIT_PALETTE); - Texture* pLoad = pIcons_LOD->LoadTexturePtr("title_load", TEXTURE_16BIT_PALETTE); - Texture* pCredits = pIcons_LOD->LoadTexturePtr("title_cred", TEXTURE_16BIT_PALETTE); - Texture* pExit = pIcons_LOD->LoadTexturePtr("title_exit", TEXTURE_16BIT_PALETTE); - - pMainMenu_BtnNew = pWindow_MainMenu->CreateButton(495, 172, pNew->uTextureWidth, pNew->uTextureHeight, 1, 0, UIMSG_MainMenu_ShowPartyCreationWnd, 0, 'N', "", pNew, 0); - pMainMenu_BtnLoad = pWindow_MainMenu->CreateButton(495, 227, pLoad->uTextureWidth, pLoad->uTextureHeight, 1, 0, UIMSG_MainMenu_ShowLoadWindow, 1, 'L', "", pLoad, 0); - pMainMenu_BtnCredits = pWindow_MainMenu->CreateButton(495, 282, pCredits->uTextureWidth, pCredits->uTextureHeight, 1, 0, UIMSG_ShowCredits, 2, 'C', "", pCredits, 0); - pMainMenu_BtnExit = pWindow_MainMenu->CreateButton(495, 337, pExit->uTextureWidth, pExit->uTextureHeight, 1, 0, UIMSG_ExitToWindows, 3, 0, "", pExit, 0); + pWindow_MainMenu = new GUIWindow_MainMenu(); main_menu_background.Release(); main_menu_background.Load("title.pcx", 0); @@ -421,56 +407,10 @@ MainMenu_EventLoop(); GUI_UpdateWindows(); - if (GetCurrentMenuID() != MENU_MAIN) - { - if (GetCurrentMenuID() == MENU_LoadingProcInMainMenu) - { - pIcons_LOD->RemoveTexturesPackFromTextureList(); - pGUIWindow_CurrentMenu->Release(); - pGUIWindow_CurrentMenu = 0; - current_screen_type = SCREEN_GAME; - viewparams->bRedrawGameUI = 1; - } - } - else - { - if (!pModalWindow)// ??? - { - pButton = pWindow->pControlsHead; - for (pButton = pWindow->pControlsHead; pButton; pButton = pButton->pNext) - { - if (pt.x >= (signed int)pButton->uX && pt.x <= (signed int)pButton->uZ - && pt.y >= (signed int)pButton->uY && pt.y <= (signed int)pButton->uW - && pWindow == pWindow_MainMenu) - { - pControlParam = pButton->msg_param; - switch (pControlParam) // backlight for buttons - { - case 0: - pTexture = pNew; - pY = 172; - break; - case 1: - pTexture = pLoad; - pY = 227; - break; - case 2: - pTexture = pCredits; - pY = 282; - break; - case 3: - pTexture = pExit; - pY = 337; - break; - } - pRenderer->DrawTextureIndexed(495, pY, pTexture); - } - } - } - } pRenderer->EndScene(); pRenderer->Present(); } + MainMenu_EventLoop(); pRenderer->BeginScene(); GUI_UpdateWindows();