diff --git a/modules/plugin/base/public/nsIPluginTagInfo.h b/modules/plugin/base/public/nsIPluginTagInfo.h index b9ad32fcc0f..ac47412b9d3 100644 --- a/modules/plugin/base/public/nsIPluginTagInfo.h +++ b/modules/plugin/base/public/nsIPluginTagInfo.h @@ -81,19 +81,6 @@ public: */ NS_IMETHOD GetAttribute(const char* name, const char* *result) = 0; - - /** - * Returns the DOM element corresponding to the tag which references - * this plugin in the document. - * - * REMIND: do we need to expose as an nsISupports * to avoid - * introducing runtime dependencies on XPCOM? - * - * @param result - resulting DOM element - * @result - NS_OK if this operation was successful - */ - NS_IMETHOD - GetDOMElement(nsIDOMElement* *result) = 0; }; //////////////////////////////////////////////////////////////////////////////// diff --git a/modules/plugin/base/public/nsIPluginTagInfo2.h b/modules/plugin/base/public/nsIPluginTagInfo2.h index 60cfdbba8ea..cfd25d2d9ab 100644 --- a/modules/plugin/base/public/nsIPluginTagInfo2.h +++ b/modules/plugin/base/public/nsIPluginTagInfo2.h @@ -118,6 +118,18 @@ public: NS_IMETHOD GetUniqueID(PRUint32 *result) = 0; + /** + * Returns the DOM element corresponding to the tag which references + * this plugin in the document. + * + * REMIND: do we need to expose as an nsISupports * to avoid + * introducing runtime dependencies on XPCOM? + * + * @param result - resulting DOM element + * @result - NS_OK if this operation was successful + */ + NS_IMETHOD + GetDOMElement(nsIDOMElement* *result) = 0; }; //////////////////////////////////////////////////////////////////////////////// diff --git a/modules/plugin/base/src/nsPluginInstancePeer.cpp b/modules/plugin/base/src/nsPluginInstancePeer.cpp index 56c07d232a3..3971fef2af9 100644 --- a/modules/plugin/base/src/nsPluginInstancePeer.cpp +++ b/modules/plugin/base/src/nsPluginInstancePeer.cpp @@ -371,10 +371,10 @@ NS_IMETHODIMP nsPluginInstancePeerImpl::GetDOMElement(nsIDOMElement* *result) return NS_ERROR_FAILURE; } - nsIPluginTagInfo *tinfo; + nsIPluginTagInfo2 *tinfo; nsresult rv; - rv = mOwner->QueryInterface(kIPluginTagInfoIID, (void **)&tinfo); + rv = mOwner->QueryInterface(kIPluginTagInfo2IID, (void **)&tinfo); if (NS_OK == rv) { diff --git a/modules/plugin/nglsrc/nsPluginInstancePeer.cpp b/modules/plugin/nglsrc/nsPluginInstancePeer.cpp index 56c07d232a3..3971fef2af9 100644 --- a/modules/plugin/nglsrc/nsPluginInstancePeer.cpp +++ b/modules/plugin/nglsrc/nsPluginInstancePeer.cpp @@ -371,10 +371,10 @@ NS_IMETHODIMP nsPluginInstancePeerImpl::GetDOMElement(nsIDOMElement* *result) return NS_ERROR_FAILURE; } - nsIPluginTagInfo *tinfo; + nsIPluginTagInfo2 *tinfo; nsresult rv; - rv = mOwner->QueryInterface(kIPluginTagInfoIID, (void **)&tinfo); + rv = mOwner->QueryInterface(kIPluginTagInfo2IID, (void **)&tinfo); if (NS_OK == rv) { diff --git a/modules/plugin/public/nsIPluginTagInfo.h b/modules/plugin/public/nsIPluginTagInfo.h index b9ad32fcc0f..e69de29bb2d 100644 --- a/modules/plugin/public/nsIPluginTagInfo.h +++ b/modules/plugin/public/nsIPluginTagInfo.h @@ -1,101 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- - * - * The contents of this file are subject to the Netscape Public - * License Version 1.1 (the "License"); you may not use this file - * except in compliance with the License. You may obtain a copy of - * the License at http://www.mozilla.org/NPL/ - * - * Software distributed under the License is distributed on an "AS - * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or - * implied. See the License for the specific language governing - * rights and limitations under the License. - * - * The Original Code is mozilla.org code. - * - * The Initial Developer of the Original Code is Netscape - * Communications Corporation. Portions created by Netscape are - * Copyright (C) 1998 Netscape Communications Corporation. All - * Rights Reserved. - * - * Contributor(s): - */ - -//////////////////////////////////////////////////////////////////////////////// -/** - * INTERFACE TO NETSCAPE COMMUNICATOR PLUGINS (NEW C++ API). - * - *

