summaryrefslogtreecommitdiff
path: root/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/model/other/OfflineDownloadRegionDialog.java
blob: 89096a0a6bd60cb2ae3e74aedb3910d81353cf47 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
package com.mapbox.mapboxsdk.testapp.model.other;

import android.app.Activity;
import android.app.Dialog;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.v4.app.DialogFragment;
import android.support.v7.app.AlertDialog;
import android.widget.EditText;

import com.mapbox.mapboxsdk.testapp.R;

import timber.log.Timber;

public class OfflineDownloadRegionDialog extends DialogFragment {

  public interface DownloadRegionDialogListener {
    void onDownloadRegionDialogPositiveClick(String regionName);
  }

  DownloadRegionDialogListener listener;

  @Override
  public void onAttach(Activity activity) {
    super.onAttach(activity);
    listener = (DownloadRegionDialogListener) activity;
  }

  @NonNull
  @Override
  public Dialog onCreateDialog(Bundle savedInstanceState) {
    AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());

    // Let the user choose a name for the region
    final EditText regionNameEdit = new EditText(getActivity());

    builder.setTitle("Choose a name for the region")
      .setIcon(R.drawable.ic_airplanemode_active_black)
      .setView(regionNameEdit)
      .setPositiveButton("Start", (dialog, which) -> {
        String regionName = regionNameEdit.getText().toString();
        listener.onDownloadRegionDialogPositiveClick(regionName);
      }).setNegativeButton("Cancel", (dialog, which) -> Timber.d("Download cancelled."));

    return builder.create();
  }
}