|  | Home · All Classes · All Functions · Overviews

# QInputContextPlugin Class Reference
[QtGui module]

The QInputContextPlugin class provides an abstract base for custom QInputContext plugins. More...

     #include <QInputContextPlugin>

Inherits QObject.

Note: All functions in this class are reentrant.

- List of all members, including inherited members

## Public Functions

| QInputContextPlugin ( QObject * parent = 0 )
| ~QInputContextPlugin ()

## Reimplemented Public Functions

virtual QInputContext * | create ( const QString & key ) = 0
virtual QString | description ( const QString & key ) = 0
virtual QString | displayName ( const QString & key ) = 0
virtual QStringList | keys () const = 0
virtual QStringList | languages ( const QString & key ) = 0

- 29 public functions inherited from QObject

### Additional Inherited Members

- 1 property inherited from QObject
- 1 public slot inherited from QObject
- 1 signal inherited from QObject
- 5 static public members inherited from QObject
- 7 protected functions inherited from QObject

## Detailed Description

The QInputContextPlugin class provides an abstract base for custom QInputContext plugins.

The input context plugin is a simple plugin interface that makes it easy to create custom input contexts that can be loaded dynamically into applications.

To create an input context plugin you subclass this base class, reimplement the pure virtual functions keys(), create(), languages(), displayName(), and description(), and export the class with the Q_EXPORT_PLUGIN2() macro.

Copyright (C) 2003-2004 immodule for Qt Project. All rights reserved.

This file is written to contribute to Nokia Corporation and/or its subsidiary(-ies) under their own license. You may use this file under your Qt license. Following description is copied from their original file headers. Contact immodule-qt@freedesktop.org if any conditions of this licensing are not clear to you.

See also QInputContext and How to Create Qt Plugins.

## Member Function Documentation

### QInputContextPlugin::QInputContextPlugin ( QObject * parent = 0 )

Constructs a input context plugin with the given parent. This is invoked automatically by the Q_EXPORT_PLUGIN2() macro.

### QInputContextPlugin::~QInputContextPlugin ()

Destroys the input context plugin.

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

### QInputContext * QInputContextPlugin::create ( const QString & key ) `[pure virtual]`

Creates and returns a QInputContext object for the input context key key. The input context key is usually the class name of the required input method.

See also keys().

### QString QInputContextPlugin::description ( const QString & key ) `[pure virtual]`

Returns an internationalized brief description of the QInputContext object specified by key. You can, for example, use this description in a user interface.

See also keys() and displayName().

### QString QInputContextPlugin::displayName ( const QString & key ) `[pure virtual]`

Returns a user friendly internationalized name of the QInputContext object specified by key. You can, for example, use this name in a menu.

See also keys() and QInputContext::identifierName().

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

Returns the list of QInputContext keys this plugin provides.

These keys are usually the class names of the custom input context that are implemented in the plugin. The names are used, for example, to identify and specify input methods for the input method switching mechanism. They have to be consistent with QInputContext::identifierName(), and may only contain ASCII characters.

See also create(), displayName(), and QInputContext::identifierName().

### QStringList QInputContextPlugin::languages ( const QString & key ) `[pure virtual]`

Returns the languages supported by the QInputContext object specified by key.

The languages are expressed as language code (e.g. "zh_CN", "zh_TW", "zh_HK", "ja", "ko", ...). An input context that supports multiple languages can return all supported languages as QStringList. The name has to be consistent with QInputContext::language().

This information may be used to optimize user interface.

See also keys(), QInputContext::language(), and QLocale.