23 |
import static dk.thoerup.traininfo.R.string.stationlist_nostations; |
import static dk.thoerup.traininfo.R.string.stationlist_nostations; |
24 |
import static dk.thoerup.traininfo.R.string.stationlist_obtainedby; |
import static dk.thoerup.traininfo.R.string.stationlist_obtainedby; |
25 |
import static dk.thoerup.traininfo.R.string.stationlist_removefavorite; |
import static dk.thoerup.traininfo.R.string.stationlist_removefavorite; |
26 |
|
import static dk.thoerup.traininfo.R.string.stationlist_satellitecount; |
27 |
import static dk.thoerup.traininfo.R.string.stationlist_search; |
import static dk.thoerup.traininfo.R.string.stationlist_search; |
28 |
import static dk.thoerup.traininfo.R.string.stationlist_stationadded; |
import static dk.thoerup.traininfo.R.string.stationlist_stationadded; |
29 |
import static dk.thoerup.traininfo.R.string.stationlist_stationmap; |
import static dk.thoerup.traininfo.R.string.stationlist_stationmap; |
31 |
import static dk.thoerup.traininfo.R.string.stationlist_stationsearch; |
import static dk.thoerup.traininfo.R.string.stationlist_stationsearch; |
32 |
import static dk.thoerup.traininfo.R.string.stationlist_twocharmin; |
import static dk.thoerup.traininfo.R.string.stationlist_twocharmin; |
33 |
import static dk.thoerup.traininfo.R.string.stationlist_waitforlocation; |
import static dk.thoerup.traininfo.R.string.stationlist_waitforlocation; |
|
import static dk.thoerup.traininfo.R.string.stationlist_satellitecount; |
|
34 |
|
|
35 |
import java.util.ArrayList; |
import java.util.ArrayList; |
36 |
|
|
48 |
import android.os.Bundle; |
import android.os.Bundle; |
49 |
import android.os.Handler; |
import android.os.Handler; |
50 |
import android.os.Message; |
import android.os.Message; |
51 |
|
import android.util.Log; |
52 |
import android.view.ContextMenu; |
import android.view.ContextMenu; |
53 |
import android.view.LayoutInflater; |
import android.view.LayoutInflater; |
54 |
import android.view.Menu; |
import android.view.Menu; |
150 |
|
|
151 |
switch (listType) { |
switch (listType) { |
152 |
case ListNearest: |
case ListNearest: |
153 |
startLookup(); |
startNearestLookup(); |
154 |
break; |
break; |
155 |
case ListSearch: |
case ListSearch: |
156 |
showDialog(DLG_STATIONNAME); |
showDialog(DLG_STATIONNAME); |
325 |
dialog.dismiss(); |
dialog.dismiss(); |
326 |
String search = et.getText().toString().trim(); |
String search = et.getText().toString().trim(); |
327 |
if (search.length() >= 2) { |
if (search.length() >= 2) { |
328 |
startNameSearch(search); |
startNameLookup(search); |
329 |
} else { |
} else { |
330 |
showMessageAndClose( getString(stationlist_twocharmin) ); |
showMessageAndClose( getString(stationlist_twocharmin) ); |
331 |
} |
} |
381 |
///////////////////////////////////////////////////////////// |
///////////////////////////////////////////////////////////// |
382 |
// |
// |
383 |
|
|
384 |
public void startLookup() { |
public void startNearestLookup() { |
385 |
dialogMessage = getString( stationlist_waitforlocation ); |
dialogMessage = getString( stationlist_waitforlocation ); |
386 |
showDialog(DLG_PROGRESS); |
showDialog(DLG_PROGRESS); |
387 |
|
|
389 |
stationsFetched.sendEmptyMessageDelayed(0, 500); |
stationsFetched.sendEmptyMessageDelayed(0, 500); |
390 |
} |
} |
391 |
|
|
392 |
void startNameSearch(String name) { |
void startNameLookup(String name) { |
393 |
dialogMessage = getString( stationlist_findbyname ); |
dialogMessage = getString( stationlist_findbyname ); |
394 |
showDialog(DLG_PROGRESS); |
showDialog(DLG_PROGRESS); |
395 |
|
|
454 |
|
|
455 |
|
|
456 |
if (locationLookup.elapsedTime() >= GPS_TIMEOUT_MS) { |
if (locationLookup.elapsedTime() >= GPS_TIMEOUT_MS) { |
457 |
dismissDialog(DLG_PROGRESS); |
try { |
458 |
|
dismissDialog(DLG_PROGRESS); |
459 |
|
} catch (IllegalArgumentException ex) { |
460 |
|
// I get stacktraces that reports an exception is thrown here - |
461 |
|
// but i can not recreate the situation that causes said exception |
462 |
|
Log.e("TrainInfo", "Why the f*** is this exception thrown here ?? " + ex.getMessage() ); |
463 |
|
} |
464 |
|
|
465 |
locationLookup.stopSearch(); |
locationLookup.stopSearch(); |
466 |
|
|
473 |
builder.setPositiveButton(getString(generic_retry), new DialogInterface.OnClickListener() { |
builder.setPositiveButton(getString(generic_retry), new DialogInterface.OnClickListener() { |
474 |
public void onClick(DialogInterface dialog, int id) { |
public void onClick(DialogInterface dialog, int id) { |
475 |
dialog.dismiss(); |
dialog.dismiss(); |
476 |
startLookup(); |
startNearestLookup(); |
477 |
|
|
478 |
} |
} |
479 |
}); |
}); |
538 |
|
|
539 |
switch (method) { |
switch (method) { |
540 |
case ByLocation: |
case ByLocation: |
541 |
stations = stationProvider.lookupStations(loc); |
stations = stationProvider.lookupStationsByLocation(loc); |
542 |
break; |
break; |
543 |
case ByName: |
case ByName: |
544 |
stations = stationProvider.lookupStationsByName(name); |
stations = stationProvider.lookupStationsByName(name); |
591 |
runner = new Runnable() { |
runner = new Runnable() { |
592 |
@Override |
@Override |
593 |
public void run() { |
public void run() { |
594 |
startNameSearch( FindStationsTask.this.name ); |
startNameLookup( FindStationsTask.this.name ); |
595 |
} |
} |
596 |
}; |
}; |
597 |
break; |
break; |