From 6aeba41e7356c29b22fb6dccfb14d8d4fd7120ed Mon Sep 17 00:00:00 2001 From: "tbogard%aol.net" Date: Sat, 13 Nov 1999 05:31:36 +0000 Subject: [PATCH] Changed the QueryInterface to be a QUERY using the macros. r=scc git-svn-id: svn://10.0.0.236/trunk@53411 18797224-902f-48f8-a5cc-f745e15eee43 --- mozilla/docshell/base/nsWebShell.cpp | 96 ++++------------------------ mozilla/webshell/src/nsWebShell.cpp | 96 ++++------------------------ 2 files changed, 28 insertions(+), 164 deletions(-) diff --git a/mozilla/docshell/base/nsWebShell.cpp b/mozilla/docshell/base/nsWebShell.cpp index 1eb1e9cd6f7..3183e9fc50f 100644 --- a/mozilla/docshell/base/nsWebShell.cpp +++ b/mozilla/docshell/base/nsWebShell.cpp @@ -767,88 +767,20 @@ nsWebShell::DestroyChildren() NS_IMPL_ADDREF(nsWebShell) NS_IMPL_RELEASE(nsWebShell) -nsresult -nsWebShell::QueryInterface(REFNSIID aIID, void** aInstancePtr) -{ - nsresult rv = NS_NOINTERFACE; - - NS_ENSURE_ARG_POINTER(aInstancePtr); - - if (aIID.Equals(kIWebShellServicesIID)) { - *aInstancePtr = (void*)(nsIWebShellServices*)this; - NS_ADDREF_THIS(); - return NS_OK; - } - if (aIID.Equals(kIWebShellIID)) { - *aInstancePtr = (void*)(nsIWebShell*)this; - NS_ADDREF_THIS(); - return NS_OK; - } - if (aIID.Equals(kIContentViewerContainerIID)) { - *aInstancePtr = (void*)(nsIContentViewerContainer*)this; - NS_ADDREF_THIS(); - return NS_OK; - } - if (aIID.Equals(kIScriptContextOwnerIID)) { - *aInstancePtr = (void*)(nsIScriptContextOwner*)this; - NS_ADDREF_THIS(); - return NS_OK; - } - if (aIID.Equals(kIDocumentLoaderObserverIID)) { - *aInstancePtr = (void*)(nsIDocumentLoaderObserver*)this; - NS_ADDREF_THIS(); - return NS_OK; - } - if (aIID.Equals(kIProgressEventSinkIID)) { - *aInstancePtr = (void*)(nsIProgressEventSink*)this; - NS_ADDREF_THIS(); - return NS_OK; - } - if (aIID.Equals(kIWebShellContainerIID)) { - *aInstancePtr = (void*)(nsIWebShellContainer*)this; - NS_ADDREF_THIS(); - return NS_OK; - } - if (aIID.Equals(kILinkHandlerIID)) { - //I added this for plugin support of jumping - //through links. maybe there is a better way... MMP - *aInstancePtr = (void*)(nsILinkHandler*)this; - NS_ADDREF_THIS(); - return NS_OK; - } - if (aIID.Equals(NS_GET_IID(nsIPrompt))) { - *aInstancePtr = (void*) ((nsIPrompt*)this); - NS_ADDREF_THIS(); - return NS_OK; - } - if (aIID.Equals(kRefreshURIIID)) { - *aInstancePtr = (void*) ((nsIRefreshURI*)this); - NS_ADDREF_THIS(); - return NS_OK; - } - if (aIID.Equals(kIClipboardCommandsIID)) { - *aInstancePtr = (void*) ((nsIClipboardCommands*)this); - NS_ADDREF_THIS(); - return NS_OK; - } - if (aIID.Equals(kISupportsIID)) { - *aInstancePtr = (void*)(nsISupports*)(nsIWebShell*)this; - NS_ADDREF_THIS(); - return NS_OK; - } - -#if defined(NS_DEBUG) - /* - * Check for the debug-only interface indicating thread-safety - */ - static NS_DEFINE_IID(kIsThreadsafeIID, NS_ISTHREADSAFE_IID); - if (aIID.Equals(kIsThreadsafeIID)) { - return NS_OK; - } -#endif /* NS_DEBUG */ - - return rv; -} +NS_IMPL_QUERY_HEAD(nsWebShell) + NS_IMPL_QUERY_BODY(nsIWebShell) + NS_IMPL_QUERY_BODY(nsIWebShellServices) + NS_IMPL_QUERY_BODY(nsIContentViewerContainer) + NS_IMPL_QUERY_BODY(nsIScriptContextOwner) + NS_IMPL_QUERY_BODY(nsIDocumentLoaderObserver) + NS_IMPL_QUERY_BODY(nsIProgressEventSink) + NS_IMPL_QUERY_BODY(nsIWebShellContainer) + NS_IMPL_QUERY_BODY(nsILinkHandler) + NS_IMPL_QUERY_BODY(nsIPrompt) + NS_IMPL_QUERY_BODY(nsIRefreshURI) + NS_IMPL_QUERY_BODY(nsIClipboardCommands) + NS_IMPL_QUERY_BODY(nsIInterfaceRequestor) +NS_IMPL_QUERY_TAIL(nsIWebShell) NS_IMETHODIMP nsWebShell::GetInterface(const nsIID &aIID, void** aInstancePtr) diff --git a/mozilla/webshell/src/nsWebShell.cpp b/mozilla/webshell/src/nsWebShell.cpp index 1eb1e9cd6f7..3183e9fc50f 100644 --- a/mozilla/webshell/src/nsWebShell.cpp +++ b/mozilla/webshell/src/nsWebShell.cpp @@ -767,88 +767,20 @@ nsWebShell::DestroyChildren() NS_IMPL_ADDREF(nsWebShell) NS_IMPL_RELEASE(nsWebShell) -nsresult -nsWebShell::QueryInterface(REFNSIID aIID, void** aInstancePtr) -{ - nsresult rv = NS_NOINTERFACE; - - NS_ENSURE_ARG_POINTER(aInstancePtr); - - if (aIID.Equals(kIWebShellServicesIID)) { - *aInstancePtr = (void*)(nsIWebShellServices*)this; - NS_ADDREF_THIS(); - return NS_OK; - } - if (aIID.Equals(kIWebShellIID)) { - *aInstancePtr = (void*)(nsIWebShell*)this; - NS_ADDREF_THIS(); - return NS_OK; - } - if (aIID.Equals(kIContentViewerContainerIID)) { - *aInstancePtr = (void*)(nsIContentViewerContainer*)this; - NS_ADDREF_THIS(); - return NS_OK; - } - if (aIID.Equals(kIScriptContextOwnerIID)) { - *aInstancePtr = (void*)(nsIScriptContextOwner*)this; - NS_ADDREF_THIS(); - return NS_OK; - } - if (aIID.Equals(kIDocumentLoaderObserverIID)) { - *aInstancePtr = (void*)(nsIDocumentLoaderObserver*)this; - NS_ADDREF_THIS(); - return NS_OK; - } - if (aIID.Equals(kIProgressEventSinkIID)) { - *aInstancePtr = (void*)(nsIProgressEventSink*)this; - NS_ADDREF_THIS(); - return NS_OK; - } - if (aIID.Equals(kIWebShellContainerIID)) { - *aInstancePtr = (void*)(nsIWebShellContainer*)this; - NS_ADDREF_THIS(); - return NS_OK; - } - if (aIID.Equals(kILinkHandlerIID)) { - //I added this for plugin support of jumping - //through links. maybe there is a better way... MMP - *aInstancePtr = (void*)(nsILinkHandler*)this; - NS_ADDREF_THIS(); - return NS_OK; - } - if (aIID.Equals(NS_GET_IID(nsIPrompt))) { - *aInstancePtr = (void*) ((nsIPrompt*)this); - NS_ADDREF_THIS(); - return NS_OK; - } - if (aIID.Equals(kRefreshURIIID)) { - *aInstancePtr = (void*) ((nsIRefreshURI*)this); - NS_ADDREF_THIS(); - return NS_OK; - } - if (aIID.Equals(kIClipboardCommandsIID)) { - *aInstancePtr = (void*) ((nsIClipboardCommands*)this); - NS_ADDREF_THIS(); - return NS_OK; - } - if (aIID.Equals(kISupportsIID)) { - *aInstancePtr = (void*)(nsISupports*)(nsIWebShell*)this; - NS_ADDREF_THIS(); - return NS_OK; - } - -#if defined(NS_DEBUG) - /* - * Check for the debug-only interface indicating thread-safety - */ - static NS_DEFINE_IID(kIsThreadsafeIID, NS_ISTHREADSAFE_IID); - if (aIID.Equals(kIsThreadsafeIID)) { - return NS_OK; - } -#endif /* NS_DEBUG */ - - return rv; -} +NS_IMPL_QUERY_HEAD(nsWebShell) + NS_IMPL_QUERY_BODY(nsIWebShell) + NS_IMPL_QUERY_BODY(nsIWebShellServices) + NS_IMPL_QUERY_BODY(nsIContentViewerContainer) + NS_IMPL_QUERY_BODY(nsIScriptContextOwner) + NS_IMPL_QUERY_BODY(nsIDocumentLoaderObserver) + NS_IMPL_QUERY_BODY(nsIProgressEventSink) + NS_IMPL_QUERY_BODY(nsIWebShellContainer) + NS_IMPL_QUERY_BODY(nsILinkHandler) + NS_IMPL_QUERY_BODY(nsIPrompt) + NS_IMPL_QUERY_BODY(nsIRefreshURI) + NS_IMPL_QUERY_BODY(nsIClipboardCommands) + NS_IMPL_QUERY_BODY(nsIInterfaceRequestor) +NS_IMPL_QUERY_TAIL(nsIWebShell) NS_IMETHODIMP nsWebShell::GetInterface(const nsIID &aIID, void** aInstancePtr)