Newer
Older
Kevin Whitaker
committed
package com.eyecreate.miceandmystics.miceandmystics.viewholders;
import android.app.AlertDialog;
import android.content.DialogInterface;
Kevin Whitaker
committed
import android.content.Intent;
Kevin Whitaker
committed
import android.support.v7.widget.RecyclerView;
import android.view.View;
import android.widget.ImageView;
import android.widget.TextView;
Kevin Whitaker
committed
import com.alertdialogpro.AlertDialogPro;
import com.eyecreate.miceandmystics.miceandmystics.CharacterDetailsActivity;
Kevin Whitaker
committed
import com.eyecreate.miceandmystics.miceandmystics.R;
import com.eyecreate.miceandmystics.miceandmystics.adapters.CampaignDetailsAdapter;
import com.eyecreate.miceandmystics.miceandmystics.model.Character;
import com.eyecreate.miceandmystics.miceandmystics.model.Enums.CharacterNames;
Kevin Whitaker
committed
public class CampaignDetailsViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener,View.OnLongClickListener {
TextView characterName,playerName;
ImageView characterIcon;
CampaignDetailsAdapter adapter;
Character boundCharacter;
public CampaignDetailsViewHolder(View itemView,CampaignDetailsAdapter adapter) {
super(itemView);
this.adapter = adapter;
characterName = (TextView)itemView.findViewById(R.id.character_name);
playerName = (TextView)itemView.findViewById(R.id.character_player);
characterIcon = (ImageView)itemView.findViewById(R.id.character_icon);
Kevin Whitaker
committed
itemView.setOnClickListener(this);
itemView.setOnLongClickListener(this);
Kevin Whitaker
committed
}
public void bindModel(Character character) {
boundCharacter = character;
characterName.setText(character.getCharacterName());
playerName.setText(character.getControllingPlayer().getPlayerName());
characterIcon.setImageResource(CharacterNames.valueOf(character.getCharacterName()).getDrawableRes());
Kevin Whitaker
committed
}
@Override
public void onClick(View view) {
Kevin Whitaker
committed
Intent editCharacter = new Intent(view.getContext(), CharacterDetailsActivity.class);
editCharacter.putExtra("characterId",boundCharacter.getUuid());
view.getContext().startActivity(editCharacter);
Kevin Whitaker
committed
}
@Override
public boolean onLongClick(View view) {
Kevin Whitaker
committed
AlertDialog removeDialog = new AlertDialogPro.Builder(view.getContext(),R.style.dialogTheme)
Kevin Whitaker
committed
.setMessage("Do you want to remove character: "+characterName.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.removeCharacter(boundCharacter);
}
})
.create();
removeDialog.show();
return true;
}
}