#pragma once #include #include #include #include #include class SettingsWindow final { GeneralSettings generalSettings; CPUSettings cpuSettings; AudioSettings audioSettings; bool applyEnabled = false; std::vector> tabs = { {"General", &generalSettings}, {"CPU", &cpuSettings}, {"Audio", &audioSettings}, }; public: bool isOpen = false; bool render(); explicit SettingsWindow(gui::Window &window) : generalSettings(window) {} [[nodiscard]] float getVolumeL() const { return audioSettings.volumeL / 100.f; } [[nodiscard]] float getVolumeR() const { return audioSettings.volumeR / 100.f; } };