/*
 * DO NOT EDIT.  THIS FILE IS GENERATED FROM nsICommonDialogs.idl
 */

#ifndef __gen_nsICommonDialogs_h__
#define __gen_nsICommonDialogs_h__

#include "nsISupports.h"
#include "nsIDialogParamBlock.h"
#include "domstubs.h"

class nsIFactory;
#define NS_CommonDialog_CID \
{ 0xc01ad084, 0x4915, 0x11d3, { 0xb7, 0xa0, 0x85, 0xcf, 0x55, 0xc3, 0x52, 0x3c } }

/* starting interface:    nsICommonDialogs */
#define NS_ICOMMONDIALOGS_IID_STR "c01ad082-4915-11d3-b7a0-85cf55c3523c"

#define NS_ICOMMONDIALOGS_IID \
  {0xc01ad082, 0x4915, 0x11d3, \
    { 0xb7, 0xa0, 0x85, 0xcf, 0x55, 0xc3, 0x52, 0x3c }}

class nsICommonDialogs : public nsISupports {
 public: 

  NS_DEFINE_STATIC_IID_ACCESSOR(NS_ICOMMONDIALOGS_IID)

  enum {  eMsg =0, eCheckboxMsg =1, eIconURL =2 , eTitleMessage =3, eEditfield1Msg =4, eEditfield2Msg =5, eEditfield1Value = 6, eEditfield2Value = 7,
		eButton0Text = 8, eButton1Text = 9, eButton2Text =10, eButton3Text = 11,eDialogTitle = 12 };
enum { eButtonPressed = 0, eCheckboxState = 1, eNumberButtons = 2, eNumberEditfields =3, eEditField1Password =4 };
  /**
     * Puts up an alert dialog with an OK button.
     */
  /* void Alert (in nsIDOMWindowInternal inParent, in wstring inDialogTitle, in wstring inMsg); */
  NS_IMETHOD Alert(nsIDOMWindowInternal *inParent, const PRUnichar *inDialogTitle, const PRUnichar *inMsg) = 0;

  /**
     * Puts up a dialog with OK button, and
     * a message with a single checkbox.
     * @return the value of the checkbox.
     */
  /* void AlertCheck (in nsIDOMWindowInternal inParent, in wstring inDialogTitle, in wstring inMsg, in wstring inCheckMsg, inout boolean outCheckValue); */
  NS_IMETHOD AlertCheck(nsIDOMWindowInternal *inParent, const PRUnichar *inDialogTitle, const PRUnichar *inMsg, const PRUnichar *inCheckMsg, PRBool *outCheckValue) = 0;

  /**
     * Puts up a dialog with OK and Cancel buttons.
     * @return true for OK, false for Cancel
     */
  /* boolean Confirm (in nsIDOMWindowInternal inParent, in wstring inDialogTitle, in wstring inMsg); */
  NS_IMETHOD Confirm(nsIDOMWindowInternal *inParent, const PRUnichar *inDialogTitle, const PRUnichar *inMsg, PRBool *_retval) = 0;

  /**
     * Puts up a dialog with OK and Cancel buttons, and
     * a message with a single checkbox.
     * @return true for OK, false for Cancel
     */
  /* boolean ConfirmCheck (in nsIDOMWindowInternal inParent, in wstring inDialogTitle, in wstring inMsg, in wstring inCheckMsg, inout boolean outCheckValue); */
  NS_IMETHOD ConfirmCheck(nsIDOMWindowInternal *inParent, const PRUnichar *inDialogTitle, const PRUnichar *inMsg, const PRUnichar *inCheckMsg, PRBool *outCheckValue, PRBool *_retval) = 0;

  /**
     * Puts up a text input dialog with OK and Cancel buttons.
     * @return true for OK, false for Cancel
     */
  /* boolean Prompt (in nsIDOMWindowInternal inParent, in wstring inDialogTitle, in wstring inMsg, in wstring inDefaultText, out wstring result); */
  NS_IMETHOD Prompt(nsIDOMWindowInternal *inParent, const PRUnichar *inDialogTitle, const PRUnichar *inMsg, const PRUnichar *inDefaultText, PRUnichar **result, PRBool *_retval) = 0;

