package mil.nga.giat.mage.observation;
import android.app.Dialog;
import android.app.DialogFragment;
import android.content.DialogInterface;
import android.os.Bundle;
import android.support.v7.app.AlertDialog;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.TextView;
import mil.nga.giat.mage.R;
/**
* Created by wnewman on 8/22/16.
*/
public class ImportantDialog extends DialogFragment {
private static String DESCRIPTION = "DESCRIPTION";
public interface OnImportantListener {
void onImportant(String description);
}
private OnImportantListener onImportantListener;
// Empty constructor required for DialogFragment
public ImportantDialog() {
}
public static ImportantDialog newInstance(String description) {
ImportantDialog dialog = new ImportantDialog();
Bundle args = new Bundle();
args.putString(DESCRIPTION, description);
dialog.setArguments(args);
return dialog;
}
public void setOnImportantListener(OnImportantListener onImportantListener) {
this.onImportantListener = onImportantListener;
}
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
LayoutInflater inflater = getActivity().getLayoutInflater();
View view = inflater.inflate(R.layout.fragment_observation_important, null);
String description = getArguments().getString(DESCRIPTION);
final TextView descriptionView = (TextView) view.findViewById(R.id.description);
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity())
.setTitle("Important Observation")
.setView(view);
descriptionView.setText(description);
String positiveText = description == null ? "Flag as Important" : "Update";
builder.setPositiveButton(positiveText, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
if (onImportantListener != null) {
onImportantListener.onImportant(descriptionView.getText().toString());
}
}
})
.setNegativeButton(android.R.string.cancel, null);
return builder.create();
}
}