summaryrefslogtreecommitdiff
path: root/Source/Core/DolphinWX/Frame.cpp
diff options
context:
space:
mode:
authorDolphin Bot <dolphin-emu-bot@users.noreply.github.com>2014-11-17 20:44:48 +0100
committerDolphin Bot <dolphin-emu-bot@users.noreply.github.com>2014-11-17 20:44:48 +0100
commitdced84d4404b1f0346297c5941bfdf94cfdef4d5 (patch)
treed84b7a6d2629493ca8a43b70253ae448cd84f2ce /Source/Core/DolphinWX/Frame.cpp
parent05890fa752cd434643c45de75a5430ba8daf7b25 (diff)
parentea11c446c2a93de8fc8c77f97d344e7584dccba7 (diff)
Merge pull request #1564 from RachelBryk/freelook
Make freelook hotkeys configurable.
Diffstat (limited to 'Source/Core/DolphinWX/Frame.cpp')
-rw-r--r--Source/Core/DolphinWX/Frame.cpp61
1 files changed, 29 insertions, 32 deletions
diff --git a/Source/Core/DolphinWX/Frame.cpp b/Source/Core/DolphinWX/Frame.cpp
index 7519340f5e..1d42b02a55 100644
--- a/Source/Core/DolphinWX/Frame.cpp
+++ b/Source/Core/DolphinWX/Frame.cpp
@@ -955,6 +955,17 @@ int GetCmdForHotkey(unsigned int key)
case HK_SELECT_STATE_SLOT_10: return IDM_SELECTSLOT10;
case HK_SAVE_STATE_SLOT_SELECTED: return IDM_SAVESELECTEDSLOT;
case HK_LOAD_STATE_SLOT_SELECTED: return IDM_LOADSELECTEDSLOT;
+
+ case HK_FREELOOK_INCREASE_SPEED: return IDM_FREELOOK_INCREASE_SPEED;
+ case HK_FREELOOK_DECREASE_SPEED: return IDM_FREELOOK_DECREASE_SPEED;
+ case HK_FREELOOK_RESET_SPEED: return IDM_FREELOOK_RESET_SPEED;
+ case HK_FREELOOK_LEFT: return IDM_FREELOOK_LEFT;
+ case HK_FREELOOK_RIGHT: return IDM_FREELOOK_RIGHT;
+ case HK_FREELOOK_UP: return IDM_FREELOOK_UP;
+ case HK_FREELOOK_DOWN: return IDM_FREELOOK_DOWN;
+ case HK_FREELOOK_ZOOM_IN: return IDM_FREELOOK_ZOOM_IN;
+ case HK_FREELOOK_ZOOM_OUT: return IDM_FREELOOK_ZOOM_OUT;
+ case HK_FREELOOK_RESET: return IDM_FREELOOK_RESET;
}
return -1;
@@ -1148,44 +1159,30 @@ void CFrame::OnKeyDown(wxKeyEvent& event)
ConnectWiimote(WiimoteId, connect);
}
- if (g_Config.bFreeLook && event.GetModifiers() == wxMOD_SHIFT)
+ if (g_Config.bFreeLook)
{
static float debugSpeed = 1.0f;
- switch (event.GetKeyCode())
- {
- case '1':
- debugSpeed /= 2.0f;
- break;
- case '2':
+
+ if (IsHotkey(event, HK_FREELOOK_INCREASE_SPEED))
debugSpeed *= 2.0f;
- break;
- case 'W':
- VertexShaderManager::TranslateView(0.0f, debugSpeed);
- break;
- case 'S':
- VertexShaderManager::TranslateView(0.0f, -debugSpeed);
- break;
- case 'A':
+ else if (IsHotkey(event, HK_FREELOOK_DECREASE_SPEED))
+ debugSpeed /= 2.0f;
+ else if (IsHotkey(event, HK_FREELOOK_RESET_SPEED))
+ debugSpeed = 1.0f;
+ else if (IsHotkey(event, HK_FREELOOK_UP))
+ VertexShaderManager::TranslateView(0.0f, 0.0f, -debugSpeed);
+ else if (IsHotkey(event, HK_FREELOOK_DOWN))
+ VertexShaderManager::TranslateView(0.0f, 0.0f, debugSpeed);
+ else if (IsHotkey(event, HK_FREELOOK_LEFT))
VertexShaderManager::TranslateView(debugSpeed, 0.0f);
- break;
- case 'D':
+ else if (IsHotkey(event, HK_FREELOOK_RIGHT))
VertexShaderManager::TranslateView(-debugSpeed, 0.0f);
- break;
- case 'Q':
- VertexShaderManager::TranslateView(0.0f, 0.0f, debugSpeed);
- break;
- case 'E':
- VertexShaderManager::TranslateView(0.0f, 0.0f, -debugSpeed);
- break;
- case 'R':
+ else if (IsHotkey(event, HK_FREELOOK_ZOOM_IN))
+ VertexShaderManager::TranslateView(0.0f, debugSpeed);
+ else if (IsHotkey(event, HK_FREELOOK_ZOOM_OUT))
+ VertexShaderManager::TranslateView(0.0f, -debugSpeed);
+ else if (IsHotkey(event, HK_FREELOOK_RESET))
VertexShaderManager::ResetView();
- break;
- case 'F':
- debugSpeed = 1.0f;
- break;
- default:
- break;
- }
}
}
else