layout/printing/nsIPrintProgress.idl
author Matteo Ferretti <mferretti@mozilla.com>
Thu, 17 Mar 2016 10:59:39 -0400
changeset 291317 5fd9689bcac1185b7c228ac3d1bdd1eadb5c9f00
parent 282388 e22b3043887ed36bf2c634c2924a7c8d39d226b1
child 475219 020c8c871c0d3b3920fe95935cfef06501976c0f
permissions -rw-r--r--
Bug 1139187 - Unit Test for Geometry Editor; r=pbro MozReview-Commit-ID: 9smoBjNt1St

/* -*- Mode: C++; tab-width: 4; 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/. */
#include "nsIWebProgressListener.idl"

interface mozIDOMWindowProxy;
interface nsIObserver;
interface nsIPrompt;

[scriptable, uuid(05f4fb88-e568-4d35-b394-ce0aa3eea6fc)]
interface nsIPrintProgress: nsIWebProgressListener {

  /* Open the progress dialog
     you can specify parameters through an xpcom object
  */
  void openProgressDialog(in mozIDOMWindowProxy parent, 
                          in string dialogURL, 
                          in nsISupports parameters, 
                          in nsIObserver openDialogObserver,
                          out boolean notifyOnOpen);
  
  /* Close the progress dialog */
  void closeProgressDialog(in boolean forceClose);
  
  /* Register a Web Progress Listener */
  void registerListener(in nsIWebProgressListener listener);

  /* Unregister a Web Progress Listener */
  void unregisterListener(in nsIWebProgressListener listener);
  
  /* This method is called after the dialog that shows the progress has been shown 
  */
  void doneIniting();
  
  /* Retrieve the prompter, needed to display modal dialog on top of progress dialog */
  nsIPrompt getPrompter();

  /* Indicated if the user asked to cancel the current process */
  attribute boolean processCanceledByUser;
};