From 789b05db4376c2387faa9e4f399416dd5270702b Mon Sep 17 00:00:00 2001 From: David Zbarsky Date: Sat, 2 Feb 2013 15:23:15 -0500 Subject: [PATCH] Bug 833446: Remove nsIDOMSVGGElement r=peterv --- content/svg/content/src/SVGGElement.cpp | 14 +++--------- content/svg/content/src/SVGGElement.h | 6 +---- content/svg/content/src/SVGUseElement.cpp | 1 - dom/base/nsDOMClassInfo.cpp | 8 ------- dom/base/nsDOMClassInfoClasses.h | 1 - dom/interfaces/svg/Makefile.in | 1 - dom/interfaces/svg/nsIDOMSVGGElement.idl | 28 ----------------------- 7 files changed, 4 insertions(+), 55 deletions(-) delete mode 100644 dom/interfaces/svg/nsIDOMSVGGElement.idl diff --git a/content/svg/content/src/SVGGElement.cpp b/content/svg/content/src/SVGGElement.cpp index b0f4f10c8b5c..0a8e8953f981 100644 --- a/content/svg/content/src/SVGGElement.cpp +++ b/content/svg/content/src/SVGGElement.cpp @@ -6,8 +6,6 @@ #include "mozilla/dom/SVGGElement.h" #include "mozilla/dom/SVGGElementBinding.h" -DOMCI_NODE_DATA(SVGGElement, mozilla::dom::SVGGElement) - NS_IMPL_NS_NEW_NAMESPACED_SVG_ELEMENT(G) namespace mozilla { @@ -22,15 +20,9 @@ SVGGElement::WrapNode(JSContext *aCx, JSObject *aScope, bool *aTriedToWrap) //---------------------------------------------------------------------- // nsISupports methods -NS_IMPL_ADDREF_INHERITED(SVGGElement, SVGGraphicsElement) -NS_IMPL_RELEASE_INHERITED(SVGGElement, SVGGraphicsElement) - -NS_INTERFACE_TABLE_HEAD(SVGGElement) - NS_NODE_INTERFACE_TABLE4(SVGGElement, nsIDOMNode, nsIDOMElement, - nsIDOMSVGElement, - nsIDOMSVGGElement) - NS_DOM_INTERFACE_MAP_ENTRY_CLASSINFO(SVGGElement) -NS_INTERFACE_MAP_END_INHERITING(SVGGraphicsElement) +NS_IMPL_ISUPPORTS_INHERITED3(SVGGElement, SVGGraphicsElement, + nsIDOMNode, nsIDOMElement, + nsIDOMSVGElement) //---------------------------------------------------------------------- // Implementation diff --git a/content/svg/content/src/SVGGElement.h b/content/svg/content/src/SVGGElement.h index f23af17a7705..82256403027d 100644 --- a/content/svg/content/src/SVGGElement.h +++ b/content/svg/content/src/SVGGElement.h @@ -8,7 +8,6 @@ #include "mozilla/Util.h" #include "mozilla/dom/SVGGraphicsElement.h" -#include "nsIDOMSVGGElement.h" nsresult NS_NewSVGGElement(nsIContent **aResult, already_AddRefed aNodeInfo); @@ -17,7 +16,7 @@ namespace mozilla { namespace dom { class SVGGElement MOZ_FINAL : public SVGGraphicsElement, - public nsIDOMSVGGElement + public nsIDOMSVGElement { protected: SVGGElement(already_AddRefed aNodeInfo); @@ -29,7 +28,6 @@ public: // interfaces: NS_DECL_ISUPPORTS_INHERITED - NS_DECL_NSIDOMSVGGELEMENT // xxx I wish we could use virtual inheritance NS_FORWARD_NSIDOMNODE_TO_NSINODE @@ -41,8 +39,6 @@ public: virtual nsresult Clone(nsINodeInfo *aNodeInfo, nsINode **aResult) const; - virtual nsXPCClassInfo* GetClassInfo(); - virtual nsIDOMNode* AsDOMNode() { return this; } }; diff --git a/content/svg/content/src/SVGUseElement.cpp b/content/svg/content/src/SVGUseElement.cpp index 2a0168976e75..b10dcc99a715 100644 --- a/content/svg/content/src/SVGUseElement.cpp +++ b/content/svg/content/src/SVGUseElement.cpp @@ -8,7 +8,6 @@ #include "mozilla/dom/SVGAnimatedLength.h" #include "mozilla/dom/SVGUseElement.h" #include "mozilla/dom/SVGUseElementBinding.h" -#include "nsIDOMSVGGElement.h" #include "nsGkAtoms.h" #include "mozilla/dom/SVGSVGElement.h" #include "nsIDOMSVGSymbolElement.h" diff --git a/dom/base/nsDOMClassInfo.cpp b/dom/base/nsDOMClassInfo.cpp index 2c6bc3f7f715..cf97080916c8 100644 --- a/dom/base/nsDOMClassInfo.cpp +++ b/dom/base/nsDOMClassInfo.cpp @@ -324,7 +324,6 @@ #include "nsIDOMSVGEvent.h" #include "nsIDOMSVGFilterElement.h" #include "nsIDOMSVGFilters.h" -#include "nsIDOMSVGGElement.h" #include "nsIDOMSVGGradientElement.h" #include "nsIDOMSVGImageElement.h" #include "nsIDOMSVGLength.h" @@ -1117,8 +1116,6 @@ static nsDOMClassInfoData sClassInfoData[] = { ELEMENT_SCRIPTABLE_FLAGS) NS_DEFINE_CLASSINFO_DATA(SVGFilterElement, nsElementSH, ELEMENT_SCRIPTABLE_FLAGS) - NS_DEFINE_CLASSINFO_DATA(SVGGElement, nsElementSH, - ELEMENT_SCRIPTABLE_FLAGS) NS_DEFINE_CLASSINFO_DATA(SVGImageElement, nsElementSH, ELEMENT_SCRIPTABLE_FLAGS) NS_DEFINE_CLASSINFO_DATA(SVGLinearGradientElement, nsElementSH, @@ -3142,11 +3139,6 @@ nsDOMClassInfo::Init() DOM_CLASSINFO_SVG_ELEMENT_MAP_ENTRIES DOM_CLASSINFO_MAP_END - DOM_CLASSINFO_MAP_BEGIN(SVGGElement, nsIDOMSVGGElement) - DOM_CLASSINFO_MAP_ENTRY(nsIDOMSVGGElement) - DOM_CLASSINFO_SVG_GRAPHIC_ELEMENT_MAP_ENTRIES - DOM_CLASSINFO_MAP_END - DOM_CLASSINFO_MAP_BEGIN(SVGImageElement, nsIDOMSVGImageElement) DOM_CLASSINFO_MAP_ENTRY(nsIDOMSVGImageElement) DOM_CLASSINFO_MAP_ENTRY(nsIImageLoadingContent) diff --git a/dom/base/nsDOMClassInfoClasses.h b/dom/base/nsDOMClassInfoClasses.h index 9962f68eb1e5..a40be078512a 100644 --- a/dom/base/nsDOMClassInfoClasses.h +++ b/dom/base/nsDOMClassInfoClasses.h @@ -220,7 +220,6 @@ DOMCI_CLASS(SVGFESpotLightElement) DOMCI_CLASS(SVGFETileElement) DOMCI_CLASS(SVGFETurbulenceElement) DOMCI_CLASS(SVGFilterElement) -DOMCI_CLASS(SVGGElement) DOMCI_CLASS(SVGImageElement) DOMCI_CLASS(SVGLinearGradientElement) DOMCI_CLASS(SVGLineElement) diff --git a/dom/interfaces/svg/Makefile.in b/dom/interfaces/svg/Makefile.in index 3080288fb21f..0b9334e7ce60 100644 --- a/dom/interfaces/svg/Makefile.in +++ b/dom/interfaces/svg/Makefile.in @@ -30,7 +30,6 @@ XPIDLSRCS = \ nsIDOMSVGEvent.idl \ nsIDOMSVGFilterElement.idl \ nsIDOMSVGFilters.idl \ - nsIDOMSVGGElement.idl \ nsIDOMSVGGradientElement.idl \ nsIDOMSVGImageElement.idl \ nsIDOMSVGLength.idl \ diff --git a/dom/interfaces/svg/nsIDOMSVGGElement.idl b/dom/interfaces/svg/nsIDOMSVGGElement.idl deleted file mode 100644 index 3596722b022c..000000000000 --- a/dom/interfaces/svg/nsIDOMSVGGElement.idl +++ /dev/null @@ -1,28 +0,0 @@ -/* -*- Mode: IDL; tab-width: 2; 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 "nsIDOMSVGElement.idl" - -[scriptable, uuid(E348255B-FFF0-4D5F-9B32-FC200CF1C873)] -interface nsIDOMSVGGElement - : nsIDOMSVGElement -/* - The SVG DOM makes use of multiple interface inheritance. - Since XPCOM only supports single interface inheritance, - the best thing that we can do is to promise that whenever - an object implements _this_ interface it will also - implement the following interfaces. (We then have to QI to - hop between them.) - - nsIDOMSVGTests, - nsIDOMSVGLangSpace, - nsIDOMSVGExternalResourcesRequired, - nsIDOMSVGStylable, - nsIDOMSVGTransformable, - events::nsIDOMEventTarget -*/ -{ - -};