package ar.rulosoft.mimanganu.adapters;
import android.content.Context;
import android.support.v4.view.ViewCompat;
import android.support.v7.widget.CardView;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.ImageView;
import com.fedorvlasov.lazylist.ImageLoader;
import java.util.ArrayList;
import ar.rulosoft.mimanganu.R;
import ar.rulosoft.mimanganu.componentes.Cover;
import ar.rulosoft.mimanganu.componentes.Manga;
import ar.rulosoft.mimanganu.servers.ServerBase;
public class MangasRecAdapter extends MangaRecAdapterBase {
protected ImageLoader imageLoader;
Context context;
public MangasRecAdapter(ArrayList<Manga> lista, Context context, boolean darkTheme) {
super(lista,context,darkTheme);
imageLoader = new ImageLoader(context);
this.context = context;
}
@Override
public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) {
final Manga m = mangas.get(position);
MangasHolder mHolder = (MangasHolder)holder;
mHolder.serie.setImageBitmap(null);
mHolder.serie.setText(m.getTitle());
imageLoader.displayImg(m.getImages(), mHolder.serie);
mHolder.v.setTag(position);
mHolder.v.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if (mangaClickListener != null) {
mangaClickListener.onMangaClick(m);
}
}
});
ServerBase server = ServerBase.getServer(m.getServerId(), context);
mHolder.server.setImageResource(server.getIcon());
if (m.getNews() > 0) {
mHolder.notif.setVisibility(ImageView.VISIBLE);
} else {
mHolder.notif.setVisibility(ImageView.INVISIBLE);
}
if (position == getItemCount() - 1 && lastItemListener != null)
lastItemListener.onRequestedLastItem();
}
@Override
public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup viewGroup, int pos) {
View v = LayoutInflater.from(viewGroup.getContext()).inflate(R.layout.control_tapa_manga, viewGroup, false);
ViewCompat.setElevation(v, 5f);
if (onCreateContextMenuListener != null)
v.setOnCreateContextMenuListener(onCreateContextMenuListener);
return new MangasHolder(v);
}
public class MangasHolder extends RecyclerView.ViewHolder {
Cover serie;
View v;
ImageView server;
ImageView notif;
public MangasHolder(View itemView) {
super(itemView);
serie = (Cover) itemView.findViewById(R.id.tapa);
notif = (ImageView) itemView.findViewById(R.id.notif);
server = (ImageView) itemView.findViewById(R.id.server);
v = itemView;
if (darkTheme) {
((CardView) itemView.findViewById(R.id.cardview_server_container))
.setCardBackgroundColor(darkBackground);
}
}
}
}