GitNex/app/src/main/java/org/mian/gitnex/adapters/RepoWatchersAdapter.java

127 lines
3.5 KiB
Java
Raw Normal View History

2019-09-14 08:29:20 +02:00
package org.mian.gitnex.adapters;
import android.annotation.SuppressLint;
import android.content.Context;
2020-01-02 08:51:10 +01:00
import android.graphics.Typeface;
2019-09-14 08:29:20 +02:00
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;
import com.squareup.picasso.Picasso;
import org.mian.gitnex.R;
import org.mian.gitnex.helpers.RoundedTransformation;
import org.mian.gitnex.models.UserInfo;
2020-01-02 08:51:10 +01:00
import org.mian.gitnex.util.TinyDB;
2019-09-14 08:29:20 +02:00
import java.util.List;
/**
* Author M M Arif
*/
public class RepoWatchersAdapter extends BaseAdapter {
private List<UserInfo> watchersList;
private Context mCtx;
2020-03-04 15:54:21 +01:00
private static class ViewHolder {
2019-09-14 08:29:20 +02:00
private ImageView memberAvatar;
private TextView memberName;
ViewHolder(View v) {
memberAvatar = v.findViewById(R.id.memberAvatar);
memberName = v.findViewById(R.id.memberName);
}
}
public RepoWatchersAdapter(Context mCtx, List<UserInfo> membersListMain) {
this.mCtx = mCtx;
this.watchersList = membersListMain;
}
@Override
public int getCount() {
return watchersList.size();
}
@Override
public Object getItem(int position) {
return null;
}
@Override
public long getItemId(int position) {
return 0;
}
@SuppressLint("InflateParams")
@Override
public View getView(int position, View finalView, ViewGroup parent) {
RepoWatchersAdapter.ViewHolder viewHolder;
if (finalView == null) {
finalView = LayoutInflater.from(mCtx).inflate(R.layout.repo_watchers_list, null);
2020-03-04 15:54:21 +01:00
viewHolder = new ViewHolder(finalView);
2019-09-14 08:29:20 +02:00
finalView.setTag(viewHolder);
}
else {
viewHolder = (RepoWatchersAdapter.ViewHolder) finalView.getTag();
}
initData(viewHolder, position);
return finalView;
}
private void initData(RepoWatchersAdapter.ViewHolder viewHolder, int position) {
UserInfo currentItem = watchersList.get(position);
2019-10-16 15:28:24 +02:00
Picasso.get().load(currentItem.getAvatar()).transform(new RoundedTransformation(8, 0)).resize(180, 180).centerCrop().into(viewHolder.memberAvatar);
2019-09-14 08:29:20 +02:00
2020-01-02 08:51:10 +01:00
final TinyDB tinyDb = new TinyDB(mCtx);
Typeface myTypeface;
2020-01-02 08:51:10 +01:00
if(tinyDb.getInt("customFontId") == 0) {
myTypeface = Typeface.createFromAsset(mCtx.getAssets(), "fonts/roboto.ttf");
}
else if (tinyDb.getInt("customFontId") == 1) {
myTypeface = Typeface.createFromAsset(mCtx.getAssets(), "fonts/manroperegular.ttf");
}
else if (tinyDb.getInt("customFontId") == 2) {
myTypeface = Typeface.createFromAsset(mCtx.getAssets(), "fonts/sourcecodeproregular.ttf");
}
else {
myTypeface = Typeface.createFromAsset(mCtx.getAssets(), "fonts/roboto.ttf");
}
2019-09-14 08:29:20 +02:00
if(!currentItem.getFullname().equals("")) {
viewHolder.memberName.setText(currentItem.getFullname());
2020-01-02 08:51:10 +01:00
viewHolder.memberName.setTypeface(myTypeface);
2019-09-14 08:29:20 +02:00
}
else {
viewHolder.memberName.setText(currentItem.getLogin());
2020-01-02 08:51:10 +01:00
viewHolder.memberName.setTypeface(myTypeface);
2019-09-14 08:29:20 +02:00
}
2020-03-06 21:07:54 +01:00
if(tinyDb.getInt("themeId") == 1) { //light
viewHolder.memberName.setTextColor(mCtx.getResources().getColor(R.color.lightThemeTextColor));
}
2020-03-06 21:07:54 +01:00
else { // dark
viewHolder.memberName.setTextColor(mCtx.getResources().getColor(R.color.white));
}
2019-09-14 08:29:20 +02:00
}
}