package com.yassirh.digitalocean.ui;
import java.util.ArrayList;
import java.util.List;
import android.app.Activity;
import android.content.Context;
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.yassirh.digitalocean.R;
class NavigationDrawerAdapter extends BaseAdapter {
private class ItemImage {
String title;
int image;
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public int getImage() {
return image;
}
public void setImage(int image) {
this.image = image;
}
ItemImage(String title, int image) {
super();
this.title = title;
this.image = image;
}
}
private List<ItemImage> data;
private static LayoutInflater inflater = null;
NavigationDrawerAdapter(Activity activity, String navigationTitles[]) {
data = new ArrayList<>();
int i = 0;
for (String navigationTitle : navigationTitles) {
switch (i) {
case DrawerPositions.DROPLETS_FRAGMENT_POSITION:
data.add(new ItemImage(navigationTitle, R.drawable.droplets));
break;
case DrawerPositions.DOMAINS_FRAGMENT_POSITION:
data.add(new ItemImage(navigationTitle, R.drawable.domains));
break;
case DrawerPositions.IMAGES_FRAGMENT_POSITION:
data.add(new ItemImage(navigationTitle, R.drawable.images));
break;
case DrawerPositions.REGIONS_FRAGMENT_POSITION:
data.add(new ItemImage(navigationTitle, R.drawable.regions));
break;
case DrawerPositions.SIZES_FRAGMENT_POSITION:
data.add(new ItemImage(navigationTitle, R.drawable.sizes));
break;
case DrawerPositions.SSHKEYS_FRAGMENT_POSITION:
data.add(new ItemImage(navigationTitle, R.drawable.keys));
break;
case DrawerPositions.FLOATING_IPS_POSITION:
data.add(new ItemImage(navigationTitle, R.drawable.floating));
break;
}
i++;
}
inflater = (LayoutInflater) activity.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
}
public int getCount() {
return data.size();
}
public Object getItem(int position) {
return data.get(position);
}
public long getItemId(int position) {
// TODO
return 0;
}
public View getView(int position, View convertView, ViewGroup parent) {
View vi = convertView;
if (convertView == null)
vi = inflater.inflate(R.layout.navigation_list_row, parent, false);
final ItemImage itemImage = data.get(position);
TextView titleTextView = (TextView) vi.findViewById(R.id.titleTextView);
ImageView imageImageView = (ImageView) vi.findViewById(R.id.imageImageView);
titleTextView.setText(itemImage.getTitle());
imageImageView.setImageResource(itemImage.getImage());
return vi;
}
}