package com.pinecone.technology.mcommerce.learning.android.chapter04.dialog;
import android.app.AlertDialog;
import android.app.Dialog;
import android.app.DialogFragment;
import android.content.DialogInterface;
import android.os.Bundle;
public class ConfirmationDialogFragment extends DialogFragment implements
DialogInterface.OnClickListener {
private ConfirmationDialogFragmentListener listener;
public static ConfirmationDialogFragment newInstance(int title) {
ConfirmationDialogFragment frag = new ConfirmationDialogFragment();
Bundle args = new Bundle();
args.putInt("title", title);
frag.setArguments(args);
return frag;
}
public interface ConfirmationDialogFragmentListener {
public void onPositiveClick();
public void onNegativeClick();
}
public void setConfirmationDialogFragmentListener(
ConfirmationDialogFragmentListener listener) {
this.listener = listener;
}
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
int title = getArguments().getInt("title");
return new AlertDialog.Builder(getActivity())
.setIcon(android.R.drawable.ic_dialog_alert).setTitle(title)
.setPositiveButton(android.R.string.ok, this)
.setNegativeButton(android.R.string.cancel, this).create();
}
@Override
public void onClick(DialogInterface dialog, int which) {
if (listener != null) {
switch (which) {
case DialogInterface.BUTTON_POSITIVE:
listener.onPositiveClick();
default:
listener.onNegativeClick();
}
}
}
}