IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

<QtPlugin> - Defining Plugins

The <QtPlugin> header file defines macros for defining plugins.

Article lu   fois.

L'auteur

Liens sociaux

Viadeo Twitter Facebook Share on Google+   

<QtPlugin> - Defining Plugins▲

Detailed Description▲

 

See Also▲

Macro Documentation▲

 

Q_DECLARE_INTERFACE(ClassName, Identifier)▲

This macro associates the given Identifier (a string literal) to the interface class called ClassName. The Identifier must be unique.

This macro is normally used right after the class definition for ClassName, in a header file.

If you want to use Q_DECLARE_INTERFACE with interface classes declared in a namespace then you have to make sure the Q_DECLARE_INTERFACE is not inside a namespace though. For example:

 
Sélectionnez
namespace Foo
{
    struct MyInterface { ... };
}

Q_DECLARE_INTERFACE(Foo::MyInterface, "org.examples.MyInterface")
See Also▲

Q_IMPORT_PLUGIN(PluginName)▲

This macro imports the plugin named PluginName, which corresponds with the name of the class that declares metadata for the plugin with Q_PLUGIN_METADATA().

Inserting this macro into your application's source code will allow you to make use of a static plugin.

Example:

 
Sélectionnez
Q_IMPORT_PLUGIN(qjpeg)

Static plugins must also be included by the linker when your application is built. See Static Plugins for more information on this.

See Also▲

Q_PLUGIN_METADATA(...)▲

This macro is being used to declare meta data that is part of a plugin that instantiates this object.

The macro needs to declare the IID of the interface implemented through the object, and reference a file containing the meta data for the plugin.

There should be exactly one occurrence of this macro in the source code for a Qt plugin.

Example:

 
Sélectionnez
class MyInstance : public QObject
{
    Q_PLUGIN_METADATA(IID "org.qt-project.Qt.QDummyPlugin" FILE "mymetadata.json")
};

Note that the class this macro appears on must be default-constructible.

FILE is optional and points to a json file.

The json file must reside in one of the include directories specified by the build-system. moc exits with an error when it could not find the specified file.

See Also▲

Vous avez aimé ce tutoriel ? Alors partagez-le en cliquant sur les boutons suivants : Viadeo Twitter Facebook Share on Google+