From 03d573ae077269617e3fd6d4937eb08a50d17de4 Mon Sep 17 00:00:00 2001 From: "rods%netscape.com" Date: Tue, 3 Nov 1998 17:18:49 +0000 Subject: [PATCH] Added nsXPBaseWindowType for creating either a Window or Dialog git-svn-id: svn://10.0.0.236/trunk@13995 18797224-902f-48f8-a5cc-f745e15eee43 --- .../xpfe/xpviewer/public/nsIXPBaseWindow.h | 26 ++++++++++++++----- mozilla/xpfe/xpviewer/src/nsBrowserWindow.cpp | 4 +-- mozilla/xpfe/xpviewer/src/nsXPBaseWindow.cpp | 6 ++--- 3 files changed, 24 insertions(+), 12 deletions(-) diff --git a/mozilla/xpfe/xpviewer/public/nsIXPBaseWindow.h b/mozilla/xpfe/xpviewer/public/nsIXPBaseWindow.h index 7f5489f755e..408ad7dc601 100644 --- a/mozilla/xpfe/xpviewer/public/nsIXPBaseWindow.h +++ b/mozilla/xpfe/xpviewer/public/nsIXPBaseWindow.h @@ -41,18 +41,30 @@ struct nsRect; #define NS_XPBASE_WINDOW_CID \ { 0x36c1fe51, 0x6f3e, 0x11d2, { 0x8d, 0xca, 0x0, 0x60, 0x97, 0x3, 0xc1, 0x4e } } +enum nsXPBaseWindowType { + ///creates a window + eXPBaseWindowType_window, + ///creates a dialog + eXPBaseWindowType_dialog, + ///creates a modal dialog + eXPBaseWindowType_modalDialog, + }; + + + /** * API to a "XP window" */ class nsIXPBaseWindow : public nsISupports { public: - NS_IMETHOD Init(nsIAppShell* aAppShell, - nsIPref* aPrefs, - const nsString& aDialogURL, - const nsString& aTitle, - const nsRect& aBounds, - PRUint32 aChromeMask, - PRBool aAllowPlugins = PR_TRUE) = 0; + NS_IMETHOD Init(nsXPBaseWindowType aType, + nsIAppShell* aAppShell, + nsIPref* aPrefs, + const nsString& aDialogURL, + const nsString& aTitle, + const nsRect& aBounds, + PRUint32 aChromeMask, + PRBool aAllowPlugins = PR_TRUE) = 0; NS_IMETHOD SetLocation(PRInt32 aX, PRInt32 aY) = 0; diff --git a/mozilla/xpfe/xpviewer/src/nsBrowserWindow.cpp b/mozilla/xpfe/xpviewer/src/nsBrowserWindow.cpp index b34edf2240b..37e086b1f3a 100644 --- a/mozilla/xpfe/xpviewer/src/nsBrowserWindow.cpp +++ b/mozilla/xpfe/xpviewer/src/nsBrowserWindow.cpp @@ -174,7 +174,7 @@ static NS_DEFINE_IID(kIToolbarItemIID, NS_ITOOLBARITEM_IID); static NS_DEFINE_IID(kIPopUpMenuIID, NS_IPOPUPMENU_IID); static NS_DEFINE_IID(kIMenuButtonIID, NS_IMENUBUTTON_IID); static NS_DEFINE_IID(kIXPBaseWindowIID, NS_IXPBASE_WINDOW_IID); -//static NS_DEFINE_IID(kINetSupportIID, NS_INETSUPPORT_IID); +static NS_DEFINE_IID(kINetSupportIID, NS_INETSUPPORT_IID); static const char* gsAOLFormat = "AOLMAIL"; static const char* gsHTMLFormat = "text/html"; @@ -1070,7 +1070,7 @@ void nsBrowserWindow::DoFind() kIXPBaseWindowIID, (void**) &dialog); if (rv == NS_OK) { - dialog->Init(eXPBaseWindowType_window, mAppShell, nsnull, findHTML, title, rect, PRUint32(~0), PR_FALSE); + dialog->Init(eXPBaseWindowType_dialog, mAppShell, nsnull, findHTML, title, rect, PRUint32(~0), PR_FALSE); dialog->SetVisible(PR_TRUE); if (NS_OK == dialog->QueryInterface(kIXPBaseWindowIID, (void**) &mXPDialog)) { } diff --git a/mozilla/xpfe/xpviewer/src/nsXPBaseWindow.cpp b/mozilla/xpfe/xpviewer/src/nsXPBaseWindow.cpp index cffe622fe8d..3dafaf88c7f 100644 --- a/mozilla/xpfe/xpviewer/src/nsXPBaseWindow.cpp +++ b/mozilla/xpfe/xpviewer/src/nsXPBaseWindow.cpp @@ -82,7 +82,7 @@ static NS_DEFINE_IID(kIDOMMouseListenerIID, NS_IDOMMOUSELISTENER_IID); static NS_DEFINE_IID(kIDOMEventReceiverIID, NS_IDOMEVENTRECEIVER_IID); static NS_DEFINE_IID(kIDOMElementIID, NS_IDOMELEMENT_IID); -//static NS_DEFINE_IID(kINetSupportIID, NS_INETSUPPORT_IID); +static NS_DEFINE_IID(kINetSupportIID, NS_INETSUPPORT_IID); //---------------------------------------------------------------------- nsXPBaseWindow::nsXPBaseWindow() : @@ -209,10 +209,10 @@ nsresult nsXPBaseWindow::Init(nsXPBaseWindowType aType, // Create top level window nsresult rv; if (aType == eXPBaseWindowType_window) { - nsRepository::CreateInstance(kWindowCID, nsnull, kIWidgetIID, + rv = nsRepository::CreateInstance(kWindowCID, nsnull, kIWidgetIID, (void**)&mWindow); } else { - nsRepository::CreateInstance(kDialogCID, nsnull, kIWidgetIID, + rv= nsRepository::CreateInstance(kDialogCID, nsnull, kIWidgetIID, (void**)&mWindow); }