diff options
author | lat9nq <22451773+lat9nq@users.noreply.github.com> | 2023-07-22 00:42:15 -0400 |
---|---|---|
committer | lat9nq <22451773+lat9nq@users.noreply.github.com> | 2023-07-22 00:42:15 -0400 |
commit | 85ed10f31f0aae93a12bc7e79bb98b9b2aac20bb (patch) | |
tree | f2ddff520351a0de38f8188467f3d0c0369d517a /src/yuzu/configuration/configure_audio.cpp | |
parent | 33d118509ad201cecf60519e41437740705148ea (diff) |
configure_audio/cpu: Sort settings
Was producing out of order settings as a result of the switch to vectors
Diffstat (limited to 'src/yuzu/configuration/configure_audio.cpp')
-rw-r--r-- | src/yuzu/configuration/configure_audio.cpp | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/yuzu/configuration/configure_audio.cpp b/src/yuzu/configuration/configure_audio.cpp index d32328087..9ccfb2435 100644 --- a/src/yuzu/configuration/configure_audio.cpp +++ b/src/yuzu/configuration/configure_audio.cpp @@ -1,13 +1,16 @@ // SPDX-FileCopyrightText: Copyright 2018 yuzu Emulator Project // SPDX-License-Identifier: GPL-2.0-or-later +#include <map> #include <memory> #include <vector> #include <QComboBox> #include "audio_core/sink/sink.h" #include "audio_core/sink/sink_details.h" +#include "common/common_types.h" #include "common/settings.h" +#include "common/settings_common.h" #include "core/core.h" #include "ui_configure_audio.h" #include "yuzu/configuration/configuration_shared.h" @@ -33,6 +36,8 @@ void ConfigureAudio::Setup(const ConfigurationShared::Builder& builder) { std::vector<Settings::BasicSetting*> settings; + std::map<u32, QWidget*> hold; + auto push = [&](Settings::Category category) { for (auto* setting : Settings::values.linkage.by_category[category]) { settings.push_back(setting); @@ -53,7 +58,7 @@ void ConfigureAudio::Setup(const ConfigurationShared::Builder& builder) { continue; } - layout.addWidget(widget); + hold.emplace(std::pair{setting->Id(), widget}); if (setting->Id() == Settings::values.sink_id.Id()) { // TODO (lat9nq): Let the system manage sink_id @@ -70,6 +75,10 @@ void ConfigureAudio::Setup(const ConfigurationShared::Builder& builder) { input_device_combo_box = widget->combobox; } } + + for (const auto& [id, widget] : hold) { + layout.addWidget(widget); + } } void ConfigureAudio::SetConfiguration() { |