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 virtual void _handleAudioSettingsChangedPayload(::Editor::Network::AudioSettingsChangedPayload const& props);
123
124 virtual void _handleGraphicsSettingsChangedPayload(::Editor::Network::GraphicsSettingsChangedPayload const& props);
125
126 virtual void _handleSpeedSettingsChangedPayload(::Editor::Network::SpeedSettingsChangedPayload const& props);
127
128 virtual void _handleThemeSettingsChangedPayload(::Editor::Network::ThemeSettingsChangedPayload const& payload);
129
130 virtual void _handleThemeSettingsCurrentThemeChangedPayload(
132 );
133
134 virtual void
135 _handleThemeSettingsNewThemeCreatedPayload(::Editor::Network::ThemeSettingsNewThemeCreatedPayload const& payload);
136
137 virtual void _handleThemeSettingsThemeColorUpdatedPayload(
139 );
140
141 virtual void
142 _handleThemeSettingsThemeDeletedPayload(::Editor::Network::ThemeSettingsThemeDeletedPayload const& payload);
143 // NOLINTEND
144
145public:
146 // member functions
147 // NOLINTBEGIN
149 // NOLINTEND
150
151public:
152 // constructor thunks
153 // NOLINTBEGIN
155 // NOLINTEND
156
157public:
158 // destructor thunk
159 // NOLINTBEGIN
160 MCNAPI void $dtor();
161 // NOLINTEND
162
163public:
164 // virtual function thunks
165 // NOLINTBEGIN
166 MCNAPI ::Scripting::Result_deprecated<void> $init();
167
168 MCNAPI ::Scripting::Result_deprecated<void> $quit();
169
170 MCNAPI ::Editor::Settings::Audio& $getAudioSettings();
171
172 MCNAPI ::Editor::Settings::Audio const& $getAudioSettings() const;
173
174 MCNAPI ::Editor::Settings::Graphics& $getGraphicsSettings();
175
176 MCNAPI ::Editor::Settings::Graphics const& $getGraphicsSettings() const;
177
178 MCNAPI ::Editor::Settings::Speed& $getSpeedSettings();
179
180 MCNAPI ::Editor::Settings::Speed const& $getSpeedSettings() const;
181
182 MCNAPI ::Editor::Settings::Theme& $getThemeSettings();
183
184 MCNAPI ::Editor::Settings::Theme const& $getThemeSettings() const;
185
186 MCNAPI ::Bedrock::PubSub::Subscription
188
189 MCNAPI ::Scripting::Result_deprecated<::Bedrock::PubSub::Subscription>
191
192 MCNAPI ::Bedrock::PubSub::Subscription
194
195 MCNAPI ::Bedrock::PubSub::Subscription
197
198 MCNAPI ::Bedrock::PubSub::Subscription
199 $listenForCurrentThemeChanged(::std::function<void(::std::string const&)> func);
200
201 MCNAPI ::Bedrock::PubSub::Subscription $listenForNewThemeCreated(
202 ::std::function<
203 void(::std::string const&, ::std::optional<::std::string> const&, ::std::optional<::std::string> const&)>
204 func
205 );
206
207 MCNAPI ::Bedrock::PubSub::Subscription $listenForThemeColorUpdated(
208 ::std::function<void(::std::string const&, ::Editor::Settings::ThemeSettingsColorKey, ::mce::Color const&)> func
209 );
210
211 MCNAPI ::Bedrock::PubSub::Subscription $listenForThemeDeleted(::std::function<void(::std::string const&)> func);
212
214
216
218
220
223 );
224
225 MCNAPI void
227
230 );
231
232 MCNAPI void
234
235
236 // NOLINTEND
237
238public:
239 // vftables
240 // NOLINTBEGIN
242
243 MCNAPI static void** $vftableForIEditorService();
244 // NOLINTEND
245};
246
247} // namespace Editor::Services
Definition Subscription.h:10
Definition AudioSettingsChangedPayload.h:16
Definition GraphicsSettingsChangedPayload.h:16
Definition SpeedSettingsChangedPayload.h:16
Definition ThemeSettingsChangedPayload.h:16
Definition ThemeSettingsCurrentThemeChangedPayload.h:16
Definition ThemeSettingsNewThemeCreatedPayload.h:16
Definition ThemeSettingsThemeColorUpdatedPayload.h:16
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 $_handleAudioSettingsChangedPayload(::Editor::Network::AudioSettingsChangedPayload const &props)
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 &props)
MCAPI::Bedrock::PubSub::Subscription $listenForThemeSettingsChanged(::std::function< void(::Editor::Settings::ThemeProps const &)> func)
static MCAPI void ** $vftableForEditorSettingsServiceProvider()
MCAPI void * $ctor(::Editor::ServiceProviderCollection &providers)
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 void $_handleSpeedSettingsChangedPayload(::Editor::Network::SpeedSettingsChangedPayload const &props)
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()
Definition IEditorService.h:11
Definition Audio.h:13
Definition Graphics.h:13
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