package net.robotmedia.acv.adapter;
import java.io.File;
import java.util.ArrayList;
import java.util.List;
import net.androidcomics.acv.R;
import net.robotmedia.acv.provider.HistoryManager;
import android.content.Context;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
public class RecentListBaseAdapter extends ACVListAdapter<String> {
protected int maxNumItems = -1;
public RecentListBaseAdapter(Context context, int rowResId) {
super(context, rowResId);
contents = new ArrayList<String>();
refresh();
}
public void setMaxNumItems(int num) {
maxNumItems = num;
refresh();
}
@Override
public void refresh() {
contents.clear();
List<String> lastFiles = HistoryManager.getInstance(context).getRecentFiles();
if(maxNumItems > 0) {
int c = 0;
for(String file : lastFiles) {
contents.add(file);
if(++c >= maxNumItems) {
break;
}
}
} else {
// No limit
contents.addAll(lastFiles);
}
notifyDataSetChanged();
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
TextView tv;
View v;
if(convertView == null) {
//tv = new TextView(context);
v = makeRow();
} else {
v = convertView;
}
File f = new File(getItem(position));
tv = (TextView) v.findViewById(R.id.text);
tv.setText(f.getName());
return v;
}
}