--- android/TrainInfo/src/dk/thoerup/traininfo/WelcomeScreen.java 2011/07/07 19:07:55 1547 +++ android/TrainInfo/src/dk/thoerup/traininfo/WelcomeScreen.java 2011/07/07 19:44:01 1548 @@ -1,15 +1,22 @@ package dk.thoerup.traininfo; + + +import java.util.ArrayList; + import android.app.Activity; import android.app.ProgressDialog; import android.content.Intent; import android.content.SharedPreferences; import android.content.SharedPreferences.Editor; +import android.location.Location; import android.net.Uri; import android.os.AsyncTask; import android.os.Bundle; import android.os.Handler; import android.util.Log; +import android.view.Menu; +import android.view.MenuItem; import android.view.View; import android.view.View.OnClickListener; import android.view.Window; @@ -18,14 +25,21 @@ import com.nullwire.trace.ExceptionHandler; +import dk.thoerup.android.traininfo.common.StationEntry; import dk.thoerup.androidutils.CheckUpdates; import dk.thoerup.traininfo.provider.OfflineStationProvider; import dk.thoerup.traininfo.provider.ProviderFactory; import dk.thoerup.traininfo.provider.StationProvider; +import dk.thoerup.traininfo.stationmap.GeoPair; +import dk.thoerup.traininfo.stationmap.StationMapView; +import dk.thoerup.traininfo.util.MessageBox; public class WelcomeScreen extends Activity{ final static String stationsreload = "stationsreload"; + final static int MENU_SETTINGS = 1; + final static int MENU_RELOAD = 2; + public enum ListType { ListNearest, @@ -56,9 +70,6 @@ Button favoritesButton = (Button) findViewById(R.id.favorites); favoritesButton.setOnClickListener( new StationListListener(ListType.ListFavorites)); - Button settingsButton = (Button) findViewById(R.id.settings); - settingsButton.setOnClickListener( new SettingsListener() ); - Button aboutButton = (Button) findViewById(R.id.about); aboutButton.setOnClickListener( new AboutListener() ); @@ -112,6 +123,41 @@ } + @Override + public boolean onCreateOptionsMenu(Menu menu) { + MenuItem item; + + item = menu.add(0, MENU_SETTINGS, 0, getString(R.string.welcome_settings) ); + item.setIcon(android.R.drawable.ic_menu_preferences); + + item = menu.add(0, MENU_RELOAD, 0, getString(R.string.welcome_reloadstations)); + item.setIcon(android.R.drawable.ic_menu_rotate); + + return true; + } + + @Override + public boolean onOptionsItemSelected(MenuItem item) { + boolean retval = true; + + switch (item.getItemId()) { + case MENU_SETTINGS: + Intent intent = new Intent(WelcomeScreen.this, SettingsScreen.class); + WelcomeScreen.this.startActivity(intent); + break; + + case MENU_RELOAD: + OfflineStationProvider osp = (OfflineStationProvider) ProviderFactory.getStationProvider(); + new StationLoader(osp).execute( (Void)null); + break; + + default: + retval = super.onOptionsItemSelected(item); + } + + return retval; + } + class AboutListener implements OnClickListener { @@ -133,14 +179,6 @@ } - class SettingsListener implements OnClickListener{ - - @Override - public void onClick(View v) { - Intent intent = new Intent(WelcomeScreen.this, SettingsScreen.class); - WelcomeScreen.this.startActivity(intent); - } - } class StationListListener implements OnClickListener{ ListType launchType;