package com.papagiannis.tuberun.binders;
import java.util.ArrayList;
import java.util.HashMap;
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.ImageView;
import android.widget.SimpleAdapter.ViewBinder;
import android.widget.TextView;
import com.papagiannis.tuberun.LinePresentation;
import com.papagiannis.tuberun.LineType;
import com.papagiannis.tuberun.R;
public class NearbyBinder implements ViewBinder, OnClickListener {
Context context;
public NearbyBinder(Context c) {
context=c;
}
@Override
public boolean setViewValue(View view, Object o, String s) {
if (view.getId()==R.id.nearby_tubename || view.getId()==R.id.nearby_tubedistance) {
TextView tv = (TextView) view;
tv.setVisibility(View.VISIBLE);
if (view.getId()==R.id.nearby_tubedistance) {
int i=(Integer) o;
if (i>10000) {
i=(i/1000);
tv.setText(i+" km");
}
else {
tv.setText(i+" m");
}
}
else {
tv.setText(s);
}
}
else if (!s.equals("")) {
ImageView iv=(ImageView) view;
LineType lt=LinePresentation.getLineTypeRespresentation(s);
iv.setBackgroundColor(LinePresentation.getBackgroundColor(lt));
Bitmap bmp = BitmapFactory.decodeResource(
context.getResources(), LinePresentation.getIcon(lt));
Bitmap resizedbitmap = Bitmap.createScaledBitmap(bmp,
bmp.getWidth() / 2, bmp.getHeight() / 2, true);
iv.setImageBitmap(resizedbitmap);
iv.setVisibility(View.VISIBLE);
}
else {
view.setVisibility(View.GONE);
}
return true; // continue with the text
}
HashMap<View, View> subjects = new HashMap<View, View>();
ArrayList<View> temp = new ArrayList<View>();
@Override
public void onClick(View v) {
// TextView msgView= (TextView) subjects.get(v);
// if (msgView.getText().equals("")) return;
// if (msgView.getVisibility()==View.GONE)
// msgView.setVisibility(View.VISIBLE);
// else msgView.setVisibility(View.GONE);
}
}