summaryrefslogtreecommitdiff
path: root/Source/Core/DolphinWX/Frame.cpp
diff options
context:
space:
mode:
authorshuffle2 <godisgovernment@gmail.com>2015-10-03 18:10:23 -0700
committershuffle2 <godisgovernment@gmail.com>2015-10-03 18:10:23 -0700
commit81414b4fa2edadf0b2a2bb0bd4df61dd59165eec (patch)
tree4711189a836176019e1cd3913a6bac08b2bd751a /Source/Core/DolphinWX/Frame.cpp
parentb926061f641692ae31bacbeba304f5941db7d3bc (diff)
parent7c1565b201ed3e1a2579da3e55efa995cbfb3f5d (diff)
Merge pull request #3076 from void-ghost/stereo3d_presets
Stereo3d presets
Diffstat (limited to 'Source/Core/DolphinWX/Frame.cpp')
-rw-r--r--Source/Core/DolphinWX/Frame.cpp52
1 files changed, 48 insertions, 4 deletions
diff --git a/Source/Core/DolphinWX/Frame.cpp b/Source/Core/DolphinWX/Frame.cpp
index d367f94c9b..fef41bbce2 100644
--- a/Source/Core/DolphinWX/Frame.cpp
+++ b/Source/Core/DolphinWX/Frame.cpp
@@ -1416,29 +1416,73 @@ void CFrame::ParseHotkeys()
{
State::Load(g_saveSlot);
}
- if (IsHotkey(HK_DECREASE_DEPTH, true))
+
+ auto savePreset = [](const std::string& param, int value)
+ {
+ IniFile localIni = SConfig::GetInstance().LoadLocalGameIni();
+ localIni.GetOrCreateSection("Enhancements")->Set(
+ StringFromFormat("Stereo%s_%d", param.c_str(), g_Config.iStereoActivePreset),
+ value);
+ std::string iniFileName = File::GetUserPath(D_GAMESETTINGS_IDX) + SConfig::GetInstance().GetUniqueID() + ".ini";
+ OSD::AddMessage(StringFromFormat("%s: %d", param.c_str(), value) , 1000);
+ localIni.Save(iniFileName);
+ };
+
+ if (IsHotkey(HK_DECREASE_DEPTH))
{
if (--g_Config.iStereoDepth < 0)
g_Config.iStereoDepth = 0;
+ g_Config.oStereoPresets[g_Config.iStereoActivePreset].depth = g_Config.iStereoDepth;
+ savePreset("Depth", g_Config.iStereoDepth);
}
- if (IsHotkey(HK_INCREASE_DEPTH, true))
+ if (IsHotkey(HK_INCREASE_DEPTH))
{
if (++g_Config.iStereoDepth > 100)
g_Config.iStereoDepth = 100;
+ g_Config.oStereoPresets[g_Config.iStereoActivePreset].depth = g_Config.iStereoDepth;
+ savePreset("Depth", g_Config.iStereoDepth);
}
- if (IsHotkey(HK_DECREASE_CONVERGENCE, true))
+ if (IsHotkey(HK_DECREASE_CONVERGENCE))
{
g_Config.iStereoConvergence -= 5;
if (g_Config.iStereoConvergence < 0)
g_Config.iStereoConvergence = 0;
+ g_Config.oStereoPresets[g_Config.iStereoActivePreset].convergence = g_Config.iStereoConvergence;
+ savePreset("Convergence", g_Config.iStereoConvergence);
}
- if (IsHotkey(HK_INCREASE_CONVERGENCE, true))
+ if (IsHotkey(HK_INCREASE_CONVERGENCE))
{
g_Config.iStereoConvergence += 5;
if (g_Config.iStereoConvergence > 500)
g_Config.iStereoConvergence = 500;
+ g_Config.oStereoPresets[g_Config.iStereoActivePreset].convergence = g_Config.iStereoConvergence;
+ savePreset("Convergence", g_Config.iStereoConvergence);
}
+ if (IsHotkey(HK_SWITCH_STEREOSCOPY_PRESET))
+ {
+ g_Config.iStereoActivePreset = !g_Config.iStereoActivePreset;
+ g_Config.iStereoConvergence = g_Config.oStereoPresets[g_Config.iStereoActivePreset].convergence;
+ g_Config.iStereoDepth = g_Config.oStereoPresets[g_Config.iStereoActivePreset].depth;
+ }
+ if (IsHotkey(HK_USE_STEREOSCOPY_PRESET_0))
+ {
+ g_Config.iStereoActivePreset = 0;
+ g_Config.iStereoConvergence = g_Config.oStereoPresets[g_Config.iStereoActivePreset].convergence;
+ g_Config.iStereoDepth = g_Config.oStereoPresets[g_Config.iStereoActivePreset].depth;
+ }
+ if (IsHotkey(HK_USE_STEREOSCOPY_PRESET_1))
+ {
+ g_Config.iStereoActivePreset = 1;
+ g_Config.iStereoConvergence = g_Config.oStereoPresets[g_Config.iStereoActivePreset].convergence;
+ g_Config.iStereoDepth = g_Config.oStereoPresets[g_Config.iStereoActivePreset].depth;
+ }
+ if (IsHotkey(HK_USE_STEREOSCOPY_PRESET_2))
+ {
+ g_Config.iStereoActivePreset = 2;
+ g_Config.iStereoConvergence = g_Config.oStereoPresets[g_Config.iStereoActivePreset].convergence;
+ g_Config.iStereoDepth = g_Config.oStereoPresets[g_Config.iStereoActivePreset].depth;
+ }
static float debugSpeed = 1.0f;
if (IsHotkey(HK_FREELOOK_DECREASE_SPEED, true))
debugSpeed /= 1.1f;