diff options
Diffstat (limited to 'src/yuzu/configuration/configure_audio.h')
-rw-r--r-- | src/yuzu/configuration/configure_audio.h | 32 |
1 files changed, 21 insertions, 11 deletions
diff --git a/src/yuzu/configuration/configure_audio.h b/src/yuzu/configuration/configure_audio.h index 0d03aae1df..79538e81c6 100644 --- a/src/yuzu/configuration/configure_audio.h +++ b/src/yuzu/configuration/configure_audio.h @@ -3,30 +3,35 @@ #pragma once +#include <functional> #include <memory> +#include <vector> #include <QWidget> +#include "yuzu/configuration/configuration_shared.h" + +class QComboBox; namespace Core { class System; } -namespace ConfigurationShared { -enum class CheckState; -} - namespace Ui { class ConfigureAudio; } -class ConfigureAudio : public QWidget { - Q_OBJECT +namespace ConfigurationShared { +class Builder; +} +class ConfigureAudio : public ConfigurationShared::Tab { public: - explicit ConfigureAudio(const Core::System& system_, QWidget* parent = nullptr); + explicit ConfigureAudio(const Core::System& system_, + std::shared_ptr<std::vector<ConfigurationShared::Tab*>> group, + const ConfigurationShared::Builder& builder, QWidget* parent = nullptr); ~ConfigureAudio() override; - void ApplyConfiguration(); - void SetConfiguration(); + void ApplyConfiguration() override; + void SetConfiguration() override; private: void changeEvent(QEvent* event) override; @@ -39,11 +44,16 @@ private: void SetOutputSinkFromSinkID(); void SetAudioDevicesFromDeviceID(); - void SetVolumeIndicatorText(int percentage); - void SetupPerGameUI(); + void Setup(const ConfigurationShared::Builder& builder); std::unique_ptr<Ui::ConfigureAudio> ui; const Core::System& system; + + std::vector<std::function<void(bool)>> apply_funcs{}; + + QComboBox* sink_combo_box; + QComboBox* output_device_combo_box; + QComboBox* input_device_combo_box; }; |