package com.example.asjtodolist

import android.content.Context
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView
import android.content.SharedPreferences
import android.view.View
import android.widget.Button
import android.widget.EdgeEffect
import android.widget.EditText
import android.widget.Toast

data class ItemsViewModel(val image: Int, val text: String) {
}

class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
        val button: Button=findViewById(R.id.button_xml)
        val editText:EditText=findViewById(R.id.edit_xml)

        val editor: SharedPreferences.Editor = this.getSharedPreferences("My_Table_name", Context.MODE_PRIVATE).edit()
        val sharedPreferences = getSharedPreferences("My_Table_name", MODE_PRIVATE)

        val data = ArrayList<ItemsViewModel>()
        val recyclerview = findViewById<RecyclerView>(R.id.recycler_xml)
        recyclerview.layoutManager = LinearLayoutManager(this)
        val adapter = CustomAdapter(data)
        recyclerview.adapter = adapter

        button.setOnClickListener {
            var set: MutableSet<String>
            var set_null: MutableSet<String> = mutableSetOf("", " ")
            set = sharedPreferences.getStringSet("key", set_null) as MutableSet<String>
            var arr: ArrayList<String> = set.toList() as ArrayList<String>
            arr.add(editText.text.toString())
            set.addAll(arr)
            editor.putStringSet("key", set)
            editor.clear().apply()
            data.add(ItemsViewModel(R.drawable.logo, editText.text.toString()))
            adapter.notifyDataSetChanged()
        }

        if (sharedPreferences.getStringSet("key",null)!=null){
            for (i in 0 until sharedPreferences.getStringSet("key",null)!!.size){
                if (sharedPreferences.getStringSet("key",null)!!.elementAt(i).trim()!="") {

                    data.add(
                        ItemsViewModel(
                            R.drawable.logo,
                            sharedPreferences.getStringSet("key", null)!!.elementAt(i)
                        )
                    )
                }
            }
        }
    }
}