summaryrefslogtreecommitdiff
path: root/Source/Android/app/src/main/java/org
diff options
context:
space:
mode:
authorCharles Lombardo <clombardo169@gmail.com>2023-06-10 05:18:55 -0400
committerCharles Lombardo <clombardo169@gmail.com>2023-08-25 14:20:33 -0400
commit0e3b33d90114e5d42fdc9f3fe6bb9fadc86eef4a (patch)
tree2316008302524108495f76d348c23eda9489895b /Source/Android/app/src/main/java/org
parent6caa4307ac11f57ea4dcf41ea7d16d7029fa3800 (diff)
Android: Convert InputMappingControlSettingViewHolder 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/input/ui/viewholder/InputMappingControlSettingViewHolder.java77
-rw-r--r--Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/input/ui/viewholder/InputMappingControlSettingViewHolder.kt55
2 files changed, 55 insertions, 77 deletions
diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/input/ui/viewholder/InputMappingControlSettingViewHolder.java b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/input/ui/viewholder/InputMappingControlSettingViewHolder.java
deleted file mode 100644
index fd4b92cf95..0000000000
--- a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/input/ui/viewholder/InputMappingControlSettingViewHolder.java
+++ /dev/null
@@ -1,77 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-package org.dolphinemu.dolphinemu.features.input.ui.viewholder;
-
-import android.view.View;
-
-import androidx.annotation.NonNull;
-import androidx.annotation.Nullable;
-
-import org.dolphinemu.dolphinemu.databinding.ListItemMappingBinding;
-import org.dolphinemu.dolphinemu.features.input.model.view.InputMappingControlSetting;
-import org.dolphinemu.dolphinemu.features.settings.model.view.SettingsItem;
-import org.dolphinemu.dolphinemu.features.settings.ui.SettingsAdapter;
-import org.dolphinemu.dolphinemu.features.settings.ui.viewholder.SettingViewHolder;
-
-public final class InputMappingControlSettingViewHolder extends SettingViewHolder
-{
- private InputMappingControlSetting mItem;
-
- private final ListItemMappingBinding mBinding;
-
- public InputMappingControlSettingViewHolder(@NonNull ListItemMappingBinding binding,
- SettingsAdapter adapter)
- {
- super(binding.getRoot(), adapter);
- mBinding = binding;
- }
-
- @Override
- public void bind(SettingsItem item)
- {
- mItem = (InputMappingControlSetting) item;
-
- mBinding.textSettingName.setText(mItem.getName());
- mBinding.textSettingDescription.setText(mItem.getValue());
- mBinding.buttonAdvancedSettings.setOnClickListener(this::onLongClick);
-
- setStyle(mBinding.textSettingName, mItem);
- }
-
- @Override
- public void onClick(View clicked)
- {
- if (!mItem.isEditable())
- {
- showNotRuntimeEditableError();
- return;
- }
-
- if (mItem.isInput())
- getAdapter().onInputMappingClick(mItem, getBindingAdapterPosition());
- else
- getAdapter().onAdvancedInputMappingClick(mItem, getBindingAdapterPosition());
-
- setStyle(mBinding.textSettingName, mItem);
- }
-
- @Override
- public boolean onLongClick(View clicked)
- {
- if (!mItem.isEditable())
- {
- showNotRuntimeEditableError();
- return true;
- }
-
- getAdapter().onAdvancedInputMappingClick(mItem, getBindingAdapterPosition());
-
- return true;
- }
-
- @Nullable @Override
- protected SettingsItem getItem()
- {
- return mItem;
- }
-}
diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/input/ui/viewholder/InputMappingControlSettingViewHolder.kt b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/input/ui/viewholder/InputMappingControlSettingViewHolder.kt
new file mode 100644
index 0000000000..5bbcbf07c4
--- /dev/null
+++ b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/input/ui/viewholder/InputMappingControlSettingViewHolder.kt
@@ -0,0 +1,55 @@
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+package org.dolphinemu.dolphinemu.features.input.ui.viewholder
+
+import android.view.View
+import org.dolphinemu.dolphinemu.databinding.ListItemMappingBinding
+import org.dolphinemu.dolphinemu.features.input.model.view.InputMappingControlSetting
+import org.dolphinemu.dolphinemu.features.settings.model.view.SettingsItem
+import org.dolphinemu.dolphinemu.features.settings.ui.SettingsAdapter
+import org.dolphinemu.dolphinemu.features.settings.ui.viewholder.SettingViewHolder
+
+class InputMappingControlSettingViewHolder(
+ private val binding: ListItemMappingBinding,
+ adapter: SettingsAdapter
+) : SettingViewHolder(binding.getRoot(), adapter) {
+ lateinit var setting: InputMappingControlSetting
+
+ override val item: SettingsItem
+ get() = setting
+
+ override fun bind(item: SettingsItem) {
+ setting = item as InputMappingControlSetting
+
+ binding.textSettingName.text = setting.name
+ binding.textSettingDescription.text = setting.value
+ binding.buttonAdvancedSettings.setOnClickListener { clicked: View -> onLongClick(clicked) }
+
+ setStyle(binding.textSettingName, setting)
+ }
+
+ override fun onClick(clicked: View) {
+ if (!setting.isEditable) {
+ showNotRuntimeEditableError()
+ return
+ }
+
+ if (setting.isInput)
+ adapter.onInputMappingClick(setting, bindingAdapterPosition)
+ else
+ adapter.onAdvancedInputMappingClick(setting, bindingAdapterPosition)
+
+ setStyle(binding.textSettingName, setting)
+ }
+
+ override fun onLongClick(clicked: View): Boolean {
+ if (!setting.isEditable) {
+ showNotRuntimeEditableError()
+ return true
+ }
+
+ adapter.onAdvancedInputMappingClick(setting, bindingAdapterPosition)
+
+ return true
+ }
+}