making a few adjustments to the APIs before the freeze

Bug 143248 r=conrad sr=attinasi


git-svn-id: svn://10.0.0.236/trunk@121197 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
rods%netscape.com
2002-05-09 22:02:44 +00:00
parent 9450047bd3
commit e97a493be3
20 changed files with 71 additions and 20 deletions

View File

@@ -37,12 +37,11 @@
*
* ***** END LICENSE BLOCK ***** */
#include "nsISupports.idl"
#include "domstubs.idl"
#include "nsIPrompt.idl"
#include "nsIWebProgressListener.idl"
interface nsIDOMWindowInternal;
interface nsIObserver;
interface nsIPrompt;
[scriptable, uuid(7E46BC35-FB7D-4b45-AB35-82FD61015380)]
interface nsIPrintProgress: nsIWebProgressListener {
@@ -65,6 +64,10 @@ interface nsIPrintProgress: nsIWebProgressListener {
/* 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();
/* Retrive the prompter, needed to display modal dialog on top of progress dialog */
nsIPrompt getPrompter();

View File

@@ -6340,7 +6340,8 @@ void DocumentViewerImpl::CheckForHiddenFrameSetFrames()
* PrintPreview: See the design spec that is attached to Bug 107562
*/
NS_IMETHODIMP
DocumentViewerImpl::PrintPreview(nsIPrintSettings* aPrintSettings)
DocumentViewerImpl::PrintPreview(nsIPrintSettings* aPrintSettings,
nsIWebProgressListener* aWebProgressListener)
{
if (!mPresShell) {
// A frame that's not displayed can't be printed!
@@ -6702,7 +6703,7 @@ DocumentViewerImpl::DoPrintProgress(PRBool aIsForPrinting)
// If we don't get a service, that's ok, then just don't show progress
if (mPrt->mShowProgressDialog) {
PRBool notifyOnOpen;
nsresult rv = printPromptService->ShowProgress(domWin, this, mPrt->mPrintSettings, nsnull, getter_AddRefs(mPrt->mPrintProgressListener), getter_AddRefs(mPrt->mPrintProgressParams), &notifyOnOpen);
nsresult rv = printPromptService->ShowProgress(domWin, this, mPrt->mPrintSettings, nsnull, PR_TRUE, getter_AddRefs(mPrt->mPrintProgressListener), getter_AddRefs(mPrt->mPrintProgressParams), &notifyOnOpen);
if (NS_SUCCEEDED(rv)) {
mPrt->mShowProgressDialog = mPrt->mPrintProgressListener != nsnull && mPrt->mPrintProgressParams != nsnull;

View File

@@ -156,14 +156,18 @@ interface nsIPrintingPrompt : nsISupports
* @param webBrowserPrint - represents the document to be printed
* @param printSettings - PrintSettings for print "job"
* @param openDialogObserver - an observer that will be notifed when the dialog is opened
* @param isForPrinting - true - for printing, false for print preview
* @param webProgressListener - additional listener can be registered for progress notifications
* @param printProgressParams - parameter object for passing progress state
* @param notifyOnOpen - this indicates that the observer will be notified when the progress
* dialog has been opened
* dialog has been opened. If false is returned it means the observer
* (usually the caller) shouldn't wait
* For Print Preview Progress there is intermediate progress
*/
void showProgress(in nsIWebBrowserPrint webBrowserPrint,
in nsIPrintSettings printSettings,
in nsIObserver openDialogObserver,
in boolean isForPrinting,
out nsIWebProgressListener webProgressListener,
out nsIPrintProgressParams printProgressParams,
out boolean notifyOnOpen);

View File

@@ -153,15 +153,19 @@ interface nsIPrintingPromptService : nsISupports
* @param webBrowserPrint - represents the document to be printed
* @param printSettings - PrintSettings for print "job"
* @param openDialogObserver - an observer that will be notifed when the dialog is opened
* @param isForPrinting - true - for printing, false for print preview
* @param webProgressListener - additional listener can be registered for progress notifications
* @param printProgressParams - parameter object for passing progress state
* @param notifyOnOpen - this indicates that the observer will be notified when the progress
* dialog has been opened
* dialog has been opened. If false is returned it means the observer
* (usually the caller) shouldn't wait
* For Print Preview Progress there is intermediate progress
*/
void showProgress(in nsIDOMWindow parent,
in nsIWebBrowserPrint webBrowserPrint,
in nsIPrintSettings printSettings,
in nsIObserver openDialogObserver,
in boolean isForPrinting,
out nsIWebProgressListener webProgressListener,
out nsIPrintProgressParams printProgressParams,
out boolean notifyOnOpen);

View File

@@ -18,6 +18,7 @@
*
* Contributor(s):
* Don Cone <dcone@netscape.com>
* Rod Spears <rods@netscape.com>
*/
#include "nsISupports.idl"
@@ -27,7 +28,9 @@ interface nsIPrintSettings;
interface nsIWebProgressListener;
/**
* The nsIWebBrowserPrint
* nsIWebBrowserPrint corresponds to the main interface
* for printing an embedded Gecko web browser window/document
*
*/
[scriptable, uuid(9A7CA4B0-FBBA-11d4-A869-00105A183419)]
interface nsIWebBrowserPrint : nsISupports
@@ -174,15 +177,17 @@ interface nsIWebBrowserPrint : nsISupports
* @return void
*/
void print(in nsIPrintSettings aThePrintSettings,
in nsIWebProgressListener aWPListener);
in nsIWebProgressListener aWPListener);
/**
* Print Preview the specified DOM window
*
* aThePrintOptions - Printer Settings for the print preview
* nsIWebProgressListener - is updated during the printpreview
* @return void
*/
void printPreview(in nsIPrintSettings aThePrintSettings);
void printPreview(in nsIPrintSettings aThePrintSettings,
in nsIWebProgressListener aWPListener);
/**
* Print Preview - Navigates within the window

View File

@@ -183,6 +183,12 @@ NS_IMETHODIMP nsPrintProgress::UnregisterListener(nsIWebProgressListener *listen
return NS_OK;
}
/* void doneIniting (); */
NS_IMETHODIMP nsPrintProgress::DoneIniting()
{
return NS_OK;
}
/* void onStateChange (in nsIWebProgress aWebProgress, in nsIRequest aRequest, in long aStateFlags, in unsigned long aStatus); */
NS_IMETHODIMP nsPrintProgress::OnStateChange(nsIWebProgress *aWebProgress, nsIRequest *aRequest, PRInt32 aStateFlags, PRUint32 aStatus)
{

View File

@@ -417,6 +417,7 @@ nsPrintingPromptService::ShowProgress(nsIDOMWindow* parent,
nsIWebBrowserPrint* webBrowserPrint, // ok to be null
nsIPrintSettings* printSettings, // ok to be null
nsIObserver* openDialogObserver, // ok to be null
PRBool isForPrinting,
nsIWebProgressListener** webProgressListener,
nsIPrintProgressParams** printProgressParams,
PRBool* notifyOnOpen)

View File

@@ -266,6 +266,7 @@ nsPrintingPromptService::ShowProgress(nsIDOMWindow* parent,
nsIWebBrowserPrint* webBrowserPrint, // ok to be null
nsIPrintSettings* printSettings, // ok to be null
nsIObserver* openDialogObserver, // ok to be null
PRBool isForPrinting,
nsIWebProgressListener** webProgressListener,
nsIPrintProgressParams** printProgressParams,
PRBool* notifyOnOpen)

View File

@@ -183,6 +183,12 @@ NS_IMETHODIMP nsPrintProgress::UnregisterListener(nsIWebProgressListener *listen
return NS_OK;
}
/* void doneIniting (); */
NS_IMETHODIMP nsPrintProgress::DoneIniting()
{
return NS_OK;
}
/* void onStateChange (in nsIWebProgress aWebProgress, in nsIRequest aRequest, in long aStateFlags, in unsigned long aStatus); */
NS_IMETHODIMP nsPrintProgress::OnStateChange(nsIWebProgress *aWebProgress, nsIRequest *aRequest, PRInt32 aStateFlags, PRUint32 aStatus)
{

View File

@@ -131,12 +131,13 @@ nsPrintingPromptService::ShowPrintDialog(nsIDOMWindow *parent, nsIWebBrowserPrin
return DoDialog(parent, block, webBrowserPrint, printSettings, kPrintDialogURL);
}
/* void showProgress (in nsIDOMWindow parent, in nsIWebBrowserPrint webBrowserPrint, in nsIPrintSettings printSettings, out nsIWebProgressListener webProgressListener); */
/* void showProgress (in nsIDOMWindow parent, in nsIWebBrowserPrint webBrowserPrint, in nsIPrintSettings printSettings, in nsIObserver openDialogObserver, in boolean isForPrinting, out nsIWebProgressListener webProgressListener, out nsIPrintProgressParams printProgressParams, out boolean notifyOnOpen); */
NS_IMETHODIMP
nsPrintingPromptService::ShowProgress(nsIDOMWindow* parent,
nsIWebBrowserPrint* webBrowserPrint, // ok to be null
nsIPrintSettings* printSettings, // ok to be null
nsIObserver* openDialogObserver, // ok to be null
PRBool isForPrinting,
nsIWebProgressListener** webProgressListener,
nsIPrintProgressParams** printProgressParams,
PRBool* notifyOnOpen)

View File

@@ -183,6 +183,12 @@ NS_IMETHODIMP nsPrintProgress::UnregisterListener(nsIWebProgressListener *listen
return NS_OK;
}
/* void doneIniting (); */
NS_IMETHODIMP nsPrintProgress::DoneIniting()
{
return NS_OK;
}
/* void onStateChange (in nsIWebProgress aWebProgress, in nsIRequest aRequest, in long aStateFlags, in unsigned long aStatus); */
NS_IMETHODIMP nsPrintProgress::OnStateChange(nsIWebProgress *aWebProgress, nsIRequest *aRequest, PRInt32 aStateFlags, PRUint32 aStatus)
{

View File

@@ -126,12 +126,13 @@ nsPrintingPromptService::ShowPrintDialog(nsIDOMWindow *parent, nsIWebBrowserPrin
return DoDialog(parent, block, webBrowserPrint, printSettings, kPrintDialogURL);
}
/* void showProgress (in nsIDOMWindow parent, in nsIWebBrowserPrint webBrowserPrint, in nsIPrintSettings printSettings, out nsIWebProgressListener webProgressListener); */
/* void showProgress (in nsIDOMWindow parent, in nsIWebBrowserPrint webBrowserPrint, in nsIPrintSettings printSettings, in nsIObserver openDialogObserver, in boolean isForPrinting, out nsIWebProgressListener webProgressListener, out nsIPrintProgressParams printProgressParams, out boolean notifyOnOpen); */
NS_IMETHODIMP
nsPrintingPromptService::ShowProgress(nsIDOMWindow* parent,
nsIWebBrowserPrint* webBrowserPrint, // ok to be null
nsIPrintSettings* printSettings, // ok to be null
nsIObserver* openDialogObserver, // ok to be null
PRBool isForPrinting,
nsIWebProgressListener** webProgressListener,
nsIPrintProgressParams** printProgressParams,
PRBool* notifyOnOpen)

View File

@@ -184,6 +184,12 @@ NS_IMETHODIMP nsPrintProgress::UnregisterListener(nsIWebProgressListener *listen
return NS_OK;
}
/* void doneIniting (); */
NS_IMETHODIMP nsPrintProgress::DoneIniting()
{
return NS_OK;
}
/* void onStateChange (in nsIWebProgress aWebProgress, in nsIRequest aRequest, in long aStateFlags, in unsigned long aStatus); */
NS_IMETHODIMP nsPrintProgress::OnStateChange(nsIWebProgress *aWebProgress, nsIRequest *aRequest, PRInt32 aStateFlags, PRUint32 aStatus)
{

View File

@@ -192,6 +192,7 @@ nsPrintingPromptService::ShowProgress(nsIDOMWindow* parent,
nsIWebBrowserPrint* webBrowserPrint, // ok to be null
nsIPrintSettings* printSettings, // ok to be null
nsIObserver* openDialogObserver, // ok to be null
PRBool isForPrinting,
nsIWebProgressListener** webProgressListener,
nsIPrintProgressParams** printProgressParams,
PRBool* notifyOnOpen)

View File

@@ -91,9 +91,9 @@ nsPrintingPrompt::ShowPrintDialog(nsIWebBrowserPrint *webBrowserPrint, nsIPrintS
/* void showProgress (in nsIWebBrowserPrint webBrowserPrint, in nsIPrintSettings printSettings, out nsIWebProgressListener webProgressListener, out nsIPrintProgressParams printProgressParams); */
NS_IMETHODIMP
nsPrintingPrompt::ShowProgress(nsIWebBrowserPrint *webBrowserPrint, nsIPrintSettings *printSettings, nsIObserver *openDialogObserver, nsIWebProgressListener **webProgressListener, nsIPrintProgressParams** printProgressParams, PRBool* notifyOnOpen)
nsPrintingPrompt::ShowProgress(nsIWebBrowserPrint *webBrowserPrint, nsIPrintSettings *printSettings, nsIObserver *openDialogObserver, PRBool isForPrinting, nsIWebProgressListener **webProgressListener, nsIPrintProgressParams** printProgressParams, PRBool* notifyOnOpen)
{
return mPromptService->ShowProgress(mParent, webBrowserPrint, printSettings, openDialogObserver, webProgressListener, printProgressParams, notifyOnOpen);
return mPromptService->ShowProgress(mParent, webBrowserPrint, printSettings, openDialogObserver, isForPrinting, webProgressListener, printProgressParams, notifyOnOpen);
}
/* void showPageSetup (in nsIPrintSettings printSettings); */

View File

@@ -1014,7 +1014,7 @@ void CBrowserView::OnFilePrintPreview()
nsCOMPtr<nsIWebBrowserPrint> print(do_GetInterface(mWebBrowser));
if(print)
{
print->PrintPreview(m_PrintSettings);
print->PrintPreview(m_PrintSettings, nsnull);
}
}

View File

@@ -6340,7 +6340,8 @@ void DocumentViewerImpl::CheckForHiddenFrameSetFrames()
* PrintPreview: See the design spec that is attached to Bug 107562
*/
NS_IMETHODIMP
DocumentViewerImpl::PrintPreview(nsIPrintSettings* aPrintSettings)
DocumentViewerImpl::PrintPreview(nsIPrintSettings* aPrintSettings,
nsIWebProgressListener* aWebProgressListener)
{
if (!mPresShell) {
// A frame that's not displayed can't be printed!
@@ -6702,7 +6703,7 @@ DocumentViewerImpl::DoPrintProgress(PRBool aIsForPrinting)
// If we don't get a service, that's ok, then just don't show progress
if (mPrt->mShowProgressDialog) {
PRBool notifyOnOpen;
nsresult rv = printPromptService->ShowProgress(domWin, this, mPrt->mPrintSettings, nsnull, getter_AddRefs(mPrt->mPrintProgressListener), getter_AddRefs(mPrt->mPrintProgressParams), &notifyOnOpen);
nsresult rv = printPromptService->ShowProgress(domWin, this, mPrt->mPrintSettings, nsnull, PR_TRUE, getter_AddRefs(mPrt->mPrintProgressListener), getter_AddRefs(mPrt->mPrintProgressParams), &notifyOnOpen);
if (NS_SUCCEEDED(rv)) {
mPrt->mShowProgressDialog = mPrt->mPrintProgressListener != nsnull && mPrt->mPrintProgressParams != nsnull;

View File

@@ -37,12 +37,11 @@
*
* ***** END LICENSE BLOCK ***** */
#include "nsISupports.idl"
#include "domstubs.idl"
#include "nsIPrompt.idl"
#include "nsIWebProgressListener.idl"
interface nsIDOMWindowInternal;
interface nsIObserver;
interface nsIPrompt;
[scriptable, uuid(7E46BC35-FB7D-4b45-AB35-82FD61015380)]
interface nsIPrintProgress: nsIWebProgressListener {
@@ -65,6 +64,10 @@ interface nsIPrintProgress: nsIWebProgressListener {
/* 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();
/* Retrive the prompter, needed to display modal dialog on top of progress dialog */
nsIPrompt getPrompter();

View File

@@ -871,7 +871,8 @@ PluginViewerImpl::GetGlobalPrintSettings(nsIPrintSettings * *aGlobalPrintSetting
/* void printPreview (in nsIPrintSettings aThePrintSettings); */
NS_IMETHODIMP
PluginViewerImpl::PrintPreview(nsIPrintSettings *aThePrintSettings)
PluginViewerImpl::PrintPreview(nsIPrintSettings *aThePrintSettings,
nsIWebProgressListener* aWebProgressListener)
{
return NS_ERROR_NOT_IMPLEMENTED;
}

View File

@@ -285,7 +285,7 @@ function BrowserPrintSetup()
webBrowserPrint.savePrintSettingsToPrefs(gPrintSettings, false, gPrintSettings.kInitSaveNativeData);
}
if (webBrowserPrint.doingPrintPreview) {
webBrowserPrint.printPreview(gPrintSettings);
webBrowserPrint.printPreview(gPrintSettings, null);
}
}
}