Changeset View
Changeset View
Standalone View
Standalone View
src/it/reyboz/bustorino/adapters/PalinaAdapter.java
Show All 24 Lines | |||||
import android.os.Build; | import android.os.Build; | ||||
import android.util.TypedValue; | import android.util.TypedValue; | ||||
import android.view.LayoutInflater; | import android.view.LayoutInflater; | ||||
import android.view.View; | import android.view.View; | ||||
import android.view.ViewGroup; | import android.view.ViewGroup; | ||||
import android.widget.ArrayAdapter; | import android.widget.ArrayAdapter; | ||||
import android.widget.TextView; | import android.widget.TextView; | ||||
import java.util.List; | import java.util.List; | ||||
import java.util.Locale; | import java.util.Locale; | ||||
import it.reyboz.bustorino.BuildConfig; | |||||
import it.reyboz.bustorino.R; | import it.reyboz.bustorino.R; | ||||
import it.reyboz.bustorino.backend.Palina; | import it.reyboz.bustorino.backend.Palina; | ||||
import it.reyboz.bustorino.backend.Passaggio; | import it.reyboz.bustorino.backend.Passaggio; | ||||
import it.reyboz.bustorino.backend.Route; | import it.reyboz.bustorino.backend.Route; | ||||
import it.reyboz.bustorino.backend.utils; | import it.reyboz.bustorino.backend.utils; | ||||
import it.reyboz.bustorino.util.RouteSorterByArrivalTime; | |||||
/** | /** | ||||
* This once was a ListView Adapter for BusLine[]. | * This once was a ListView Adapter for BusLine[]. | ||||
* | * | ||||
* Thanks to Framentos developers for the guide: | * Thanks to Framentos developers for the guide: | ||||
* http://www.framentos.com/en/android-tutorial/2012/07/16/listview-in-android-using-custom-listadapter-and-viewcache/# | * http://www.framentos.com/en/android-tutorial/2012/07/16/listview-in-android-using-custom-listadapter-and-viewcache/# | ||||
* | * | ||||
* @author Valerio Bozzolan | * @author Valerio Bozzolan | ||||
* @author Ludovico Pavesi | * @author Ludovico Pavesi | ||||
*/ | */ | ||||
public class PalinaAdapter extends ArrayAdapter<Route> implements SharedPreferences.OnSharedPreferenceChangeListener { | public class PalinaAdapter extends ArrayAdapter<Route> implements SharedPreferences.OnSharedPreferenceChangeListener { | ||||
private LayoutInflater li; | private LayoutInflater li; | ||||
private static int row_layout = R.layout.entry_bus_line_passage; | private static int row_layout = R.layout.entry_bus_line_passage; | ||||
private static final int metroBg = R.drawable.route_background_metro; | private static final int metroBg = R.drawable.route_background_metro; | ||||
private static final int busBg = R.drawable.route_background_bus; | private static final int busBg = R.drawable.route_background_bus; | ||||
private static final int extraurbanoBg = R.drawable.route_background_bus_long_distance; | private static final int extraurbanoBg = R.drawable.route_background_bus_long_distance; | ||||
private static final int busIcon = R.drawable.bus; | private static final int busIcon = R.drawable.bus; | ||||
private static final int trainIcon = R.drawable.subway; | private static final int trainIcon = R.drawable.subway; | ||||
private static final int tramIcon = R.drawable.tram; | private static final int tramIcon = R.drawable.tram; | ||||
private final String KEY_CAPITALIZE; | private final String KEY_CAPITALIZE; | ||||
private Capitalize capit = Capitalize.DO_NOTHING; | private Capitalize capit; | ||||
//private static final int cityIcon = R.drawable.city; | //private static final int cityIcon = R.drawable.city; | ||||
// hey look, a pattern! | // hey look, a pattern! | ||||
private static class ViewHolder { | private static class ViewHolder { | ||||
TextView rowStopIcon; | TextView rowStopIcon; | ||||
TextView rowRouteDestination; | TextView rowRouteDestination; | ||||
TextView rowRouteTimetable; | TextView rowRouteTimetable; | ||||
Show All 12 Lines | private static Capitalize getCapitalize(SharedPreferences shPr, String key){ | ||||
} | } | ||||
return Capitalize.DO_NOTHING; | return Capitalize.DO_NOTHING; | ||||
} | } | ||||
public PalinaAdapter(Context context, Palina p) { | public PalinaAdapter(Context context, Palina p) { | ||||
super(context, row_layout, p.queryAllRoutes()); | super(context, row_layout, p.queryAllRoutes()); | ||||
li = LayoutInflater.from(context); | li = LayoutInflater.from(context); | ||||
sort(new RouteSorterByArrivalTime()); | sort(new RouteSorterByArrivalTime()); | ||||
/* | |||||
sort(new Comparator<Route>() { | |||||
@Override | |||||
public int compare(Route route, Route t1) { | |||||
LinesNameSorter sorter = new LinesNameSorter(); | |||||
if(route.getNameForDisplay()!= null){ | |||||
if(t1.getNameForDisplay()!=null){ | |||||
return sorter.compare(route.getNameForDisplay(), t1.getNameForDisplay()); | |||||
} | |||||
else return -1; | |||||
} else if(t1.getNameForDisplay()!=null){ | |||||
return +1; | |||||
} | |||||
else return 0; | |||||
} | |||||
}); | |||||
*/ | |||||
KEY_CAPITALIZE = context.getString(R.string.pref_arrival_times_capit); | KEY_CAPITALIZE = context.getString(R.string.pref_arrival_times_capit); | ||||
SharedPreferences defSharPref = PreferenceManager.getDefaultSharedPreferences(context); | SharedPreferences defSharPref = PreferenceManager.getDefaultSharedPreferences(context); | ||||
defSharPref.registerOnSharedPreferenceChangeListener(this); | defSharPref.registerOnSharedPreferenceChangeListener(this); | ||||
this.capit = getCapitalize(defSharPref, KEY_CAPITALIZE); | this.capit = getCapitalize(defSharPref, KEY_CAPITALIZE); | ||||
} | } | ||||
/** | /** | ||||
* Some parts taken from the AdapterBusLines class.<br> | * Some parts taken from the AdapterBusLines class.<br> | ||||
▲ Show 20 Lines • Show All 112 Lines • Show Last 20 Lines |
Public contents are in Creative Commons Attribution-ShareAlike 4.0 (CC-BY-SA) or GNU Free Documentation License (at your option) unless otherwise noted. · Contact / Register