diff options
author | bunnei <bunneidev@gmail.com> | 2018-08-22 01:19:50 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-08-22 01:19:50 -0400 |
commit | cea627b0fc109ee27b3d0cabd8f803c8c2c2ac8b (patch) | |
tree | 0fd784bbd8788158b88a0ee3125278b8f5e79e4c /src/yuzu/main.cpp | |
parent | 5abf71fe651cba9aafc3227ce06d51dcfb30f6c4 (diff) | |
parent | ba8ff096fdc9f7ab101851c4cd06c3244a7d84c3 (diff) |
Merge pull request #840 from FearlessTobi/port-3353
Port #3353 from Citra: "citra-qt: Add customizable speed limit target "
Diffstat (limited to 'src/yuzu/main.cpp')
-rw-r--r-- | src/yuzu/main.cpp | 29 |
1 files changed, 27 insertions, 2 deletions
diff --git a/src/yuzu/main.cpp b/src/yuzu/main.cpp index 9fd372419..62ff7a2d7 100644 --- a/src/yuzu/main.cpp +++ b/src/yuzu/main.cpp @@ -237,6 +237,10 @@ void GMainWindow::InitializeHotkeys() { Qt::ApplicationShortcut); hotkey_registry.RegisterHotkey("Main Window", "Toggle Speed Limit", QKeySequence("CTRL+Z"), Qt::ApplicationShortcut); + hotkey_registry.RegisterHotkey("Main Window", "Increase Speed Limit", QKeySequence("+"), + Qt::ApplicationShortcut); + hotkey_registry.RegisterHotkey("Main Window", "Decrease Speed Limit", QKeySequence("-"), + Qt::ApplicationShortcut); hotkey_registry.LoadHotkeys(); connect(hotkey_registry.GetHotkey("Main Window", "Load File", this), &QShortcut::activated, @@ -272,9 +276,24 @@ void GMainWindow::InitializeHotkeys() { }); connect(hotkey_registry.GetHotkey("Main Window", "Toggle Speed Limit", this), &QShortcut::activated, this, [&] { - Settings::values.toggle_framelimit = !Settings::values.toggle_framelimit; + Settings::values.use_frame_limit = !Settings::values.use_frame_limit; UpdateStatusBar(); }); + constexpr u16 SPEED_LIMIT_STEP = 5; + connect(hotkey_registry.GetHotkey("Main Window", "Increase Speed Limit", this), + &QShortcut::activated, this, [&] { + if (Settings::values.frame_limit < 9999 - SPEED_LIMIT_STEP) { + Settings::values.frame_limit += SPEED_LIMIT_STEP; + UpdateStatusBar(); + } + }); + connect(hotkey_registry.GetHotkey("Main Window", "Decrease Speed Limit", this), + &QShortcut::activated, this, [&] { + if (Settings::values.frame_limit > SPEED_LIMIT_STEP) { + Settings::values.frame_limit -= SPEED_LIMIT_STEP; + UpdateStatusBar(); + } + }); } void GMainWindow::SetDefaultUIGeometry() { @@ -934,7 +953,13 @@ void GMainWindow::UpdateStatusBar() { auto results = Core::System::GetInstance().GetAndResetPerfStats(); - emu_speed_label->setText(tr("Speed: %1%").arg(results.emulation_speed * 100.0, 0, 'f', 0)); + if (Settings::values.use_frame_limit) { + emu_speed_label->setText(tr("Speed: %1% / %2%") + .arg(results.emulation_speed * 100.0, 0, 'f', 0) + .arg(Settings::values.frame_limit)); + } else { + emu_speed_label->setText(tr("Speed: %1%").arg(results.emulation_speed * 100.0, 0, 'f', 0)); + } game_fps_label->setText(tr("Game: %1 FPS").arg(results.game_fps, 0, 'f', 0)); emu_frametime_label->setText(tr("Frame: %1 ms").arg(results.frametime * 1000.0, 0, 'f', 2)); |