This superscedes the old plugin API (npapi.h, npupp.h), and - * eliminates the need for glue files: npunix.c, npwin.cpp and npmac.cpp that - * get linked with the plugin. You will however need to link with the "backward - * adapter" (badapter.cpp) in order to allow your plugin to run in pre-5.0 - * browsers. - * - *

See nsplugin.h for an overview of how this interface fits with the - * overall plugin architecture. - */ -//////////////////////////////////////////////////////////////////////////////// - -#ifndef nsIPluginTagInfo_h___ -#define nsIPluginTagInfo_h___ - -#include "nsplugindefs.h" -#include "nsISupports.h" - -class nsIDOMElement; - -#define NS_IPLUGINTAGINFO_IID \ -{ /* 5f1ec1d0-019b-11d2-815b-006008119d7a */ \ - 0x5f1ec1d0, \ - 0x019b, \ - 0x11d2, \ - {0x81, 0x5b, 0x00, 0x60, 0x08, 0x11, 0x9d, 0x7a} \ -} - -//////////////////////////////////////////////////////////////////////////////// -// Plugin Tag Info Interface -// This interface provides information about the HTML tag on the page. -// Some day this might get superseded by a DOM API. - -class nsIPluginTagInfo : public nsISupports { -public: - NS_DEFINE_STATIC_IID_ACCESSOR(NS_IPLUGINTAGINFO_IID) - - // QueryInterface on nsIPluginInstancePeer to get this. - - // (Corresponds to NPP_New's argc, argn, and argv arguments.) - // Get a ptr to the paired list of attribute names and values, - // returns the length of the array. - // - // Each name or value is a null-terminated string. - NS_IMETHOD - GetAttributes(PRUint16& n, const char*const*& names, const char*const*& values) = 0; - - /** - * Gets the value for the named attribute. - * - * @param name - the name of the attribute to find - * @param result - the resulting attribute - * @result - NS_OK if this operation was successful, NS_ERROR_FAILURE if - * this operation failed. result is set to NULL if the attribute is not found - * else to the found value. - */ - NS_IMETHOD - GetAttribute(const char* name, const char* *result) = 0; - - /** - * Returns the DOM element corresponding to the tag which references - * this plugin in the document. - * - * REMIND: do we need to expose as an nsISupports * to avoid - * introducing runtime dependencies on XPCOM? - * - * @param result - resulting DOM element - * @result - NS_OK if this operation was successful - */ - NS_IMETHOD - GetDOMElement(nsIDOMElement* *result) = 0; -}; - -//////////////////////////////////////////////////////////////////////////////// - -#endif /* nsIPluginTagInfo_h___ */ diff --git a/modules/plugin/public/nsIPluginTagInfo2.h b/modules/plugin/public/nsIPluginTagInfo2.h index 60cfdbba8ea..e69de29bb2d 100644 --- a/modules/plugin/public/nsIPluginTagInfo2.h +++ b/modules/plugin/public/nsIPluginTagInfo2.h @@ -1,125 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- - * - * The contents of this file are subject to the Netscape Public - * License Version 1.1 (the "License"); you may not use this file - * except in compliance with the License. You may obtain a copy of - * the License at http://www.mozilla.org/NPL/ - * - * Software distributed under the License is distributed on an "AS - * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or - * implied. See the License for the specific language governing - * rights and limitations under the License. - * - * The Original Code is mozilla.org code. - * - * The Initial Developer of the Original Code is Netscape - * Communications Corporation. Portions created by Netscape are - * Copyright (C) 1998 Netscape Communications Corporation. All - * Rights Reserved. - * - * Contributor(s): - */ - -//////////////////////////////////////////////////////////////////////////////// -/** - * INTERFACE TO NETSCAPE COMMUNICATOR PLUGINS (NEW C++ API). - * - *

