AddHighActionsAdapter.java 4.08 KB
package etelligens.com.foodsafety.adapter;

import android.content.Context;

import android.text.Html;
import android.util.TypedValue;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.TextView;

import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;

import java.util.ArrayList;
import java.util.Timer;

import etelligens.com.foodsafety.R;
import etelligens.com.foodsafety.model.AddHighActionsModal;

public class AddHighActionsAdapter extends RecyclerView.Adapter<AddHighActionsAdapter.AddHighViewHolder> {
    Context context;
    public static ArrayList<AddHighActionsModal> list;
    String sendText;
    private Timer timer = new Timer();
    private final long DELAY = 5000; // milliseconds

    PassDataHigh passDataHigh;

    public interface PassDataHigh {
        void updateHighData(AddHighActionsModal addHighActionsModal, String name, int id);
        void onTextChanged(AddHighActionsModal addHighActionsModal, int position, int id);
    }

    public AddHighActionsAdapter(Context context, ArrayList<AddHighActionsModal> list, PassDataHigh passDataHigh) {
        this.context = context;
        this.list = list;
        this.passDataHigh = passDataHigh;
    }

    View view;

    @NonNull
    @Override
    public AddHighActionsAdapter.AddHighViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int i) {
        view = LayoutInflater.from(context).inflate(R.layout.item_layout_use_first_pro_item_bakend, parent, false);
        return new AddHighViewHolder(view);
    }

    @Override
    public void onBindViewHolder(@NonNull final AddHighActionsAdapter.AddHighViewHolder holder, final int position) {
        final AddHighActionsModal addHighActionsModal = list.get(position);

        String name = addHighActionsModal.getName();
        final int id = addHighActionsModal.getId();
        // String style = addHighActionsModal.getStyle();

        if (name != null) {
            holder.descriptiontxt.setText(name);
        }

        holder.descriptiontxt.setOnClickListener(view -> passDataHigh.onTextChanged(addHighActionsModal, position, id));
        holder.crosstxt.setOnClickListener(v -> {
            list.remove(position);
            notifyDataSetChanged();
        });
        holder.boldtxt.setOnClickListener(v -> {
            String bolddd = holder.descriptiontxt.getText().toString().trim();
            String sourceString = "<b>" + bolddd + "</b> ";
            holder.descriptiontxt.setText(Html.fromHtml(sourceString));

        });
        holder.italictxt.setOnClickListener(view -> {
            String bolddd = holder.descriptiontxt.getText().toString().trim();
            String sourceString = "<i>" + bolddd + "</i> ";
            holder.descriptiontxt.setText(Html.fromHtml(sourceString));
        });
        holder.underlinetxt.setOnClickListener(view -> {
            String bolddd = holder.descriptiontxt.getText().toString().trim();
            String sourceString = "<u>" + bolddd + "</u> ";
            holder.descriptiontxt.setText(Html.fromHtml(sourceString));
        });
        holder.pttxt.setOnClickListener(view -> {
            String bolddd = holder.descriptiontxt.getText().toString().trim();
            holder.descriptiontxt.setTextSize(TypedValue.COMPLEX_UNIT_DIP, 20);

        });

    }

    @Override
    public int getItemCount() {
        return list.size();
    }

    public class AddHighViewHolder extends RecyclerView.ViewHolder {
        TextView pttxt;
        TextView boldtxt, underlinetxt, italictxt, descriptiontxt;
        ImageView crosstxt;

        public AddHighViewHolder(View itemview) {
            super(itemview);

            descriptiontxt = itemview.findViewById(R.id.item_name);
            pttxt = itemview.findViewById(R.id.pt_txt);
            boldtxt = itemview.findViewById(R.id.bold_txt);
            underlinetxt = itemview.findViewById(R.id.under_line_txt);
            italictxt = itemview.findViewById(R.id.italic_txt);
            crosstxt = itemview.findViewById(R.id.cross_btn);
        }
    }
}