@@ -17,14 +17,12 @@ package com.ichi2.anki.notetype
1717
1818import android.content.Context
1919import android.view.LayoutInflater
20- import android.view.View
2120import android.view.ViewGroup
22- import android.widget.Button
23- import android.widget.TextView
2421import androidx.recyclerview.widget.DiffUtil
2522import androidx.recyclerview.widget.ListAdapter
2623import androidx.recyclerview.widget.RecyclerView
2724import com.ichi2.anki.R
25+ import com.ichi2.anki.databinding.ItemManageNoteTypeBinding
2826
2927private val notetypeNamesAndCountDiff =
3028 object : DiffUtil .ItemCallback <ManageNoteTypeUiModel >() {
@@ -53,7 +51,7 @@ internal class NotetypesAdapter(
5351 viewType : Int ,
5452 ): NotetypeViewHolder =
5553 NotetypeViewHolder (
56- rowView = layoutInflater .inflate(R .layout.item_manage_note_type , parent, false ),
54+ binding = ItemManageNoteTypeBinding .inflate(layoutInflater , parent, false ),
5755 onDelete = onDelete,
5856 onRename = onRename,
5957 onEditCards = onEditCards,
@@ -69,31 +67,26 @@ internal class NotetypesAdapter(
6967}
7068
7169internal class NotetypeViewHolder (
72- rowView : View ,
70+ private val binding : ItemManageNoteTypeBinding ,
7371 onShowFields : (ManageNoteTypeUiModel ) -> Unit ,
7472 onEditCards : (ManageNoteTypeUiModel ) -> Unit ,
7573 onRename : (ManageNoteTypeUiModel ) -> Unit ,
7674 onDelete : (ManageNoteTypeUiModel ) -> Unit ,
77- ) : RecyclerView.ViewHolder(rowView) {
78- val name: TextView = rowView.findViewById(R .id.note_name)
79- val useCount: TextView = rowView.findViewById(R .id.note_use_count)
80- private val btnDelete: Button = rowView.findViewById(R .id.note_delete)
81- private val btnRename: Button = rowView.findViewById(R .id.note_rename)
82- private val btnEditCards: Button = rowView.findViewById(R .id.note_edit_cards)
83- private var mManageNoteTypeUiModel: ManageNoteTypeUiModel ? = null
84- private val resources = rowView.context.resources
75+ ) : RecyclerView.ViewHolder(binding.root) {
76+ private var manageNoteTypeUiModel: ManageNoteTypeUiModel ? = null
77+ private val resources = binding.root.context.resources
8578
8679 init {
87- rowView. setOnClickListener { mManageNoteTypeUiModel ?.let (onShowFields) }
88- btnEditCards. setOnClickListener { mManageNoteTypeUiModel ?.let (onEditCards) }
89- btnDelete. setOnClickListener { mManageNoteTypeUiModel ?.let (onDelete) }
90- btnRename. setOnClickListener { mManageNoteTypeUiModel ?.let (onRename) }
80+ binding.root. setOnClickListener { manageNoteTypeUiModel ?.let (onShowFields) }
81+ binding.editCardsButton. setOnClickListener { manageNoteTypeUiModel ?.let (onEditCards) }
82+ binding.deleteNoteTypeButton. setOnClickListener { manageNoteTypeUiModel ?.let (onDelete) }
83+ binding.renameNoteTypeButton. setOnClickListener { manageNoteTypeUiModel ?.let (onRename) }
9184 }
9285
9386 fun bind (manageNoteTypeUiModel : ManageNoteTypeUiModel ) {
94- this .mManageNoteTypeUiModel = manageNoteTypeUiModel
95- name .text = manageNoteTypeUiModel.name
96- useCount .text =
87+ this .manageNoteTypeUiModel = manageNoteTypeUiModel
88+ binding.noteName .text = manageNoteTypeUiModel.name
89+ binding.noteUseCount .text =
9790 resources.getQuantityString(
9891 R .plurals.model_browser_of_type,
9992 manageNoteTypeUiModel.useCount,
0 commit comments