package org.ovirt.mobile.movirt.ui.dialogs; import android.app.Activity; import android.app.AlertDialog; import android.app.Dialog; import android.app.DialogFragment; import android.content.DialogInterface; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.widget.CheckBox; import android.widget.TextView; import org.androidannotations.annotations.EFragment; import org.ovirt.mobile.movirt.R; import org.ovirt.mobile.movirt.ui.BooleanListener; /** * Created by suomiy on 15/02/16. */ @EFragment public class PreviewRestoreSnapshotDialogFragment extends DialogFragment { private BooleanListener listenerActivity; public static PreviewRestoreSnapshotDialogFragment newInstance(int actionId, String actionString) { PreviewRestoreSnapshotDialogFragment fragment = new PreviewRestoreSnapshotDialogFragment_(); Bundle args = new Bundle(); args.putInt("actionId", actionId); args.putString("actionString", actionString); fragment.setArguments(args); return fragment; } @Override public void onAttach(Activity activity) { super.onAttach(activity); try { listenerActivity = (BooleanListener) activity; } catch (ClassCastException e) { throw new ClassCastException(activity.toString() + " must implement NewSnapshotListener"); } } @Override public Dialog onCreateDialog(Bundle savedInstanceState) { final int actionId = getArguments().getInt("actionId"); String actionString = getArguments().getString("actionString"); String actionHeader = String.format("%s %s", actionString, getString(R.string.snapshot)); LayoutInflater inflater = getActivity().getLayoutInflater(); final View view = inflater.inflate(R.layout.preview_restore_snapshot_dialog, null); final CheckBox restoreMemory = (CheckBox) view.findViewById(R.id.restore_memory); final TextView textView = (TextView) view.findViewById(R.id.headText); textView.setText(actionHeader); AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); builder.setView(view); builder.setPositiveButton(actionString, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { listenerActivity.onDialogResult(actionId, restoreMemory.isChecked()); } }); builder.setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { dialog.cancel(); } }); return builder.create(); } }