Qt/SoftwareRendererWidget: Fix backend info not getting updated properly

This commit is contained in:
spycrab
2018-05-19 17:52:53 +02:00
parent c6bd237534
commit ef803613d0
3 changed files with 18 additions and 13 deletions

View File

@ -94,17 +94,31 @@ void GraphicsWindow::CreateMainLayout()
setLayout(main_layout);
}
void GraphicsWindow::OnBackendChanged(const QString& backend)
void GraphicsWindow::OnBackendChanged(const QString& backend_name)
{
SConfig::GetInstance().m_strVideoBackend = backend_name.toStdString();
for (const auto& backend : g_available_video_backends)
{
if (backend->GetName() == backend_name.toStdString())
{
g_Config.Refresh();
g_video_backend = backend.get();
g_video_backend->InitBackendInfo();
break;
}
}
setWindowTitle(tr("%1 Graphics Configuration")
.arg(QString::fromStdString(g_video_backend->GetDisplayName())));
if (backend == QStringLiteral("Software Renderer") && m_tab_widget->count() > 1)
if (backend_name == QStringLiteral("Software Renderer") && m_tab_widget->count() > 1)
{
m_tab_widget->clear();
m_tab_widget->addTab(m_wrapped_software, tr("Software Renderer"));
}
if (backend != QStringLiteral("Software Renderer") && m_tab_widget->count() == 1)
if (backend_name != QStringLiteral("Software Renderer") && m_tab_widget->count() == 1)
{
m_tab_widget->clear();
m_tab_widget->addTab(m_wrapped_general, tr("General"));
@ -113,7 +127,7 @@ void GraphicsWindow::OnBackendChanged(const QString& backend)
m_tab_widget->addTab(m_wrapped_advanced, tr("Advanced"));
}
emit BackendChanged(backend);
emit BackendChanged(backend_name);
}
void GraphicsWindow::RegisterWidget(GraphicsWidget* widget)