classQNPlugin.html

QNPlugin Class Reference

The QNPlugin class provides the plugin central factory. More...

#include <qnp.h>

Inheritance diagram for QNPlugin:

List of all members.

Public Member Functions

virtual ~QNPlugin ()
void getVersionInfo (int &plugin_major, int &plugin_minor, int &browser_major, int &browser_minor)
virtual QNPInstancenewInstance ()=0
virtual const char * getMIMEDescription () const =0
virtual const char * getPluginNameString () const =0
virtual const char * getPluginDescriptionString () const =0
virtual void * getJavaClass ()
virtual void unuseJavaClass ()
void * getJavaEnv () const

Static Public Member Functions

QNPlugincreate ()
 declare the config file reader
QNPluginactual ()

Protected Member Functions

 QNPlugin ()

Detailed Description

The QNPlugin class provides the plugin central factory.

Netscape Plugin

This class is the heart of the plugin. One instance of this object is created when the plugin is first needed, by calling QNPlugin::create(), which must be implemented in your plugin code to return some derived class of QNPlugin. The one QNPlugin object creates all QNPInstance instances for a single running Web-browser process.

Additionally, if Qt is linked to the plugin as a dynamic library, only one instance of QApplication will exist {across all plugins that have been made with Qt}. So, your plugin should tread lightly on global settings - do not, for example, use QApplication::setFont() - that will change the font in every widget of every Qt-based plugin currently loaded!


Constructor & Destructor Documentation

QNPlugin::~QNPlugin  )  [virtual]
 

Destroys the QNPlugin. This is called by the plugin binding code just before the plugin is about to be unloaded from memory. If newWindow() has been called, a QApplication will still exist at this time, but will be deleted shortly after before the plugin is deleted.

QNPlugin::QNPlugin  )  [protected]
 

Creates a QNPlugin. This may only be used by the constructor derived class returned by the plugin's implementation of the QNPlugin::create() function.


Member Function Documentation

QNPlugin * QNPlugin::actual  )  [static]
 

Returns the plugin most recently returned by QNPlugin::create().

QNPlugin * QNPlugin::create  )  [static]
 

declare the config file reader

The create method is called by the browser to create the plugin. For any instance "newInstance" is called.

void * QNPlugin::getJavaClass  )  [virtual]
 

Override to return a reference to the Java class that represents the plugin. The default returns 0, indicating no class.

If you override this class, you must also override QNPlugin::unuseJavaClass().

The return value is actually a {jref}; we use {void*} so as to avoid burdening plugins which do not require Java.

See also:
getJavaEnv(), QNPInstance::getJavaPeer()

void * QNPlugin::getJavaEnv  )  const
 

Returns a pointer to the Java execution environment, or 0 if Java is disabled or an error occurred.

The return value is actually a {JRIEnv*}; we use {void*} so as to avoid burdening plugins which do not require Java.

See also:
getJavaClass(), QNPInstance::getJavaPeer()

const char * QNPlugin::getMIMEDescription  )  const [pure virtual]
 

Override this to return the MIME description of the data formats supported by your plugin. The format of this string is shown by the following example:

    const char* getMIMEDescription() const
    {
        return "image/x-png:png:PNG Image;"
               "image/png:png:PNG Image;"
               "image/x-portable-bitmap:pbm:PBM Image;"
               "image/x-portable-graymap:pgm:PGM Image;"
               "image/x-portable-pixmap:ppm:PPM Image;"
               "image/bmp:bmp:BMP Image;"
               "image/x-ms-bmp:bmp:BMP Image;"
               "image/x-xpixmap:xpm:XPM Image;"
               "image/xpm:xpm:XPM Image";
    }

Implemented in iARSPlugin.

const char * QNPlugin::getPluginDescriptionString  )  const [pure virtual]
 

Returns the plain-text description of the plugin.

Implemented in iARSPlugin.

const char * QNPlugin::getPluginNameString  )  const [pure virtual]
 

Returns the plain-text name of the plugin.

Implemented in iARSPlugin.

void QNPlugin::getVersionInfo int &  plugin_major,
int &  plugin_minor,
int &  browser_major,
int &  browser_minor
 

Populates *plugin_major and *plugin_minor with the version of the plugin API and populates *browser_major and *browser_minor with the version of the browser.

QNPInstance * QNPlugin::newInstance  )  [pure virtual]
 

Override this to return an appropriate derived class of QNPInstance.

Implemented in iARSPlugin.

void QNPlugin::unuseJavaClass  )  [virtual]
 

This function is called when the plugin is shutting down, with jc set to the value returned earlier by getJavaClass(). The function should unuse the Java class.


The documentation for this class was generated from the following files:
  • qnp.h
  • iARSPlugin.cpp
  • qnp.cpp

Generated on Thu Nov 25 15:42:55 2004 for iARS(internetAudioRenderingSystem) by  doxygen 1.3.9.1