/** Create the custom dialog */
 public CustomDialog create() {
   LayoutInflater inflater =
       (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
   // instantiate the dialog with the custom Theme
   final CustomDialog dialog = new CustomDialog(context, R.style.Dialog);
   View layout = inflater.inflate(R.layout.dialog, null);
   dialog.addContentView(
       layout, new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT));
   // set the dialog title
   ((TextView) layout.findViewById(R.id.title)).setText(title);
   // set the confirm button
   if (positiveButtonText != null) {
     ((Button) layout.findViewById(R.id.positiveButton)).setText(positiveButtonText);
     if (positiveButtonClickListener != null) {
       ((Button) layout.findViewById(R.id.positiveButton))
           .setOnClickListener(
               new View.OnClickListener() {
                 public void onClick(View v) {
                   positiveButtonClickListener.onClick(dialog, DialogInterface.BUTTON_POSITIVE);
                 }
               });
     }
   } else {
     // if no confirm button just set the visibility to GONE
     layout.findViewById(R.id.positiveButton).setVisibility(View.GONE);
   }
   // set the cancel button
   if (negativeButtonText != null) {
     ((Button) layout.findViewById(R.id.negativeButton)).setText(negativeButtonText);
     if (negativeButtonClickListener != null) {
       ((Button) layout.findViewById(R.id.negativeButton))
           .setOnClickListener(
               new View.OnClickListener() {
                 public void onClick(View v) {
                   negativeButtonClickListener.onClick(dialog, DialogInterface.BUTTON_NEGATIVE);
                 }
               });
     }
   } else {
     // if no confirm button just set the visibility to GONE
     layout.findViewById(R.id.negativeButton).setVisibility(View.GONE);
   }
   // set the content message
   if (message != null) {
     ((TextView) layout.findViewById(R.id.message)).setText(message);
   } else if (contentView != null) {
     // if no message set
     // add the contentView to the dialog body
     ((LinearLayout) layout.findViewById(R.id.content)).removeAllViews();
     ((LinearLayout) layout.findViewById(R.id.content))
         .addView(
             contentView,
             new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
   }
   dialog.setContentView(layout);
   return dialog;
 }