LeviLamina
Loading...
Searching...
No Matches
WorldRecoveryScreenController.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/MainMenuScreenController.h"
8#include "mc/deps/application/storage_migration/WorldRecovery.h"
9#include "mc/deps/application/storage_migration/WorldRecoveryTelemetryEvent.h"
10#include "mc/deps/core/threading/TaskGroup.h"
11#include "mc/deps/core/utility/pub_sub/DeferredSubscription.h"
12
13// auto generated forward declare list
14// clang-format off
16namespace Bedrock { class WorldRecovery; }
17// clang-format on
18
20public:
21 // member variables
22 // NOLINTBEGIN
23 ::ll::TypedStorage<8, 336, ::TaskGroup> mTaskGroup;
24 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::Bedrock::WorldRecovery>> mWorldRecovery;
25 ::ll::TypedStorage<8, 56, ::Bedrock::WorldRecovery::RecoveryUpdate> mLatestUpdate;
26 ::ll::TypedStorage<8, 16, ::Bedrock::PubSub::DeferredSubscription> mUpdateSubscription;
27 ::ll::TypedStorage<8, 144, ::Bedrock::WorldRecoveryTelemetryEvent> mTelemetryEvent;
28 ::ll::TypedStorage<8, 64, ::std::function<void()>> mSuccessCallback;
29 ::ll::TypedStorage<8, 64, ::std::function<void()>> mDoMigrationFn;
30 ::ll::TypedStorage<8, 8, ::std::chrono::steady_clock::time_point> mRecoveryStartTime;
31 ::ll::TypedStorage<8, 8, ::std::chrono::steady_clock::time_point> mLastVisualUpdateTime;
32 ::ll::TypedStorage<8, 32, ::std::string> mDefaultDisplayText;
33 ::ll::TypedStorage<8, 32, ::std::string> mCurrentDisplayText;
34 ::ll::TypedStorage<1, 1, ::std::atomic<bool>> mControlsEnabled;
35 ::ll::TypedStorage<1, 1, bool> mRecoveryInProgress;
36 // NOLINTEND
37
38public:
39 // prevent constructor by default
40 WorldRecoveryScreenController();
41
42public:
43 // virtual functions
44 // NOLINTBEGIN
45 virtual ~WorldRecoveryScreenController() /*override*/;
46
47 virtual ::ui::DirtyFlag tick() /*override*/;
48
49 virtual void onOpen() /*override*/;
50
51 virtual bool canExit() /*override*/;
52 // NOLINTEND
53
54public:
55 // member functions
56 // NOLINTBEGIN
57 MCAPI WorldRecoveryScreenController(
58 ::std::shared_ptr<::MainMenuScreenModel> model,
59 ::std::function<void()> successCallback
60 );
61
62 MCAPI void _fireTelemetry();
63
64 MCAPI void _onWorldRecoveryDone(::Bedrock::WorldRecovery::RecoveryResult result);
65
66 MCAPI void _onWorldRecoveryUpdate(::Bedrock::WorldRecovery::RecoveryUpdate update);
67
68 MCAPI void _onWorldsDirectorySelected(::std::string const& uri, ::std::string const& error);
69
70 MCAPI void _registerEventHandlers();
71
72 MCAPI void _selectWorldsDirectory();
73
74 MCAPI void _updateDisplayText();
75 // NOLINTEND
76
77public:
78 // constructor thunks
79 // NOLINTBEGIN
80 MCAPI void* $ctor(::std::shared_ptr<::MainMenuScreenModel> model, ::std::function<void()> successCallback);
81 // NOLINTEND
82
83public:
84 // destructor thunk
85 // NOLINTBEGIN
86 MCAPI void $dtor();
87 // NOLINTEND
88
89public:
90 // virtual function thunks
91 // NOLINTBEGIN
92 MCAPI ::ui::DirtyFlag $tick();
93
94 MCAPI void $onOpen();
95
96 MCAPI bool $canExit();
97 // NOLINTEND
98
99public:
100 // vftables
101 // NOLINTBEGIN
102 MCNAPI static void** $vftableForScreenController();
103
105 // NOLINTEND
106};
Definition WorldRecovery.h:18
Definition MainMenuScreenController.h:5
Definition MainMenuScreenModel.h:5
Definition WorldRecoveryScreenController.h:5
static MCAPI void ** $vftableForEnableNonOwnerReferences()
static MCAPI void ** $vftableForScreenController()