Netscape DevEdge

Skip to: [content] [navigation]

TOC PREV NEXT

plug-ins!


NPP_New


Creates a new instance of a plug-in.

Syntax

#include <npapi.h>
 
NPError NPP_New(NPMIMEType    pluginType,
 
                NPP instance, uint16 mode,
 
                int16 argc,   char *argn[],
 
                char *argv[], NPSavedData *saved);
 

Parameters

The function has the following parameters:

pluginType
 
Pointer to the MIME type for new plug-in instance.
instance
 

 
Contains instance-specific private data for the plug-in and the browser. This data is stored in instance->pdata.
mode
 

Display mode of plug-in. Values:

  • NP_EMBED: (1) Instance was created by an EMBED tag and shares the browser window with other content.
  • NP_FULL: (2) Instance was created by a separate file and is the primary content in the window.
argc
 

Number of HTML arguments in the EMBED tag for an embedded plug-in; determines the number of attributes in the argn and argv arrays.

argn[] 
 

Array of attribute names passed to the plug-in from the EMBED tag.

argv[]
 

Array of attribute values passed to the plug-in from the EMBED tag.

saved
 

Pointer to data saved by NPP_Destroy for a previous instance of this plug-in at the same URL. If non-null, the browser passes ownership of the NPSavedData object back to the plug-in. The plug-in is responsible for freeing the memory for the NPSavedData and the buffer it contains.


Returns

  • If successful, the function returns NPERR_NO_ERROR.
  • If unsuccessful, the function returns an error code. For possible values, see Error Codes.

Description

NPP_New creates a new instance of a plug-in. It is called after NP_Initialize and provides the MIME type, embedded or full-screen display mode, and, for embedded plug-ins, information about HTML EMBED arguments.

The plug-in's NPP pointer is valid until the instance is destroyed with NPP_Destroy.

If instance data was saved from a previous instance of the plug-in by the NPP_Destroy function, it is returned in the saved parameter for the current instance to use.

All attributes in the EMBED tag (standard and private) are passed in NPP_New in the argn and argv arrays. The browser ignores any non-standard attributes within an EMBED tag. This gives developers a chance to use private attributes to communicate instance-specific options or other information to the plug-in. Place private options at the end of the list of standard attributes in the EMBED Tag.

See Also

NPP_Destroy, NP_Shutdown, NPP, NPSavedData


Netscape Communications
http://developer.netscape.com
TOC PREV NEXT
A+R