Qt: Disable UI of settings forced via gamedb, part two (#3561)

Missed these in the previous commit.
pull/3563/head
Davide Pesavento 2 months ago committed by GitHub
parent d0840c0615
commit aee897e44a
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

@ -142,7 +142,8 @@ ConsoleSettingsWidget::ConsoleSettingsWidget(SettingsWindow* dialog, QWidget* pa
connect(m_ui.cpuClockSpeed, &QSlider::valueChanged, this, &ConsoleSettingsWidget::onCPUClockSpeedValueChanged); connect(m_ui.cpuClockSpeed, &QSlider::valueChanged, this, &ConsoleSettingsWidget::onCPUClockSpeedValueChanged);
SettingWidgetBinder::SetAvailability(m_ui.fastBoot, !m_dialog->hasGameTrait(GameDatabase::Trait::ForceFullBoot)); SettingWidgetBinder::SetAvailability(m_ui.fastBoot, !m_dialog->hasGameTrait(GameDatabase::Trait::ForceFullBoot));
SettingWidgetBinder::SetAvailability(m_ui.fastForwardBoot, !m_dialog->hasGameTrait(GameDatabase::Trait::ForceFullBoot)); SettingWidgetBinder::SetAvailability(m_ui.fastForwardBoot,
!m_dialog->hasGameTrait(GameDatabase::Trait::ForceFullBoot));
SettingWidgetBinder::SetAvailability( SettingWidgetBinder::SetAvailability(
m_ui.cpuExecutionMode, !m_dialog->hasGameTrait(GameDatabase::Trait::ForceInterpreter), m_ui.cpuExecutionModeLabel); m_ui.cpuExecutionMode, !m_dialog->hasGameTrait(GameDatabase::Trait::ForceInterpreter), m_ui.cpuExecutionModeLabel);
SettingWidgetBinder::SetAvailability(m_ui.cdromReadSpeedup, SettingWidgetBinder::SetAvailability(m_ui.cdromReadSpeedup,
@ -151,6 +152,8 @@ ConsoleSettingsWidget::ConsoleSettingsWidget(SettingsWindow* dialog, QWidget* pa
SettingWidgetBinder::SetAvailability(m_ui.cdromSeekSpeedup, SettingWidgetBinder::SetAvailability(m_ui.cdromSeekSpeedup,
!m_dialog->hasGameTrait(GameDatabase::Trait::DisableCDROMSeekSpeedup), !m_dialog->hasGameTrait(GameDatabase::Trait::DisableCDROMSeekSpeedup),
m_ui.cdromSeekSpeedupLabel); m_ui.cdromSeekSpeedupLabel);
SettingWidgetBinder::SetForceEnabled(m_ui.recompilerICache,
m_dialog->hasGameTrait(GameDatabase::Trait::ForceRecompilerICache));
calculateCPUClockValue(); calculateCPUClockValue();
} }
@ -173,7 +176,8 @@ void ConsoleSettingsWidget::updateRecompilerICacheEnabled()
Settings::GetCPUExecutionModeName(Settings::DEFAULT_CPU_EXECUTION_MODE)) Settings::GetCPUExecutionModeName(Settings::DEFAULT_CPU_EXECUTION_MODE))
.c_str()) .c_str())
.value_or(Settings::DEFAULT_CPU_EXECUTION_MODE); .value_or(Settings::DEFAULT_CPU_EXECUTION_MODE);
m_ui.recompilerICache->setEnabled(mode != CPUExecutionMode::Interpreter); m_ui.recompilerICache->setEnabled(mode != CPUExecutionMode::Interpreter &&
!m_dialog->hasGameTrait(GameDatabase::Trait::ForceRecompilerICache));
} }
void ConsoleSettingsWidget::onEnableCPUClockSpeedControlChecked(int state) void ConsoleSettingsWidget::onEnableCPUClockSpeedControlChecked(int state)

