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&) ;
58 virtual void onExit(::MinecraftScreenModel& minecraftScreenModel) ;
60 virtual void onStart(::MinecraftScreenModel& minecraftScreenModel) ;
62 virtual ::std::string getProgressMessage(::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&) const ;
72 virtual ::ProgressAnimation showLoadingBar() const ;
78 MCAPI EduCloudDownloadProgressHandler(
79 ::std::shared_ptr<::WorldFileDownloadManager> downloadManager,
80 ::std::shared_ptr<::ImportState> importState,
81 ::std::
string const&
id,
82 ::EduCloud::LaunchOptions launchOption,
83 bool canLaunchLocalWorld,
84 ::std::function<
void(::SetDownloadProgressHandlerError)> const& setDownloadErrorsStatusCallbacks,
85 ::std::function<
void(
bool)> const& setReadyToLaunch
88 MCAPI
void _leaveProgressHandler(::MinecraftScreenModel& minecraftScreenModel);
90 MCAPI ::std::
string _updateProgressMessage(::MinecraftScreenModel& minecraftScreenModel);
92 MCAPI
void _updateTitle();
94 MCFOLD
bool canLaunchLocalWorld() const;
96 MCAPI
void exitErrorPopup(::MinecraftScreenModel& minecraftScreenModel,
bool launch);
98 MCFOLD ::EduCloudUtils::Operation getCurrentOperation() const;
100 MCFOLD ::DownloadError getDownloadErrorStatus() const;
102 MCFOLD ::MSGraph::GraphResponse getGraphErrorStatus() const;
104 MCFOLD ::ImportFailure getImportErrorStatus() const;
106 MCFOLD ::MSGraph::GraphResponse getSyncErrorStatus() const;
113 ::std::shared_ptr<::WorldFileDownloadManager> downloadManager,
114 ::std::shared_ptr<::ImportState> importState,
115 ::std::
string const&
id,
116 ::EduCloud::LaunchOptions launchOption,
117 bool canLaunchLocalWorld,
118 ::std::function<
void(::SetDownloadProgressHandlerError)> const& setDownloadErrorsStatusCallbacks,
119 ::std::function<
void(
bool)> const& setReadyToLaunch
126 MCAPI
void $tick(::MinecraftScreenModel& minecraftScreenModel);
128 MCAPI
void $onCancel(::MinecraftScreenModel&);
130 MCAPI
void $onExit(::MinecraftScreenModel& minecraftScreenModel);
132 MCAPI
void $onStart(::MinecraftScreenModel& minecraftScreenModel);
134 MCFOLD ::std::
string $getProgressMessage(::MinecraftScreenModel&) const;
136 MCFOLD ::std::
string $getTitleText() const;
138 MCAPI ::std::
string $getName() const;
140 MCFOLD ::std::
string $getTTSProgressMessage() const;
142 MCFOLD ::LoadingState $getLoadingState(::MinecraftScreenModel&) const;
144 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