The nsIPlugin interface is the minimum interface plugin developers need to support in order to implement a plugin. The plugin manager may QueryInterface for more specific plugin types, e.g. nsILiveConnectPlugin. The old NPP_New plugin operation is now subsumed by two operations: CreateInstance -- called once, after the plugin instance is created. This method is used to initialize the new plugin instance (although the actual plugin instance object will be created by the plugin manager). nsIPluginInstance::Start -- called when the plugin instance is to be started. This happens in two circumstances: (1) after the plugin instance is first initialized, and (2) after a plugin instance is returned to (e.g. by going back in the window history) after previously being stopped by the Stop method.
[uuid(df773070-0199-11d2-815b-006008119d7a)]
Methods
Creates a new plugin instance, based on a MIME type. This allows different impelementations to be created depending on the specified MIME type.
void
createPluginInstance(in nsISupports aOuter, in nsIIDRef aIID, in string aPluginMIMEType, [retval, iid_is(aIID)] out nsQIResult aResult)
Returns the MIME description for the plugin. The MIME description is a colon-separated string containg the plugin MIME type, plugin data file extension, and plugin name, e.g.: "application/x-simple-plugin:smp:Simple LiveConnect Sample Plug-in" (Corresponds to NPP_GetMIMEDescription.) @param aMIMEDescription - the resulting MIME description @result - NS_OK if this operation was successful
Returns the value of a variable associated with the plugin. (Corresponds to NPP_GetValue.) @param aVariable - the plugin variable to get @param aValue - the address of where to store the resulting value @result - NS_OK if this operation was successful
Initializes the plugin and will be called before any new instances are created. It is passed browserInterfaces on which QueryInterface may be used to obtain an nsIPluginManager, and other interfaces. @param browserInterfaces - an object that allows access to other browser interfaces via QueryInterface @result - NS_OK if this operation was successful