This superscedes the old plugin API (npapi.h, npupp.h), and - * eliminates the need for glue files: npunix.c, npwin.cpp and npmac.cpp that - * get linked with the plugin. You will however need to link with the "backward - * adapter" (badapter.cpp) in order to allow your plugin to run in pre-5.0 - * browsers. - * - *

See nsplugin.h for an overview of how this interface fits with the - * overall plugin architecture. - */ -//////////////////////////////////////////////////////////////////////////////// - -#ifndef nsIPluginTagInfo2_h___ -#define nsIPluginTagInfo2_h___ - -#include "nsIPluginTagInfo.h" - -//////////////////////////////////////////////////////////////////////////////// -// Plugin Tag Info Interface -// These extensions to nsIPluginTagInfo are only available in Communicator 5.0. - -enum nsPluginTagType { - nsPluginTagType_Unknown, - nsPluginTagType_Embed, - nsPluginTagType_Object, - nsPluginTagType_Applet -}; - -#define NS_IPLUGINTAGINFO2_IID \ -{ /* 6a49c9a0-019b-11d2-815b-006008119d7a */ \ - 0x6a49c9a0, \ - 0x019b, \ - 0x11d2, \ - {0x81, 0x5b, 0x00, 0x60, 0x08, 0x11, 0x9d, 0x7a} \ -} - -class nsIPluginTagInfo2 : public nsIPluginTagInfo { -public: - NS_DEFINE_STATIC_IID_ACCESSOR(NS_IPLUGINTAGINFO2_IID) - - // QueryInterface on nsIPluginInstancePeer to get this. - - // Get the type of the HTML tag that was used ot instantiate this - // plugin. Currently supported tags are EMBED, OBJECT and APPLET. - NS_IMETHOD - GetTagType(nsPluginTagType *result) = 0; - - // Get the complete text of the HTML tag that was - // used to instantiate this plugin - NS_IMETHOD - GetTagText(const char* *result) = 0; - - // Get a ptr to the paired list of parameter names and values, - // returns the length of the array. - // - // Each name or value is a null-terminated string. - NS_IMETHOD - GetParameters(PRUint16& n, const char*const*& names, const char*const*& values) = 0; - - // Get the value for the named parameter. Returns null - // if the parameter was not set. - // @result - NS_OK if this operation was successful, NS_ERROR_FAILURE if - // this operation failed. result is set to NULL if the attribute is not found - // else to the found value. - NS_IMETHOD - GetParameter(const char* name, const char* *result) = 0; - - NS_IMETHOD - GetDocumentBase(const char* *result) = 0; - - // Return an encoding whose name is specified in: - // http://java.sun.com/products/jdk/1.1/docs/guide/intl/intl.doc.html#25303 - NS_IMETHOD - GetDocumentEncoding(const char* *result) = 0; - - NS_IMETHOD - GetAlignment(const char* *result) = 0; - - NS_IMETHOD - GetWidth(PRUint32 *result) = 0; - - NS_IMETHOD - GetHeight(PRUint32 *result) = 0; - - NS_IMETHOD - GetBorderVertSpace(PRUint32 *result) = 0; - - NS_IMETHOD - GetBorderHorizSpace(PRUint32 *result) = 0; - - // Returns a unique id for the current document on which the - // plugin is displayed. - NS_IMETHOD - GetUniqueID(PRUint32 *result) = 0; - -}; - -//////////////////////////////////////////////////////////////////////////////// - -#endif /* nsIPluginTagInfo2_h___ */