3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/client/game/edu_cloud/LaunchOptions.h"
7#include "mc/client/gui/EmptyProgressHandler.h"
8#include "mc/client/gui/ProgressAnimation.h"
9#include "mc/client/resources/ImportFailure.h"
10#include "mc/client/resources/ImportState.h"
11#include "mc/client/services/ms_graph/GraphResponse.h"
12#include "mc/client/util/edu_cloud_utils/Operation.h"
13#include "mc/util/DownloadError.h"
14#include "mc/world/actor/player/LoadingState.h"
27 ::ll::TypedStorage<4, 4, ::LoadingState> mLoadingState;
28 ::ll::TypedStorage<4, 4, ::EduCloudUtils::Operation> mCurrentOperation;
29 ::ll::TypedStorage<4, 4, ::MSGraph::GraphResponse> mSyncErrorStatus;
30 ::ll::TypedStorage<4, 4, ::MSGraph::GraphResponse> mGraphErrorStatus;
31 ::ll::TypedStorage<4, 4, ::DownloadError> mDownloadErrorStatus;
32 ::ll::TypedStorage<4, 4, ::ImportFailure> mImportErrorStatus;
33 ::ll::TypedStorage<8, 64, ::std::function<void(
bool)>> mSetReadyToLaunch;
34 ::ll::TypedStorage<8, 32, ::std::string> mTitleText;
35 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::WorldFileDownloadManager>> mDownloadManager;
36 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::ImportState>> mImportState;
37 ::ll::TypedStorage<8, 8, ::std::chrono::steady_clock::time_point> mEduCloudDownloadDelayStart;
38 ::ll::TypedStorage<8, 8, ::std::chrono::milliseconds const> mDisplayInterval;
39 ::ll::TypedStorage<1, 1, bool const> mLaunchWorldOnCompletion;
40 ::ll::TypedStorage<1, 1, bool> mCanceled;
41 ::ll::TypedStorage<1, 1, bool> mExitingScreen;
42 ::ll::TypedStorage<1, 1, bool> mCanLaunchLocalWorld;
43 ::ll::TypedStorage<8, 32, ::std::string> mProgressMessage;
44 ::ll::TypedStorage<8, 32, ::std::string> mPreviousProgressMessage;
49 EduCloudDownloadProgressHandler();
54 virtual void tick(::MinecraftScreenModel& minecraftScreenModel) ;
56 virtual void onCancel(::MinecraftScreenModel& minecraftScreenModel) ;
58 virtual void onExit(::MinecraftScreenModel& minecraftScreenModel) ;
60 virtual void onStart(::MinecraftScreenModel& minecraftScreenModel) ;
62 virtual ::std::string getProgressMessage(::MinecraftScreenModel& minecraftScreenModel)
const ;
64 virtual ::std::string getTitleText() const ;
66 virtual ::std::
string getName() const ;
68 virtual ::std::
string getTTSProgressMessage() const ;
70 virtual ::LoadingState getLoadingState(::MinecraftScreenModel& minecraftScreenModel) const ;
72 virtual ::ProgressAnimation showLoadingBar() const ;
74 virtual ~EduCloudDownloadProgressHandler() ;
80 MCAPI EduCloudDownloadProgressHandler(
81 ::std::shared_ptr<::WorldFileDownloadManager> downloadManager,
82 ::std::shared_ptr<::ImportState> importState,
83 ::std::
string const&
id,
84 ::EduCloud::LaunchOptions launchOption,
85 bool canLaunchLocalWorld,
86 ::std::function<
void(::SetDownloadProgressHandlerError)> const& setDownloadErrorsStatusCallbacks,
87 ::std::function<
void(
bool)> const& setReadyToLaunch
90 MCAPI
void _leaveProgressHandler(::MinecraftScreenModel& minecraftScreenModel);
92 MCAPI ::std::
string _updateProgressMessage(::MinecraftScreenModel& minecraftScreenModel);
94 MCAPI
void _updateTitle();
101 ::std::shared_ptr<::WorldFileDownloadManager> downloadManager,
102 ::std::shared_ptr<::ImportState> importState,
103 ::std::
string const&
id,
104 ::EduCloud::LaunchOptions launchOption,
105 bool canLaunchLocalWorld,
106 ::std::function<
void(::SetDownloadProgressHandlerError)> const& setDownloadErrorsStatusCallbacks,
107 ::std::function<
void(
bool)> const& setReadyToLaunch
120 MCAPI
void $tick(::MinecraftScreenModel& minecraftScreenModel);
122 MCAPI
void $onCancel(::MinecraftScreenModel& minecraftScreenModel);
124 MCAPI
void $onExit(::MinecraftScreenModel& minecraftScreenModel);
126 MCAPI
void $onStart(::MinecraftScreenModel& minecraftScreenModel);
128 MCFOLD ::std::
string $getProgressMessage(::MinecraftScreenModel& minecraftScreenModel) const;
130 MCFOLD ::std::
string $getTitleText() const;
132 MCAPI ::std::
string $getName() const;
134 MCFOLD ::std::
string $getTTSProgressMessage() const;
136 MCFOLD ::LoadingState $getLoadingState(::MinecraftScreenModel& minecraftScreenModel) const;
138 MCFOLD ::ProgressAnimation $showLoadingBar() const;
Definition EduCloudDownloadProgressHandler.h:5
static MCAPI void ** $vftable()
Definition EmptyProgressHandler.h:5
Definition MinecraftScreenModel.h:5
Definition WorldFileDownloadManager.h:5
Definition SetDownloadProgressHandlerError.h:5