LeviLamina
Loading...
Searching...
No Matches
Settings.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/gui/SettingsModalType.h"
7#include "mc/client/gui/SettingsTabIndex.h"
8#include "mc/client/gui/oreui/routing/IEntryPoint.h"
9#include "mc/client/gui/oreui/routing/RouteFlags.h"
10#include "mc/deps/core/utility/NonOwnerPointer.h"
11
12// auto generated forward declare list
13// clang-format off
14class ILevelListCache;
15class ISceneStack;
16class RealmsAPI;
17class SceneFactory;
18class ServerInstance;
19class TaskGroup;
20namespace OreUI { class RouteMatcher; }
21namespace OreUI { struct RouteAction; }
22namespace ui { class ScreenTechStackSelector; }
23// clang-format on
24
25namespace OreUI::EntryPoints {
26
27class Settings : public ::OreUI::IEntryPoint {
28public:
29 // member variables
30 // NOLINTBEGIN
31 ::ll::TypedStorage<8, 64, ::std::function<::ILevelListCache&()>> mGetLevelListCache;
32 ::ll::TypedStorage<8, 64, ::std::function<::ServerInstance*()>> mGetServerInstance;
33 ::ll::TypedStorage<8, 64, ::std::function<bool()>> mIsInGame;
34 ::ll::TypedStorage<8, 64, ::std::function<bool()>> mIsInServer;
35 ::ll::TypedStorage<8, 64, ::std::function<bool()>> mIsInRealms;
36 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::TaskGroup>> mAsyncTaskGroup;
37 ::ll::TypedStorage<8, 16, ::std::weak_ptr<::RealmsAPI>> mRealms;
38 ::ll::TypedStorage<8, 8, ::ui::ScreenTechStackSelector&> mScreenTechStackSelector;
39 // NOLINTEND
40
41public:
42 // prevent constructor by default
43 Settings& operator=(Settings const&);
44 Settings(Settings const&);
45 Settings();
46
47public:
48 // virtual functions
49 // NOLINTBEGIN
50 virtual bool shouldAddToConfiguration() const /*override*/;
51
52 virtual void addToMatcher(
53 ::OreUI::RouteMatcher& routeMatcher,
54 ::SceneFactory& sceneFactory,
55 ::Bedrock::NotNullNonOwnerPtr<::ISceneStack> const& sceneStack
56 ) const /*override*/;
57 // NOLINTEND
58
59public:
60 // member functions
61 // NOLINTBEGIN
62 MCAPI Settings(
63 ::std::function<::ILevelListCache&()> getLevelListCache,
64 ::std::function<::ServerInstance*()> getServerInstance,
65 ::std::function<bool()> isInGame,
66 ::std::function<bool()> isInServer,
67 ::std::function<bool()> isInRealms,
68 ::std::weak_ptr<::RealmsAPI> realms,
69 ::ui::ScreenTechStackSelector& screenTechStackSelector
70 );
71
72 MCAPI void _navigateToScreen(
73 ::SettingsTabIndex tabIndex,
74 ::std::string const& path,
75 ::SceneFactory& sceneFactory,
76 ::Bedrock::NotNullNonOwnerPtr<::ISceneStack> const& sceneStack,
77 ::OreUI::RouteAction const& routeAction,
78 bool fullscreen,
79 bool skipLegacyProgress
80 ) const;
81
82 MCAPI bool _routeValid() const;
83
84 MCAPI bool _tryToPushRealmsManageTab(
85 ::std::string const& path,
86 ::SceneFactory& sceneFactory,
87 ::Bedrock::NotNullNonOwnerPtr<::ISceneStack> const& sceneStack,
88 ::SettingsTabIndex settingsTabIndex
89 ) const;
90 // NOLINTEND
91
92public:
93 // static functions
94 // NOLINTBEGIN
95 MCAPI static ::std::optional<::std::string> composeRoute(::SettingsTabIndex tabIndex);
96
97 MCAPI static ::std::string defaultRoute();
98
99 MCAPI static ::std::optional<::std::string>
100 getRouteFromTabAndModal(::SettingsTabIndex tabIndex, ::SettingsModalType modalType);
101
102 MCAPI static ::std::optional<::SettingsTabIndex> getTabFromPath(::std::string const& path);
103 // NOLINTEND
104
105public:
106 // static variables
107 // NOLINTBEGIN
108 MCAPI static ::OreUI::EntryPoints::RouteFlags const& FLAGS();
109
110 MCAPI static ::std::add_lvalue_reference_t<char const[]> OREUI_ROUTE();
111
112 MCAPI static ::std::add_lvalue_reference_t<char const[]> ROUTE();
113 // NOLINTEND
114
115public:
116 // constructor thunks
117 // NOLINTBEGIN
118 MCAPI void* $ctor(
119 ::std::function<::ILevelListCache&()> getLevelListCache,
120 ::std::function<::ServerInstance*()> getServerInstance,
121 ::std::function<bool()> isInGame,
122 ::std::function<bool()> isInServer,
123 ::std::function<bool()> isInRealms,
124 ::std::weak_ptr<::RealmsAPI> realms,
125 ::ui::ScreenTechStackSelector& screenTechStackSelector
126 );
127 // NOLINTEND
128
129public:
130 // virtual function thunks
131 // NOLINTBEGIN
132 MCFOLD bool $shouldAddToConfiguration() const;
133
134 MCAPI void $addToMatcher(
135 ::OreUI::RouteMatcher& routeMatcher,
136 ::SceneFactory& sceneFactory,
137 ::Bedrock::NotNullNonOwnerPtr<::ISceneStack> const& sceneStack
138 ) const;
139 // NOLINTEND
140
141public:
142 // vftables
143 // NOLINTBEGIN
144 MCNAPI static void** $vftable();
145 // NOLINTEND
146};
147
148} // namespace OreUI::EntryPoints
Definition ILevelListCache.h:27
Definition ISceneStack.h:5
Definition Settings.h:7
static MCAPI void ** $vftable()
Definition RouteMatcher.h:7
Definition RealmsAPI.h:5
Definition SceneFactory.h:5
Definition ServerInstance.h:64
Definition TaskGroup.h:55
Definition ScreenTechStackSelector.h:7
Definition RouteAction.h:7