summaryrefslogtreecommitdiff
path: root/src/yuzu/configuration/configure_graphics_advanced.cpp
diff options
context:
space:
mode:
authorlat9nq <lat9nq@virginia.edu>2020-07-13 21:37:02 -0400
committerlat9nq <lat9nq@virginia.edu>2020-07-19 13:26:55 -0400
commit38152ab0b9678c16c3aa902ddeaad5d437c24237 (patch)
tree8502f28918c89053449173c587a04cb9fc1ac51c /src/yuzu/configuration/configure_graphics_advanced.cpp
parentb79a6ebf9c45f0a3147073a3b530fa43b9344842 (diff)
configure_graphics_advanced: Implement highlighted overrides
Diffstat (limited to 'src/yuzu/configuration/configure_graphics_advanced.cpp')
-rw-r--r--src/yuzu/configuration/configure_graphics_advanced.cpp87
1 files changed, 54 insertions, 33 deletions
diff --git a/src/yuzu/configuration/configure_graphics_advanced.cpp b/src/yuzu/configuration/configure_graphics_advanced.cpp
index ce30188cd..fbeaeccbc 100644
--- a/src/yuzu/configuration/configure_graphics_advanced.cpp
+++ b/src/yuzu/configuration/configure_graphics_advanced.cpp
@@ -28,32 +28,25 @@ void ConfigureGraphicsAdvanced::SetConfiguration() {
ui->force_30fps_mode->setEnabled(runtime_lock);
ui->anisotropic_filtering_combobox->setEnabled(runtime_lock);
+ ui->use_vsync->setChecked(Settings::values.use_vsync.GetValue());
+ ui->use_assembly_shaders->setChecked(Settings::values.use_assembly_shaders.GetValue());
+ ui->use_asynchronous_shaders->setChecked(Settings::values.use_asynchronous_shaders.GetValue());
+ ui->use_fast_gpu_time->setChecked(Settings::values.use_fast_gpu_time.GetValue());
+ ui->force_30fps_mode->setChecked(Settings::values.force_30fps_mode.GetValue());
+
if (Settings::configuring_global) {
ui->gpu_accuracy->setCurrentIndex(
static_cast<int>(Settings::values.gpu_accuracy.GetValue()));
- ui->use_vsync->setChecked(Settings::values.use_vsync.GetValue());
- ui->use_assembly_shaders->setChecked(Settings::values.use_assembly_shaders.GetValue());
- ui->use_asynchronous_shaders->setChecked(
- Settings::values.use_asynchronous_shaders.GetValue());
- ui->use_fast_gpu_time->setChecked(Settings::values.use_fast_gpu_time.GetValue());
- ui->force_30fps_mode->setChecked(Settings::values.force_30fps_mode.GetValue());
ui->anisotropic_filtering_combobox->setCurrentIndex(
Settings::values.max_anisotropy.GetValue());
} else {
ConfigurationShared::SetPerGameSetting(ui->gpu_accuracy, &Settings::values.gpu_accuracy);
- ConfigurationShared::SetPerGameSetting(ui->use_vsync, &Settings::values.use_vsync);
- ConfigurationShared::SetPerGameSetting(ui->use_assembly_shaders,
- &Settings::values.use_assembly_shaders);
- ConfigurationShared::SetPerGameSetting(ui->use_asynchronous_shaders,
- &Settings::values.use_asynchronous_shaders);
- ConfigurationShared::SetPerGameSetting(ui->use_asynchronous_shaders,
- &Settings::values.use_asynchronous_shaders);
- ConfigurationShared::SetPerGameSetting(ui->use_fast_gpu_time,
- &Settings::values.use_fast_gpu_time);
- ConfigurationShared::SetPerGameSetting(ui->force_30fps_mode,
- &Settings::values.force_30fps_mode);
ConfigurationShared::SetPerGameSetting(ui->anisotropic_filtering_combobox,
&Settings::values.max_anisotropy);
+ ConfigurationShared::SetHighlight(ui->gpu_accuracy_layout, "gpu_accuracy_layout",
+ !Settings::values.gpu_accuracy.UsingGlobal());
+ ConfigurationShared::SetHighlight(ui->af_layout, "af_layout",
+ !Settings::values.max_anisotropy.UsingGlobal());
}
}
@@ -95,17 +88,20 @@ void ConfigureGraphicsAdvanced::ApplyConfiguration() {
} else {
ConfigurationShared::ApplyPerGameSetting(&Settings::values.max_anisotropy,
ui->anisotropic_filtering_combobox);
- ConfigurationShared::ApplyPerGameSetting(&Settings::values.use_vsync, ui->use_vsync);
- ConfigurationShared::ApplyPerGameSetting(&Settings::values.use_assembly_shaders,
- ui->use_assembly_shaders);
- ConfigurationShared::ApplyPerGameSetting(&Settings::values.use_asynchronous_shaders,
- ui->use_asynchronous_shaders);
- ConfigurationShared::ApplyPerGameSetting(&Settings::values.use_asynchronous_shaders,
- ui->use_asynchronous_shaders);
+ ConfigurationShared::ApplyPerGameSetting(&Settings::values.use_vsync, ui->use_vsync,
+ ConfigurationShared::trackers.use_vsync);
+ ConfigurationShared::ApplyPerGameSetting(
+ &Settings::values.use_assembly_shaders, ui->use_assembly_shaders,
+ ConfigurationShared::trackers.use_assembly_shaders);
+ ConfigurationShared::ApplyPerGameSetting(
+ &Settings::values.use_asynchronous_shaders, ui->use_asynchronous_shaders,
+ ConfigurationShared::trackers.use_asynchronous_shaders);
ConfigurationShared::ApplyPerGameSetting(&Settings::values.use_fast_gpu_time,
- ui->use_fast_gpu_time);
+ ui->use_fast_gpu_time,
+ ConfigurationShared::trackers.use_fast_gpu_time);
ConfigurationShared::ApplyPerGameSetting(&Settings::values.force_30fps_mode,
- ui->force_30fps_mode);
+ ui->force_30fps_mode,
+ ConfigurationShared::trackers.force_30fps_mode);
ConfigurationShared::ApplyPerGameSetting(&Settings::values.max_anisotropy,
ui->anisotropic_filtering_combobox);
@@ -146,11 +142,36 @@ void ConfigureGraphicsAdvanced::SetupPerGameUI() {
return;
}
- ConfigurationShared::InsertGlobalItem(ui->gpu_accuracy);
- ui->use_vsync->setTristate(true);
- ui->use_assembly_shaders->setTristate(true);
- ui->use_asynchronous_shaders->setTristate(true);
- ui->use_fast_gpu_time->setTristate(true);
- ui->force_30fps_mode->setTristate(true);
- ConfigurationShared::InsertGlobalItem(ui->anisotropic_filtering_combobox);
+ ConfigurationShared::SetColoredTristate(ui->use_vsync, "use_vsync", Settings::values.use_vsync,
+ ConfigurationShared::trackers.use_vsync);
+ ConfigurationShared::SetColoredTristate(ui->use_assembly_shaders, "use_assembly_shaders",
+ Settings::values.use_assembly_shaders,
+ ConfigurationShared::trackers.use_assembly_shaders);
+ ConfigurationShared::SetColoredTristate(ui->use_assembly_shaders, "use_asynchronous_shaders",
+ Settings::values.use_asynchronous_shaders,
+ ConfigurationShared::trackers.use_asynchronous_shaders);
+ ConfigurationShared::SetColoredTristate(ui->use_fast_gpu_time, "use_fast_gpu_time",
+ Settings::values.use_fast_gpu_time,
+ ConfigurationShared::trackers.use_fast_gpu_time);
+ ConfigurationShared::SetColoredTristate(ui->force_30fps_mode, "force_30fps_mode",
+ Settings::values.force_30fps_mode,
+ ConfigurationShared::trackers.force_30fps_mode);
+ ConfigurationShared::InsertGlobalItem(
+ ui->gpu_accuracy,
+ ui->gpu_accuracy->itemText(static_cast<int>(Settings::values.gpu_accuracy.GetValue(true))));
+ ConfigurationShared::InsertGlobalItem(
+ ui->anisotropic_filtering_combobox,
+ ui->anisotropic_filtering_combobox->itemText(
+ static_cast<int>(Settings::values.max_anisotropy.GetValue(true))));
+
+ connect(ui->gpu_accuracy, static_cast<void (QComboBox::*)(int)>(&QComboBox::activated), this,
+ [this](int index) {
+ ConfigurationShared::SetHighlight(ui->gpu_accuracy_layout, "gpu_accuracy_layout",
+ index != 0);
+ });
+
+ connect(ui->anisotropic_filtering_combobox,
+ static_cast<void (QComboBox::*)(int)>(&QComboBox::activated), this, [this](int index) {
+ ConfigurationShared::SetHighlight(ui->af_layout, "af_layout", index != 0);
+ });
}