summaryrefslogtreecommitdiff
path: root/Source
diff options
context:
space:
mode:
authorCharles Lombardo <clombardo169@gmail.com>2023-06-04 01:07:41 -0400
committerCharles Lombardo <clombardo169@gmail.com>2023-06-05 15:44:26 -0400
commita1d027fe0787367384fbfb2e413afce02c8e9209 (patch)
tree8b0af5ed50909ce2055cc96b7c68dce9a6187c05 /Source
parente4935d4b12b592d7c8a5f2bca787f421cc27d5a2 (diff)
Android: Convert SettingsRowPresenter to Kotlin
Diffstat (limited to 'Source')
-rw-r--r--Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/adapters/SettingsRowPresenter.java57
-rw-r--r--Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/adapters/SettingsRowPresenter.kt47
2 files changed, 47 insertions, 57 deletions
diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/adapters/SettingsRowPresenter.java b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/adapters/SettingsRowPresenter.java
deleted file mode 100644
index f05cffb983..0000000000
--- a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/adapters/SettingsRowPresenter.java
+++ /dev/null
@@ -1,57 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0-or-later
-
-package org.dolphinemu.dolphinemu.adapters;
-
-import android.content.Context;
-import android.content.res.Resources;
-import android.graphics.drawable.Drawable;
-import android.view.ViewGroup;
-
-import androidx.core.content.ContextCompat;
-import androidx.leanback.widget.ImageCardView;
-import androidx.leanback.widget.Presenter;
-
-import org.dolphinemu.dolphinemu.R;
-import org.dolphinemu.dolphinemu.model.TvSettingsItem;
-import org.dolphinemu.dolphinemu.viewholders.TvSettingsViewHolder;
-
-public final class SettingsRowPresenter extends Presenter
-{
- public Presenter.ViewHolder onCreateViewHolder(ViewGroup parent)
- {
- // Create a new view.
- ImageCardView settingsCard = new ImageCardView(parent.getContext());
-
- settingsCard.setMainImageAdjustViewBounds(true);
- settingsCard.setMainImageDimensions(192, 160);
-
- settingsCard.setFocusable(true);
- settingsCard.setFocusableInTouchMode(true);
-
- // Use that view to create a ViewHolder.
- return new TvSettingsViewHolder(settingsCard);
- }
-
- public void onBindViewHolder(Presenter.ViewHolder viewHolder, Object item)
- {
- TvSettingsViewHolder holder = (TvSettingsViewHolder) viewHolder;
- Context context = holder.cardParent.getContext();
- TvSettingsItem settingsItem = (TvSettingsItem) item;
-
- Resources resources = holder.cardParent.getResources();
-
- holder.itemId = settingsItem.getItemId();
-
- holder.cardParent.setTitleText(resources.getString(settingsItem.getLabelId()));
- holder.cardParent.setMainImage(resources.getDrawable(settingsItem.getIconId()));
-
- // Set the background color of the card
- Drawable background = ContextCompat.getDrawable(context, R.drawable.tv_card_background);
- holder.cardParent.setInfoAreaBackground(background);
- }
-
- public void onUnbindViewHolder(Presenter.ViewHolder viewHolder)
- {
- // no op
- }
-}
diff --git a/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/adapters/SettingsRowPresenter.kt b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/adapters/SettingsRowPresenter.kt
new file mode 100644
index 0000000000..c52039c5b2
--- /dev/null
+++ b/Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/adapters/SettingsRowPresenter.kt
@@ -0,0 +1,47 @@
+// SPDX-License-Identifier: GPL-2.0-or-later
+
+package org.dolphinemu.dolphinemu.adapters
+
+import android.view.ViewGroup
+import androidx.core.content.ContextCompat
+import androidx.leanback.widget.ImageCardView
+import androidx.leanback.widget.Presenter
+import org.dolphinemu.dolphinemu.R
+import org.dolphinemu.dolphinemu.model.TvSettingsItem
+import org.dolphinemu.dolphinemu.viewholders.TvSettingsViewHolder
+
+class SettingsRowPresenter : Presenter() {
+ override fun onCreateViewHolder(parent: ViewGroup): ViewHolder {
+ // Create a new view.
+ val settingsCard = ImageCardView(parent.context)
+ settingsCard.apply {
+ setMainImageAdjustViewBounds(true)
+ setMainImageDimensions(192, 160)
+ isFocusable = true
+ isFocusableInTouchMode = true
+ }
+
+ // Use that view to create a ViewHolder.
+ return TvSettingsViewHolder(settingsCard)
+ }
+
+ override fun onBindViewHolder(viewHolder: ViewHolder, item: Any) {
+ val holder = viewHolder as TvSettingsViewHolder
+ val context = holder.cardParent.context
+ val settingsItem = item as TvSettingsItem
+ val resources = holder.cardParent.resources
+ holder.apply {
+ itemId = settingsItem.itemId
+ cardParent.titleText = resources.getString(settingsItem.labelId)
+ cardParent.mainImage = ContextCompat.getDrawable(context, settingsItem.iconId)
+
+ // Set the background color of the card
+ val background = ContextCompat.getDrawable(context, R.drawable.tv_card_background)
+ cardParent.infoAreaBackground = background
+ }
+ }
+
+ override fun onUnbindViewHolder(viewHolder: ViewHolder) {
+ // no op
+ }
+}