Settings: Add audio sync and additional cleanup

This commit is contained in:
Connor McLaughlin
2019-11-16 20:50:11 +10:00
parent 3673c6e33c
commit 8fb4f73d17
4 changed files with 56 additions and 22 deletions

View File

@ -743,9 +743,12 @@ void SDLHostInterface::DrawQuickSettingsMenu()
}
if (ImGui::MenuItem("Fullscreen", nullptr, &m_settings.display_fullscreen))
{
settings_changed = true;
UpdateFullscreen();
}
if (ImGui::MenuItem("VSync", nullptr, &m_settings.gpu_vsync))
if (ImGui::MenuItem("VSync", nullptr, &m_settings.video_sync_enabled))
{
settings_changed = true;
UpdateSpeedLimiterState();
@ -914,13 +917,6 @@ void SDLHostInterface::DrawSettingsWindow()
if (ImGui::BeginTabItem("General"))
{
if (DrawSettingsSectionHeader("Behavior"))
{
settings_changed |= ImGui::Checkbox("Enable Speed Limiter", &m_settings.speed_limiter_enabled);
settings_changed |= ImGui::Checkbox("Pause On Start", &m_settings.start_paused);
}
ImGui::NewLine();
if (DrawSettingsSectionHeader("Console"))
{
ImGui::Text("Region:");
@ -940,6 +936,33 @@ void SDLHostInterface::DrawSettingsWindow()
}
}
ImGui::NewLine();
if (DrawSettingsSectionHeader("Behavior"))
{
if (ImGui::Checkbox("Enable Speed Limiter", &m_settings.speed_limiter_enabled))
{
settings_changed = true;
UpdateSpeedLimiterState();
}
settings_changed |= ImGui::Checkbox("Pause On Start", &m_settings.start_paused);
}
ImGui::NewLine();
if (DrawSettingsSectionHeader("Host Synchronization"))
{
if (ImGui::Checkbox("Sync To Audio", &m_settings.audio_sync_enabled))
{
settings_changed = true;
UpdateSpeedLimiterState();
}
if (ImGui::Checkbox("Sync To Video", &m_settings.video_sync_enabled))
{
settings_changed = true;
UpdateSpeedLimiterState();
}
}
ImGui::NewLine();
if (DrawSettingsSectionHeader("BIOS"))
{
@ -1017,11 +1040,6 @@ void SDLHostInterface::DrawSettingsWindow()
if (ImGui::Checkbox("Fullscreen", &m_settings.display_fullscreen))
UpdateFullscreen();
if (ImGui::Checkbox("VSync", &m_settings.gpu_vsync))
{
UpdateSpeedLimiterState();
settings_changed = true;
}
if (ImGui::Checkbox("Linear Filtering", &m_settings.display_linear_filtering))
{
m_display->SetDisplayLinearFiltering(m_settings.display_linear_filtering);