Factorize software renderer backend switching warning to be fetched from a new GetWarningMessage in video backend - will be needed for DX11.1 feature set warnings

This commit is contained in:
Silent
2019-07-21 00:57:50 +02:00
parent 799c52463e
commit 890f781cd0
4 changed files with 14 additions and 4 deletions

View File

@ -160,16 +160,16 @@ void GeneralWidget::SaveSettings()
const auto current_backend = m_backend_combo->currentData().toString().toStdString();
if (SConfig::GetInstance().m_strVideoBackend != current_backend)
{
if (current_backend == "Software Renderer")
auto warningMessage =
g_available_video_backends[m_backend_combo->currentIndex()]->GetWarningMessage();
if (warningMessage)
{
ModalMessageBox confirm_sw(this);
confirm_sw.setIcon(QMessageBox::Warning);
confirm_sw.setStandardButtons(QMessageBox::Yes | QMessageBox::No);
confirm_sw.setWindowTitle(tr("Confirm backend change"));
confirm_sw.setText(tr("The software renderer is significantly slower than other "
"backends and is only recommended for debugging purposes.\n\nDo you "
"really want to enable software rendering? If unsure, select 'No'."));
confirm_sw.setText(tr(warningMessage->c_str()));
if (confirm_sw.exec() != QMessageBox::Yes)
{