summaryrefslogtreecommitdiff
path: root/Source/Core/InputCommon/InputConfig.cpp
diff options
context:
space:
mode:
authorJMC47 <JMC4789@gmail.com>2021-07-21 02:36:43 -0400
committerGitHub <noreply@github.com>2021-07-21 02:36:43 -0400
commita1e806ed76e6746259a730a5db82052b53f084f1 (patch)
treee2246fc40dab5a0ae32bad834fbc96fe5533a8e5 /Source/Core/InputCommon/InputConfig.cpp
parentb515786c8dd94aac73e59003d9c232bd319ae1bd (diff)
parentb8f0e97c025dc7a50c7c729185195b3577321987 (diff)
Merge pull request #9600 from Bonta0/mgba-pr
Full GBA Controllers Integration with mGBA
Diffstat (limited to 'Source/Core/InputCommon/InputConfig.cpp')
-rw-r--r--Source/Core/InputCommon/InputConfig.cpp28
1 files changed, 17 insertions, 11 deletions
diff --git a/Source/Core/InputCommon/InputConfig.cpp b/Source/Core/InputCommon/InputConfig.cpp
index 07249b0ed8..bace091ca5 100644
--- a/Source/Core/InputCommon/InputConfig.cpp
+++ b/Source/Core/InputCommon/InputConfig.cpp
@@ -26,7 +26,7 @@ InputConfig::InputConfig(const std::string& ini_name, const std::string& gui_nam
InputConfig::~InputConfig() = default;
-bool InputConfig::LoadConfig(bool isGC)
+bool InputConfig::LoadConfig(InputClass type)
{
IniFile inifile;
bool useProfile[MAX_BBMOTES] = {false, false, false, false, false};
@@ -43,16 +43,22 @@ bool InputConfig::LoadConfig(bool isGC)
if (SConfig::GetInstance().GetGameID() != "00000000")
{
- std::string type;
- if (isGC)
+ std::string type_str;
+ switch (type)
{
- type = "Pad";
- path = "Profiles/GCPad/";
- }
- else
- {
- type = "Wiimote";
+ case InputClass::GBA:
+ type_str = "GBA";
+ path = "Profiles/GBA/";
+ break;
+ case InputClass::Wii:
+ type_str = "Wiimote";
path = "Profiles/Wiimote/";
+ break;
+ case InputClass::GC:
+ default:
+ type_str = "Pad";
+ path = "Profiles/GCPad/";
+ break;
}
IniFile game_ini = SConfig::GetInstance().LoadGameIni();
@@ -60,7 +66,7 @@ bool InputConfig::LoadConfig(bool isGC)
for (int i = 0; i < 4; i++)
{
- const auto profile_name = fmt::format("{}Profile{}", type, num[i]);
+ const auto profile_name = fmt::format("{}Profile{}", type_str, num[i]);
if (control_section->Exists(profile_name))
{
@@ -124,7 +130,7 @@ bool InputConfig::LoadConfig(bool isGC)
}
#if defined(ANDROID)
// Only set for wii pads
- if (!isGC && use_ir_config)
+ if (type == InputClass::Wii && use_ir_config)
{
config.Set("IR/Total Yaw", ir_values[0]);
config.Set("IR/Total Pitch", ir_values[1]);