QInputContextPlugin Class

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

Header: #include <QInputContextPlugin>
Inherits: QObject

Note: All functions in this class are reentrant.

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
  • 7 static public members inherited from QObject
  • 8 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.

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

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().

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

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().

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

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().

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

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().

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

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.

© 2016 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.