@ -127,6 +127,8 @@ GraphicsSettingsWidget::GraphicsSettingsWidget(SettingsWindow* dialog, QWidget*
!m_dialog->hasGameTrait(GameDatabase::Trait::DisableTextureFiltering) || !m_dialog->hasGameTrait(GameDatabase::Trait::DisableTextureFiltering) ||
!m_dialog->hasGameTrait(GameDatabase::Trait::DisableSpriteTextureFiltering)); !m_dialog->hasGameTrait(GameDatabase::Trait::DisableSpriteTextureFiltering));
SettingWidgetBinder::SetAvailability(m_ui.pgxpEnable, !m_dialog->hasGameTrait(GameDatabase::Trait::DisablePGXP)); SettingWidgetBinder::SetAvailability(m_ui.pgxpEnable, !m_dialog->hasGameTrait(GameDatabase::Trait::DisablePGXP));
SettingWidgetBinder::SetAvailability(m_ui.pgxpDepthBuffer,
!m_dialog->hasGameTrait(GameDatabase::Trait::DisablePGXPDepthBuffer));
SettingWidgetBinder::SetAvailability(m_ui.widescreenHack, SettingWidgetBinder::SetAvailability(m_ui.widescreenHack,
!m_dialog->hasGameTrait(GameDatabase::Trait::DisableWidescreen)); !m_dialog->hasGameTrait(GameDatabase::Trait::DisableWidescreen));
@ -205,14 +207,18 @@ GraphicsSettingsWidget::GraphicsSettingsWidget(SettingsWindow* dialog, QWidget*
!m_dialog->hasGameTrait(GameDatabase::Trait::DisablePGXPColorCorrection)); !m_dialog->hasGameTrait(GameDatabase::Trait::DisablePGXPColorCorrection));
SettingWidgetBinder::SetAvailability(m_ui.pgxpCulling, SettingWidgetBinder::SetAvailability(m_ui.pgxpCulling,
!m_dialog->hasGameTrait(GameDatabase::Trait::DisablePGXPCulling)); !m_dialog->hasGameTrait(GameDatabase::Trait::DisablePGXPCulling));
SettingWidgetBinder::SetAvailability(m_ui.pgxpPreserveProjPrecision,
!m_dialog->hasDatabaseEntry() ||
m_dialog->getDatabaseEntry()->gpu_pgxp_preserve_proj_fp.value_or(true));
SettingWidgetBinder::SetForceEnabled(m_ui.pgxpCPU, m_dialog->hasGameTrait(GameDatabase::Trait::ForcePGXPCPUMode)); SettingWidgetBinder::SetForceEnabled(m_ui.pgxpCPU, m_dialog->hasGameTrait(GameDatabase::Trait::ForcePGXPCPUMode));
SettingWidgetBinder::SetForceEnabled(m_ui.pgxpVertexCache, SettingWidgetBinder::SetForceEnabled(m_ui.pgxpVertexCache,
m_dialog->hasGameTrait(GameDatabase::Trait::ForcePGXPVertexCache)); m_dialog->hasGameTrait(GameDatabase::Trait::ForcePGXPVertexCache));
SettingWidgetBinder::SetForceEnabled(m_ui.pgxpDisableOn2DPolygons, SettingWidgetBinder::SetForceEnabled(m_ui.pgxpDisableOn2DPolygons,
m_dialog->hasGameTrait(GameDatabase::Trait::DisablePGXPOn2DPolygons)); m_dialog->hasGameTrait(GameDatabase::Trait::DisablePGXPOn2DPolygons));
if (auto dbentry = m_dialog->getDatabaseEntry(); dbentry && dbentry->gpu_pgxp_preserve_proj_fp.has_value())
{
if (*dbentry->gpu_pgxp_preserve_proj_fp)
SettingWidgetBinder::SetForceEnabled(m_ui.pgxpPreserveProjPrecision, true);
else
SettingWidgetBinder::SetAvailability(m_ui.pgxpPreserveProjPrecision, false);
}
// OSD Tab // OSD Tab
@ -977,8 +983,7 @@ void GraphicsSettingsWidget::updatePGXPSettingsEnabled()
!m_dialog->hasGameTrait(GameDatabase::Trait::DisablePGXPColorCorrection)); !m_dialog->hasGameTrait(GameDatabase::Trait::DisablePGXPColorCorrection));
m_ui.pgxpDepthBuffer->setEnabled(enabled && !m_dialog->hasGameTrait(GameDatabase::Trait::DisablePGXPDepthBuffer)); m_ui.pgxpDepthBuffer->setEnabled(enabled && !m_dialog->hasGameTrait(GameDatabase::Trait::DisablePGXPDepthBuffer));
m_ui.pgxpPreserveProjPrecision->setEnabled( m_ui.pgxpPreserveProjPrecision->setEnabled(
enabled && enabled && (!m_dialog->hasDatabaseEntry() || !m_dialog->getDatabaseEntry()->gpu_pgxp_preserve_proj_fp.has_value()));
(!m_dialog->hasDatabaseEntry() || m_dialog->getDatabaseEntry()->gpu_pgxp_preserve_proj_fp.value_or(true)));
m_ui.pgxpCPU->setEnabled(enabled && !m_dialog->hasGameTrait(GameDatabase::Trait::ForcePGXPCPUMode)); m_ui.pgxpCPU->setEnabled(enabled && !m_dialog->hasGameTrait(GameDatabase::Trait::ForcePGXPCPUMode));
m_ui.pgxpVertexCache->setEnabled(enabled && !m_dialog->hasGameTrait(GameDatabase::Trait::ForcePGXPVertexCache)); m_ui.pgxpVertexCache->setEnabled(enabled && !m_dialog->hasGameTrait(GameDatabase::Trait::ForcePGXPVertexCache));
m_ui.pgxpGeometryTolerance->setEnabled(enabled); m_ui.pgxpGeometryTolerance->setEnabled(enabled);

Loading…
Cancel
Save