blob: 11584f894203e06640f58d01beef7eccb18f3c04 [file] [log] [blame]
package com.android.gallery3d.video;
import android.app.AlertDialog;
import android.app.Dialog;
import android.app.DialogFragment;
import android.content.DialogInterface;
import android.os.Bundle;
/** M: use DialogFragment to show Dialog */
public class StepOptionDialogFragment extends DialogFragment implements
DialogInterface.OnClickListener{
private static final String KEY_ITEM_ARRAY = "itemArray";
private static final String KEY_TITLE = "title";
private static final String KEY_DEFAULT_SELECT = "nowSelect";
private DialogInterface.OnClickListener mClickListener = null;
/**
* M: create a instance of SelectDialogFragment
*
* @param itemArrayID
* the resource id array of strings that show in list
* @param sufffixArray
* the suffix array at the right of list item
* @param titleID
* the resource id of title string
* @param nowSelect
* the current select item index
* @return the instance of SelectDialogFragment
*/
public static StepOptionDialogFragment newInstance(int[] itemArrayID,
int titleID, int nowSelect) {
StepOptionDialogFragment frag = new StepOptionDialogFragment();
Bundle args = new Bundle();
args.putIntArray(KEY_ITEM_ARRAY, itemArrayID);
args.putInt(KEY_TITLE, titleID);
args.putInt(KEY_DEFAULT_SELECT, nowSelect);
frag.setArguments(args);
return frag;
}
@Override
/**
* M: create a select dialog
*/
public Dialog onCreateDialog(Bundle savedInstanceState) {
Bundle args = getArguments();
final String title = getString(args.getInt(KEY_TITLE));
final int[] itemArrayID = args.getIntArray(KEY_ITEM_ARRAY);
int arraySize = itemArrayID.length;
CharSequence[] itemArray = new CharSequence[arraySize];
for (int i = 0; i < arraySize; i++) {
itemArray[i] = getString(itemArrayID[i]);
}
AlertDialog.Builder builder = null;
int nowSelect = args.getInt(KEY_DEFAULT_SELECT);
builder = new AlertDialog.Builder(getActivity());
builder.setTitle(title).setSingleChoiceItems(itemArray, nowSelect, this)
.setNegativeButton(getString(android.R.string.cancel), null);
return builder.create();
}
@Override
/**
* M: the process of select an item
*/
public void onClick(DialogInterface arg0, int arg1) {
if (null != mClickListener) {
mClickListener.onClick(arg0, arg1);
}
}
/**
* M: set listener of click items
*
* @param listener
* the listener to be set
*/
public void setOnClickListener(DialogInterface.OnClickListener listener) {
mClickListener = listener;
}
}