  /**
     * Puts up a username/password dialog with OK and Cancel buttons.
     * @return true for OK, false for Cancel
     */
  /* boolean PromptUsernameAndPassword (in nsIDOMWindowInternal inParent, in wstring inDialogTitle, in wstring inMsg, out wstring outUser, out wstring outPassword); */
  NS_IMETHOD PromptUsernameAndPassword(nsIDOMWindowInternal *inParent, const PRUnichar *inDialogTitle, const PRUnichar *inMsg, PRUnichar **outUser, PRUnichar **outPassword, PRBool *_retval) = 0;

  /**
     * Puts up a password dialog with OK and Cancel buttons.
     * @return true for OK, false for Cancel
     */
  /* boolean PromptPassword (in nsIDOMWindowInternal inParent, in wstring inDialogTitle, in wstring inMsg, out wstring outPassword); */
  NS_IMETHOD PromptPassword(nsIDOMWindowInternal *inParent, const PRUnichar *inDialogTitle, const PRUnichar *inMsg, PRUnichar **outPassword, PRBool *_retval) = 0;

  /* boolean Select (in nsIDOMWindowInternal inParent, in wstring inDialogTitle, in wstring inMsg, in PRUint32 inCount, [array, size_is (inCount)] in wstring inList, out long outSelection); */
  NS_IMETHOD Select(nsIDOMWindowInternal *inParent, const PRUnichar *inDialogTitle, const PRUnichar *inMsg, PRUint32 inCount, const PRUnichar **inList, PRInt32 *outSelection, PRBool *_retval) = 0;

  /**
     * Put up a universal dialog
     */
  /* void UniversalDialog (in nsIDOMWindowInternal inParent, in wstring inTitleMessage, in wstring inDialogTitle, in wstring inMsg, in wstring inCheckboxMsg, in wstring inButton0Text, in wstring inButton1Text, in wstring inButton2Text, in wstring inButton3Text, in wstring inEditfield1Msg, in wstring inEditfield2Msg, inout wstring inEditfield1Value, inout wstring inEditfield2Value, in wstring inIConURL, inout boolean outCheckboxState, in PRInt32 inNumberButtons, in PRInt32 inNumberEditfields, in PRInt32 inEditField1Password, out PRInt32 outButtonPressed); */
  NS_IMETHOD UniversalDialog(nsIDOMWindowInternal *inParent, const PRUnichar *inTitleMessage, const PRUnichar *inDialogTitle, const PRUnichar *inMsg, const PRUnichar *inCheckboxMsg, const PRUnichar *inButton0Text, const PRUnichar *inButton1Text, const PRUnichar *inButton2Text, const PRUnichar *inButton3Text, const PRUnichar *inEditfield1Msg, const PRUnichar *inEditfield2Msg, PRUnichar **inEditfield1Value, PRUnichar **inEditfield2Value, const PRUnichar *inIConURL, PRBool *outCheckboxState, PRInt32 inNumberButtons, PRInt32 inNumberEditfields, PRInt32 inEditField1Password, PRInt32 *outButtonPressed) = 0;

