LeviLamina
Loading...
Searching...
No Matches
StorageManagementScreenController.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/ViewRequest.h"
8#include "mc/client/gui/screens/controllers/MainMenuScreenController.h"
9#include "mc/client/gui/screens/controllers/ModalScreenButtonId.h"
10#include "mc/client/gui/screens/controllers/StorageManagementScreenData.h"
11#include "mc/client/gui/screens/controllers/StorageManagementViews.h"
12#include "mc/client/legacy/ImportStatus.h"
13#include "mc/world/actor/player/LoadingState.h"
14
15// auto generated forward declare list
16// clang-format off
17class IContentManager;
23struct ContentItem;
24struct ImportResult;
25struct LegacyWorldInfo;
26namespace Json { class Value; }
27// clang-format on
28
30public:
31 // StorageManagementScreenController inner types define
32 enum class ConvertProgressState : int {};
33
34 using ContentItemPtr = ::std::shared_ptr<::ContentItem>;
35
36 using ConstContentItemPtr = ::std::shared_ptr<::ContentItem const>;
37
38 using ConvertProgressHandlerCallback = ::std::function<float()>;
39
40 using ConvertStateCallback = ::std::function<::LoadingState()>;
41
42public:
43 // member variables
44 // NOLINTBEGIN
45 ::ll::TypedStorage<8, 8, ::IContentManager*> mContentManager;
46 ::ll::TypedStorage<4, 4, ::ui::DirtyFlag> mReloadFlag;
47 ::ll::TypedStorage<8, 16, ::std::weak_ptr<::StorageDependencyScreenController>> mDependencyScreenController;
48 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::StorageManagementScreenControllerProxy>> mProxy;
49 ::ll::TypedStorage<1, 1, bool> mShowDeleteModal;
50 ::ll::TypedStorage<1, 1, bool> mShowDeleteLocalScreenshotsModal;
51 ::ll::TypedStorage<1, 1, bool> mIsLegacyWorldTabExpanded;
52 ::ll::TypedStorage<4, 4, ::StorageManagementScreenController::ConvertProgressState> mProgressScreenState;
53 ::ll::TypedStorage<8, 8, ::LegacyWorldConverter&> mLegacyWorldConverter;
54 ::ll::TypedStorage<8, 16, ::gsl::not_null<::std::shared_ptr<::IStorageManagementModel>>> mModel;
55 ::ll::TypedStorage<8, 144, ::StorageManagementViews> mViews;
56 ::ll::TypedStorage<1, 5, ::StorageManagementScreenData> mData;
57 // NOLINTEND
58
59public:
60 // prevent constructor by default
61 StorageManagementScreenController& operator=(StorageManagementScreenController const&);
62 StorageManagementScreenController(StorageManagementScreenController const&);
63 StorageManagementScreenController();
64
65public:
66 // virtual functions
67 // NOLINTBEGIN
68 virtual ~StorageManagementScreenController() /*override*/ = default;
69
70 virtual ::ui::DirtyFlag tick() /*override*/;
71
72 virtual void addStaticScreenVars(::Json::Value& globalVars) /*override*/;
73 // NOLINTEND
74
75public:
76 // member functions
77 // NOLINTBEGIN
78 MCAPI StorageManagementScreenController(::std::shared_ptr<::MainMenuScreenModel> model, ::IContentManager& manager);
79
80 MCAPI bool _containsPremiumWorldTemplate(::std::vector<::std::string>& outWorldList) const;
81
82 MCAPI void _convertLegacyWorld(::LegacyWorldInfo const& world);
83
84 MCAPI ::ui::ViewRequest _deleteButtonPressed();
85
86 MCAPI ::ui::ViewRequest _deleteLocalScreenshotsButtonPressed();
87
88 MCAPI ::ui::ViewRequest _deleteSelectedResources();
89
90 MCAPI void _deselectPacks();
91
92 MCAPI void _displayImportRetailWorldModal(uint64 worldSize, ::std::function<void(::ModalScreenButtonId)> callback);
93
94 MCAPI ::std::function<void(::Legacy::ImportStatus, float, ::std::shared_ptr<::ImportResult>)>
95 _getLegacyWorldConvertCallback(::LegacyWorldInfo const& worldInfo, ::std::string const& levelId);
96
97 MCAPI ::std::string _getLegacyWorldsSize(uint numberElements, uint64 size);
98
99 MCAPI void _onWorldConversionCompleted(::std::shared_ptr<::ImportResult> result, ::std::string const& levelId);
100
101 MCAPI void _openProcessLegacyWorldProgressDialog();
102
103 MCAPI void _registerBindings();
104
105 MCAPI void _registerLegacyWorldsBindings();
106
107 MCAPI void _registerRetailToPreviewWorldsBindings();
108
109 MCAPI ::ui::ViewRequest _selectLegacyWorld(int worldIndex);
110
111 MCAPI ::ui::ViewRequest _selectRetailToPreviewWorld(int worldIndex);
112
113 MCAPI void _syncLegacyWorlds();
114 // NOLINTEND
115
116public:
117 // static functions
118 // NOLINTBEGIN
119 MCAPI static void _deleteResources(::IStorageManagementModel& model, ::StorageManagementViews& views);
120 // NOLINTEND
121
122public:
123 // constructor thunks
124 // NOLINTBEGIN
125 MCAPI void* $ctor(::std::shared_ptr<::MainMenuScreenModel> model, ::IContentManager& manager);
126 // NOLINTEND
127
128public:
129 // virtual function thunks
130 // NOLINTBEGIN
131 MCAPI ::ui::DirtyFlag $tick();
132
133 MCAPI void $addStaticScreenVars(::Json::Value& globalVars);
134 // NOLINTEND
135
136public:
137 // vftables
138 // NOLINTBEGIN
139 MCNAPI static void** $vftableForScreenController();
140
142 // NOLINTEND
143};
Definition IContentManager.h:5
Definition IStorageManagementModel.h:5
Definition Value.h:16
Definition LegacyWorldConverter.h:5
Definition MainMenuScreenController.h:5
Definition MainMenuScreenModel.h:5
Definition StorageDependencyScreenController.h:5
Definition StorageManagementScreenControllerProxy.h:5
Definition StorageManagementScreenController.h:5
static MCAPI void ** $vftableForEnableNonOwnerReferences()
static MCAPI void ** $vftableForScreenController()
Definition ContentItem.h:5
Definition ImportResult.h:5
Definition LegacyWorldInfo.h:5