summaryrefslogtreecommitdiff
path: root/Source/Android/jni/Input/EmulatedController.cpp
diff options
context:
space:
mode:
authorJosJuice <josjuice@gmail.com>2022-12-26 19:26:58 +0100
committerJosJuice <josjuice@gmail.com>2023-03-03 22:28:25 +0100
commit1eeded23df829973065d51c2595bf743910bc07e (patch)
treea43a727a3233c02f4832be63d5d173c31a61aae1 /Source/Android/jni/Input/EmulatedController.cpp
parent7ef229d9082f72795e71db58ed13824bdd3d3e2c (diff)
Android: Add input profile management
Co-authored-by: Charles Lombardo <clombardo169@gmail.com>
Diffstat (limited to 'Source/Android/jni/Input/EmulatedController.cpp')
-rw-r--r--Source/Android/jni/Input/EmulatedController.cpp28
1 files changed, 28 insertions, 0 deletions
diff --git a/Source/Android/jni/Input/EmulatedController.cpp b/Source/Android/jni/Input/EmulatedController.cpp
index fb38471738..567049cb2b 100644
--- a/Source/Android/jni/Input/EmulatedController.cpp
+++ b/Source/Android/jni/Input/EmulatedController.cpp
@@ -3,6 +3,7 @@
#include <jni.h>
+#include "Common/FileUtil.h"
#include "Common/IniFile.h"
#include "Core/HW/GCPad.h"
#include "Core/HW/Wiimote.h"
@@ -95,6 +96,33 @@ Java_org_dolphinemu_dolphinemu_features_input_model_controlleremu_EmulatedContro
controller->UpdateReferences(g_controller_interface);
}
+JNIEXPORT void JNICALL
+Java_org_dolphinemu_dolphinemu_features_input_model_controlleremu_EmulatedController_loadProfile(
+ JNIEnv* env, jobject obj, jstring j_path)
+{
+ ControllerEmu::EmulatedController* controller = EmulatedControllerFromJava(env, obj);
+
+ IniFile ini;
+ ini.Load(GetJString(env, j_path));
+
+ controller->LoadConfig(ini.GetOrCreateSection("Profile"));
+ controller->UpdateReferences(g_controller_interface);
+}
+
+JNIEXPORT void JNICALL
+Java_org_dolphinemu_dolphinemu_features_input_model_controlleremu_EmulatedController_saveProfile(
+ JNIEnv* env, jobject obj, jstring j_path)
+{
+ const std::string path = GetJString(env, j_path);
+
+ File::CreateFullPath(path);
+
+ IniFile ini;
+
+ EmulatedControllerFromJava(env, obj)->SaveConfig(ini.GetOrCreateSection("Profile"));
+ ini.Save(path);
+}
+
JNIEXPORT jobject JNICALL
Java_org_dolphinemu_dolphinemu_features_input_model_controlleremu_EmulatedController_getGcPad(
JNIEnv* env, jclass, jint controller_index)