--- android/TrainInfo/src/dk/thoerup/traininfo/StationList.java 2010/09/16 15:31:31 1065 +++ android/TrainInfo/src/dk/thoerup/traininfo/StationList.java 2010/09/16 15:32:42 1066 @@ -1,9 +1,39 @@ package dk.thoerup.traininfo; +import static dk.thoerup.traininfo.R.string.app_name; +import static dk.thoerup.traininfo.R.string.generic_cancel; +import static dk.thoerup.traininfo.R.string.generic_retry; +import static dk.thoerup.traininfo.R.string.generic_search; +import static dk.thoerup.traininfo.R.string.stationlist_accuracy; +import static dk.thoerup.traininfo.R.string.stationlist_addfavorite; +import static dk.thoerup.traininfo.R.string.stationlist_favorites; +import static dk.thoerup.traininfo.R.string.stationlist_fetcherror; +import static dk.thoerup.traininfo.R.string.stationlist_findbyname; +import static dk.thoerup.traininfo.R.string.stationlist_findingnearby; +import static dk.thoerup.traininfo.R.string.stationlist_gpsinfo; +import static dk.thoerup.traininfo.R.string.stationlist_gpstimeout; +import static dk.thoerup.traininfo.R.string.stationlist_latitude; +import static dk.thoerup.traininfo.R.string.stationlist_loadfavorites; +import static dk.thoerup.traininfo.R.string.stationlist_locationinfo; +import static dk.thoerup.traininfo.R.string.stationlist_longitude; +import static dk.thoerup.traininfo.R.string.stationlist_nearbystations; +import static dk.thoerup.traininfo.R.string.stationlist_nofavorites; +import static dk.thoerup.traininfo.R.string.stationlist_nolocation; +import static dk.thoerup.traininfo.R.string.stationlist_nolocationprovider; +import static dk.thoerup.traininfo.R.string.stationlist_nostations; +import static dk.thoerup.traininfo.R.string.stationlist_obtainedby; +import static dk.thoerup.traininfo.R.string.stationlist_removefavorite; +import static dk.thoerup.traininfo.R.string.stationlist_search; +import static dk.thoerup.traininfo.R.string.stationlist_stationadded; +import static dk.thoerup.traininfo.R.string.stationlist_stationmap; +import static dk.thoerup.traininfo.R.string.stationlist_stationremoved; +import static dk.thoerup.traininfo.R.string.stationlist_stationsearch; +import static dk.thoerup.traininfo.R.string.stationlist_twocharmin; +import static dk.thoerup.traininfo.R.string.stationlist_waitforlocation; + import java.util.ArrayList; import java.util.List; - import android.app.Activity; import android.app.AlertDialog; import android.app.Dialog; @@ -18,7 +48,6 @@ import android.os.Bundle; import android.os.Handler; import android.os.Message; - import android.view.ContextMenu; import android.view.LayoutInflater; import android.view.Menu; @@ -30,6 +59,8 @@ import android.widget.EditText; import android.widget.ListView; import android.widget.Toast; +import dk.thoerup.android.traininfo.common.StationBean; +import dk.thoerup.android.traininfo.common.StationBean.StationEntry; import dk.thoerup.traininfo.provider.ProviderFactory; import dk.thoerup.traininfo.provider.StationProvider; import dk.thoerup.traininfo.stationmap.GeoPair; @@ -37,8 +68,6 @@ import dk.thoerup.traininfo.util.IntSet; import dk.thoerup.traininfo.util.MessageBox; -import static dk.thoerup.traininfo.R.string.*; - public class StationList extends ListActivity { public static final int GOTLOCATION = 1001; public static final int GOTSTATIONLIST = 1002; @@ -73,7 +102,7 @@ boolean isLaunchedforShortcut; boolean isRunning = false; - List stations = new ArrayList(); + StationBean stations = new StationBean(); StationProvider stationProvider = ProviderFactory.getStationProvider(); @@ -135,7 +164,7 @@ } } else { - stations = (ArrayList) savedInstanceState.getSerializable("stations"); + stations = (StationBean) savedInstanceState.getSerializable("stations"); adapter.setStations(stations); location = (GeoPair) savedInstanceState.getSerializable("location"); } @@ -189,7 +218,7 @@ { if (dialog != null && dialog.isShowing()) dialog.dismiss(); - outState.putSerializable("stations", (ArrayList) stations); + outState.putSerializable("stations", (StationBean) stations); outState.putSerializable("location", location); } @@ -220,7 +249,7 @@ Intent intent = new Intent(this,StationMapView.class); ArrayList stationPoints = new ArrayList(); - for (StationBean st : stations ) { + for (StationEntry st : stations.entries ) { stationPoints.add( new GeoPair(st.getLatitude(), st.getLongitude(), st.getName()) ); } @@ -339,7 +368,7 @@ protected void onListItemClick(ListView l, View v, int position, long id) { super.onListItemClick(l, v, position, id); - StationBean station = stations.get(position); + StationEntry station = stations.entries.get(position); if (isLaunchedforShortcut == true) { Intent i = new Intent(); @@ -517,7 +546,7 @@ if (stations != null) { - if (stations.size() == 0) { + if (stations.entries.size() == 0) { showMessageAndClose(getString(stationlist_nostations)); } @@ -589,7 +618,7 @@ AdapterView.AdapterContextMenuInfo info = (AdapterView.AdapterContextMenuInfo) menuInfo; selectedPosition = info.position; - int stationID = stations.get(selectedPosition).getId(); + int stationID = stations.entries.get(selectedPosition).getId(); if (!favorites.contains(stationID)) { menu.add(0, FAVORITES_ADD, 0, getString(stationlist_addfavorite) ); @@ -600,7 +629,7 @@ } public void onContextItemSelected(MenuItem item) { - StationBean sb = stations.get(selectedPosition); + StationEntry sb = stations.entries.get(selectedPosition); int stationID = sb.getId(); if (item.getItemId() == FAVORITES_ADD) { @@ -613,7 +642,7 @@ if (listType.equals( WelcomeScreen.ListType.ListFavorites) ) { - stations.remove(selectedPosition); + stations.entries.remove(selectedPosition); adapter.notifyDataSetChanged(); } }