Example #1
0
 public void onCreate(Bundle savedInstanceState) {
   supportRequestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS);
   super.onCreate(savedInstanceState);
   rootPID = this.getTaskId();
   setTitle(getPBMApplication().getRegion().formalName + " " + getString(R.string.app_name));
   setContentView(R.layout.main);
   getSupportActionBar().setIcon(R.mipmap.ic_launcher);
   getSupportActionBar().setDisplayShowHomeEnabled(true);
 }
Example #2
0
  @Override
  protected void onStart() {
    super.onStart();

    PBMApplication app = getPBMApplication();
    final LocationManager lm = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
    Region region = app.getRegion(getSharedPreferences(PREFS_NAME, 0).getInt("region", -1));

    final List<String> mainMenuItems = new ArrayList<>();
    if (ActivityCompat.checkSelfPermission(this, android.Manifest.permission.ACCESS_FINE_LOCATION)
            == PackageManager.PERMISSION_GRANTED
        && ActivityCompat.checkSelfPermission(
                this, android.Manifest.permission.ACCESS_COARSE_LOCATION)
            == PackageManager.PERMISSION_GRANTED) {
      if (lm.isProviderEnabled(LocationManager.GPS_PROVIDER)) {
        mainMenuItems.add(CLOSEST_LOCATIONS);
      } else {
        if (lm.isProviderEnabled(LocationManager.NETWORK_PROVIDER)) {
          mainMenuItems.add(CLOSEST_LOCATIONS);
        }
      }
    }

    mainMenuItems.add(LOOKUP_BY_LOCATION);
    mainMenuItems.add(LOOKUP_BY_MACHINE);
    mainMenuItems.add(LOOKUP_BY_CITY);

    if (app.getZones().values().size() > 0) {
      mainMenuItems.add(LOOKUP_BY_ZONE);
    }

    if (app.getOperators().values().size() > 0) {
      mainMenuItems.add(LOOKUP_BY_OPERATOR);
    }

    if (region != null && region.locationTypes(this) != null) {
      mainMenuItems.add(LOOKUP_BY_LOCATION_TYPE);
    }

    mainMenuItems.add(RECENTLY_ADDED);
    mainMenuItems.add(RECENT_HIGH_SCORES);
    mainMenuItems.add(EVENTS);

    if (region != null && region.motd != null && !(region.motd.equals(""))) {
      Toast.makeText(getBaseContext(), region.motd, Toast.LENGTH_LONG).show();
    }

    ListView table = (ListView) findViewById(R.id.maintable);
    final ArrayAdapter<String> adapter =
        new ArrayAdapter<>(this, R.layout.custom_list_item_1, mainMenuItems);

    table.setOnItemClickListener(
        new OnItemClickListener() {
          public void onItemClick(
              AdapterView<?> parentView, View selectedView, int position, long id) {
            Intent intent = new Intent();
            String menuItem = adapter.getItem(position);

            switch (menuItem) {
              case LOOKUP_BY_LOCATION:
                intent.setClassName("com.pbm", "com.pbm.LocationLookupDetail");
                break;
              case LOOKUP_BY_MACHINE:
                intent.setClassName("com.pbm", "com.pbm.LookupByMachineList");
                break;
              case LOOKUP_BY_CITY:
                intent.setClassName("com.pbm", "com.pbm.LookupByCity");
                break;
              case LOOKUP_BY_ZONE:
                intent.setClassName("com.pbm", "com.pbm.LookupByZoneList");
                break;
              case LOOKUP_BY_OPERATOR:
                intent.setClassName("com.pbm", "com.pbm.LookupByOperator");
                break;
              case RECENTLY_ADDED:
                intent.setClassName("com.pbm", "com.pbm.RecentlyAdded");
                break;
              case RECENT_HIGH_SCORES:
                intent.setClassName("com.pbm", "com.pbm.RecentScores");
                break;
              case EVENTS:
                intent.setClassName("com.pbm", "com.pbm.Events");
                break;
              case CLOSEST_LOCATIONS:
                intent.setClassName("com.pbm", "com.pbm.CloseLocations");
                break;
              case LOOKUP_BY_LOCATION_TYPE:
                intent.setClassName("com.pbm", "com.pbm.LookupByLocationType");
                break;
              default:
                intent.setClassName("com.pbm", "com.pbm.PBMMenu");
                break;
            }

            startActivityForResult(intent, MENU_RESULT);
          }
        });

    table.setAdapter(adapter);
  }