QTextCodecPlugin Class

The QTextCodecPlugin class provides an abstract base for custom QTextCodec plugins. More...

Header: #include <QTextCodecPlugin>
Inherits: QObject

Note: All functions in this class are reentrant.

Public Functions

QTextCodecPlugin(QObject * parent = 0)
~QTextCodecPlugin()
virtual QList<QByteArray> aliases() const = 0
virtual QTextCodec * createForMib(int mib) = 0
virtual QTextCodec * createForName(const QByteArray & name) = 0
virtual QList<int> mibEnums() const = 0
virtual QList<QByteArray> names() const = 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 QTextCodecPlugin class provides an abstract base for custom QTextCodec plugins.

The text codec plugin is a simple plugin interface that makes it easy to create custom text codecs that can be loaded dynamically into applications.

Writing a text codec plugin is achieved by subclassing this base class, reimplementing the pure virtual functions names(), aliases(), createForName(), mibEnums() and createForMib(), and exporting the class with the Q_EXPORT_PLUGIN2() macro. See How to Create Qt Plugins for details.

See the IANA character-sets encoding file for more information on mime names and mib enums.

Member Function Documentation

QTextCodecPlugin::QTextCodecPlugin(QObject * parent = 0)

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

QTextCodecPlugin::~QTextCodecPlugin()

Destroys the text codec plugin.

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

[pure virtual] QList<QByteArray> QTextCodecPlugin::aliases() const

Returns the list of aliases supported by this plugin.

[pure virtual] QTextCodec * QTextCodecPlugin::createForMib(int mib)

Creates a QTextCodec object for the mib enum mib.

See the IANA character-sets encoding file for more information.

See also mibEnums().

[pure virtual] QTextCodec * QTextCodecPlugin::createForName(const QByteArray & name)

Creates a QTextCodec object for the codec called name. The name must come from the list of encodings returned by names(). Encoding names are case sensitive.

Example:

QList<QByteArray> MyCodecPlugin::names() const
{
    return QList<QByteArray> << "IBM01140" << "hp15-tw";
}

QTextCodec *MyCodecPlugin::createForName(const QByteArray &name)
{
    if (name == "IBM01140") {
        return new Ibm01140Codec;
    } else if (name == "hp15-tw") {
        return new Hp15TwCodec;
    }
    return 0;
}

See also names().

[pure virtual] QList<int> QTextCodecPlugin::mibEnums() const

Returns the list of mib enums supported by this plugin.

See also createForMib().

[pure virtual] QList<QByteArray> QTextCodecPlugin::names() const

Returns the list of MIME names supported by this plugin.

If a codec has several names, the extra names are returned by aliases().

See also createForName() and aliases().

© 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.