  /* void DoDialog (in nsIDOMWindowInternal inParent, in nsIDialogParamBlock ioParamBlock, in string inChromeURL); */
  NS_IMETHOD DoDialog(nsIDOMWindowInternal *inParent, nsIDialogParamBlock *ioParamBlock, const char *inChromeURL) = 0;

};

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSICOMMONDIALOGS \
  NS_IMETHOD Alert(nsIDOMWindowInternal *inParent, const PRUnichar *inDialogTitle, const PRUnichar *inMsg); \
  NS_IMETHOD AlertCheck(nsIDOMWindowInternal *inParent, const PRUnichar *inDialogTitle, const PRUnichar *inMsg, const PRUnichar *inCheckMsg, PRBool *outCheckValue); \
  NS_IMETHOD Confirm(nsIDOMWindowInternal *inParent, const PRUnichar *inDialogTitle, const PRUnichar *inMsg, PRBool *_retval); \
  NS_IMETHOD ConfirmCheck(nsIDOMWindowInternal *inParent, const PRUnichar *inDialogTitle, const PRUnichar *inMsg, const PRUnichar *inCheckMsg, PRBool *outCheckValue, PRBool *_retval); \
  NS_IMETHOD Prompt(nsIDOMWindowInternal *inParent, const PRUnichar *inDialogTitle, const PRUnichar *inMsg, const PRUnichar *inDefaultText, PRUnichar **result, PRBool *_retval); \
  NS_IMETHOD PromptUsernameAndPassword(nsIDOMWindowInternal *inParent, const PRUnichar *inDialogTitle, const PRUnichar *inMsg, PRUnichar **outUser, PRUnichar **outPassword, PRBool *_retval); \
  NS_IMETHOD PromptPassword(nsIDOMWindowInternal *inParent, const PRUnichar *inDialogTitle, const PRUnichar *inMsg, PRUnichar **outPassword, PRBool *_retval); \
  NS_IMETHOD Select(nsIDOMWindowInternal *inParent, const PRUnichar *inDialogTitle, const PRUnichar *inMsg, PRUint32 inCount, const PRUnichar **inList, PRInt32 *outSelection, PRBool *_retval); \
  NS_IMETHOD UniversalDialog(nsIDOMWindowInternal *inParent, const PRUnichar *inTitleMessage, const PRUnichar *inDialogTitle, const PRUnichar *inMsg, const PRUnichar *inCheckboxMsg, const PRUnichar *inButton0Text, const PRUnichar *inButton1Text, const PRUnichar *inButton2Text, const PRUnichar *inButton3Text, const PRUnichar *inEditfield1Msg, const PRUnichar *inEditfield2Msg, PRUnichar **inEditfield1Value, PRUnichar **inEditfield2Value, const PRUnichar *inIConURL, PRBool *outCheckboxState, PRInt32 inNumberButtons, PRInt32 inNumberEditfields, PRInt32 inEditField1Password, PRInt32 *outButtonPressed); \
  NS_IMETHOD DoDialog(nsIDOMWindowInternal *inParent, nsIDialogParamBlock *ioParamBlock, const char *inChromeURL); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSICOMMONDIALOGS(_to) \
  NS_IMETHOD Alert(nsIDOMWindowInternal *inParent, const PRUnichar *inDialogTitle, const PRUnichar *inMsg) { return _to ## Alert(inParent, inDialogTitle, inMsg); } \
  NS_IMETHOD AlertCheck(nsIDOMWindowInternal *inParent, const PRUnichar *inDialogTitle, const PRUnichar *inMsg, const PRUnichar *inCheckMsg, PRBool *outCheckValue) { return _to ## AlertCheck(inParent, inDialogTitle, inMsg, inCheckMsg, outCheckValue); } \
  NS_IMETHOD Confirm(nsIDOMWindowInternal *inParent, const PRUnichar *inDialogTitle, const PRUnichar *inMsg, PRBool *_retval) { return _to ## Confirm(inParent, inDialogTitle, inMsg, _retval); } \
  NS_IMETHOD ConfirmCheck(nsIDOMWindowInternal *inParent, const PRUnichar *inDialogTitle, const PRUnichar *inMsg, const PRUnichar *inCheckMsg, PRBool *outCheckValue, PRBool *_retval) { return _to ## ConfirmCheck(inParent, inDialogTitle, inMsg, inCheckMsg, outCheckValue, _retval); } \
  NS_IMETHOD Prompt(nsIDOMWindowInternal *inParent, const PRUnichar *inDialogTitle, const PRUnichar *inMsg, const PRUnichar *inDefaultText, PRUnichar **result, PRBool *_retval) { return _to ## Prompt(inParent, inDialogTitle, inMsg, inDefaultText, result, _retval); } \
  NS_IMETHOD PromptUsernameAndPassword(nsIDOMWindowInternal *inParent, const PRUnichar *inDialogTitle, const PRUnichar *inMsg, PRUnichar **outUser, PRUnichar **outPassword, PRBool *_retval) { return _to ## PromptUsernameAndPassword(inParent, inDialogTitle, inMsg, outUser, outPassword, _retval); } \
  NS_IMETHOD PromptPassword(nsIDOMWindowInternal *inParent, const PRUnichar *inDialogTitle, const PRUnichar *inMsg, PRUnichar **outPassword, PRBool *_retval) { return _to ## PromptPassword(inParent, inDialogTitle, inMsg, outPassword, _retval); } \
  NS_IMETHOD Select(nsIDOMWindowInternal *inParent, const PRUnichar *inDialogTitle, const PRUnichar *inMsg, PRUint32 inCount, const PRUnichar **inList, PRInt32 *outSelection, PRBool *_retval) { return _to ## Select(inParent, inDialogTitle, inMsg, inCount, inList, outSelection, _retval); } \
  NS_IMETHOD UniversalDialog(nsIDOMWindowInternal *inParent, const PRUnichar *inTitleMessage, const PRUnichar *inDialogTitle, const PRUnichar *inMsg, const PRUnichar *inCheckboxMsg, const PRUnichar *inButton0Text, const PRUnichar *inButton1Text, const PRUnichar *inButton2Text, const PRUnichar *inButton3Text, const PRUnichar *inEditfield1Msg, const PRUnichar *inEditfield2Msg, PRUnichar **inEditfield1Value, PRUnichar **inEditfield2Value, const PRUnichar *inIConURL, PRBool *outCheckboxState, PRInt32 inNumberButtons, PRInt32 inNumberEditfields, PRInt32 inEditField1Password, PRInt32 *outButtonPressed) { return _to ## UniversalDialog(inParent, inTitleMessage, inDialogTitle, inMsg, inCheckboxMsg, inButton0Text, inButton1Text, inButton2Text, inButton3Text, inEditfield1Msg, inEditfield2Msg, inEditfield1Value, inEditfield2Value, inIConURL, outCheckboxState, inNumberButtons, inNumberEditfields, inEditField1Password, outButtonPressed); } \
  NS_IMETHOD DoDialog(nsIDOMWindowInternal *inParent, nsIDialogParamBlock *ioParamBlock, const char *inChromeURL) { return _to ## DoDialog(inParent, ioParamBlock, inChromeURL); } 

#if 0
/* Use the code below as a template for the implementation class for this interface. */

/* Header file */
class nsCommonDialogs : public nsICommonDialogs
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSICOMMONDIALOGS

  nsCommonDialogs();
  virtual ~nsCommonDialogs();
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(nsCommonDialogs, nsICommonDialogs)

nsCommonDialogs::nsCommonDialogs()
{
  NS_INIT_ISUPPORTS();
  /* member initializers and constructor code */
}

nsCommonDialogs::~nsCommonDialogs()
{
  /* destructor code */
}

/* void Alert (in nsIDOMWindowInternal inParent, in wstring inDialogTitle, in wstring inMsg); */
NS_IMETHODIMP nsCommonDialogs::Alert(nsIDOMWindowInternal *inParent, const PRUnichar *inDialogTitle, const PRUnichar *inMsg)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void AlertCheck (in nsIDOMWindowInternal inParent, in wstring inDialogTitle, in wstring inMsg, in wstring inCheckMsg, inout boolean outCheckValue); */
NS_IMETHODIMP nsCommonDialogs::AlertCheck(nsIDOMWindowInternal *inParent, const PRUnichar *inDialogTitle, const PRUnichar *inMsg, const PRUnichar *inCheckMsg, PRBool *outCheckValue)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* boolean Confirm (in nsIDOMWindowInternal inParent, in wstring inDialogTitle, in wstring inMsg); */
NS_IMETHODIMP nsCommonDialogs::Confirm(nsIDOMWindowInternal *inParent, const PRUnichar *inDialogTitle, const PRUnichar *inMsg, PRBool *_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* boolean ConfirmCheck (in nsIDOMWindowInternal inParent, in wstring inDialogTitle, in wstring inMsg, in wstring inCheckMsg, inout boolean outCheckValue); */
NS_IMETHODIMP nsCommonDialogs::ConfirmCheck(nsIDOMWindowInternal *inParent, const PRUnichar *inDialogTitle, const PRUnichar *inMsg, const PRUnichar *inCheckMsg, PRBool *outCheckValue, PRBool *_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* boolean Prompt (in nsIDOMWindowInternal inParent, in wstring inDialogTitle, in wstring inMsg, in wstring inDefaultText, out wstring result); */
NS_IMETHODIMP nsCommonDialogs::Prompt(nsIDOMWindowInternal *inParent, const PRUnichar *inDialogTitle, const PRUnichar *inMsg, const PRUnichar *inDefaultText, PRUnichar **result, PRBool *_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* boolean PromptUsernameAndPassword (in nsIDOMWindowInternal inParent, in wstring inDialogTitle, in wstring inMsg, out wstring outUser, out wstring outPassword); */
NS_IMETHODIMP nsCommonDialogs::PromptUsernameAndPassword(nsIDOMWindowInternal *inParent, const PRUnichar *inDialogTitle, const PRUnichar *inMsg, PRUnichar **outUser, PRUnichar **outPassword, PRBool *_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* boolean PromptPassword (in nsIDOMWindowInternal inParent, in wstring inDialogTitle, in wstring inMsg, out wstring outPassword); */
NS_IMETHODIMP nsCommonDialogs::PromptPassword(nsIDOMWindowInternal *inParent, const PRUnichar *inDialogTitle, const PRUnichar *inMsg, PRUnichar **outPassword, PRBool *_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* boolean Select (in nsIDOMWindowInternal inParent, in wstring inDialogTitle, in wstring inMsg, in PRUint32 inCount, [array, size_is (inCount)] in wstring inList, out long outSelection); */
NS_IMETHODIMP nsCommonDialogs::Select(nsIDOMWindowInternal *inParent, const PRUnichar *inDialogTitle, const PRUnichar *inMsg, PRUint32 inCount, const PRUnichar **inList, PRInt32 *outSelection, PRBool *_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void UniversalDialog (in nsIDOMWindowInternal inParent, in wstring inTitleMessage, in wstring inDialogTitle, in wstring inMsg, in wstring inCheckboxMsg, in wstring inButton0Text, in wstring inButton1Text, in wstring inButton2Text, in wstring inButton3Text, in wstring inEditfield1Msg, in wstring inEditfield2Msg, inout wstring inEditfield1Value, inout wstring inEditfield2Value, in wstring inIConURL, inout boolean outCheckboxState, in PRInt32 inNumberButtons, in PRInt32 inNumberEditfields, in PRInt32 inEditField1Password, out PRInt32 outButtonPressed); */
NS_IMETHODIMP nsCommonDialogs::UniversalDialog(nsIDOMWindowInternal *inParent, const PRUnichar *inTitleMessage, const PRUnichar *inDialogTitle, const PRUnichar *inMsg, const PRUnichar *inCheckboxMsg, const PRUnichar *inButton0Text, const PRUnichar *inButton1Text, const PRUnichar *inButton2Text, const PRUnichar *inButton3Text, const PRUnichar *inEditfield1Msg, const PRUnichar *inEditfield2Msg, PRUnichar **inEditfield1Value, PRUnichar **inEditfield2Value, const PRUnichar *inIConURL, PRBool *outCheckboxState, PRInt32 inNumberButtons, PRInt32 inNumberEditfields, PRInt32 inEditField1Password, PRInt32 *outButtonPressed)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void DoDialog (in nsIDOMWindowInternal inParent, in nsIDialogParamBlock ioParamBlock, in string inChromeURL); */
NS_IMETHODIMP nsCommonDialogs::DoDialog(nsIDOMWindowInternal *inParent, nsIDialogParamBlock *ioParamBlock, const char *inChromeURL)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* End of implementation class template. */
#endif

extern nsresult NS_NewCommonDialogsFactory(nsIFactory** aResult);

#endif /* __gen_nsICommonDialogs_h__ */
