Source code

Revision control

Copy as Markdown

Other Tools

/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#ifndef nsNSSDialogHelper_h
#define nsNSSDialogHelper_h
#include "nsError.h"
class mozIDOMWindowProxy;
class nsISupports;
/**
* Helper class that uses the window watcher service to open a standard dialog,
* with or without a parent context.
*/
class nsNSSDialogHelper {
public:
/**
* Opens a XUL dialog.
*
* @param window
* Parent window of the dialog, or nullptr to signal no parent.
* @param url
* URL to the XUL dialog.
* @param params
* Parameters to pass to the dialog. Same semantics as the
* nsIWindowWatcher.openWindow() |aArguments| parameter.
* @param modal
* true if the dialog should be modal, false otherwise.
* @return The result of opening the dialog.
*/
static nsresult openDialog(mozIDOMWindowProxy* window, const char* url,
nsISupports* params, bool modal = true);
};
#endif // nsNSSDialogHelper_h