LeviLamina
Loading...
Searching...
No Matches
EditorSettingsService.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/common/editor/ThemeSettingsColorKey.h"
7#include "mc/deps/scripting/runtime/Result_deprecated.h"
8#include "mc/editor/serviceproviders/EditorSettingsServiceProvider.h"
9#include "mc/editor/services/IEditorService.h"
10
11// auto generated forward declare list
12// clang-format off
13namespace Bedrock::PubSub { class Subscription; }
14namespace Editor { class ServiceProviderCollection; }
15namespace Editor::Network { class AudioSettingsChangedPayload; }
16namespace Editor::Network { class GraphicsSettingsChangedPayload; }
17namespace Editor::Network { class SpeedSettingsChangedPayload; }
18namespace Editor::Network { class ThemeSettingsChangedPayload; }
19namespace Editor::Network { class ThemeSettingsCurrentThemeChangedPayload; }
20namespace Editor::Network { class ThemeSettingsNewThemeCreatedPayload; }
21namespace Editor::Network { class ThemeSettingsThemeColorUpdatedPayload; }
22namespace Editor::Network { class ThemeSettingsThemeDeletedPayload; }
23namespace Editor::Settings { class Audio; }
24namespace Editor::Settings { class Graphics; }
25namespace Editor::Settings { class Speed; }
26namespace Editor::Settings { class Theme; }
27namespace Editor::Settings { struct AudioProps; }
28namespace Editor::Settings { struct GraphicsProps; }
29namespace Editor::Settings { struct SpeedProps; }
30namespace Editor::Settings { struct ThemeProps; }
31namespace mce { class Color; }
32// clang-format on
33
34namespace Editor::Services {
35
36class EditorSettingsService : public ::Editor::Services::IEditorService,
38public:
39 // member variables
40 // NOLINTBEGIN
61 // NOLINTEND
62
63public:
64 // prevent constructor by default
65 EditorSettingsService& operator=(EditorSettingsService const&);
66 EditorSettingsService(EditorSettingsService const&);
67 EditorSettingsService();
68
69public:
70 // virtual functions
71 // NOLINTBEGIN
72 virtual ~EditorSettingsService() /*override*/;
73
74 virtual ::Scripting::Result_deprecated<void> init() /*override*/;
75
76 virtual ::Scripting::Result_deprecated<void> quit() /*override*/;
77
78 virtual ::Editor::Settings::Audio& getAudioSettings() /*override*/;
79
80 virtual ::Editor::Settings::Audio const& getAudioSettings() const /*override*/;
81
82 virtual ::Editor::Settings::Graphics& getGraphicsSettings() /*override*/;
83
84 virtual ::Editor::Settings::Graphics const& getGraphicsSettings() const /*override*/;
85
86 virtual ::Editor::Settings::Speed& getSpeedSettings() /*override*/;
87
88 virtual ::Editor::Settings::Speed const& getSpeedSettings() const /*override*/;
89
90 virtual ::Editor::Settings::Theme& getThemeSettings() /*override*/;
91
92 virtual ::Editor::Settings::Theme const& getThemeSettings() const /*override*/;
93
94 virtual ::Bedrock::PubSub::Subscription
95 listenForAudioSettingsChanged(::std::function<void(::Editor::Settings::AudioProps const&)> func) /*override*/;
96
97 virtual ::Scripting::Result_deprecated<::Bedrock::PubSub::Subscription>
98 listenForGraphicsSettingsChanged(::std::function<void(::Editor::Settings::GraphicsProps const&)> func) /*override*/;
99
100 virtual ::Bedrock::PubSub::Subscription
101 listenForSpeedSettingsChanged(::std::function<void(::Editor::Settings::SpeedProps const&)> func) /*override*/;
102
103 virtual ::Bedrock::PubSub::Subscription
104 listenForThemeSettingsChanged(::std::function<void(::Editor::Settings::ThemeProps const&)> func) /*override*/;
105
106 virtual ::Bedrock::PubSub::Subscription
107 listenForCurrentThemeChanged(::std::function<void(::std::string const&)> func) /*override*/;
108
109 virtual ::Bedrock::PubSub::Subscription listenForNewThemeCreated(
110 ::std::function<
111 void(::std::string const&, ::std::optional<::std::string> const&, ::std::optional<::std::string> const&)>
112 func
113 ) /*override*/;
114
115 virtual ::Bedrock::PubSub::Subscription listenForThemeColorUpdated(
116 ::std::function<void(::std::string const&, ::Editor::Settings::ThemeSettingsColorKey, ::mce::Color const&)> func
117 ) /*override*/;
118
119 virtual ::Bedrock::PubSub::Subscription
120 listenForThemeDeleted(::std::function<void(::std::string const&)> func) /*override*/;
121
122#ifdef LL_PLAT_S
123 virtual void _handleAudioSettingsChangedPayload(::Editor::Network::AudioSettingsChangedPayload const& payload);
124#else // LL_PLAT_C
125 virtual void _handleAudioSettingsChangedPayload(::Editor::Network::AudioSettingsChangedPayload const& props);
126#endif
127
128#ifdef LL_PLAT_S
129 virtual void
130 _handleGraphicsSettingsChangedPayload(::Editor::Network::GraphicsSettingsChangedPayload const& payload);
131#else // LL_PLAT_C
132 virtual void _handleGraphicsSettingsChangedPayload(::Editor::Network::GraphicsSettingsChangedPayload const& props);
133#endif
134
135#ifdef LL_PLAT_S
136 virtual void _handleSpeedSettingsChangedPayload(::Editor::Network::SpeedSettingsChangedPayload const& payload);
137#else // LL_PLAT_C
138 virtual void _handleSpeedSettingsChangedPayload(::Editor::Network::SpeedSettingsChangedPayload const& props);
139#endif
140
141 virtual void _handleThemeSettingsChangedPayload(::Editor::Network::ThemeSettingsChangedPayload const& payload);
142
143 virtual void _handleThemeSettingsCurrentThemeChangedPayload(
145 );
146
147 virtual void
148 _handleThemeSettingsNewThemeCreatedPayload(::Editor::Network::ThemeSettingsNewThemeCreatedPayload const& payload);
149
150 virtual void _handleThemeSettingsThemeColorUpdatedPayload(
152 );
153
154 virtual void
155 _handleThemeSettingsThemeDeletedPayload(::Editor::Network::ThemeSettingsThemeDeletedPayload const& payload);
156 // NOLINTEND
157
158public:
159 // member functions
160 // NOLINTBEGIN
162 // NOLINTEND
163
164public:
165 // constructor thunks
166 // NOLINTBEGIN
168 // NOLINTEND
169
170public:
171 // destructor thunk
172 // NOLINTBEGIN
173 MCNAPI void $dtor();
174 // NOLINTEND
175
176public:
177 // virtual function thunks
178 // NOLINTBEGIN
179 MCNAPI ::Scripting::Result_deprecated<void> $init();
180
181 MCNAPI ::Scripting::Result_deprecated<void> $quit();
182
183 MCNAPI ::Editor::Settings::Audio& $getAudioSettings();
184
185 MCNAPI ::Editor::Settings::Audio const& $getAudioSettings() const;
186
187 MCNAPI ::Editor::Settings::Graphics& $getGraphicsSettings();
188
189 MCNAPI ::Editor::Settings::Graphics const& $getGraphicsSettings() const;
190
191 MCNAPI ::Editor::Settings::Speed& $getSpeedSettings();
192
193 MCNAPI ::Editor::Settings::Speed const& $getSpeedSettings() const;
194
195 MCNAPI ::Editor::Settings::Theme& $getThemeSettings();
196
197 MCNAPI ::Editor::Settings::Theme const& $getThemeSettings() const;
198
199 MCNAPI ::Bedrock::PubSub::Subscription
201
202 MCNAPI ::Scripting::Result_deprecated<::Bedrock::PubSub::Subscription>
204
205 MCNAPI ::Bedrock::PubSub::Subscription
207
208 MCNAPI ::Bedrock::PubSub::Subscription
210
211 MCNAPI ::Bedrock::PubSub::Subscription
212 $listenForCurrentThemeChanged(::std::function<void(::std::string const&)> func);
213
214 MCNAPI ::Bedrock::PubSub::Subscription $listenForNewThemeCreated(
215 ::std::function<
216 void(::std::string const&, ::std::optional<::std::string> const&, ::std::optional<::std::string> const&)>
217 func
218 );
219
220 MCNAPI ::Bedrock::PubSub::Subscription $listenForThemeColorUpdated(
221 ::std::function<void(::std::string const&, ::Editor::Settings::ThemeSettingsColorKey, ::mce::Color const&)> func
222 );
223
224 MCNAPI ::Bedrock::PubSub::Subscription $listenForThemeDeleted(::std::function<void(::std::string const&)> func);
225
227
228 MCNAPI void
230
232
234
237 );
238
239 MCNAPI void
241
244 );
245
246 MCNAPI void
248
249
250 // NOLINTEND
251
252public:
253 // vftables
254 // NOLINTBEGIN
256
257 MCNAPI static void** $vftableForIEditorService();
258 // NOLINTEND
259};
260
261} // namespace Editor::Services
Definition Subscription.h:10
Definition AudioSettingsChangedPayload.h:17
Definition GraphicsSettingsChangedPayload.h:17
Definition SpeedSettingsChangedPayload.h:17
Definition ThemeSettingsChangedPayload.h:17
Definition ThemeSettingsCurrentThemeChangedPayload.h:16
Definition ThemeSettingsNewThemeCreatedPayload.h:16
Definition ThemeSettingsThemeColorUpdatedPayload.h:18
Definition ThemeSettingsThemeDeletedPayload.h:16
Definition ServiceProviderCollection.h:7
Definition EditorSettingsServiceProvider.h:25
MCAPI::Bedrock::PubSub::Subscription $listenForCurrentThemeChanged(::std::function< void(::std::string const &)> func)
MCAPI EditorSettingsService(::Editor::ServiceProviderCollection &providers)
MCAPI::Editor::Settings::Audio const & $getAudioSettings() const
MCAPI::Editor::Settings::Speed & $getSpeedSettings()
MCAPI::Editor::Settings::Audio & $getAudioSettings()
MCAPI void $_handleThemeSettingsCurrentThemeChangedPayload(::Editor::Network::ThemeSettingsCurrentThemeChangedPayload const &payload)
MCAPI void $_handleThemeSettingsThemeDeletedPayload(::Editor::Network::ThemeSettingsThemeDeletedPayload const &payload)
MCAPI::Bedrock::PubSub::Subscription $listenForThemeDeleted(::std::function< void(::std::string const &)> func)
MCAPI void $_handleThemeSettingsChangedPayload(::Editor::Network::ThemeSettingsChangedPayload const &payload)
MCAPI void $_handleGraphicsSettingsChangedPayload(::Editor::Network::GraphicsSettingsChangedPayload const &payload)
MCAPI::Bedrock::PubSub::Subscription $listenForThemeSettingsChanged(::std::function< void(::Editor::Settings::ThemeProps const &)> func)
static MCAPI void ** $vftableForEditorSettingsServiceProvider()
MCAPI void * $ctor(::Editor::ServiceProviderCollection &providers)
MCAPI void $_handleAudioSettingsChangedPayload(::Editor::Network::AudioSettingsChangedPayload const &payload)
MCAPI::Bedrock::PubSub::Subscription $listenForThemeColorUpdated(::std::function< void(::std::string const &, ::Editor::Settings::ThemeSettingsColorKey, ::mce::Color const &)> func)
MCAPI ::Scripting::Result_deprecated< void > $quit()
MCAPI::Editor::Settings::Graphics const & $getGraphicsSettings() const
MCAPI void $_handleThemeSettingsThemeColorUpdatedPayload(::Editor::Network::ThemeSettingsThemeColorUpdatedPayload const &payload)
MCAPI void $_handleThemeSettingsNewThemeCreatedPayload(::Editor::Network::ThemeSettingsNewThemeCreatedPayload const &payload)
MCAPI::Editor::Settings::Theme const & $getThemeSettings() const
MCAPI ::Scripting::Result_deprecated< void > $init()
MCAPI::Bedrock::PubSub::Subscription $listenForAudioSettingsChanged(::std::function< void(::Editor::Settings::AudioProps const &)> func)
MCAPI::Editor::Settings::Speed const & $getSpeedSettings() const
static MCAPI void ** $vftableForIEditorService()
MCAPI::Bedrock::PubSub::Subscription $listenForSpeedSettingsChanged(::std::function< void(::Editor::Settings::SpeedProps const &)> func)
MCAPI ::Scripting::Result_deprecated<::Bedrock::PubSub::Subscription > $listenForGraphicsSettingsChanged(::std::function< void(::Editor::Settings::GraphicsProps const &)> func)
MCAPI::Bedrock::PubSub::Subscription $listenForNewThemeCreated(::std::function< void(::std::string const &, ::std::optional<::std::string > const &, ::std::optional<::std::string > const &)> func)
MCAPI::Editor::Settings::Graphics & $getGraphicsSettings()
MCAPI::Editor::Settings::Theme & $getThemeSettings()
MCAPI void $_handleSpeedSettingsChangedPayload(::Editor::Network::SpeedSettingsChangedPayload const &payload)
Definition IEditorService.h:11
Definition Audio.h:13
Definition Graphics.h:16
Definition Speed.h:13
Definition Theme.h:21
Definition Color.h:13
Definition AudioProps.h:7
Definition GraphicsProps.h:7
Definition SpeedProps.h:7
Definition ThemeProps.h:13
Definition Alias.h:14