From a7ee9d999f612dcf5e9fcf68b410a3b49039d8ed Mon Sep 17 00:00:00 2001
From: lat9nq <22451773+lat9nq@users.noreply.github.com>
Date: Thu, 15 Jun 2023 16:45:42 -0400
Subject: [PATCH] configuration: Use shorter constructor as needed

Reduces some confusion hopefully, since some parameters specified were not
specific to the setting in question.
---
 src/yuzu/configuration/configure_audio.cpp    | 9 +++++----
 src/yuzu/configuration/configure_graphics.cpp | 3 +--
 src/yuzu/configuration/configure_system.cpp   | 7 +++----
 3 files changed, 9 insertions(+), 10 deletions(-)

diff --git a/src/yuzu/configuration/configure_audio.cpp b/src/yuzu/configuration/configure_audio.cpp
index 98c6b6f44e..c903167259 100644
--- a/src/yuzu/configuration/configure_audio.cpp
+++ b/src/yuzu/configuration/configure_audio.cpp
@@ -54,14 +54,15 @@ void ConfigureAudio::Setup() {
         auto* widget = [&]() {
             if (setting->Id() == Settings::values.volume.Id()) {
                 // volume needs to be a slider (default is line edit)
-                return new ConfigurationShared::Widget(
-                    setting, translations, combobox_translations, this, runtime_lock, apply_funcs,
-                    ConfigurationShared::RequestType::Slider, true, 1.0f, nullptr,
-                    tr("%1%", "Volume percentage (e.g. 50%)"));
+                return new ConfigurationShared::Widget(setting, translations, combobox_translations,
+                                                       this, runtime_lock, apply_funcs, nullptr,
+                                                       ConfigurationShared::RequestType::Slider,
+                                                       tr("%1%", "Volume percentage (e.g. 50%)"));
             } else if (setting->Id() == Settings::values.audio_output_device_id.Id() ||
                        setting->Id() == Settings::values.audio_input_device_id.Id() ||
                        setting->Id() == Settings::values.sink_id.Id()) {
                 // These need to be unmanaged comboboxes, so we can populate them ourselves
+                // TODO (lat9nq): Let it manage sink_id
                 return new ConfigurationShared::Widget(
                     setting, translations, combobox_translations, this, runtime_lock, apply_funcs,
                     ConfigurationShared::RequestType::ComboBox, false);
diff --git a/src/yuzu/configuration/configure_graphics.cpp b/src/yuzu/configuration/configure_graphics.cpp
index 44d1603d0a..cf1333cc8e 100644
--- a/src/yuzu/configuration/configure_graphics.cpp
+++ b/src/yuzu/configuration/configure_graphics.cpp
@@ -253,8 +253,7 @@ void ConfigureGraphics::Setup() {
                 // speed_limit needs a checkbox to set use_speed_limit, as well as a spinbox
                 return new ConfigurationShared::Widget(
                     setting, translations, combobox_translations, this, runtime_lock, apply_funcs,
-                    ConfigurationShared::RequestType::SpinBox, true, 1.0f,
-                    &Settings::values.use_speed_limit,
+                    &Settings::values.use_speed_limit, ConfigurationShared::RequestType::SpinBox,
                     tr("%", "Limit speed percentage (e.g. 50%)"));
             } else {
                 return new ConfigurationShared::Widget(setting, translations, combobox_translations,
diff --git a/src/yuzu/configuration/configure_system.cpp b/src/yuzu/configuration/configure_system.cpp
index b9d58b083c..f78ed7c244 100644
--- a/src/yuzu/configuration/configure_system.cpp
+++ b/src/yuzu/configuration/configure_system.cpp
@@ -134,15 +134,14 @@ void ConfigureSystem::Setup() {
                 // it and custom_rtc_enabled
                 return new ConfigurationShared::Widget(
                     setting, translations, combobox_translations, this, runtime_lock, apply_funcs,
-                    ConfigurationShared::RequestType::DateTimeEdit, true, 1.0f,
-                    &Settings::values.custom_rtc_enabled);
+                    &Settings::values.custom_rtc_enabled,
+                    ConfigurationShared::RequestType::DateTimeEdit);
             } else if (setting->Id() == Settings::values.rng_seed.Id()) {
                 // rng_seed needs a HexEdit (default is LineEdit), and a checkbox to manage
                 // it and rng_seed_enabled
                 return new ConfigurationShared::Widget(
                     setting, translations, combobox_translations, this, runtime_lock, apply_funcs,
-                    ConfigurationShared::RequestType::HexEdit, true, 1.0f,
-                    &Settings::values.rng_seed_enabled);
+                    &Settings::values.rng_seed_enabled, ConfigurationShared::RequestType::HexEdit);
             } else {
                 return new ConfigurationShared::Widget(setting, translations, combobox_translations,
                                                        this, runtime_lock, apply_funcs);