diff options
Diffstat (limited to 'Minecraft.Client/Common/XUI/XUI_MultiGameCreate.h')
| -rw-r--r-- | Minecraft.Client/Common/XUI/XUI_MultiGameCreate.h | 118 |
1 files changed, 118 insertions, 0 deletions
diff --git a/Minecraft.Client/Common/XUI/XUI_MultiGameCreate.h b/Minecraft.Client/Common/XUI/XUI_MultiGameCreate.h new file mode 100644 index 00000000..5b4e6ef7 --- /dev/null +++ b/Minecraft.Client/Common/XUI/XUI_MultiGameCreate.h @@ -0,0 +1,118 @@ +#pragma once +#include "..\Media\xuiscene_multi_create.h" +#include "XUI_Ctrl_4JEdit.h" +#include "XUI_Ctrl_SliderWrapper.h" +#include "XUI_MultiGameLaunchMoreOptions.h" + +class CXuiCtrl4JList; +class CXuiCtrl4JIcon; + +class CScene_MultiGameCreate : public CXuiSceneImpl +{ +protected: + CXuiScene m_MainScene; + CXuiScene m_TexturePackDetails; + CXuiControl m_NewWorld; + CXuiControl m_labelWorldName; + CXuiControl m_labelSeed; + CXuiControl m_labelRandomSeed; + CXuiControl m_MoreOptions; + CXuiCtrl4JEdit m_EditSeed; + CXuiCtrl4JEdit m_EditWorldName; + CXuiControl m_ButtonGameMode; + CXuiCtrlSliderWrapper m_SliderDifficulty; + CXuiCtrl4JList *m_pTexturePacksList; + CXuiControl m_texturePackTitle, m_texturePackDescription; + CXuiCtrl4JIcon *m_texturePackIcon, *m_texturePackComparison; + + XUI_BEGIN_MSG_MAP() + XUI_ON_XM_INIT( OnInit ) + XUI_ON_XM_KEYDOWN(OnKeyDown) + XUI_ON_XM_NOTIFY_PRESS_EX(OnNotifyPressEx) + XUI_ON_XM_NOTIFY_VALUE_CHANGED(OnNotifyValueChanged) + XUI_ON_XM_CONTROL_NAVIGATE(OnControlNavigate) + XUI_ON_XM_TIMER( OnTimer ) + XUI_ON_XM_TRANSITION_START(OnTransitionStart) + XUI_ON_XM_TRANSITION_END(OnTransitionEnd) + XUI_ON_XM_NOTIFY_SELCHANGED( OnNotifySelChanged ) + XUI_ON_XM_NOTIFY_KILL_FOCUS( OnNotifyKillFocus ) + XUI_ON_XM_DLCINSTALLED_MESSAGE(OnCustomMessage_DLCInstalled) + XUI_ON_XM_DLCLOADED_MESSAGE(OnCustomMessage_DLCMountingComplete) + XUI_ON_XM_DESTROY( OnDestroy ) + XUI_END_MSG_MAP() + + BEGIN_CONTROL_MAP() + MAP_CONTROL(IDC_MainScene, m_MainScene) + BEGIN_MAP_CHILD_CONTROLS(m_MainScene) + MAP_CONTROL(IDC_XuiLabelWorldName, m_labelWorldName) + MAP_CONTROL(IDC_XuiLabelSeed, m_labelSeed) + MAP_CONTROL(IDC_XuiLabelRandomSeed, m_labelRandomSeed) + MAP_CONTROL(IDC_XuiGameModeToggle, m_ButtonGameMode) + MAP_CONTROL(IDC_XuiNewWorld, m_NewWorld) + MAP_CONTROL(IDC_XuiMoreOptions, m_MoreOptions) + MAP_CONTROL(IDC_XuiEditSeed, m_EditSeed) + MAP_CONTROL(IDC_XuiEditWorldName, m_EditWorldName) + MAP_CONTROL(IDC_XuiSliderDifficulty, m_SliderDifficulty) + MAP_OVERRIDE(IDC_TexturePacksList, m_pTexturePacksList) + END_MAP_CHILD_CONTROLS() + MAP_CONTROL(IDC_TexturePackDetails, m_TexturePackDetails) + BEGIN_MAP_CHILD_CONTROLS(m_TexturePackDetails) + MAP_CONTROL(IDC_TexturePackName, m_texturePackTitle) + MAP_CONTROL(IDC_TexturePackDescription, m_texturePackDescription) + MAP_OVERRIDE(IDC_Icon, m_texturePackIcon) + MAP_OVERRIDE(IDC_ComparisonPic, m_texturePackComparison) + END_MAP_CHILD_CONTROLS() + END_CONTROL_MAP() + + + HRESULT OnInit( XUIMessageInit* pInitData, BOOL& bHandled ); + HRESULT OnNotifyPressEx(HXUIOBJ hObjPressed, XUINotifyPress* pNotifyPressData,BOOL& rfHandled); + HRESULT OnKeyDown(XUIMessageInput* pInputData, BOOL& rfHandled); + HRESULT OnNotifyValueChanged (HXUIOBJ hObjSource, XUINotifyValueChanged* pValueChangedData, BOOL& rfHandled); + HRESULT OnControlNavigate( XUIMessageControlNavigate *pControlNavigateData, BOOL &bHandled); + HRESULT OnTimer( XUIMessageTimer *pTimer, BOOL& bHandled ); + HRESULT OnTransitionStart( XUIMessageTransition *pTransition, BOOL& bHandled ); + HRESULT OnTransitionEnd( XUIMessageTransition *pTransition, BOOL& bHandled ); + HRESULT OnNotifySelChanged( HXUIOBJ hObjSource, XUINotifySelChanged* pNotifySelChangedData, BOOL& bHandled ); + HRESULT OnNotifyKillFocus(HXUIOBJ hObjSource, XUINotifyFocus *pNotifyFocusData, BOOL& bHandled); + HRESULT OnCustomMessage_DLCInstalled(); + HRESULT OnCustomMessage_DLCMountingComplete(); + HRESULT OnDestroy(); + +public: + + // Define the class. The class name must match the ClassOverride property + // set for the scene in the UI Authoring tool. + XUI_IMPLEMENT_CLASS( CScene_MultiGameCreate, L"CScene_MultiGameCreate", XUI_CLASS_SCENE ) + +private: + static int LoadSaveDataReturned(void *pParam,bool bContinue); + static int StartGame_SignInReturned(void *pParam,bool bContinue, int iPad); + static void CreateGame(CScene_MultiGameCreate* pClass, DWORD dwLocalUsersMask); + static int ConfirmCreateReturned(void *pParam,int iPad,C4JStorage::EMessageResult result); + static int UnlockTexturePackReturned(void *pParam,int iPad,C4JStorage::EMessageResult result); + static int WarningTrialTexturePackReturned(void *pParam,int iPad,C4JStorage::EMessageResult result); + static int TexturePackDialogReturned(void *pParam,int iPad,C4JStorage::EMessageResult result); + + + void ToggleShowSaveList(); + void UpdateTexturePackDescription(int index); + void ClearTexturePackDescription(); + void UpdateCurrentTexturePack(); + + bool m_bMultiplayerAllowed; + int m_iPad; + int m_CurrentDifficulty; + static int m_iDifficultyTitleSettingA[4]; + LaunchMoreOptionsMenuInitData m_MoreOptionsParams; + bool m_bGameModeSurvival; + bool m_bIgnoreInput; + unsigned int m_currentTexturePackIndex; + DLCPack * m_pDLCPack; + bool m_bSetup; + bool m_texturePackDescDisplayed; + HXUIBRUSH m_hTexturePackIconBrush; + HXUIBRUSH m_hTexturePackComparisonBrush; + int *m_iConfigA; // track the texture packs that we don't have installed + int m_iTexturePacksNotInstalled; +};
\ No newline at end of file |
