diff options
Diffstat (limited to 'Minecraft.Client/Common/XUI/XUI_SaveMessage.cpp')
| -rw-r--r-- | Minecraft.Client/Common/XUI/XUI_SaveMessage.cpp | 76 |
1 files changed, 76 insertions, 0 deletions
diff --git a/Minecraft.Client/Common/XUI/XUI_SaveMessage.cpp b/Minecraft.Client/Common/XUI/XUI_SaveMessage.cpp new file mode 100644 index 00000000..7c816033 --- /dev/null +++ b/Minecraft.Client/Common/XUI/XUI_SaveMessage.cpp @@ -0,0 +1,76 @@ +#include "stdafx.h" +#include <assert.h> +#include "..\XUI\XUI_SaveMessage.h" + +//---------------------------------------------------------------------------------- +// Performs initialization tasks - retrieves controls. +//---------------------------------------------------------------------------------- +HRESULT CScene_SaveMessage::OnInit( XUIMessageInit* pInitData, BOOL& bHandled ) +{ + MapChildControls(); + CXuiSceneBase::ShowBackground( DEFAULT_XUI_MENU_USER, TRUE ); + CXuiSceneBase::ShowLogo( DEFAULT_XUI_MENU_USER, TRUE ); + + m_button.SetText(app.GetString(IDS_CONFIRM_OK)); + + m_SaveMessage.SetText(app.GetString(IDS_SAVE_ICON_MESSAGE)); + + ui.SetTooltips( DEFAULT_XUI_MENU_USER, IDS_TOOLTIPS_SELECT ); + + // 4J-PB - If we have a signed in user connected, let's get the DLC now + for(unsigned int i = 0; i < XUSER_MAX_COUNT; ++i) + { + if( (InputManager.IsPadConnected(i) || ProfileManager.IsSignedIn(i)) ) + { + if(!app.DLCInstallProcessCompleted() && !app.DLCInstallPending()) + { + app.StartInstallDLCProcess(i); + break; + } + } + } + + // set a timer on the saving message screen, so we continue after 8 seconds + XuiSetTimer( m_hObj,0,8000); + m_bIgnoreInput=false; + return S_OK; +} + +//---------------------------------------------------------------------------------- +// Handler for the button press message. +//---------------------------------------------------------------------------------- +HRESULT CScene_SaveMessage::OnNotifyPressEx(HXUIOBJ hObjPressed, XUINotifyPress* pNotifyPressData, BOOL& rfHandled) +{ + if(m_bIgnoreInput) return S_OK; + + // This assumes all buttons can only be pressed with the A button + ui.AnimateKeyPress(pNotifyPressData->UserIndex, VK_PAD_A); + + XuiKillTimer(m_hObj,0); + app.NavigateToScene(XUSER_INDEX_ANY,eUIScene_MainMenu); + rfHandled = TRUE; + return S_OK; +} + +HRESULT CScene_SaveMessage::OnKeyDown(XUIMessageInput* pInputData, BOOL& rfHandled) +{ + if(m_bIgnoreInput) return S_OK; + + ui.AnimateKeyPress(pInputData->UserIndex, pInputData->dwKeyCode); + + return S_OK; +} + +// 4J-PB - added for Compliance fail - +// Games must enter an interactive state that accepts player input within 20 seconds after the initial start-up sequence. +// If an animation or cinematic shown during the start-up sequence runs longer than 20 seconds, it must be skippable using the START button or natural input. +HRESULT CScene_SaveMessage::OnTimer(XUIMessageTimer *pData,BOOL& rfHandled) +{ + m_bIgnoreInput=true; + XuiKillTimer(m_hObj,0); + app.NavigateToScene(XUSER_INDEX_ANY,eUIScene_MainMenu); + + return S_OK; +} + + |
