mirror of
				https://git.suyu.dev/suyu/suyu
				synced 2025-11-03 16:39:01 -06:00 
			
		
		
		
	configure_audio/cpu: Sort settings
Was producing out of order settings as a result of the switch to vectors
This commit is contained in:
		@@ -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() {
 | 
			
		||||
 
 | 
			
		||||
@@ -35,7 +35,7 @@ void ConfigureCpu::SetConfiguration() {}
 | 
			
		||||
void ConfigureCpu::Setup(const ConfigurationShared::Builder& builder) {
 | 
			
		||||
    auto* accuracy_layout = ui->widget_accuracy->layout();
 | 
			
		||||
    auto* unsafe_layout = ui->unsafe_widget->layout();
 | 
			
		||||
    std::map<std::string, QWidget*> unsafe_hold{};
 | 
			
		||||
    std::map<u32, QWidget*> unsafe_hold{};
 | 
			
		||||
 | 
			
		||||
    std::vector<Settings::BasicSetting*> settings;
 | 
			
		||||
    const auto push = [&](Settings::Category category) {
 | 
			
		||||
@@ -64,7 +64,7 @@ void ConfigureCpu::Setup(const ConfigurationShared::Builder& builder) {
 | 
			
		||||
            accuracy_combobox = widget->combobox;
 | 
			
		||||
        } else {
 | 
			
		||||
            // Presently, all other settings here are unsafe checkboxes
 | 
			
		||||
            unsafe_hold.insert({setting->GetLabel(), widget});
 | 
			
		||||
            unsafe_hold.insert({setting->Id(), widget});
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user