LeviLamina
Loading...
Searching...
No Matches
EditorSettingsServiceProvider.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/scripting/runtime/Result_deprecated.h"
7#include "mc/editor/ThemeSettingsColorKey.h"
8
9// auto generated forward declare list
10// clang-format off
11namespace Bedrock::PubSub { class Subscription; }
12namespace Editor::Settings { class Audio; }
13namespace Editor::Settings { class Graphics; }
14namespace Editor::Settings { class Speed; }
15namespace Editor::Settings { class Theme; }
16namespace Editor::Settings { struct AudioProps; }
17namespace Editor::Settings { struct GraphicsProps; }
18namespace Editor::Settings { struct SpeedProps; }
19namespace Editor::Settings { struct ThemeProps; }
20namespace mce { class Color; }
21// clang-format on
22
23namespace Editor::Services {
24
26public:
27 // virtual functions
28 // NOLINTBEGIN
29 // vIndex: 0
30 virtual ~EditorSettingsServiceProvider() = default;
31
32 // vIndex: 2
33 virtual ::Editor::Settings::Audio& getAudioSettings() = 0;
34
35 // vIndex: 1
36 virtual ::Editor::Settings::Audio const& getAudioSettings() const = 0;
37
38 // vIndex: 3
39 virtual ::Bedrock::PubSub::Subscription
40 listenForAudioSettingsChanged(::std::function<void(::Editor::Settings::AudioProps const&)>) = 0;
41
42 // vIndex: 5
43 virtual ::Editor::Settings::Graphics& getGraphicsSettings() = 0;
44
45 // vIndex: 4
46 virtual ::Editor::Settings::Graphics const& getGraphicsSettings() const = 0;
47
48 // vIndex: 6
49 virtual ::Scripting::Result_deprecated<::Bedrock::PubSub::Subscription>
50 listenForGraphicsSettingsChanged(::std::function<void(::Editor::Settings::GraphicsProps const&)>) = 0;
51
52 // vIndex: 8
53 virtual ::Editor::Settings::Speed& getSpeedSettings() = 0;
54
55 // vIndex: 7
56 virtual ::Editor::Settings::Speed const& getSpeedSettings() const = 0;
57
58 // vIndex: 9
59 virtual ::Bedrock::PubSub::Subscription
60 listenForSpeedSettingsChanged(::std::function<void(::Editor::Settings::SpeedProps const&)>) = 0;
61
62 // vIndex: 11
63 virtual ::Editor::Settings::Theme& getThemeSettings() = 0;
64
65 // vIndex: 10
66 virtual ::Editor::Settings::Theme const& getThemeSettings() const = 0;
67
68 // vIndex: 12
69 virtual ::Bedrock::PubSub::Subscription
70 listenForThemeSettingsChanged(::std::function<void(::Editor::Settings::ThemeProps const&)>) = 0;
71
72 // vIndex: 13
73 virtual ::Bedrock::PubSub::Subscription
74 listenForCurrentThemeChanged(::std::function<void(::std::string const&)>) = 0;
75
76 // vIndex: 14
77 virtual ::Bedrock::PubSub::Subscription listenForNewThemeCreated(
78 ::std::function<
79 void(::std::string const&, ::std::optional<::std::string> const&, ::std::optional<::std::string> const&)>
80 ) = 0;
81
82 // vIndex: 15
83 virtual ::Bedrock::PubSub::Subscription listenForThemeColorUpdated(
84 ::std::function<void(::std::string const&, ::Editor::Settings::ThemeSettingsColorKey, ::mce::Color const&)>
85 ) = 0;
86
87 // vIndex: 16
88 virtual ::Bedrock::PubSub::Subscription listenForThemeDeleted(::std::function<void(::std::string const&)>) = 0;
89 // NOLINTEND
90
91public:
92 // virtual function thunks
93 // NOLINTBEGIN
94
95 // NOLINTEND
96};
97
98} // namespace Editor::Services
Definition EditorSettingsServiceProvider.h:25
Definition Color.h:13
Definition AudioProps.h:7
Definition GraphicsProps.h:7
Definition SpeedProps.h:7
Definition ThemeProps.h:13