Skip to content
PartyAchievementViewHolder.java 2.27 KiB
Newer Older
package com.eyecreate.miceandmystics.miceandmystics.viewholders;

import android.app.AlertDialog;
import android.content.DialogInterface;
import android.support.v7.widget.RecyclerView;
import android.view.View;
import android.widget.ImageView;
import android.widget.TextView;
import com.eyecreate.miceandmystics.miceandmystics.R;
import com.eyecreate.miceandmystics.miceandmystics.adapters.CampaignDetailsAdapter;
import com.eyecreate.miceandmystics.miceandmystics.model.Achievement;

public class PartyAchievementViewHolder extends RecyclerView.ViewHolder implements View.OnLongClickListener {

    TextView achievementName;
    ImageView achievementIcon;
    CampaignDetailsAdapter adapter;
    Achievement boundAchievement;
    public PartyAchievementViewHolder(View itemView, CampaignDetailsAdapter adapter) {
        this.adapter = adapter;
        achievementName = (TextView)itemView.findViewById(R.id.achievement_name);
        achievementIcon = (ImageView)itemView.findViewById(R.id.achievement_icon);
        itemView.setOnLongClickListener(this);
    }

    public void bindHolder(Achievement achievement) {
        this.boundAchievement = achievement;
        achievementName.setText(achievement.getAchievementName());
        achievementIcon.setImageResource(com.eyecreate.miceandmystics.miceandmystics.model.Enums.Achievement.valueOfDisplayName(achievement.getAchievementName()).getDisplayResource());
    }

    @Override
    public boolean onLongClick(View view) {
        AlertDialog removeDialog = new AlertDialog.Builder(view.getContext(),R.style.dialogTheme)
                .setMessage("Do you want to remove achievement: "+achievementName.getText()+"?")
                .setNegativeButton("No", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialogInterface, int i) {

                    }
                })
                .setPositiveButton("Yes", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialogInterface, int i) {
                        adapter.removeAchievement(boundAchievement);
                    }
                })
                .create();
        removeDialog.show();
        return true;