Beispiel #1
0
  @Override
  public boolean onContextItemSelected(MenuItem item) {
    AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo();
    final ComputerObject computer = (ComputerObject) pcGridAdapter.getItem(info.position);
    switch (item.getItemId()) {
      case PAIR_ID:
        doPair(computer.details);
        return true;

      case UNPAIR_ID:
        doUnpair(computer.details);
        return true;

      case WOL_ID:
        doWakeOnLan(computer.details);
        return true;

      case DELETE_ID:
        if (managerBinder == null) {
          Toast.makeText(
                  PcView.this,
                  getResources().getString(R.string.error_manager_not_running),
                  Toast.LENGTH_LONG)
              .show();
          return true;
        }
        managerBinder.removeComputer(computer.details.name);
        removeComputer(computer.details);
        return true;

      case APP_LIST_ID:
        doAppList(computer.details);
        return true;

      case RESUME_ID:
        if (managerBinder == null) {
          Toast.makeText(
                  PcView.this,
                  getResources().getString(R.string.error_manager_not_running),
                  Toast.LENGTH_LONG)
              .show();
          return true;
        }

        ServerHelper.doStart(
            this,
            new NvApp("app", computer.details.runningGameId),
            computer.details,
            managerBinder);
        return true;

      case QUIT_ID:
        if (managerBinder == null) {
          Toast.makeText(
                  PcView.this,
                  getResources().getString(R.string.error_manager_not_running),
                  Toast.LENGTH_LONG)
              .show();
          return true;
        }

        // Display a confirmation dialog first
        UiHelper.displayQuitConfirmationDialog(
            this,
            new Runnable() {
              @Override
              public void run() {
                ServerHelper.doQuit(
                    PcView.this,
                    ServerHelper.getCurrentAddressFromComputer(computer.details),
                    new NvApp("app", 0),
                    managerBinder,
                    null);
              }
            },
            null);
        return true;

      default:
        return super.onContextItemSelected(item);
    }
  }