package esri.mrm.mobile.adapter;
import java.util.List;
import esri.mrm.mobile.R;
import esri.mrm.mobile.WorkOrder;
import esri.mrm.mobile.WorkOrderStatus;
import esri.mrm.mobile.R.drawable;
import esri.mrm.mobile.R.id;
import esri.mrm.mobile.R.layout;
import android.app.Activity;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.ImageView;
import android.widget.TextView;
public class WorkOrderSpinnerAdapter extends ArrayAdapter<WorkOrder> {
private final Activity context;
private final List<WorkOrder> workorders;
public WorkOrderSpinnerAdapter(Activity context, List<WorkOrder> workorders) {
super(context, R.layout.workorder_spinner_item, workorders);
this.context = context;
this.workorders = workorders;
}
public int getCount() {
return workorders.size();
}
public WorkOrder getItem(int position) {
return workorders.get(position);
}
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
LayoutInflater inflater = context.getLayoutInflater();
View rowView = inflater.inflate(R.layout.workorder_spinner_item, null, true);
TextView textViewWorkorderId = (TextView) rowView.findViewById(R.id.workorder_id);
// ImageView imageView = (ImageView) rowView.findViewById(R.id.icon);
WorkOrder workorder = workorders.get(position);
String workorderId = "#" + workorder.getSequence() + " " + workorder.getStopName();
textViewWorkorderId.setText(workorderId);
//Status
TextView textViewStatus = (TextView) rowView.findViewById(R.id.workorder_status);
textViewStatus.setText(workorder.getStatus());
String str = "";
if(workorder.getStatus().equals(WorkOrderStatus.Completed.toString()) || workorder.getStatus().equals(WorkOrderStatus.Exception.toString()))
str = "Departed: " + workorder.getActualDeparture();
else if (workorder.getStatus().equals(WorkOrderStatus.AtStop.toString()))
str = "Projected Departure: " + workorder.getProjectedDeparture();
else
str = "ETA: " + workorder.getEtaTime() + " Duration: " + workorder.getScheduledDuration();
//String eta = "ETA: " + workorder.getEtaTime();
TextView textViewEta = (TextView) rowView.findViewById(R.id.eta);
textViewEta.setText(str);
return rowView;
}
// And here is when the "chooser" is popped up
// Normally is the same view, but you can customize it if you want
@Override
public View getDropDownView(int position, View convertView,
ViewGroup parent) {
// LayoutInflater inflater = context.getLayoutInflater();
// View rowView = inflater.inflate(R.layout.workorder_spinner_item, null, true);
// TextView textViewWorkorderId = (TextView) rowView.findViewById(R.id.workorder_id);
//// ImageView imageView = (ImageView) rowView.findViewById(R.id.icon);
// WorkOrder workorder = workorders.get(position);
// String workorderId = "#" + workorder.getId();
// textViewWorkorderId.setText(workorderId);
// String eta = "\t\t\tETA: " + workorder.getEtaTime();
// TextView textViewEta = (TextView) rowView.findViewById(R.id.eta);
// textViewEta.setText(eta);
//
// return rowView;
return getView(position, convertView, parent);
}
}