3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/client/gui/DirtyFlag.h"
7#include "mc/client/gui/screens/controllers/MainMenuScreenController.h"
24 enum class OptionalBehavior : uint {
27 AutoLaunchImportedItems = 1u << 1,
28 TrackTemplateInWorldSaves = 1u << 2,
29 TrackUserInWorldSaves = 1u << 3,
32 using OnDownloadError = ::std::function<void()>;
34 using OnLaunchSucceeded = ::std::function<void()>;
36 using OnLaunchFailed = ::std::function<void()>;
38 using OnLevelDataConstructed = ::std::function<void(::LevelData&)>;
43 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::PlayScreenModel>> mPlayScreenModel;
44 ::ll::TypedStorage<8, 64, ::std::function<void()>> mOnDownloadError;
45 ::ll::TypedStorage<1, 1, bool> mIsDownloadInProgress;
46 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::WorldFileDownloadManager>> mWorldFileDownloadManager;
47 ::ll::TypedStorage<8, 8, ::IResourcePackRepository&> mResourcePackRepository;
48 ::ll::TypedStorage<8, 8, ::ResourcePackManager&> mResourcePackManager;
49 ::ll::TypedStorage<8, 8, ::IMinecraftEventing&> mEventing;
50 ::ll::TypedStorage<8, 8, ::ToastManager&> mToastManager;
51 ::ll::TypedStorage<4, 4, ::EducationContentManagerScreenController::OptionalBehavior> mOptionalBehavior;
56 EducationContentManagerScreenController& operator=(EducationContentManagerScreenController
const&);
57 EducationContentManagerScreenController(EducationContentManagerScreenController
const&);
58 EducationContentManagerScreenController();
63 virtual ~EducationContentManagerScreenController() =
default;
69 MCAPI EducationContentManagerScreenController(
70 ::std::shared_ptr<::PlayScreenModel> model,
71 ::std::function<
void()> onDownloadError,
72 ::IResourcePackRepository& rpr,
73 ::ResourcePackManager& rpm,
74 ::IMinecraftEventing& evt,
76 ::EducationContentManagerScreenController::OptionalBehavior optionalBehavior
79 MCAPI
void cancelWorldDownload();
81 MCAPI
void cancelWorldLaunch();
83 MCAPI
void importWorld(::LessonItem& item);
85 MCAPI
bool isDownloadInProgress()
const;
87 MCAPI
void launchWorld(
89 ::std::function<
void()>
const& onLaunchSucceeded,
90 ::std::function<
void()>
const& onLaunchFailed,
91 ::std::function<
void(::LevelData&)>
const& onLevelDataConstructed
95 tick(::LessonItem& activeItem, ::std::function<
void(::LevelData&)>
const& onLevelDataConstructed);
102 ::std::shared_ptr<::PlayScreenModel> model,
103 ::std::function<
void()> onDownloadError,
104 ::IResourcePackRepository& rpr,
105 ::ResourcePackManager& rpm,
106 ::IMinecraftEventing& evt,
108 ::EducationContentManagerScreenController::OptionalBehavior optionalBehavior
Definition EducationContentManagerScreenController.h:5
static MCAPI void ** $vftableForEnableNonOwnerReferences()
static MCAPI void ** $vftableForScreenController()
Definition IMinecraftEventing.h:138
Definition IResourcePackRepository.h:34
Definition LessonItem.h:5
Definition LevelData.h:55
Definition MainMenuScreenController.h:5
Definition PlayScreenModel.h:5
Definition ResourcePackManager.h:35
Definition ToastManager.h:5
Definition WorldFileDownloadManager.h:5