LeviLamina
Loading...
Searching...
No Matches
GeneralSettingsScreenController.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/GameEventNotification.h"
8#include "mc/client/gui/screens/controllers/MultiplayerLockState.h"
9#include "mc/client/gui/screens/controllers/SettingsScreenControllerBase.h"
10#include "mc/client/social/ProfileImageOptions.h"
11#include "mc/client/sound/SoundOptions.h"
12#include "mc/deps/core/threading/Async.h"
13#include "mc/deps/core/utility/pub_sub/Subscription.h"
14#include "mc/platform/Result.h"
15
16// auto generated forward declare list
17// clang-format off
19class IContentManager;
24class TaskGroup;
25struct PackInstanceId;
27namespace Json { class Value; }
28namespace MSGraph::Models { struct GraphError; }
29// clang-format on
30
32public:
33 // member variables
34 // NOLINTBEGIN
35 ::ll::TypedStorage<1, 1, bool> mIsGlobalSettings;
36 ::ll::TypedStorage<1, 1, bool> mReloadTexturePacksOnExit;
37 ::ll::TypedStorage<1, 1, bool> mGlobalResourcePacksVisible;
38 ::ll::TypedStorage<1, 1, bool> mLegacySyncOnly;
39 ::ll::TypedStorage<1, 1, bool> mHasLoadedCloudInfo;
40 ::ll::TypedStorage<1, 1, bool> mCloudConnectionError;
41 ::ll::TypedStorage<8, 32, ::std::string> mCloudUploadUrl;
42 ::ll::TypedStorage<
43 8,
44 16,
45 ::Bedrock::Threading::Async<::Bedrock::Result<::std::string, ::MSGraph::Models::GraphError>>>
46 mCloudFolderUrlHandle;
47 ::ll::TypedStorage<8, 24, ::std::vector<::std::pair<::std::string, ::std::string>>> mLanguages;
48 ::ll::TypedStorage<8, 8, uint64> mCurrentlySelectedIndex;
49 ::ll::TypedStorage<4, 4, int> mLanguageFocusFrameCountdown;
50 ::ll::TypedStorage<8, 8, ::MultiplayerLockState> mMultiplayerState;
51 ::ll::TypedStorage<8, 8, ::IContentManager&> mContentManager;
52 ::ll::TypedStorage<8, 8, ::PackManagerContentSourceImpl*> mResourceContentSource;
53 ::ll::TypedStorage<4, 36, ::tm> mLastRefreshTime;
54 ::ll::TypedStorage<8, 16, ::Bedrock::PubSub::Subscription> mScreenAnimationsOptionSubscription;
55 ::ll::TypedStorage<8, 16, ::Bedrock::PubSub::Subscription> mGraphicsQualityPresetOptionSubscription;
56 ::ll::TypedStorage<8, 32, ::std::string> mOverrideMajorVersion;
57 ::ll::TypedStorage<8, 32, ::std::string> mOverrideMinorVersion;
58 ::ll::TypedStorage<8, 32, ::std::string> mOverridePatchVersion;
59 ::ll::TypedStorage<8, 32, ::std::string> mOverrideBetaVersion;
60 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::IContentManagerContext>> mContentManagerContext;
61 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::GeneralSettingsScreenControllerProxy>> mProxy;
62 ::ll::TypedStorage<8, 72, ::Social::ProfileImageOptions> mProfileImage;
63 ::ll::TypedStorage<8, 32, ::std::string> mUserDisplayName;
64 ::ll::TypedStorage<1, 1, bool> mDirty;
65 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::StorageManagementScreenController>>
66 mStorageManagementScreenController;
67 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::SubscriptionsScreenController>> mSubscriptionsScreenController;
68 ::ll::TypedStorage<8, 88, ::SoundOptions> mSoundOptions;
69 ::ll::TypedStorage<8, 32, ::std::string> mLeakMemoryMB;
70 ::ll::TypedStorage<1, 1, bool> mNeedsOfflineTokenAuthorization;
71 ::ll::TypedStorage<1, 1, bool> mEnableGameTipsDisplay;
72 ::ll::TypedStorage<1, 1, bool> mAdvancedGraphicsExpanded;
73 ::ll::TypedStorage<1, 1, bool> mGraphicsApiSwitchingEnabled;
74 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::TaskGroup>> mTaskGroup;
75 // NOLINTEND
76
77public:
78 // prevent constructor by default
79 GeneralSettingsScreenController& operator=(GeneralSettingsScreenController const&);
80 GeneralSettingsScreenController(GeneralSettingsScreenController const&);
81 GeneralSettingsScreenController();
82
83public:
84 // virtual functions
85 // NOLINTBEGIN
86 virtual ~GeneralSettingsScreenController() /*override*/ = default;
87
88 virtual ::ui::DirtyFlag tick() /*override*/;
89
90 virtual ::ui::DirtyFlag handleGameEventNotification(::ui::GameEventNotification notification) /*override*/;
91
92 virtual bool canExit() /*override*/;
93
94 virtual void onOpen() /*override*/;
95
96 virtual void addStaticScreenVars(::Json::Value& globalVars) /*override*/;
97 // NOLINTEND
98
99public:
100 // member functions
101 // NOLINTBEGIN
102 MCAPI GeneralSettingsScreenController(
103 ::std::shared_ptr<::MainMenuScreenModel> model,
104 bool isGlobalSettings,
105 bool reloadTexturePacksOnExit,
106 ::std::string const& initialPackId,
107 bool legacySyncOnly
108 );
109
110 MCAPI bool _areAnyPackImportsPending() const;
111
112 MCAPI void _chooseLanguage(::std::string const& selectedLanguageCode, int selectedLanguageIndex);
113
114 MCAPI ::std::string _generateAccountInformation() const;
115
116 MCAPI ::std::string _generateBuildInformation() const;
117
118 MCAPI ::std::vector<int> _getGUIScaleValues() const;
119
120 MCAPI void _processPendingImports();
121
122 MCAPI void _registerControllerCallbacks();
123
124 MCAPI void
125 _setGlobalStack(::std::vector<::PackInstanceId> const& modelManagerIdentities, bool anyVersion, bool saveStack);
126
127 MCAPI void _setResourcePackStack();
128
129 MCAPI void _updateProfileImage();
130
131 MCAPI void setGuiScaleOption(int guiScaleOffset);
132 // NOLINTEND
133
134public:
135 // static functions
136 // NOLINTBEGIN
137 MCAPI static void
138 addStaticScreenVars(::Json::Value& globalVars, bool isTexturePackRequired, bool showFeedbackButton);
139 // NOLINTEND
140
141public:
142 // constructor thunks
143 // NOLINTBEGIN
144 MCAPI void* $ctor(
145 ::std::shared_ptr<::MainMenuScreenModel> model,
146 bool isGlobalSettings,
147 bool reloadTexturePacksOnExit,
148 ::std::string const& initialPackId,
149 bool legacySyncOnly
150 );
151 // NOLINTEND
152
153public:
154 // virtual function thunks
155 // NOLINTBEGIN
156 MCAPI ::ui::DirtyFlag $tick();
157
158 MCAPI ::ui::DirtyFlag $handleGameEventNotification(::ui::GameEventNotification notification);
159
160 MCAPI bool $canExit();
161
162 MCAPI void $onOpen();
163
164 MCAPI void $addStaticScreenVars(::Json::Value& globalVars);
165 // NOLINTEND
166};
Definition GeneralSettingsScreenControllerProxy.h:5
Definition GeneralSettingsScreenController.h:5
Definition IContentManagerContext.h:5
Definition IContentManager.h:5
Definition Value.h:16
Definition MainMenuScreenModel.h:5
Definition SettingsScreenControllerBase.h:5
Definition StorageManagementScreenController.h:5
Definition SubscriptionsScreenController.h:5
Definition TaskGroup.h:86
Definition GraphError.h:7
Definition PackInstanceId.h:8
Definition PackManagerContentSourceImpl.h:5