package com.radicaldynamic.groupinform.adapters;
import java.util.ArrayList;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.ImageView;
import android.widget.TextView;
import com.radicaldynamic.groupinform.R;
import com.radicaldynamic.groupinform.activities.AccountFolderActivity;
import com.radicaldynamic.groupinform.application.Collect;
import com.radicaldynamic.groupinform.logic.AccountFolder;
public class AccountFolderListAdapter extends ArrayAdapter<AccountFolder>
{
private ArrayList<AccountFolder> mItems;
public AccountFolderListAdapter(Context context, int textViewResourceId, ArrayList<AccountFolder> items) {
super(context, textViewResourceId, items);
mItems = items;
}
@Override
public View getView(int position, View convertView, ViewGroup parent)
{
String selectedDb = Collect.getInstance().getInformOnlineState().getSelectedDatabase();
if (selectedDb == null)
selectedDb = "";
View v = convertView;
if (v == null) {
LayoutInflater vi = (LayoutInflater) Collect.getInstance().getApplicationContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
v = vi.inflate(R.layout.folder_list_item, null);
}
AccountFolder f = mItems.get(position);
if (f != null) {
ImageView fi = (ImageView) v.findViewById(R.id.folderIcon);
TextView tt = (TextView) v.findViewById(R.id.firstLine);
TextView bt = (TextView) v.findViewById(R.id.secondLine);
int icon;
if (fi != null) {
if (f.getVisibility().equals(AccountFolderActivity.PRIVATE_FOLDER)) {
if (f.isReplicated()) {
if (selectedDb.equals(f.getId()))
icon = R.drawable.folder_remote_backup_blue;
else
icon = R.drawable.folder_blue_backup;
} else {
if (selectedDb.equals(f.getId()))
icon = R.drawable.folder_remote_blue;
else
icon = R.drawable.folder_blue;
}
} else {
if (f.isReplicated()) {
if (selectedDb.equals(f.getId()))
icon = R.drawable.folder_remote_backup_green;
else
icon = R.drawable.folder_green_backup;
} else {
if (selectedDb.equals(f.getId()))
icon = R.drawable.folder_remote_green;
else
icon = R.drawable.folder_green;
}
}
fi.setImageDrawable(Collect.getInstance().getResources().getDrawable(icon));
}
if (tt != null) {
tt.setText("[" + f.getVisibility().toUpperCase() + "] " + f.getName());
}
if (bt != null) {
bt.setText(f.getDescription());
}
}
return v;
}
}