Skip to content
LeviMC
English
AutoLightDark
LeviLamina
Loading...
Searching...
No Matches
SettingsScreenController.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/gui/SceneType.h"
7#include "mc/client/gui/SettingsTabIndex.h"
8#include "mc/client/gui/screens/controllers/SettingsScreenControllerBase.h"
9#include "mc/client/gui/screens/controllers/SettingsScreenMode.h"
10#include "mc/client/network/realms/InviteLink.h"
11#include "mc/client/network/realms/World.h"
12#include "mc/client/options/OptionSaveDeferral.h"
13#include "mc/deps/core/platform/BuildPlatform.h"
14#include "mc/world/level/storage/LevelSummary.h"
15
16// auto generated forward declare list
17// clang-format off
25namespace Json { class Value; }
26// clang-format on
27
29public:
30 // SettingsScreenController inner types declare
31 // clang-format off
33 // clang-format on
34
35 // SettingsScreenController inner types define
37 public:
38 // member variables
39 // NOLINTBEGIN
40 ::ll::TypedStorage<8, 32, ::std::string const> mTabName;
41 ::ll::TypedStorage<4, 4, int const> mTabVersion;
42 // NOLINTEND
43 };
44
45public:
46 // member variables
47 // NOLINTBEGIN
48 ::ll::TypedStorage<4, 4, ::SettingsTabIndex> mCurrentTab;
49 ::ll::TypedStorage<1, 1, bool> mInitialTabSelected;
50 ::ll::TypedStorage<4, 4, ::SettingsTabIndex> mInitialTab;
51 ::ll::TypedStorage<8, 32, ::std::string> mCurrentTabTitle;
52 ::ll::TypedStorage<8, 32, ::std::string> mInitialPack;
53 ::ll::TypedStorage<4, 4, ::SettingsScreenMode> mSettingsMode;
54 ::ll::TypedStorage<1, 1, bool> mShowRealmsSettings;
55 ::ll::TypedStorage<8, 720, ::Realms::World> mWorld;
56 ::ll::TypedStorage<1, 1, bool> mNavigateToMenuOnExit;
57 ::ll::TypedStorage<1, 1, bool> mIsGlobalSettingsScreen;
58 ::ll::TypedStorage<1, 1, bool> mReloadTexturePacksOnExit;
59 ::ll::TypedStorage<1, 1, bool const> mMaintainOldFocusOnOpen;
60 ::ll::TypedStorage<8, 32, ::std::string> mTTSSettingsScreenName;
61 ::ll::TypedStorage<1, 1, bool> mShowInviteLinkSettings;
62 ::ll::TypedStorage<8, 152, ::Realms::InviteLink> mInviteLink;
63 ::ll::TypedStorage<1, 1, bool> mFullscreen;
64 ::ll::TypedStorage<1, 1, bool> mLegacySyncOnly;
65 ::ll::TypedStorage<8, 16, ::OptionSaveDeferral> mOptionsSaveDeferral;
66 ::ll::TypedStorage<8, 32, ::std::string> mCurrentFocus;
67 ::ll::TypedStorage<8, 848, ::LevelSummary> mProvidedLevelSummary;
68 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::RealmsSettingsScreenController>> mRealmsSettingsScreenController;
69 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::RealmsInviteLinkSettingsScreenController>>
70 mRealmsInviteLinkSettingsScreenController;
71 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::GeneralSettingsScreenController>> mGeneralSettingsScreenController;
72 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::WorldSettingsScreenController>> mWorldSettingsScreenController;
73 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::SocialSettingsScreenController>> mSocialSettingsScreenController;
74 ::ll::TypedStorage<8, 64, ::std::function<void()>> mOnOpenCallback;
75 // NOLINTEND
76
77public:
78 // prevent constructor by default
79 SettingsScreenController();
80
81public:
82 // virtual functions
83 // NOLINTBEGIN
84 virtual ~SettingsScreenController() /*override*/ = default;
85
86 virtual void onOpen() /*override*/;
87
88 virtual void addStaticScreenVars(::Json::Value& globalVars) /*override*/;
89
90 virtual ::std::string getAdditionalScreenInfo() const /*override*/;
91
92 virtual void addEventProperties(::std::unordered_map<::std::string, ::std::string>& eventProperties) const
93 /*override*/;
94
95 virtual int getScreenVersion() const /*override*/;
96
97 virtual ::ui::SceneType getSceneType() const /*override*/;
98 // NOLINTEND
99
100public:
101 // member functions
102 // NOLINTBEGIN
103 MCNAPI SettingsScreenController(
104 ::std::shared_ptr<::MainMenuScreenModel> model,
105 bool createWorld,
106 ::SettingsTabIndex tabIndex,
107 bool maintainOldFocus
108 );
109
110 MCNAPI SettingsScreenController(
111 ::std::shared_ptr<::MainMenuScreenModel> model,
112 ::Realms::World const& world,
113 ::Realms::InviteLink const& link,
114 ::SettingsTabIndex tabIndex,
115 bool maintainOldFocus
116 );
117
118 MCNAPI SettingsScreenController(
119 ::std::shared_ptr<::MainMenuScreenModel> model,
120 ::Realms::World const& world,
121 ::SettingsTabIndex tabIndex,
122 bool maintainOldFocus,
123 ::std::string packId
124 );
125
126 MCNAPI SettingsScreenController(
127 ::std::shared_ptr<::MainMenuScreenModel> model,
128 ::LevelSummary const& levelSummary,
129 bool createFromTemplate,
130 ::std::string packId,
131 ::std::function<void()> onOpenCallback,
132 ::SettingsTabIndex tabIndex,
133 bool maintainOldFocus
134 );
135
136 MCNAPI SettingsScreenController(
137 ::std::shared_ptr<::MainMenuScreenModel> model,
138 ::LevelSummary const& levelSummary,
139 ::SettingsTabIndex tabIndex,
140 bool navToMenuOnExit,
141 bool maintainOldFocus,
142 ::std::string const& initialPackId,
143 bool fullscreen,
144 bool legacySyncOnly
145 );
146
147 MCNAPI void _init();
148
150 // NOLINTEND
151
152public:
153 // static functions
154 // NOLINTBEGIN
155 MCNAPI static void addStaticScreenVars(
156 ::Json::Value& globalVars,
157 bool isWorldCreate,
158 bool isWorldEdit,
159 bool isTemplateCreate,
160 bool isRealmsEdit,
161 bool isMultiplayerHost,
162 bool isMultiplayerClient,
163 bool isNonConfigRealmsEnv,
164 bool supportsGamepad,
165 bool supportsKeyboardMouse,
166 bool supportsTouch,
167 bool supportsFliteTTS,
168 bool platformTTSExists,
169 bool isEditorModeEnabled,
170 bool isTrial,
171 bool isPartySystemAvailable,
172 ::SettingsScreenCapabilities const& capabilities,
173 ::BuildPlatform const& buildPlatform
174 );
175 // NOLINTEND
176
177public:
178 // static variables
179 // NOLINTBEGIN
180 MCNAPI static ::std::unordered_map<int, ::SettingsScreenController::SettingsScreenTabInfo> const& mScreenInfo();
181 // NOLINTEND
182
183public:
184 // constructor thunks
185 // NOLINTBEGIN
186 MCNAPI void* $ctor(
187 ::std::shared_ptr<::MainMenuScreenModel> model,
188 bool createWorld,
189 ::SettingsTabIndex tabIndex,
190 bool maintainOldFocus
191 );
192
193 MCNAPI void* $ctor(
194 ::std::shared_ptr<::MainMenuScreenModel> model,
195 ::Realms::World const& world,
196 ::Realms::InviteLink const& link,
197 ::SettingsTabIndex tabIndex,
198 bool maintainOldFocus
199 );
200
201 MCNAPI void* $ctor(
202 ::std::shared_ptr<::MainMenuScreenModel> model,
203 ::Realms::World const& world,
204 ::SettingsTabIndex tabIndex,
205 bool maintainOldFocus,
206 ::std::string packId
207 );
208
209 MCNAPI void* $ctor(
210 ::std::shared_ptr<::MainMenuScreenModel> model,
211 ::LevelSummary const& levelSummary,
212 bool createFromTemplate,
213 ::std::string packId,
214 ::std::function<void()> onOpenCallback,
215 ::SettingsTabIndex tabIndex,
216 bool maintainOldFocus
217 );
218
219 MCNAPI void* $ctor(
220 ::std::shared_ptr<::MainMenuScreenModel> model,
221 ::LevelSummary const& levelSummary,
222 ::SettingsTabIndex tabIndex,
223 bool navToMenuOnExit,
224 bool maintainOldFocus,
225 ::std::string const& initialPackId,
226 bool fullscreen,
227 bool legacySyncOnly
228 );
229 // NOLINTEND
230
231public:
232 // virtual function thunks
233 // NOLINTBEGIN
234 MCNAPI void $onOpen();
235
236 MCNAPI void $addStaticScreenVars(::Json::Value& globalVars);
237
238 MCNAPI ::std::string $getAdditionalScreenInfo() const;
239
240 MCNAPI void $addEventProperties(::std::unordered_map<::std::string, ::std::string>& eventProperties) const;
241
242 MCNAPI int $getScreenVersion() const;
243
244 MCNAPI ::ui::SceneType $getSceneType() const;
245 // NOLINTEND
246};
Definition GeneralSettingsScreenController.h:5
Definition Value.h:16
Definition MainMenuScreenModel.h:5
Definition RealmsInviteLinkSettingsScreenController.h:5
Definition RealmsSettingsScreenController.h:5
Definition SettingsScreenControllerBase.h:5
Definition SettingsScreenController.h:5
MCAPI::std::string $getAdditionalScreenInfo() const
MCAPI void $addStaticScreenVars(::Json::Value &globalVars)
static MCAPI ::std::unordered_map< int, ::SettingsScreenController::SettingsScreenTabInfo > const & mScreenInfo()
MCAPI void $addEventProperties(::std::unordered_map<::std::string, ::std::string > &eventProperties) const
MCAPI int $getScreenVersion() const
MCAPI void * $ctor(::std::shared_ptr<::MainMenuScreenModel > model, bool createWorld, ::SettingsTabIndex tabIndex, bool maintainOldFocus)
MCAPI::ui::SceneType $getSceneType() const
MCAPI void _registerSubControllers()
Definition SocialSettingsScreenController.h:5
Definition WorldSettingsScreenController.h:5
STL namespace.
Definition LevelSummary.h:30
Definition SettingsScreenCapabilities.h:8
Definition SettingsScreenController.h:13