QWidgetPlugin Class

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

# QWidgetPlugin Class Reference

The QWidgetPlugin class provides an abstract base for custom QWidget plugins. More...

`#include <qwidgetplugin.h>`

List of all member functions.

## Public Members

- QWidgetPlugin ()
- ~QWidgetPlugin ()
- virtual QStringList keys () const = 0
- virtual QWidget * create ( const QString & key, QWidget * parent = 0, const char * name = 0 ) = 0
- virtual QString group ( const QString & key ) const
- virtual QIconSet iconSet ( const QString & key ) const
- virtual QString includeFile ( const QString & key ) const
- virtual QString toolTip ( const QString & key ) const
- virtual QString whatsThis ( const QString & key ) const
- virtual bool isContainer ( const QString & key ) const

## Detailed Description

The QWidgetPlugin class provides an abstract base for custom QWidget plugins.

The widget plugin is a simple plugin interface that makes it easy to create custom widgets that can be included in forms using Qt Designer and used by applications.

Writing a widget plugin is achieved by subclassing this base class, reimplementing the pure virtual functions keys(), create(), group(), iconSet(), includeFile(), toolTip(), whatsThis() and isContainer(), and exporting the class with the `Q_EXPORT_PLUGIN` macro.

See the Qt Designer manual's, 'Creating Custom Widgets' section in the 'Creating Custom Widgets' chapter, for a complete example of a QWidgetPlugin.

See also the Plugins documentation and the QWidgetFactory class that is supplied with Qt Designer.

See also Plugins.

## Member Function Documentation

### QWidgetPlugin::QWidgetPlugin ()

Constructs a widget plugin. This is invoked automatically by the `Q_EXPORT_PLUGIN` macro.

### QWidgetPlugin::~QWidgetPlugin ()

Destroys the widget plugin.

You never have to call this explicitly. Qt destroys a plugin automatically when it is no longer used.

### QWidget * QWidgetPlugin::create ( const QString & key, QWidget * parent = 0, const char * name = 0 )`[pure virtual]`

Creates and returns a QWidget object for the widget key key. The widget key is the class name of the required widget. The name and parent arguments are passed to the custom widget's constructor.

See also keys().

### QString QWidgetPlugin::group ( const QString & key ) const`[virtual]`

Returns the group (toolbar name) that the custom widget of class key should be part of when Qt Designer loads it.

The default implementation returns QString::null.

### QIconSet QWidgetPlugin::iconSet ( const QString & key ) const`[virtual]`

Returns the iconset that Qt Designer should use to represent the custom widget of class key in the toolbar.

The default implementation returns an null iconset.

### QString QWidgetPlugin::includeFile ( const QString & key ) const`[virtual]`

Returns the name of the include file that Qt Designer and `uic` should use to include the custom widget of class key in generated code.

The default implementation returns QString::null.

### bool QWidgetPlugin::isContainer ( const QString & key ) const`[virtual]`

Returns TRUE if the custom widget of class key can contain other widgets, e.g. like QFrame; otherwise returns FALSE.

The default implementation returns FALSE.

### QStringList QWidgetPlugin::keys () const`[pure virtual]`

Returns the list of widget keys this plugin supports.

These keys must be the class names of the custom widgets that are implemented in the plugin.

See also create().

### QString QWidgetPlugin::toolTip ( const QString & key ) const`[virtual]`

Returns the text of the tooltip that Qt Designer should use for the custom widget of class key's toolbar button.

The default implementation returns QString::null.

### QString QWidgetPlugin::whatsThis ( const QString & key ) const`[virtual]`

Returns the text of the whatsThis text that Qt Designer should use when the user requests whatsThis help for the custom widget of class key.

The default implementation returns QString::null.

This file is part of the Qt toolkit. Copyright © 1995-2003 Trolltech. All Rights Reserved.