summaryrefslogtreecommitdiff
path: root/Source/Android/app/src/main/java/org
diff options
context:
space:
mode:
authorCharles Lombardo <clombardo169@gmail.com>2023-03-01 13:35:14 -0500
committerCharles Lombardo <clombardo169@gmail.com>2023-03-01 13:35:14 -0500
commit37e8cd178902fa585af0b5b23506cef598acbcc2 (patch)
treebef5d5e61b615102cb649104fd24f0d701555136 /Source/Android/app/src/main/java/org
parent9e090c6bab25c5f0765a08bfdb92d9f1df790de4 (diff)
Android: Convert GeckoCheat to Kotlin
Diffstat (limited to 'Source/Android/app/src/main/java/org')
-rw-r--r--Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/cheats/model/GeckoCheat.java78
-rw-r--r--Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/cheats/model/GeckoCheat.kt72
2 files changed, 72 insertions, 78 deletions
diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/cheats/model/GeckoCheat.java b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/cheats/model/GeckoCheat.java
deleted file mode 100644
index 4397a95d81..0000000000
--- a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/cheats/model/GeckoCheat.java
+++ /dev/null
@@ -1,78 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-package org.dolphinemu.dolphinemu.features.cheats.model;
-
-import androidx.annotation.Keep;
-import androidx.annotation.NonNull;
-import androidx.annotation.Nullable;
-
-public class GeckoCheat extends AbstractCheat
-{
- @Keep
- private final long mPointer;
-
- public GeckoCheat()
- {
- mPointer = createNew();
- }
-
- @Keep
- private GeckoCheat(long pointer)
- {
- mPointer = pointer;
- }
-
- @Override
- public native void finalize();
-
- private native long createNew();
-
- @Override
- public boolean equals(@Nullable Object obj)
- {
- return obj != null && getClass() == obj.getClass() && equalsImpl((GeckoCheat) obj);
- }
-
- public boolean supportsCreator()
- {
- return true;
- }
-
- public boolean supportsNotes()
- {
- return true;
- }
-
- @NonNull
- public native String getName();
-
- @NonNull
- public native String getCreator();
-
- @NonNull
- public native String getNotes();
-
- @NonNull
- public native String getCode();
-
- public native boolean getUserDefined();
-
- public native boolean getEnabled();
-
- public native boolean equalsImpl(@NonNull GeckoCheat other);
-
- @Override
- protected native int trySetImpl(@NonNull String name, @NonNull String creator,
- @NonNull String notes, @NonNull String code);
-
- @Override
- protected native void setEnabledImpl(boolean enabled);
-
- @NonNull
- public static native GeckoCheat[] loadCodes(String gameId, int revision);
-
- public static native void saveCodes(String gameId, int revision, GeckoCheat[] codes);
-
- @Nullable
- public static native GeckoCheat[] downloadCodes(String gameTdbId);
-}
diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/cheats/model/GeckoCheat.kt b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/cheats/model/GeckoCheat.kt
new file mode 100644
index 0000000000..7a23066545
--- /dev/null
+++ b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/cheats/model/GeckoCheat.kt
@@ -0,0 +1,72 @@
+// SPDX-License-Identifier: GPL-2.0-or-later
+package org.dolphinemu.dolphinemu.features.cheats.model
+
+import androidx.annotation.Keep
+
+class GeckoCheat : AbstractCheat {
+ @Keep
+ private val mPointer: Long
+
+ constructor() {
+ mPointer = createNew()
+ }
+
+ @Keep
+ private constructor(pointer: Long) {
+ mPointer = pointer
+ }
+
+ external fun finalize()
+
+ private external fun createNew(): Long
+
+ override fun equals(other: Any?): Boolean {
+ return other != null && javaClass == other.javaClass && equalsImpl(other as GeckoCheat)
+ }
+
+ override fun hashCode(): Int {
+ return mPointer.hashCode()
+ }
+
+ override fun supportsCreator(): Boolean {
+ return true
+ }
+
+ override fun supportsNotes(): Boolean {
+ return true
+ }
+
+ external override fun getName(): String
+
+ external override fun getCreator(): String
+
+ external override fun getNotes(): String
+
+ external override fun getCode(): String
+
+ external override fun getUserDefined(): Boolean
+
+ external override fun getEnabled(): Boolean
+
+ private external fun equalsImpl(other: GeckoCheat): Boolean
+
+ external override fun setCheatImpl(
+ name: String,
+ creator: String,
+ notes: String,
+ code: String
+ ): Int
+
+ external override fun setEnabledImpl(enabled: Boolean)
+
+ companion object {
+ @JvmStatic
+ external fun loadCodes(gameId: String, revision: Int): Array<GeckoCheat>
+
+ @JvmStatic
+ external fun saveCodes(gameId: String, revision: Int, codes: Array<GeckoCheat>)
+
+ @JvmStatic
+ external fun downloadCodes(gameTdbId: String): Array<GeckoCheat>?
+ }
+} \ No newline at end of file