Home | All Classes | Main Classes | Annotated | Grouped Classes | Functions |

# QNPWidget Class Reference

The QNPWidget class provides a QWidget that is a Web-browser plugin window.

This class is part of the Qt NSPlugin Extension. More...

`#include <qnp.h>`

Inherits QWidget.

List of all member functions.

## Public Members

- QNPWidget ()
- ~QNPWidget ()
- virtual void enterInstance ()
- virtual void leaveInstance ()
- QNPInstance * instance ()

## Detailed Description

This class is defined in the Qt NSPlugin Extension, which can be found in the `qt/extensions` directory. It is not included in the main Qt API.

The QNPWidget class provides a QWidget that is a Web-browser plugin window.

Derive from QNPWidget to create a widget that can be used as a Browser plugin window, or create one and add child widgets. Instances of QNPWidget may only be created when QNPInstance::newWindow() is called by the browser.

A common way to develop a plugin widget is to develop it as a stand-alone application window, then make it a child of a plugin widget to use it as a browser plugin. The technique is:

    class MyPluginWindow : public QNPWidget {
        QWidget* child;
    public:
        MyPluginWindow()
        {
            // Some widget that is normally used as a top-level widget
            child = new MyIndependentlyDevelopedWidget();

            // Use the background color of the web page
            child->setBackgroundColor( backgroundColor() );

            // Fill the plugin widget
            child->setGeometry( 0, 0, width(), height() );
        }

        void resizeEvent(QResizeEvent*)
        {
            // Fill the plugin widget
            child->resize(size());
        }
    };

The default implementation is an empty window.

## Member Function Documentation

### QNPWidget::QNPWidget ()

Creates a QNPWidget.

### QNPWidget::~QNPWidget ()

Destroys the window. This will be called by the plugin binding code when the window is no longer required. The Web-browser will delete windows when they leave the page. The bindings will change the QWidget::winId() of the window when the window is resized, but this should not affect normal widget behavior.

### void QNPWidget::enterInstance ()`[virtual]`

Called when the mouse enters the plugin window. Does nothing by default.

Example: grapher/grapher.cpp.

### QNPInstance * QNPWidget::instance ()

Returns the instance for which this widget is the window.

### void QNPWidget::leaveInstance ()`[virtual]`

Called when the mouse leaves the plugin window. Does nothing by default.

Example: grapher/grapher.cpp.

This file is part of the Qt toolkit, copyright © 1995-2001 Trolltech, all rights reserved.