LeviLamina
Loading...
Searching...
No Matches
EDUWorldsScreenController.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/gui/DirtyFlag.h"
7#include "mc/client/gui/screens/controllers/SettingsScreenControllerBase.h"
8#include "mc/deps/core/utility/NonOwnerPointer.h"
9
10// auto generated forward declare list
11// clang-format off
12class DlcUIWrapper;
13class IContentManager;
14class PlayScreenModel;
15class UIPropertyBag;
17struct LevelSummary;
18struct LocalWorldInfo;
21namespace EduCloud { struct IEduCloudSaveSystem; }
22namespace Json { class Value; }
23// clang-format on
24
26public:
27 // EDUWorldsScreenController inner types define
28 enum class StartWorldCaller : int {
29 Play = 0,
30 Host = 1,
31 Download = 2,
32 };
33
34public:
35 // member variables
36 // NOLINTBEGIN
37 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::PlayScreenModel>> mPlayScreenModel;
38 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::WorldsClipboardScreenController>> mWorldsClipboardScreenController;
39 ::ll::TypedStorage<8, 24, ::Bedrock::NonOwnerPointer<::EduCloud::IEduCloudSaveSystem>> mEduCloudSaveSystem;
40 ::ll::TypedStorage<1, 1, bool> mManageActive;
41 ::ll::TypedStorage<1, 1, bool> mMatchedWorldsNeedsRefresh;
42 ::ll::TypedStorage<1, 1, bool> mPlaceholderSelected;
43 ::ll::TypedStorage<1, 1, bool> mChangingScreen;
44 ::ll::TypedStorage<1, 1, bool> mHandlingConflict;
45 ::ll::TypedStorage<1, 1, bool> mSkipNextFetch;
46 ::ll::TypedStorage<1, 1, bool> mWaitingOnWorldCloudChecks;
47 ::ll::TypedStorage<1, 1, bool> mWaitingOnSettingsCloudChecks;
48 ::ll::TypedStorage<8, 32, ::std::string> mSearchString;
49 ::ll::TypedStorage<8, 24, ::std::vector<uint64>> mMatchedWorlds;
50 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::DlcUIWrapper>> mDlcUIWrapper;
51 ::ll::TypedStorage<8, 8, ::PackManagerContentSource*> mWorldContentSource;
52 ::ll::TypedStorage<8, 8, ::IContentManager&> mContentManager;
53 ::ll::TypedStorage<4, 4, int> mLastSelectedWorldIndex;
54 // NOLINTEND
55
56public:
57 // prevent constructor by default
58 EDUWorldsScreenController& operator=(EDUWorldsScreenController const&);
59 EDUWorldsScreenController(EDUWorldsScreenController const&);
60 EDUWorldsScreenController();
61
62public:
63 // virtual functions
64 // NOLINTBEGIN
65 virtual ~EDUWorldsScreenController() /*override*/;
66
67 virtual void onOpen() /*override*/;
68
69 virtual void onEntering() /*override*/;
70
71 virtual void onReload() /*override*/;
72
73 virtual void onTerminate() /*override*/;
74
75 virtual ::ui::DirtyFlag tick() /*override*/;
76
77 virtual void addStaticScreenVars(::Json::Value& globalVars) /*override*/;
78 // NOLINTEND
79
80public:
81 // member functions
82 // NOLINTBEGIN
83 MCAPI explicit EDUWorldsScreenController(::std::shared_ptr<::PlayScreenModel> model);
84
85 MCAPI void _closeEduCloudConflictPopup(bool keepLocal);
86
87 MCAPI ::WorldsClipboardCallbacks _createWorldClipboardCallbacks(::LevelSummary& levelSummary);
88
89 MCAPI uint64 _getTileIndex(::UIPropertyBag& bag) const;
90
91 MCAPI void _openWorldSettings(::LocalWorldInfo* worldInfo);
92
93 MCAPI void _registerBindings();
94
95 MCAPI void _registerControllerCallbacks();
96
97 MCAPI void _registerEventHandlers();
98
99 MCAPI void _registerSubControllers();
100
101 MCAPI void _showCloudNeedsUploadModal(::LocalWorldInfo* worldInfo);
102
103 MCFOLD void _showEduCloudConflictPopup();
104
105 MCAPI void _startWorld(::std::string const& levelId, ::EDUWorldsScreenController::StartWorldCaller caller);
106
107 MCAPI void _startWorld(::LocalWorldInfo* worldInfo, ::EDUWorldsScreenController::StartWorldCaller caller);
108 // NOLINTEND
109
110public:
111 // constructor thunks
112 // NOLINTBEGIN
113 MCAPI void* $ctor(::std::shared_ptr<::PlayScreenModel> model);
114 // NOLINTEND
115
116public:
117 // destructor thunk
118 // NOLINTBEGIN
119 MCAPI void $dtor();
120 // NOLINTEND
121
122public:
123 // virtual function thunks
124 // NOLINTBEGIN
125 MCAPI void $onOpen();
126
127 MCAPI void $onEntering();
128
129 MCAPI void $onReload();
130
131 MCFOLD void $onTerminate();
132
133 MCAPI ::ui::DirtyFlag $tick();
134
135 MCFOLD void $addStaticScreenVars(::Json::Value& globalVars);
136 // NOLINTEND
137
138public:
139 // vftables
140 // NOLINTBEGIN
141 MCNAPI static void** $vftableForScreenController();
142
144 // NOLINTEND
145};
Definition DlcUIWrapper.h:5
Definition EDUWorldsScreenController.h:5
static MCAPI void ** $vftableForEnableNonOwnerReferences()
static MCAPI void ** $vftableForScreenController()
Definition IContentManager.h:5
Definition Value.h:16
Definition PlayScreenModel.h:5
Definition SettingsScreenControllerBase.h:5
Definition UIPropertyBag.h:5
Definition WorldsClipboardScreenController.h:5
Definition IEduCloudSaveSystem.h:7
Definition LevelSummary.h:30
Definition LocalWorldInfo.h:5
Definition PackManagerContentSource.h:5
Definition WorldsClipboardCallbacks.h:5