diff options
author | Stephen Kelly <stephen.kelly@kdab.com> | 2013-09-08 12:08:22 +0200 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-09-09 21:28:41 +0200 |
commit | a1898f4466518bf3e1b6e9154eec05ecf9d909e3 (patch) | |
tree | 7bd00c197258d89038aa9e03941e326d174571a9 /src/corelib/doc | |
parent | 7fb3906d4e7cec7c69feee007b8393c9c2a3a316 (diff) |
Metatype: Remove the need for runtime-registration of 3rd party containers.
Replace that need with a macro so that registration of the
container helper conversions is done at the time of registration
of the container (usually when it is put into a QVariant).
Change-Id: I823fb3fdbce306ebc9f146675ac43724cec678d5
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Diffstat (limited to 'src/corelib/doc')
-rw-r--r-- | src/corelib/doc/snippets/code/src_corelib_kernel_qmetatype.cpp | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/src/corelib/doc/snippets/code/src_corelib_kernel_qmetatype.cpp b/src/corelib/doc/snippets/code/src_corelib_kernel_qmetatype.cpp index 4437313f0a..cb1346f74c 100644 --- a/src/corelib/doc/snippets/code/src_corelib_kernel_qmetatype.cpp +++ b/src/corelib/doc/snippets/code/src_corelib_kernel_qmetatype.cpp @@ -112,3 +112,34 @@ id = qMetaTypeId<MyStruct>(); // compile error if MyStruct not declared typedef QString CustomString; qRegisterMetaType<CustomString>("CustomString"); //! [9] + +//! [10] + +#include <deque> + +Q_DECLARE_SEQUENTIAL_CONTAINER_METATYPE(std::deque) + +void someFunc() +{ + std::deque<QFile*> container; + QVariant var = QVariant::fromValue(container); + // ... +} + +//! [10] + +//! [11] + +#include <unordered_list> + +Q_DECLARE_ASSOCIATIVE_CONTAINER_METATYPE(std::unordered_map) + +void someFunc() +{ + std::unordered_map<int, bool> container; + QVariant var = QVariant::fromValue(container); + // ... +} + +//! [11] + |