From c7ecd0425ee0118523b212ffe778b22fb3bee34f Mon Sep 17 00:00:00 2001 From: "dbaron%fas.harvard.edu" Date: Tue, 2 Oct 2001 03:18:08 +0000 Subject: [PATCH] Bug 45797: replace remaining uses of deprecated macros NS_IMPL_QUERY_INTERFACE and friends with NS_IMPL_QUERY_INTERFACE1 and friends and remove the deprecated macros. r=jag sr=alecf git-svn-id: svn://10.0.0.236/trunk@104396 18797224-902f-48f8-a5cc-f745e15eee43 --- .../src/html/nsHTMLSelectAccessible.cpp | 2 +- .../src/nsHTMLComboboxAccessible.cpp | 2 +- .../accessible/src/nsHTMLSelectAccessible.cpp | 2 +- .../html/content/src/nsHTMLBodyElement.cpp | 2 +- mozilla/content/xbl/src/nsBindingManager.cpp | 2 +- mozilla/editor/base/EditAggregateTxn.cpp | 2 +- mozilla/editor/base/PlaceholderTxn.cpp | 2 +- mozilla/editor/base/nsHTMLEditorLog.cpp | 2 +- .../libeditor/base/EditAggregateTxn.cpp | 2 +- .../editor/libeditor/base/PlaceholderTxn.cpp | 2 +- .../editor/libeditor/html/nsHTMLEditorLog.cpp | 2 +- .../inspector/base/src/inDOMRDFResource.cpp | 2 +- .../python/xpcom/src/PyGWeakReference.cpp | 4 +- mozilla/gfx/src/ps/nsDeviceContextPS.cpp | 6 +- mozilla/gfx/src/xprint/nsDeviceContextXP.cpp | 6 +- mozilla/intl/strres/src/nsAcceptLang.cpp | 3 +- .../tests/components/xpctest_child.cpp | 2 +- .../layout/xul/base/src/nsEditorBoxObject.cpp | 2 +- .../src/outliner/src/nsOutlinerBoxObject.cpp | 2 +- .../xul/base/src/tree/src/nsTreeBoxObject.cpp | 2 +- .../mailnews/addrbook/src/nsAbBSDirectory.cpp | 2 +- mozilla/mailnews/addrbook/src/nsAbCard.cpp | 2 +- .../mailnews/addrbook/src/nsAbDirectory.cpp | 2 +- .../mailnews/addrbook/src/nsAbLDAPCard.cpp | 2 +- .../addrbook/src/nsAbMDBCardProperty.cpp | 2 +- .../addrbook/src/nsAbMDBDirProperty.cpp | 2 +- .../addrbook/src/nsAbMDBRDFResource.cpp | 2 +- .../mailnews/addrbook/src/nsAbOutlookCard.cpp | 2 +- .../mailnews/addrbook/src/nsAbRDFResource.cpp | 2 +- .../base/search/src/nsMsgLocalSearch.cpp | 2 +- mozilla/mailnews/compose/src/nsSmtpUrl.cpp | 2 +- mozilla/mailnews/local/src/nsParseMailbox.cpp | 2 +- mozilla/mailnews/local/src/nsPop3URL.cpp | 2 +- .../Source/EmbeddedFramePluginInstance.cpp | 2 +- .../MRJCarbon/plugin/Source/JSEvaluator.cpp | 2 +- .../tests/domds/nsRDFDOMResourceFactory.cpp | 2 +- mozilla/widget/src/photon/nsButton.cpp | 4 +- mozilla/widget/src/photon/nsWidget.cpp | 2 +- mozilla/widget/src/xlib/nsWidget.cpp | 2 +- mozilla/xpcom/base/nsISupportsImpl.h | 87 ++++++++++---- mozilla/xpcom/base/nsISupportsObsolete.h | 109 ------------------ mozilla/xpcom/glue/nsISupportsImpl.h | 87 ++++++++++---- 42 files changed, 173 insertions(+), 201 deletions(-) diff --git a/mozilla/accessible/src/html/nsHTMLSelectAccessible.cpp b/mozilla/accessible/src/html/nsHTMLSelectAccessible.cpp index 8d6dc074bd6..3821122d361 100644 --- a/mozilla/accessible/src/html/nsHTMLSelectAccessible.cpp +++ b/mozilla/accessible/src/html/nsHTMLSelectAccessible.cpp @@ -111,7 +111,7 @@ public: PRBool mOpen; }; -NS_IMPL_ISUPPORTS_INHERITED(nsMenuListenerAccessible, nsAccessible, nsIDOMXULListener) +NS_IMPL_ISUPPORTS_INHERITED1(nsMenuListenerAccessible, nsAccessible, nsIDOMXULListener) /** * A class that represents the button inside the Select to the right of the text field diff --git a/mozilla/accessible/src/nsHTMLComboboxAccessible.cpp b/mozilla/accessible/src/nsHTMLComboboxAccessible.cpp index afff0e9ce55..5157eff97db 100644 --- a/mozilla/accessible/src/nsHTMLComboboxAccessible.cpp +++ b/mozilla/accessible/src/nsHTMLComboboxAccessible.cpp @@ -76,7 +76,7 @@ nsHTMLComboboxAccessible::~nsHTMLComboboxAccessible() } /** Inherit the ISupports impl from nsAccessible -- handle nsIDOMXULListener ourself */ -NS_IMPL_ISUPPORTS_INHERITED(nsHTMLComboboxAccessible, nsAccessible, nsIDOMXULListener) +NS_IMPL_ISUPPORTS_INHERITED1(nsHTMLComboboxAccessible, nsAccessible, nsIDOMXULListener) /** * Tell our caller we are a combobox diff --git a/mozilla/accessible/src/nsHTMLSelectAccessible.cpp b/mozilla/accessible/src/nsHTMLSelectAccessible.cpp index 8d6dc074bd6..3821122d361 100644 --- a/mozilla/accessible/src/nsHTMLSelectAccessible.cpp +++ b/mozilla/accessible/src/nsHTMLSelectAccessible.cpp @@ -111,7 +111,7 @@ public: PRBool mOpen; }; -NS_IMPL_ISUPPORTS_INHERITED(nsMenuListenerAccessible, nsAccessible, nsIDOMXULListener) +NS_IMPL_ISUPPORTS_INHERITED1(nsMenuListenerAccessible, nsAccessible, nsIDOMXULListener) /** * A class that represents the button inside the Select to the right of the text field diff --git a/mozilla/content/html/content/src/nsHTMLBodyElement.cpp b/mozilla/content/html/content/src/nsHTMLBodyElement.cpp index c4175ec246e..448608e076e 100644 --- a/mozilla/content/html/content/src/nsHTMLBodyElement.cpp +++ b/mozilla/content/html/content/src/nsHTMLBodyElement.cpp @@ -146,7 +146,7 @@ public: BodyFixupRule* mInlineStyleRule; }; -NS_IMPL_ISUPPORTS_INHERITED(nsBodySuper, nsGenericHTMLContainerElement, nsIBodySuper) +NS_IMPL_ISUPPORTS_INHERITED1(nsBodySuper, nsGenericHTMLContainerElement, nsIBodySuper) nsBodySuper::nsBodySuper() : nsGenericHTMLContainerElement(), mContentStyleRule(nsnull), diff --git a/mozilla/content/xbl/src/nsBindingManager.cpp b/mozilla/content/xbl/src/nsBindingManager.cpp index 41019560df7..29dc64ab44d 100644 --- a/mozilla/content/xbl/src/nsBindingManager.cpp +++ b/mozilla/content/xbl/src/nsBindingManager.cpp @@ -524,7 +524,7 @@ private: MOZ_DECL_CTOR_COUNTER(nsAnonymousContentList); -NS_IMPL_ISUPPORTS_INHERITED(nsAnonymousContentList, nsGenericDOMNodeList, nsIAnonymousContentList) +NS_IMPL_ISUPPORTS_INHERITED1(nsAnonymousContentList, nsGenericDOMNodeList, nsIAnonymousContentList) nsAnonymousContentList::nsAnonymousContentList(nsISupportsArray* aElements) { diff --git a/mozilla/editor/base/EditAggregateTxn.cpp b/mozilla/editor/base/EditAggregateTxn.cpp index bcb8781100f..c84c8c69369 100644 --- a/mozilla/editor/base/EditAggregateTxn.cpp +++ b/mozilla/editor/base/EditAggregateTxn.cpp @@ -247,7 +247,7 @@ NS_IMETHODIMP_(nsrefcnt) EditAggregateTxn::Release(void) return EditTxn::Release(); } -//NS_IMPL_QUERY_INTERFACE_INHERITED(Class, Super, AdditionalInterface) +//NS_IMPL_QUERY_INTERFACE_INHERITED1(Class, Super, AdditionalInterface) NS_IMETHODIMP EditAggregateTxn::QueryInterface(REFNSIID aIID, void** aInstancePtr) { if (!aInstancePtr) return NS_ERROR_NULL_POINTER; diff --git a/mozilla/editor/base/PlaceholderTxn.cpp b/mozilla/editor/base/PlaceholderTxn.cpp index 0edc0e472ef..4c12def5fd4 100644 --- a/mozilla/editor/base/PlaceholderTxn.cpp +++ b/mozilla/editor/base/PlaceholderTxn.cpp @@ -70,7 +70,7 @@ PlaceholderTxn::~PlaceholderTxn() NS_IMPL_ADDREF_INHERITED(PlaceholderTxn, EditAggregateTxn) NS_IMPL_RELEASE_INHERITED(PlaceholderTxn, EditAggregateTxn) -//NS_IMPL_QUERY_INTERFACE_INHERITED(Class, Super, AdditionalInterface) +//NS_IMPL_QUERY_INTERFACE_INHERITED1(Class, Super, AdditionalInterface) NS_IMETHODIMP PlaceholderTxn::QueryInterface(REFNSIID aIID, void** aInstancePtr) { if (!aInstancePtr) return NS_ERROR_NULL_POINTER; diff --git a/mozilla/editor/base/nsHTMLEditorLog.cpp b/mozilla/editor/base/nsHTMLEditorLog.cpp index 341a2f7a8ae..a376c1edc81 100644 --- a/mozilla/editor/base/nsHTMLEditorLog.cpp +++ b/mozilla/editor/base/nsHTMLEditorLog.cpp @@ -67,7 +67,7 @@ nsHTMLEditorLog::~nsHTMLEditorLog() StopLogging(); } -NS_IMPL_ISUPPORTS_INHERITED(nsHTMLEditorLog, nsHTMLEditor, nsIEditorLogging); +NS_IMPL_ISUPPORTS_INHERITED1(nsHTMLEditorLog, nsHTMLEditor, nsIEditorLogging) NS_IMETHODIMP nsHTMLEditorLog::SetInlineProperty(nsIAtom *aProperty, const nsAReadableString &aAttribute, const nsAReadableString &aValue) diff --git a/mozilla/editor/libeditor/base/EditAggregateTxn.cpp b/mozilla/editor/libeditor/base/EditAggregateTxn.cpp index bcb8781100f..c84c8c69369 100644 --- a/mozilla/editor/libeditor/base/EditAggregateTxn.cpp +++ b/mozilla/editor/libeditor/base/EditAggregateTxn.cpp @@ -247,7 +247,7 @@ NS_IMETHODIMP_(nsrefcnt) EditAggregateTxn::Release(void) return EditTxn::Release(); } -//NS_IMPL_QUERY_INTERFACE_INHERITED(Class, Super, AdditionalInterface) +//NS_IMPL_QUERY_INTERFACE_INHERITED1(Class, Super, AdditionalInterface) NS_IMETHODIMP EditAggregateTxn::QueryInterface(REFNSIID aIID, void** aInstancePtr) { if (!aInstancePtr) return NS_ERROR_NULL_POINTER; diff --git a/mozilla/editor/libeditor/base/PlaceholderTxn.cpp b/mozilla/editor/libeditor/base/PlaceholderTxn.cpp index 0edc0e472ef..4c12def5fd4 100644 --- a/mozilla/editor/libeditor/base/PlaceholderTxn.cpp +++ b/mozilla/editor/libeditor/base/PlaceholderTxn.cpp @@ -70,7 +70,7 @@ PlaceholderTxn::~PlaceholderTxn() NS_IMPL_ADDREF_INHERITED(PlaceholderTxn, EditAggregateTxn) NS_IMPL_RELEASE_INHERITED(PlaceholderTxn, EditAggregateTxn) -//NS_IMPL_QUERY_INTERFACE_INHERITED(Class, Super, AdditionalInterface) +//NS_IMPL_QUERY_INTERFACE_INHERITED1(Class, Super, AdditionalInterface) NS_IMETHODIMP PlaceholderTxn::QueryInterface(REFNSIID aIID, void** aInstancePtr) { if (!aInstancePtr) return NS_ERROR_NULL_POINTER; diff --git a/mozilla/editor/libeditor/html/nsHTMLEditorLog.cpp b/mozilla/editor/libeditor/html/nsHTMLEditorLog.cpp index 341a2f7a8ae..a376c1edc81 100644 --- a/mozilla/editor/libeditor/html/nsHTMLEditorLog.cpp +++ b/mozilla/editor/libeditor/html/nsHTMLEditorLog.cpp @@ -67,7 +67,7 @@ nsHTMLEditorLog::~nsHTMLEditorLog() StopLogging(); } -NS_IMPL_ISUPPORTS_INHERITED(nsHTMLEditorLog, nsHTMLEditor, nsIEditorLogging); +NS_IMPL_ISUPPORTS_INHERITED1(nsHTMLEditorLog, nsHTMLEditor, nsIEditorLogging) NS_IMETHODIMP nsHTMLEditorLog::SetInlineProperty(nsIAtom *aProperty, const nsAReadableString &aAttribute, const nsAReadableString &aValue) diff --git a/mozilla/extensions/inspector/base/src/inDOMRDFResource.cpp b/mozilla/extensions/inspector/base/src/inDOMRDFResource.cpp index 1b746ca2c75..ca84705c0ef 100644 --- a/mozilla/extensions/inspector/base/src/inDOMRDFResource.cpp +++ b/mozilla/extensions/inspector/base/src/inDOMRDFResource.cpp @@ -46,7 +46,7 @@ inDOMRDFResource::~inDOMRDFResource() { } -NS_IMPL_ISUPPORTS_INHERITED(inDOMRDFResource, nsRDFResource, inIDOMRDFResource) +NS_IMPL_ISUPPORTS_INHERITED1(inDOMRDFResource, nsRDFResource, inIDOMRDFResource) NS_IMETHODIMP inDOMRDFResource::SetObject(nsISupports* object) diff --git a/mozilla/extensions/python/xpcom/src/PyGWeakReference.cpp b/mozilla/extensions/python/xpcom/src/PyGWeakReference.cpp index aebcc0ecb9c..197a3ce473d 100644 --- a/mozilla/extensions/python/xpcom/src/PyGWeakReference.cpp +++ b/mozilla/extensions/python/xpcom/src/PyGWeakReference.cpp @@ -45,9 +45,7 @@ PyXPCOM_GatewayWeakReference::~PyXPCOM_GatewayWeakReference() m_pBase = NULL; } -NS_IMPL_THREADSAFE_ADDREF(PyXPCOM_GatewayWeakReference); -NS_IMPL_THREADSAFE_RELEASE(PyXPCOM_GatewayWeakReference); -NS_IMPL_THREADSAFE_QUERY_INTERFACE(PyXPCOM_GatewayWeakReference, NS_GET_IID(nsIWeakReference)); +NS_IMPL_THREADSAFE_ISUPPORTS1(PyXPCOM_GatewayWeakReference, nsIWeakReference) NS_IMETHODIMP PyXPCOM_GatewayWeakReference::QueryReferent(REFNSIID iid, void * *ret) diff --git a/mozilla/gfx/src/ps/nsDeviceContextPS.cpp b/mozilla/gfx/src/ps/nsDeviceContextPS.cpp index 4a7c87eafb0..e4dfc535faf 100644 --- a/mozilla/gfx/src/ps/nsDeviceContextPS.cpp +++ b/mozilla/gfx/src/ps/nsDeviceContextPS.cpp @@ -75,9 +75,9 @@ nsDeviceContextPS :: SetSpec(nsIDeviceContextSpec* aSpec) return NS_OK; } -NS_IMPL_ISUPPORTS_INHERITED(nsDeviceContextPS, - DeviceContextImpl, - nsIDeviceContextPS) +NS_IMPL_ISUPPORTS_INHERITED1(nsDeviceContextPS, + DeviceContextImpl, + nsIDeviceContextPS) /** --------------------------------------------------- * See documentation in nsDeviceContextPS.h diff --git a/mozilla/gfx/src/xprint/nsDeviceContextXP.cpp b/mozilla/gfx/src/xprint/nsDeviceContextXP.cpp index e5970c5ddb9..7e2b93c28d5 100644 --- a/mozilla/gfx/src/xprint/nsDeviceContextXP.cpp +++ b/mozilla/gfx/src/xprint/nsDeviceContextXP.cpp @@ -93,9 +93,9 @@ nsDeviceContextXp :: SetSpec(nsIDeviceContextSpec* aSpec) return rv; } -NS_IMPL_ISUPPORTS_INHERITED(nsDeviceContextXp, - DeviceContextImpl, - nsIDeviceContextXp) +NS_IMPL_ISUPPORTS_INHERITED1(nsDeviceContextXp, + DeviceContextImpl, + nsIDeviceContextXp) /** --------------------------------------------------- * See documentation in nsDeviceContextXp.h diff --git a/mozilla/intl/strres/src/nsAcceptLang.cpp b/mozilla/intl/strres/src/nsAcceptLang.cpp index 16ff860f5cf..5595bcfc448 100644 --- a/mozilla/intl/strres/src/nsAcceptLang.cpp +++ b/mozilla/intl/strres/src/nsAcceptLang.cpp @@ -49,7 +49,6 @@ /* define CID & IID */ static NS_DEFINE_CID(kStringBundleServiceCID, NS_STRINGBUNDLESERVICE_CID); -NS_DEFINE_IID(kAcceptLangCID, NS_ACCEPTLANG_CID); ///////////////////////////////////////////////////////////////////////////////////////// @@ -79,7 +78,7 @@ nsAcceptLang::~nsAcceptLang() /* destructor code */ } -// NS_IMPL_THREADSAFE_ISUPPORTS(nsAcceptLang, NS_GET_IID(nsIAcceptLang)) +// NS_IMPL_THREADSAFE_ISUPPORTS1(nsAcceptLang, nsIAcceptLang) /* wstring getAcceptLangFromLocale ([const] in wstring aLocale); */ NS_IMETHODIMP diff --git a/mozilla/js/src/xpconnect/tests/components/xpctest_child.cpp b/mozilla/js/src/xpconnect/tests/components/xpctest_child.cpp index 7a092a2a4ac..77b976ade98 100644 --- a/mozilla/js/src/xpconnect/tests/components/xpctest_child.cpp +++ b/mozilla/js/src/xpconnect/tests/components/xpctest_child.cpp @@ -76,7 +76,7 @@ NS_IMETHODIMP xpctestOther::Method3(PRInt16 i, PRInt16 j, PRInt16 k) return NS_OK; } -NS_IMPL_ISUPPORTS_INHERITED(xpctestChild, xpctestOther, nsIXPCTestChild) +NS_IMPL_ISUPPORTS_INHERITED1(xpctestChild, xpctestOther, nsIXPCTestChild) xpctestChild::xpctestChild() { diff --git a/mozilla/layout/xul/base/src/nsEditorBoxObject.cpp b/mozilla/layout/xul/base/src/nsEditorBoxObject.cpp index 9ac7e730013..2effec0f510 100644 --- a/mozilla/layout/xul/base/src/nsEditorBoxObject.cpp +++ b/mozilla/layout/xul/base/src/nsEditorBoxObject.cpp @@ -60,7 +60,7 @@ protected: }; /* Implementation file */ -NS_IMPL_ISUPPORTS_INHERITED(nsEditorBoxObject, nsBoxObject, nsIEditorBoxObject) +NS_IMPL_ISUPPORTS_INHERITED1(nsEditorBoxObject, nsBoxObject, nsIEditorBoxObject) NS_IMETHODIMP diff --git a/mozilla/layout/xul/base/src/outliner/src/nsOutlinerBoxObject.cpp b/mozilla/layout/xul/base/src/outliner/src/nsOutlinerBoxObject.cpp index ceca027a838..74187b50f15 100644 --- a/mozilla/layout/xul/base/src/outliner/src/nsOutlinerBoxObject.cpp +++ b/mozilla/layout/xul/base/src/outliner/src/nsOutlinerBoxObject.cpp @@ -64,7 +64,7 @@ public: }; /* Implementation file */ -NS_IMPL_ISUPPORTS_INHERITED(nsOutlinerBoxObject, nsBoxObject, nsIOutlinerBoxObject) +NS_IMPL_ISUPPORTS_INHERITED1(nsOutlinerBoxObject, nsBoxObject, nsIOutlinerBoxObject) NS_IMETHODIMP diff --git a/mozilla/layout/xul/base/src/tree/src/nsTreeBoxObject.cpp b/mozilla/layout/xul/base/src/tree/src/nsTreeBoxObject.cpp index ceca027a838..74187b50f15 100644 --- a/mozilla/layout/xul/base/src/tree/src/nsTreeBoxObject.cpp +++ b/mozilla/layout/xul/base/src/tree/src/nsTreeBoxObject.cpp @@ -64,7 +64,7 @@ public: }; /* Implementation file */ -NS_IMPL_ISUPPORTS_INHERITED(nsOutlinerBoxObject, nsBoxObject, nsIOutlinerBoxObject) +NS_IMPL_ISUPPORTS_INHERITED1(nsOutlinerBoxObject, nsBoxObject, nsIOutlinerBoxObject) NS_IMETHODIMP diff --git a/mozilla/mailnews/addrbook/src/nsAbBSDirectory.cpp b/mozilla/mailnews/addrbook/src/nsAbBSDirectory.cpp index 0843d960c0a..5d9a7973892 100644 --- a/mozilla/mailnews/addrbook/src/nsAbBSDirectory.cpp +++ b/mozilla/mailnews/addrbook/src/nsAbBSDirectory.cpp @@ -93,7 +93,7 @@ nsAbBSDirectory::~nsAbBSDirectory() } } -NS_IMPL_ISUPPORTS_INHERITED(nsAbBSDirectory, nsRDFResource, nsIAbDirectory) +NS_IMPL_ISUPPORTS_INHERITED1(nsAbBSDirectory, nsRDFResource, nsIAbDirectory) nsresult nsAbBSDirectory::NotifyItemAdded(nsISupports *item) { diff --git a/mozilla/mailnews/addrbook/src/nsAbCard.cpp b/mozilla/mailnews/addrbook/src/nsAbCard.cpp index 2df398b550b..5d6eb658748 100644 --- a/mozilla/mailnews/addrbook/src/nsAbCard.cpp +++ b/mozilla/mailnews/addrbook/src/nsAbCard.cpp @@ -75,7 +75,7 @@ nsAbCard::~nsAbCard(void) } } -NS_IMPL_ISUPPORTS_INHERITED(nsAbCard, nsAbRDFResource, nsIAbCard) +NS_IMPL_ISUPPORTS_INHERITED1(nsAbCard, nsAbRDFResource, nsIAbCard) //////////////////////////////////////////////////////////////////////////////// NS_IMETHODIMP nsAbCard::OnCardEntryChange diff --git a/mozilla/mailnews/addrbook/src/nsAbDirectory.cpp b/mozilla/mailnews/addrbook/src/nsAbDirectory.cpp index 2fe9e5323de..36e6772a3b7 100644 --- a/mozilla/mailnews/addrbook/src/nsAbDirectory.cpp +++ b/mozilla/mailnews/addrbook/src/nsAbDirectory.cpp @@ -97,7 +97,7 @@ nsAbDirectory::~nsAbDirectory(void) } -NS_IMPL_ISUPPORTS_INHERITED(nsAbDirectory, nsAbRDFResource, nsIAbDirectory) +NS_IMPL_ISUPPORTS_INHERITED1(nsAbDirectory, nsAbRDFResource, nsIAbDirectory) //////////////////////////////////////////////////////////////////////////////// NS_IMETHODIMP nsAbDirectory::OnCardAttribChange(PRUint32 abCode, nsIAddrDBListener *instigator) diff --git a/mozilla/mailnews/addrbook/src/nsAbLDAPCard.cpp b/mozilla/mailnews/addrbook/src/nsAbLDAPCard.cpp index 2c5f586c598..14f5e43d2f3 100644 --- a/mozilla/mailnews/addrbook/src/nsAbLDAPCard.cpp +++ b/mozilla/mailnews/addrbook/src/nsAbLDAPCard.cpp @@ -46,5 +46,5 @@ nsAbLDAPCard::~nsAbLDAPCard() { } -NS_IMPL_ISUPPORTS_INHERITED(nsAbLDAPCard, nsRDFResource, nsIAbCard) +NS_IMPL_ISUPPORTS_INHERITED1(nsAbLDAPCard, nsRDFResource, nsIAbCard) diff --git a/mozilla/mailnews/addrbook/src/nsAbMDBCardProperty.cpp b/mozilla/mailnews/addrbook/src/nsAbMDBCardProperty.cpp index 4b92dff25ad..c3828d24d70 100644 --- a/mozilla/mailnews/addrbook/src/nsAbMDBCardProperty.cpp +++ b/mozilla/mailnews/addrbook/src/nsAbMDBCardProperty.cpp @@ -95,7 +95,7 @@ nsAbMDBCardProperty::~nsAbMDBCardProperty(void) } -NS_IMPL_ISUPPORTS_INHERITED(nsAbMDBCardProperty, nsAbCardProperty, nsIAbMDBCard) +NS_IMPL_ISUPPORTS_INHERITED1(nsAbMDBCardProperty, nsAbCardProperty, nsIAbMDBCard) // nsIAbMDBCard attributes diff --git a/mozilla/mailnews/addrbook/src/nsAbMDBDirProperty.cpp b/mozilla/mailnews/addrbook/src/nsAbMDBDirProperty.cpp index 90c4a9ad509..e15ca8725a6 100644 --- a/mozilla/mailnews/addrbook/src/nsAbMDBDirProperty.cpp +++ b/mozilla/mailnews/addrbook/src/nsAbMDBDirProperty.cpp @@ -69,7 +69,7 @@ nsAbMDBDirProperty::~nsAbMDBDirProperty(void) } -NS_IMPL_ISUPPORTS_INHERITED(nsAbMDBDirProperty, nsAbDirProperty, nsIAbMDBDirectory) +NS_IMPL_ISUPPORTS_INHERITED1(nsAbMDBDirProperty, nsAbDirProperty, nsIAbMDBDirectory) //////////////////////////////////////////////////////////////////////////////// diff --git a/mozilla/mailnews/addrbook/src/nsAbMDBRDFResource.cpp b/mozilla/mailnews/addrbook/src/nsAbMDBRDFResource.cpp index 4dac969f7fc..c496ebf18ec 100644 --- a/mozilla/mailnews/addrbook/src/nsAbMDBRDFResource.cpp +++ b/mozilla/mailnews/addrbook/src/nsAbMDBRDFResource.cpp @@ -67,7 +67,7 @@ nsAbMDBRDFResource::~nsAbMDBRDFResource(void) } } -NS_IMPL_ISUPPORTS_INHERITED(nsAbMDBRDFResource, nsRDFResource, nsIAddrDBListener) +NS_IMPL_ISUPPORTS_INHERITED1(nsAbMDBRDFResource, nsRDFResource, nsIAddrDBListener) //////////////////////////////////////////////////////////////////////////////// diff --git a/mozilla/mailnews/addrbook/src/nsAbOutlookCard.cpp b/mozilla/mailnews/addrbook/src/nsAbOutlookCard.cpp index 737141600d5..f5b6a3c6a75 100644 --- a/mozilla/mailnews/addrbook/src/nsAbOutlookCard.cpp +++ b/mozilla/mailnews/addrbook/src/nsAbOutlookCard.cpp @@ -59,7 +59,7 @@ nsAbOutlookCard::~nsAbOutlookCard(void) if (mMapiData) { delete mMapiData ; } } -NS_IMPL_ISUPPORTS_INHERITED(nsAbOutlookCard, nsRDFResource, nsIAbCard) +NS_IMPL_ISUPPORTS_INHERITED1(nsAbOutlookCard, nsRDFResource, nsIAbCard) static void splitString(nsString& aSource, nsString& aTarget) { diff --git a/mozilla/mailnews/addrbook/src/nsAbRDFResource.cpp b/mozilla/mailnews/addrbook/src/nsAbRDFResource.cpp index 620e393ff7a..84391b59c3c 100644 --- a/mozilla/mailnews/addrbook/src/nsAbRDFResource.cpp +++ b/mozilla/mailnews/addrbook/src/nsAbRDFResource.cpp @@ -68,7 +68,7 @@ nsAbRDFResource::~nsAbRDFResource(void) } } -NS_IMPL_ISUPPORTS_INHERITED(nsAbRDFResource, nsRDFResource, nsIAddrDBListener) +NS_IMPL_ISUPPORTS_INHERITED1(nsAbRDFResource, nsRDFResource, nsIAddrDBListener) //////////////////////////////////////////////////////////////////////////////// diff --git a/mozilla/mailnews/base/search/src/nsMsgLocalSearch.cpp b/mozilla/mailnews/base/search/src/nsMsgLocalSearch.cpp index ce7b99ff8c2..865387a33fe 100644 --- a/mozilla/mailnews/base/search/src/nsMsgLocalSearch.cpp +++ b/mozilla/mailnews/base/search/src/nsMsgLocalSearch.cpp @@ -308,7 +308,7 @@ nsresult nsMsgSearchIMAPOfflineMail::ValidateTerms () //----------------------------------------------------------------------------- -NS_IMPL_ISUPPORTS_INHERITED(nsMsgSearchOfflineMail, nsMsgSearchAdapter, nsIUrlListener) +NS_IMPL_ISUPPORTS_INHERITED1(nsMsgSearchOfflineMail, nsMsgSearchAdapter, nsIUrlListener) nsMsgSearchOfflineMail::nsMsgSearchOfflineMail (nsIMsgSearchScopeTerm *scope, nsISupportsArray *termList) : nsMsgSearchAdapter (scope, termList) { diff --git a/mozilla/mailnews/compose/src/nsSmtpUrl.cpp b/mozilla/mailnews/compose/src/nsSmtpUrl.cpp index b780a80288d..459831addda 100644 --- a/mozilla/mailnews/compose/src/nsSmtpUrl.cpp +++ b/mozilla/mailnews/compose/src/nsSmtpUrl.cpp @@ -438,7 +438,7 @@ nsSmtpUrl::~nsSmtpUrl() { } -NS_IMPL_ISUPPORTS_INHERITED(nsSmtpUrl, nsMsgMailNewsUrl, nsISmtpUrl) +NS_IMPL_ISUPPORTS_INHERITED1(nsSmtpUrl, nsMsgMailNewsUrl, nsISmtpUrl) //////////////////////////////////////////////////////////////////////////////////// // Begin nsISmtpUrl specific support diff --git a/mozilla/mailnews/local/src/nsParseMailbox.cpp b/mozilla/mailnews/local/src/nsParseMailbox.cpp index 88f04d4c2bb..980c724aea2 100644 --- a/mozilla/mailnews/local/src/nsParseMailbox.cpp +++ b/mozilla/mailnews/local/src/nsParseMailbox.cpp @@ -1399,7 +1399,7 @@ nsParseNewMailState::nsParseNewMailState() m_logFile = nsnull; } -NS_IMPL_ISUPPORTS_INHERITED(nsParseNewMailState, nsMsgMailboxParser, nsIMsgFilterHitNotify) +NS_IMPL_ISUPPORTS_INHERITED1(nsParseNewMailState, nsMsgMailboxParser, nsIMsgFilterHitNotify) nsresult nsParseNewMailState::Init(nsIFolder *rootFolder, nsIMsgFolder *downloadFolder, nsFileSpec &folder, nsIOFileStream *inboxFileStream) diff --git a/mozilla/mailnews/local/src/nsPop3URL.cpp b/mozilla/mailnews/local/src/nsPop3URL.cpp index 19c1c099ae4..01f960c7b58 100644 --- a/mozilla/mailnews/local/src/nsPop3URL.cpp +++ b/mozilla/mailnews/local/src/nsPop3URL.cpp @@ -55,7 +55,7 @@ nsPop3URL::~nsPop3URL() { } -NS_IMPL_ISUPPORTS_INHERITED(nsPop3URL, nsMsgMailNewsUrl, nsIPop3URL) +NS_IMPL_ISUPPORTS_INHERITED1(nsPop3URL, nsMsgMailNewsUrl, nsIPop3URL) //////////////////////////////////////////////////////////////////////////////////// diff --git a/mozilla/plugin/oji/MRJCarbon/plugin/Source/EmbeddedFramePluginInstance.cpp b/mozilla/plugin/oji/MRJCarbon/plugin/Source/EmbeddedFramePluginInstance.cpp index 0a52874c20b..3b814f558f3 100644 --- a/mozilla/plugin/oji/MRJCarbon/plugin/Source/EmbeddedFramePluginInstance.cpp +++ b/mozilla/plugin/oji/MRJCarbon/plugin/Source/EmbeddedFramePluginInstance.cpp @@ -124,4 +124,4 @@ void EmbeddedFramePluginInstance::setFrame(EmbeddedFrame* frame) mFrame = frame; } -NS_IMPL_ISUPPORTS(EmbeddedFramePluginInstance, NS_GET_IID(nsIPluginInstance)) +NS_IMPL_ISUPPORTS1(EmbeddedFramePluginInstance, nsIPluginInstance) diff --git a/mozilla/plugin/oji/MRJCarbon/plugin/Source/JSEvaluator.cpp b/mozilla/plugin/oji/MRJCarbon/plugin/Source/JSEvaluator.cpp index 161aa239e4a..df3f6db8cca 100644 --- a/mozilla/plugin/oji/MRJCarbon/plugin/Source/JSEvaluator.cpp +++ b/mozilla/plugin/oji/MRJCarbon/plugin/Source/JSEvaluator.cpp @@ -63,7 +63,7 @@ JSEvaluator::~JSEvaluator() delete mJSMonitor; } -NS_IMPL_ISUPPORTS(JSEvaluator, NS_GET_IID(nsIPluginStreamListener)) +NS_IMPL_ISUPPORTS1(JSEvaluator, nsIPluginStreamListener) const char* JSEvaluator::eval(const char* script) { diff --git a/mozilla/rdf/tests/domds/nsRDFDOMResourceFactory.cpp b/mozilla/rdf/tests/domds/nsRDFDOMResourceFactory.cpp index 23c0a5d2637..fc1bad98c16 100644 --- a/mozilla/rdf/tests/domds/nsRDFDOMResourceFactory.cpp +++ b/mozilla/rdf/tests/domds/nsRDFDOMResourceFactory.cpp @@ -28,7 +28,7 @@ nsRDFDOMViewerElement::~nsRDFDOMViewerElement() { } -NS_IMPL_ISUPPORTS_INHERITED(nsRDFDOMViewerElement, nsRDFResource, nsIDOMViewerElement) +NS_IMPL_ISUPPORTS_INHERITED1(nsRDFDOMViewerElement, nsRDFResource, nsIDOMViewerElement) NS_IMETHODIMP nsRDFDOMViewerElement::SetObject(nsISupports* object) diff --git a/mozilla/widget/src/photon/nsButton.cpp b/mozilla/widget/src/photon/nsButton.cpp index 2fab39f6f21..7284a114b16 100644 --- a/mozilla/widget/src/photon/nsButton.cpp +++ b/mozilla/widget/src/photon/nsButton.cpp @@ -56,9 +56,7 @@ static NS_DEFINE_IID(kLookAndFeelCID, NS_LOOKANDFEEL_CID); static NS_DEFINE_IID(kILookAndFeelIID, NS_ILOOKANDFEEL_IID); -NS_IMPL_ADDREF_INHERITED(nsButton, nsWidget) -NS_IMPL_RELEASE_INHERITED(nsButton, nsWidget) -NS_IMPL_QUERY_INTERFACE_INHERITED(nsButton, nsWidget, nsIButton) +NS_IMPL_ISUPPORTS_INHERITED1(nsButton, nsWidget, nsIButton) //------------------------------------------------------------------------- // // nsButton constructor diff --git a/mozilla/widget/src/photon/nsWidget.cpp b/mozilla/widget/src/photon/nsWidget.cpp index 638f66868b9..230d11a422a 100644 --- a/mozilla/widget/src/photon/nsWidget.cpp +++ b/mozilla/widget/src/photon/nsWidget.cpp @@ -166,7 +166,7 @@ nsWidget::~nsWidget( ) { // nsISupport stuff // //------------------------------------------------------------------------- -NS_IMPL_ISUPPORTS_INHERITED(nsWidget, nsBaseWidget, nsIKBStateControl) +NS_IMPL_ISUPPORTS_INHERITED1(nsWidget, nsBaseWidget, nsIKBStateControl) NS_METHOD nsWidget::WidgetToScreen( const nsRect& aOldRect, nsRect& aNewRect ) { if( mWidget ) { diff --git a/mozilla/widget/src/xlib/nsWidget.cpp b/mozilla/widget/src/xlib/nsWidget.cpp index c5d069ff4bd..f8c11934b7b 100644 --- a/mozilla/widget/src/xlib/nsWidget.cpp +++ b/mozilla/widget/src/xlib/nsWidget.cpp @@ -703,7 +703,7 @@ NS_IMETHODIMP nsWidget::Scroll(PRInt32 aDx, PRInt32 aDy, nsRect *aClipRect) return NS_OK; } -NS_IMPL_ISUPPORTS_INHERITED(nsWidget, nsBaseWidget, nsISupportsWeakReference) +NS_IMPL_ISUPPORTS_INHERITED1(nsWidget, nsBaseWidget, nsISupportsWeakReference) NS_IMETHODIMP nsWidget::WidgetToScreen(const nsRect& aOldRect, nsRect& aNewRect) diff --git a/mozilla/xpcom/base/nsISupportsImpl.h b/mozilla/xpcom/base/nsISupportsImpl.h index e48191a8303..ce3a4c8910c 100644 --- a/mozilla/xpcom/base/nsISupportsImpl.h +++ b/mozilla/xpcom/base/nsISupportsImpl.h @@ -460,8 +460,71 @@ NS_IMETHODIMP_(nsrefcnt) Class::Release(void) \ NS_IMPL_QUERY_BODY(i6) \ NS_IMPL_QUERY_TAIL_INHERITING(Super) \ -#define NS_IMPL_ISUPPORTS_INHERITED(Class, Super, i1) \ - NS_IMPL_ISUPPORTS_INHERITED1(Class, Super, i1) \ +/** + * Convenience macros for implementing all nsISupports methods for + * a simple class. + * @param _class The name of the class implementing the method + * @param _classiiddef The name of the #define symbol that defines the IID + * for the class (e.g. NS_ISUPPORTS_IID) + */ + +#define NS_IMPL_ISUPPORTS0(_class) \ + NS_IMPL_ADDREF(_class) \ + NS_IMPL_RELEASE(_class) \ + NS_IMPL_QUERY_INTERFACE0(_class) + +#define NS_IMPL_ISUPPORTS1(_class, _interface) \ + NS_IMPL_ADDREF(_class) \ + NS_IMPL_RELEASE(_class) \ + NS_IMPL_QUERY_INTERFACE1(_class, _interface) + +#define NS_IMPL_ISUPPORTS2(_class, _i1, _i2) \ + NS_IMPL_ADDREF(_class) \ + NS_IMPL_RELEASE(_class) \ + NS_IMPL_QUERY_INTERFACE2(_class, _i1, _i2) + +#define NS_IMPL_ISUPPORTS3(_class, _i1, _i2, _i3) \ + NS_IMPL_ADDREF(_class) \ + NS_IMPL_RELEASE(_class) \ + NS_IMPL_QUERY_INTERFACE3(_class, _i1, _i2, _i3) + +#define NS_IMPL_ISUPPORTS4(_class, _i1, _i2, _i3, _i4) \ + NS_IMPL_ADDREF(_class) \ + NS_IMPL_RELEASE(_class) \ + NS_IMPL_QUERY_INTERFACE4(_class, _i1, _i2, _i3, _i4) + +#define NS_IMPL_ISUPPORTS5(_class, _i1, _i2, _i3, _i4, _i5) \ + NS_IMPL_ADDREF(_class) \ + NS_IMPL_RELEASE(_class) \ + NS_IMPL_QUERY_INTERFACE5(_class, _i1, _i2, _i3, _i4, _i5) + +#define NS_IMPL_ISUPPORTS6(_class, _i1, _i2, _i3, _i4, _i5, _i6) \ + NS_IMPL_ADDREF(_class) \ + NS_IMPL_RELEASE(_class) \ + NS_IMPL_QUERY_INTERFACE6(_class, _i1, _i2, _i3, _i4, _i5, _i6) + +#define NS_IMPL_ISUPPORTS7(_class, _i1, _i2, _i3, _i4, _i5, _i6, _i7) \ + NS_IMPL_ADDREF(_class) \ + NS_IMPL_RELEASE(_class) \ + NS_IMPL_QUERY_INTERFACE7(_class, _i1, _i2, _i3, _i4, _i5, _i6, _i7) + +#define NS_IMPL_ISUPPORTS8(_class, _i1, _i2, _i3, _i4, _i5, _i6, _i7, _i8) \ + NS_IMPL_ADDREF(_class) \ + NS_IMPL_RELEASE(_class) \ + NS_IMPL_QUERY_INTERFACE8(_class, _i1, _i2, _i3, _i4, _i5, _i6, _i7, _i8) + +#define NS_IMPL_ISUPPORTS9(_class, _i1, _i2, _i3, _i4, _i5, _i6, _i7, _i8, \ + _i9) \ + NS_IMPL_ADDREF(_class) \ + NS_IMPL_RELEASE(_class) \ + NS_IMPL_QUERY_INTERFACE9(_class, _i1, _i2, _i3, _i4, _i5, _i6, _i7, _i8, _i9) + +#define NS_IMPL_ISUPPORTS10(_class, _i1, _i2, _i3, _i4, _i5, _i6, _i7, _i8, \ + _i9, _i10) \ + NS_IMPL_ADDREF(_class) \ + NS_IMPL_RELEASE(_class) \ + NS_IMPL_QUERY_INTERFACE10(_class, _i1, _i2, _i3, _i4, _i5, _i6, _i7, _i8, \ + _i9, _i10) #define NS_IMPL_ISUPPORTS_INHERITED0(Class, Super) \ NS_IMPL_QUERY_INTERFACE_INHERITED0(Class, Super) \ @@ -544,23 +607,6 @@ nsrefcnt _class::Release(void) \ return count; \ } -#define NS_IMPL_THREADSAFE_QUERY_INTERFACE(_class,_classiiddef) \ -NS_IMETHODIMP _class::QueryInterface(REFNSIID aIID, void** aInstancePtr) \ -{ \ - if (NULL == aInstancePtr) { \ - return NS_ERROR_NULL_POINTER; \ - } \ - \ - *aInstancePtr = NULL; \ - \ - if (aIID.Equals(NS_GET_IID(nsISupports))) { \ - *aInstancePtr = (void*) ((nsISupports*)this); \ - NS_ADDREF_THIS(); \ - return NS_OK; \ - } \ - return NS_NOINTERFACE; \ -} - #else // defined(NS_MT_SUPPORTED) /** @@ -575,9 +621,6 @@ NS_IMETHODIMP _class::QueryInterface(REFNSIID aIID, void** aInstancePtr) \ #define NS_IMPL_THREADSAFE_RELEASE(_class) NS_IMPL_RELEASE(_class) -#define NS_IMPL_THREADSAFE_QUERY_INTERFACE(_class,_classiiddef) \ - NS_IMPL_QUERY_INTERFACE(_class, _classiiddef) - #endif /* !NS_MT_SUPPORTED */ #define NS_IMPL_THREADSAFE_ISUPPORTS0(_class) \ diff --git a/mozilla/xpcom/base/nsISupportsObsolete.h b/mozilla/xpcom/base/nsISupportsObsolete.h index 0d37e301902..a876c2fb084 100644 --- a/mozilla/xpcom/base/nsISupportsObsolete.h +++ b/mozilla/xpcom/base/nsISupportsObsolete.h @@ -295,118 +295,9 @@ NS_IMPL_SETTER_STR(_class::Set##_postfix, _member) #define NS_VERIFY_THREADSAFE_INTERFACE(_iface) #endif -#define NS_IMPL_THREADSAFE_ISUPPORTS(_class,_classiiddef) \ - NS_IMPL_THREADSAFE_ADDREF(_class) \ - NS_IMPL_THREADSAFE_RELEASE(_class) \ - NS_IMPL_THREADSAFE_QUERY_INTERFACE(_class,_classiiddef) - -/* - The following macro is deprecated. We need to switch all instances - to |NS_IMPL_QUERY_INTERFACE1|, or |NS_IMPL_QUERY_INTERFACE0| depending - on how they were using it. -*/ - -#define NS_IMPL_QUERY_INTERFACE(_class,_classiiddef) \ -NS_IMETHODIMP _class::QueryInterface(REFNSIID aIID, void** aInstancePtr) \ -{ \ - if (NULL == aInstancePtr) { \ - return NS_ERROR_NULL_POINTER; \ - } \ - \ - *aInstancePtr = NULL; \ - \ - static NS_DEFINE_IID(kClassIID, _classiiddef); \ - if (aIID.Equals(kClassIID)) { \ - *aInstancePtr = (void*) this; \ - NS_ADDREF_THIS(); \ - return NS_OK; \ - } \ - if (aIID.Equals(NS_GET_IID(nsISupports))) { \ - *aInstancePtr = (void*) ((nsISupports*)this); \ - NS_ADDREF_THIS(); \ - return NS_OK; \ - } \ - return NS_NOINTERFACE; \ -} - -/** - * Convenience macro for implementing all nsISupports methods for - * a simple class. - * @param _class The name of the class implementing the method - * @param _classiiddef The name of the #define symbol that defines the IID - * for the class (e.g. NS_ISUPPORTS_IID) - */ - -#define NS_IMPL_ISUPPORTS(_class,_classiiddef) \ - NS_IMPL_ADDREF(_class) \ - NS_IMPL_RELEASE(_class) \ - NS_IMPL_QUERY_INTERFACE(_class,_classiiddef) - -#define NS_IMPL_ISUPPORTS0(_class) \ - NS_IMPL_ADDREF(_class) \ - NS_IMPL_RELEASE(_class) \ - NS_IMPL_QUERY_INTERFACE0(_class) - -#define NS_IMPL_ISUPPORTS1(_class, _interface) \ - NS_IMPL_ADDREF(_class) \ - NS_IMPL_RELEASE(_class) \ - NS_IMPL_QUERY_INTERFACE1(_class, _interface) - -#define NS_IMPL_ISUPPORTS2(_class, _i1, _i2) \ - NS_IMPL_ADDREF(_class) \ - NS_IMPL_RELEASE(_class) \ - NS_IMPL_QUERY_INTERFACE2(_class, _i1, _i2) - -#define NS_IMPL_ISUPPORTS3(_class, _i1, _i2, _i3) \ - NS_IMPL_ADDREF(_class) \ - NS_IMPL_RELEASE(_class) \ - NS_IMPL_QUERY_INTERFACE3(_class, _i1, _i2, _i3) - -#define NS_IMPL_ISUPPORTS4(_class, _i1, _i2, _i3, _i4) \ - NS_IMPL_ADDREF(_class) \ - NS_IMPL_RELEASE(_class) \ - NS_IMPL_QUERY_INTERFACE4(_class, _i1, _i2, _i3, _i4) - -#define NS_IMPL_ISUPPORTS5(_class, _i1, _i2, _i3, _i4, _i5) \ - NS_IMPL_ADDREF(_class) \ - NS_IMPL_RELEASE(_class) \ - NS_IMPL_QUERY_INTERFACE5(_class, _i1, _i2, _i3, _i4, _i5) - -#define NS_IMPL_ISUPPORTS6(_class, _i1, _i2, _i3, _i4, _i5, _i6) \ - NS_IMPL_ADDREF(_class) \ - NS_IMPL_RELEASE(_class) \ - NS_IMPL_QUERY_INTERFACE6(_class, _i1, _i2, _i3, _i4, _i5, _i6) - -#define NS_IMPL_ISUPPORTS7(_class, _i1, _i2, _i3, _i4, _i5, _i6, _i7) \ - NS_IMPL_ADDREF(_class) \ - NS_IMPL_RELEASE(_class) \ - NS_IMPL_QUERY_INTERFACE7(_class, _i1, _i2, _i3, _i4, _i5, _i6, _i7) - -#define NS_IMPL_ISUPPORTS8(_class, _i1, _i2, _i3, _i4, _i5, _i6, _i7, _i8) \ - NS_IMPL_ADDREF(_class) \ - NS_IMPL_RELEASE(_class) \ - NS_IMPL_QUERY_INTERFACE8(_class, _i1, _i2, _i3, _i4, _i5, _i6, _i7, _i8) - -#define NS_IMPL_ISUPPORTS9(_class, _i1, _i2, _i3, _i4, _i5, _i6, _i7, _i8, \ - _i9) \ - NS_IMPL_ADDREF(_class) \ - NS_IMPL_RELEASE(_class) \ - NS_IMPL_QUERY_INTERFACE9(_class, _i1, _i2, _i3, _i4, _i5, _i6, _i7, _i8, _i9) - -#define NS_IMPL_ISUPPORTS10(_class, _i1, _i2, _i3, _i4, _i5, _i6, _i7, _i8, \ - _i9, _i10) \ - NS_IMPL_ADDREF(_class) \ - NS_IMPL_RELEASE(_class) \ - NS_IMPL_QUERY_INTERFACE10(_class, _i1, _i2, _i3, _i4, _i5, _i6, _i7, _i8, \ - _i9, _i10) - //////////////////////////////////////////////////////////////////////////////// -#define NS_IMPL_QUERY_INTERFACE_INHERITED(Class, Super, i1) \ - NS_IMPL_QUERY_INTERFACE_INHERITED1(Class, Super, i1) - - // below should go into nsIMemoryUtils.h or something similar. /** diff --git a/mozilla/xpcom/glue/nsISupportsImpl.h b/mozilla/xpcom/glue/nsISupportsImpl.h index e48191a8303..ce3a4c8910c 100644 --- a/mozilla/xpcom/glue/nsISupportsImpl.h +++ b/mozilla/xpcom/glue/nsISupportsImpl.h @@ -460,8 +460,71 @@ NS_IMETHODIMP_(nsrefcnt) Class::Release(void) \ NS_IMPL_QUERY_BODY(i6) \ NS_IMPL_QUERY_TAIL_INHERITING(Super) \ -#define NS_IMPL_ISUPPORTS_INHERITED(Class, Super, i1) \ - NS_IMPL_ISUPPORTS_INHERITED1(Class, Super, i1) \ +/** + * Convenience macros for implementing all nsISupports methods for + * a simple class. + * @param _class The name of the class implementing the method + * @param _classiiddef The name of the #define symbol that defines the IID + * for the class (e.g. NS_ISUPPORTS_IID) + */ + +#define NS_IMPL_ISUPPORTS0(_class) \ + NS_IMPL_ADDREF(_class) \ + NS_IMPL_RELEASE(_class) \ + NS_IMPL_QUERY_INTERFACE0(_class) + +#define NS_IMPL_ISUPPORTS1(_class, _interface) \ + NS_IMPL_ADDREF(_class) \ + NS_IMPL_RELEASE(_class) \ + NS_IMPL_QUERY_INTERFACE1(_class, _interface) + +#define NS_IMPL_ISUPPORTS2(_class, _i1, _i2) \ + NS_IMPL_ADDREF(_class) \ + NS_IMPL_RELEASE(_class) \ + NS_IMPL_QUERY_INTERFACE2(_class, _i1, _i2) + +#define NS_IMPL_ISUPPORTS3(_class, _i1, _i2, _i3) \ + NS_IMPL_ADDREF(_class) \ + NS_IMPL_RELEASE(_class) \ + NS_IMPL_QUERY_INTERFACE3(_class, _i1, _i2, _i3) + +#define NS_IMPL_ISUPPORTS4(_class, _i1, _i2, _i3, _i4) \ + NS_IMPL_ADDREF(_class) \ + NS_IMPL_RELEASE(_class) \ + NS_IMPL_QUERY_INTERFACE4(_class, _i1, _i2, _i3, _i4) + +#define NS_IMPL_ISUPPORTS5(_class, _i1, _i2, _i3, _i4, _i5) \ + NS_IMPL_ADDREF(_class) \ + NS_IMPL_RELEASE(_class) \ + NS_IMPL_QUERY_INTERFACE5(_class, _i1, _i2, _i3, _i4, _i5) + +#define NS_IMPL_ISUPPORTS6(_class, _i1, _i2, _i3, _i4, _i5, _i6) \ + NS_IMPL_ADDREF(_class) \ + NS_IMPL_RELEASE(_class) \ + NS_IMPL_QUERY_INTERFACE6(_class, _i1, _i2, _i3, _i4, _i5, _i6) + +#define NS_IMPL_ISUPPORTS7(_class, _i1, _i2, _i3, _i4, _i5, _i6, _i7) \ + NS_IMPL_ADDREF(_class) \ + NS_IMPL_RELEASE(_class) \ + NS_IMPL_QUERY_INTERFACE7(_class, _i1, _i2, _i3, _i4, _i5, _i6, _i7) + +#define NS_IMPL_ISUPPORTS8(_class, _i1, _i2, _i3, _i4, _i5, _i6, _i7, _i8) \ + NS_IMPL_ADDREF(_class) \ + NS_IMPL_RELEASE(_class) \ + NS_IMPL_QUERY_INTERFACE8(_class, _i1, _i2, _i3, _i4, _i5, _i6, _i7, _i8) + +#define NS_IMPL_ISUPPORTS9(_class, _i1, _i2, _i3, _i4, _i5, _i6, _i7, _i8, \ + _i9) \ + NS_IMPL_ADDREF(_class) \ + NS_IMPL_RELEASE(_class) \ + NS_IMPL_QUERY_INTERFACE9(_class, _i1, _i2, _i3, _i4, _i5, _i6, _i7, _i8, _i9) + +#define NS_IMPL_ISUPPORTS10(_class, _i1, _i2, _i3, _i4, _i5, _i6, _i7, _i8, \ + _i9, _i10) \ + NS_IMPL_ADDREF(_class) \ + NS_IMPL_RELEASE(_class) \ + NS_IMPL_QUERY_INTERFACE10(_class, _i1, _i2, _i3, _i4, _i5, _i6, _i7, _i8, \ + _i9, _i10) #define NS_IMPL_ISUPPORTS_INHERITED0(Class, Super) \ NS_IMPL_QUERY_INTERFACE_INHERITED0(Class, Super) \ @@ -544,23 +607,6 @@ nsrefcnt _class::Release(void) \ return count; \ } -#define NS_IMPL_THREADSAFE_QUERY_INTERFACE(_class,_classiiddef) \ -NS_IMETHODIMP _class::QueryInterface(REFNSIID aIID, void** aInstancePtr) \ -{ \ - if (NULL == aInstancePtr) { \ - return NS_ERROR_NULL_POINTER; \ - } \ - \ - *aInstancePtr = NULL; \ - \ - if (aIID.Equals(NS_GET_IID(nsISupports))) { \ - *aInstancePtr = (void*) ((nsISupports*)this); \ - NS_ADDREF_THIS(); \ - return NS_OK; \ - } \ - return NS_NOINTERFACE; \ -} - #else // defined(NS_MT_SUPPORTED) /** @@ -575,9 +621,6 @@ NS_IMETHODIMP _class::QueryInterface(REFNSIID aIID, void** aInstancePtr) \ #define NS_IMPL_THREADSAFE_RELEASE(_class) NS_IMPL_RELEASE(_class) -#define NS_IMPL_THREADSAFE_QUERY_INTERFACE(_class,_classiiddef) \ - NS_IMPL_QUERY_INTERFACE(_class, _classiiddef) - #endif /* !NS_MT_SUPPORTED */ #define NS_IMPL_THREADSAFE_ISUPPORTS0(_class) \