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;
16struct LevelSummary;
17struct LocalWorldInfo;
19struct UIPropertyBag;
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
30public:
31 // member variables
32 // NOLINTBEGIN
33 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::PlayScreenModel>> mPlayScreenModel;
34 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::WorldsClipboardScreenController>> mWorldsClipboardScreenController;
35 ::ll::TypedStorage<8, 24, ::Bedrock::NonOwnerPointer<::EduCloud::IEduCloudSaveSystem>> mEduCloudSaveSystem;
36 ::ll::TypedStorage<1, 1, bool> mManageActive;
37 ::ll::TypedStorage<1, 1, bool> mMatchedWorldsNeedsRefresh;
38 ::ll::TypedStorage<1, 1, bool> mPlaceholderSelected;
39 ::ll::TypedStorage<1, 1, bool> mChangingScreen;
40 ::ll::TypedStorage<1, 1, bool> mHandlingConflict;
41 ::ll::TypedStorage<1, 1, bool> mSkipNextFetch;
42 ::ll::TypedStorage<1, 1, bool> mWaitingOnWorldCloudChecks;
43 ::ll::TypedStorage<1, 1, bool> mWaitingOnSettingsCloudChecks;
44 ::ll::TypedStorage<8, 32, ::std::string> mSearchString;
45 ::ll::TypedStorage<8, 24, ::std::vector<uint64>> mMatchedWorlds;
46 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::DlcUIWrapper>> mDlcUIWrapper;
47 ::ll::TypedStorage<8, 8, ::PackManagerContentSource*> mWorldContentSource;
48 ::ll::TypedStorage<8, 8, ::IContentManager&> mContentManager;
49 ::ll::TypedStorage<4, 4, int> mLastSelectedWorldIndex;
50 // NOLINTEND
51
52public:
53 // prevent constructor by default
54 EDUWorldsScreenController& operator=(EDUWorldsScreenController const&);
55 EDUWorldsScreenController(EDUWorldsScreenController const&);
56 EDUWorldsScreenController();
57
58public:
59 // virtual functions
60 // NOLINTBEGIN
61 virtual ~EDUWorldsScreenController() /*override*/;
62
63 virtual void onOpen() /*override*/;
64
65 virtual void onEntering() /*override*/;
66
67 virtual void onReload() /*override*/;
68
69 virtual void onTerminate() /*override*/;
70
71 virtual ::ui::DirtyFlag tick() /*override*/;
72
73 virtual void addStaticScreenVars(::Json::Value& globalVars) /*override*/;
74 // NOLINTEND
75
76public:
77 // member functions
78 // NOLINTBEGIN
79 MCAPI explicit EDUWorldsScreenController(::std::shared_ptr<::PlayScreenModel> model);
80
81 MCAPI void _closeEduCloudConflictPopup(bool keepLocal);
82
83 MCAPI ::WorldsClipboardCallbacks _createWorldClipboardCallbacks(::LevelSummary& levelSummary);
84
85 MCAPI uint64 _getTileIndex(::UIPropertyBag& bag) const;
86
87 MCAPI void _openWorldSettings(::LocalWorldInfo* worldInfo);
88
89 MCAPI void _registerBindings();
90
91 MCAPI void _registerControllerCallbacks();
92
93 MCAPI void _registerEventHandlers();
94
95 MCAPI void _registerSubControllers();
96
97 MCAPI void _showCloudNeedsUploadModal(::LocalWorldInfo* worldInfo);
98
99 MCFOLD void _showEduCloudConflictPopup();
100
101 MCAPI void _startWorld(::std::string const& levelId, ::EDUWorldsScreenController::StartWorldCaller caller);
102
103 MCAPI void _startWorld(::LocalWorldInfo* worldInfo, ::EDUWorldsScreenController::StartWorldCaller caller);
104 // NOLINTEND
105
106public:
107 // constructor thunks
108 // NOLINTBEGIN
109 MCAPI void* $ctor(::std::shared_ptr<::PlayScreenModel> model);
110 // NOLINTEND
111
112public:
113 // destructor thunk
114 // NOLINTBEGIN
115 MCAPI void $dtor();
116 // NOLINTEND
117
118public:
119 // virtual function thunks
120 // NOLINTBEGIN
121 MCAPI void $onOpen();
122
123 MCAPI void $onEntering();
124
125 MCAPI void $onReload();
126
127 MCFOLD void $onTerminate();
128
129 MCAPI ::ui::DirtyFlag $tick();
130
131 MCFOLD void $addStaticScreenVars(::Json::Value& globalVars);
132 // NOLINTEND
133
134public:
135 // vftables
136 // NOLINTBEGIN
137 MCNAPI static void** $vftableForScreenController();
138
140 // NOLINTEND
141};
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 WorldsClipboardScreenController.h:5
Definition IEduCloudSaveSystem.h:7
Definition LevelSummary.h:30
Definition LocalWorldInfo.h:5
Definition PackManagerContentSource.h:5
Definition UIPropertyBag.h:5
Definition WorldsClipboardCallbacks.h:5