Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
qqmlintegration.h File Reference

(df3c82f6af0bf7b857ba7a5110643eb7abe84182)

#include <QtCore/qglobal.h>
+ Include dependency graph for qqmlintegration.h:

Go to the source code of this file.

Namespaces

namespace  QQmlPrivate
 

Macros

#define QML_PRIVATE_NAMESPACE    QT_PREPEND_NAMESPACE(QQmlPrivate)
 
#define QML_REGISTER_TYPES_AND_REVISIONS    QT_PREPEND_NAMESPACE(qmlRegisterTypesAndRevisions)
 
#define QML_ELEMENT    Q_CLASSINFO("QML.Element", "auto")
 
#define QML_ANONYMOUS
 
#define QML_NAMED_ELEMENT(NAME)    Q_CLASSINFO("QML.Element", #NAME)
 
#define QML_UNCREATABLE(REASON)
 
#define QML_VALUE_TYPE(NAME)    Q_CLASSINFO("QML.Element", #NAME)
 
#define QML_CONSTRUCTIBLE_VALUE
 
#define QML_STRUCTURED_VALUE
 
#define QML_SINGLETON
 
#define QML_ADDED_IN_MINOR_VERSION(VERSION)    Q_CLASSINFO("QML.AddedInVersion", Q_REVISION(VERSION))
 
#define QML_ADDED_IN_VERSION(MAJOR, MINOR)    Q_CLASSINFO("QML.AddedInVersion", Q_REVISION(MAJOR, MINOR))
 
#define QML_EXTRA_VERSION(MAJOR, MINOR)    Q_CLASSINFO("QML.ExtraVersion", Q_REVISION(MAJOR, MINOR))
 
#define QML_REMOVED_IN_MINOR_VERSION(VERSION)    Q_CLASSINFO("QML.RemovedInVersion", Q_REVISION(VERSION))
 
#define QML_REMOVED_IN_VERSION(MAJOR, MINOR)    Q_CLASSINFO("QML.RemovedInVersion", Q_REVISION(MAJOR, MINOR))
 
#define QML_ATTACHED(ATTACHED_TYPE)
 
#define QML_EXTENDED(EXTENDED_TYPE)
 
#define QML_EXTENDED_NAMESPACE(EXTENDED_NAMESPACE)
 
#define QML_NAMESPACE_EXTENDED(EXTENDED_NAMESPACE)    Q_CLASSINFO("QML.Extended", #EXTENDED_NAMESPACE)
 
#define QML_INTERFACE
 
#define QML_IMPLEMENTS_INTERFACES(INTERFACES)
 
#define QML_SEQUENTIAL_CONTAINER(VALUE_TYPE)
 
#define QML_UNAVAILABLE    QML_FOREIGN(QQmlTypeNotAvailable)
 
#define QML_FOREIGN(FOREIGN_TYPE)
 
#define QML_FOREIGN_NAMESPACE(FOREIGN_NAMESPACE)
 
#define QML_CUSTOMPARSER    Q_CLASSINFO("QML.HasCustomParser", "true")
 

Functions

template<typename... Args>
void qmlRegisterTypesAndRevisions (const char *uri, int versionMajor, QList< int > *qmlTypeIds=nullptr)
 

Macro Definition Documentation

◆ QML_ADDED_IN_MINOR_VERSION

#define QML_ADDED_IN_MINOR_VERSION ( VERSION)     Q_CLASSINFO("QML.AddedInVersion", Q_REVISION(VERSION))

Definition at line 97 of file qqmlintegration.h.

◆ QML_ADDED_IN_VERSION

#define QML_ADDED_IN_VERSION ( MAJOR,
MINOR )    Q_CLASSINFO("QML.AddedInVersion", Q_REVISION(MAJOR, MINOR))

Definition at line 100 of file qqmlintegration.h.

◆ QML_ANONYMOUS

#define QML_ANONYMOUS
Value:
Q_CLASSINFO("QML.Element", "anonymous") \
enum class QmlIsAnonymous{yes = true}; \
template<typename, typename> friend struct QML_PRIVATE_NAMESPACE::QmlAnonymous; \
QT_WARNING_PUSH \
QT_WARNING_DISABLE_GCC("-Wredundant-decls") \
template<typename... Args> \
friend void QML_REGISTER_TYPES_AND_REVISIONS(const char *uri, int versionMajor, QList<int> *); \
QT_WARNING_POP \
inline constexpr void qt_qmlMarker_anonymous() {}
#define QML_REGISTER_TYPES_AND_REVISIONS
#define Q_CLASSINFO(name, value)

Definition at line 49 of file qqmlintegration.h.

◆ QML_ATTACHED

#define QML_ATTACHED ( ATTACHED_TYPE)
Value:
Q_CLASSINFO("QML.Attached", #ATTACHED_TYPE) \
using QmlAttachedType = ATTACHED_TYPE; \
template<class, class, bool> friend struct QML_PRIVATE_NAMESPACE::QmlAttached; \
template<class> friend struct QML_PRIVATE_NAMESPACE::QmlAttachedAccessor; \
inline constexpr void qt_qmlMarker_attached() {}

Definition at line 112 of file qqmlintegration.h.

◆ QML_CONSTRUCTIBLE_VALUE

#define QML_CONSTRUCTIBLE_VALUE
Value:
Q_CLASSINFO("QML.Creatable", "true") \
Q_CLASSINFO("QML.CreationMethod", "construct")

Definition at line 78 of file qqmlintegration.h.

◆ QML_CUSTOMPARSER

#define QML_CUSTOMPARSER    Q_CLASSINFO("QML.HasCustomParser", "true")

Definition at line 192 of file qqmlintegration.h.

◆ QML_ELEMENT

#define QML_ELEMENT    Q_CLASSINFO("QML.Element", "auto")

Definition at line 45 of file qqmlintegration.h.

◆ QML_EXTENDED

#define QML_EXTENDED ( EXTENDED_TYPE)
Value:
Q_CLASSINFO("QML.Extended", #EXTENDED_TYPE) \
using QmlExtendedType = EXTENDED_TYPE; \
template<class, class> friend struct QML_PRIVATE_NAMESPACE::QmlExtended; \
QT_WARNING_PUSH \
QT_WARNING_DISABLE_GCC("-Wredundant-decls") \
template<typename... Args> \
friend void QML_REGISTER_TYPES_AND_REVISIONS(const char *uri, int versionMajor, QList<int> *); \
QT_WARNING_POP \
inline constexpr void qt_qmlMarker_extended() {}

Definition at line 119 of file qqmlintegration.h.

◆ QML_EXTENDED_NAMESPACE

#define QML_EXTENDED_NAMESPACE ( EXTENDED_NAMESPACE)
Value:
Q_CLASSINFO("QML.Extended", #EXTENDED_NAMESPACE) \
Q_CLASSINFO("QML.ExtensionIsNamespace", "true") \
static constexpr const QMetaObject *qmlExtendedNamespace() { return &EXTENDED_NAMESPACE::staticMetaObject; } \
template<class, class> friend struct QML_PRIVATE_NAMESPACE::QmlExtendedNamespace; \
QT_WARNING_PUSH \
QT_WARNING_DISABLE_GCC("-Wredundant-decls") \
template<typename... Args> \
friend void QML_REGISTER_TYPES_AND_REVISIONS(const char *uri, int versionMajor, QList<int> *); \
QT_WARNING_POP \
inline constexpr void qt_qmlMarker_extendedNamespace() {}
\inmodule QtCore

Definition at line 130 of file qqmlintegration.h.

◆ QML_EXTRA_VERSION

#define QML_EXTRA_VERSION ( MAJOR,
MINOR )    Q_CLASSINFO("QML.ExtraVersion", Q_REVISION(MAJOR, MINOR))

Definition at line 103 of file qqmlintegration.h.

◆ QML_FOREIGN

#define QML_FOREIGN ( FOREIGN_TYPE)
Value:
Q_CLASSINFO("QML.Foreign", #FOREIGN_TYPE) \
using QmlForeignType = FOREIGN_TYPE; \
template<class, class> friend struct QML_PRIVATE_NAMESPACE::QmlResolved; \
QT_WARNING_PUSH \
QT_WARNING_DISABLE_GCC("-Wredundant-decls") \
template<typename... Args> \
friend void QML_REGISTER_TYPES_AND_REVISIONS(const char *uri, int versionMajor, QList<int> *); \
QT_WARNING_POP \
inline constexpr void qt_qmlMarker_foreign() {}

Definition at line 176 of file qqmlintegration.h.

◆ QML_FOREIGN_NAMESPACE

#define QML_FOREIGN_NAMESPACE ( FOREIGN_NAMESPACE)
Value:
Q_CLASSINFO("QML.Foreign", #FOREIGN_NAMESPACE) \
Q_CLASSINFO("QML.ForeignIsNamespace", "true") \
inline constexpr void qt_qmlMarker_foreign() {}

Definition at line 187 of file qqmlintegration.h.

◆ QML_IMPLEMENTS_INTERFACES

#define QML_IMPLEMENTS_INTERFACES ( INTERFACES)
Value:
Q_INTERFACES(INTERFACES) \
enum class QmlIsInterface {yes = false}; \
template<typename, typename> friend struct QML_PRIVATE_NAMESPACE::QmlInterface;
#define Q_INTERFACES(x)

Definition at line 156 of file qqmlintegration.h.

◆ QML_INTERFACE

#define QML_INTERFACE
Value:
Q_CLASSINFO("QML.Element", "anonymous") \
enum class QmlIsInterface {yes = true}; \
template<typename, typename> friend struct QML_PRIVATE_NAMESPACE::QmlInterface; \
QT_WARNING_PUSH \
QT_WARNING_DISABLE_GCC("-Wredundant-decls") \
template<typename... Args> \
friend void QML_REGISTER_TYPES_AND_REVISIONS(const char *uri, int versionMajor, QList<int> *); \
QT_WARNING_POP \
inline constexpr void qt_qmlMarker_interface() {}

Definition at line 145 of file qqmlintegration.h.

◆ QML_NAMED_ELEMENT

#define QML_NAMED_ELEMENT ( NAME)     Q_CLASSINFO("QML.Element", #NAME)

Definition at line 60 of file qqmlintegration.h.

◆ QML_NAMESPACE_EXTENDED

#define QML_NAMESPACE_EXTENDED ( EXTENDED_NAMESPACE)     Q_CLASSINFO("QML.Extended", #EXTENDED_NAMESPACE)

Definition at line 142 of file qqmlintegration.h.

◆ QML_PRIVATE_NAMESPACE

#define QML_PRIVATE_NAMESPACE    QT_PREPEND_NAMESPACE(QQmlPrivate)

Definition at line 38 of file qqmlintegration.h.

◆ QML_REGISTER_TYPES_AND_REVISIONS

#define QML_REGISTER_TYPES_AND_REVISIONS    QT_PREPEND_NAMESPACE(qmlRegisterTypesAndRevisions)

Definition at line 41 of file qqmlintegration.h.

◆ QML_REMOVED_IN_MINOR_VERSION

#define QML_REMOVED_IN_MINOR_VERSION ( VERSION)     Q_CLASSINFO("QML.RemovedInVersion", Q_REVISION(VERSION))

Definition at line 106 of file qqmlintegration.h.

◆ QML_REMOVED_IN_VERSION

#define QML_REMOVED_IN_VERSION ( MAJOR,
MINOR )    Q_CLASSINFO("QML.RemovedInVersion", Q_REVISION(MAJOR, MINOR))

Definition at line 109 of file qqmlintegration.h.

◆ QML_SEQUENTIAL_CONTAINER

#define QML_SEQUENTIAL_CONTAINER ( VALUE_TYPE)
Value:
Q_CLASSINFO("QML.Sequence", #VALUE_TYPE) \
using QmlSequenceValueType = VALUE_TYPE; \
enum class QmlIsSequence {yes = true}; \
template<typename, typename> friend struct QML_PRIVATE_NAMESPACE::QmlSequence; \
QT_WARNING_PUSH \
QT_WARNING_DISABLE_GCC("-Wredundant-decls") \
template<typename... Args> \
friend void QML_REGISTER_TYPES_AND_REVISIONS(const char *uri, int versionMajor, QList<int> *); \
QT_WARNING_POP \
inline constexpr void qt_qmlMarker_sequence() {}

Definition at line 161 of file qqmlintegration.h.

◆ QML_SINGLETON

#define QML_SINGLETON
Value:
Q_CLASSINFO("QML.Singleton", "true") \
enum class QmlIsSingleton {yes = true}; \
template<typename, typename> friend struct QML_PRIVATE_NAMESPACE::QmlSingleton; \
QT_WARNING_PUSH \
QT_WARNING_DISABLE_GCC("-Wredundant-decls") \
template<typename... Args> \
friend void QML_REGISTER_TYPES_AND_REVISIONS(const char *uri, int versionMajor, QList<int> *); \
QT_WARNING_POP \
inline constexpr void qt_qmlMarker_singleton() {}

Definition at line 86 of file qqmlintegration.h.

◆ QML_STRUCTURED_VALUE

#define QML_STRUCTURED_VALUE
Value:
Q_CLASSINFO("QML.Creatable", "true") \
Q_CLASSINFO("QML.CreationMethod", "structured")

Definition at line 82 of file qqmlintegration.h.

◆ QML_UNAVAILABLE

#define QML_UNAVAILABLE    QML_FOREIGN(QQmlTypeNotAvailable)

Definition at line 173 of file qqmlintegration.h.

◆ QML_UNCREATABLE

#define QML_UNCREATABLE ( REASON)
Value:
Q_CLASSINFO("QML.Creatable", "false") \
Q_CLASSINFO("QML.UncreatableReason", REASON) \
enum class QmlIsUncreatable {yes = true}; \
template<typename, typename> friend struct QML_PRIVATE_NAMESPACE::QmlUncreatable; \
QT_WARNING_PUSH \
QT_WARNING_DISABLE_GCC("-Wredundant-decls") \
template<typename... Args> \
friend void QML_REGISTER_TYPES_AND_REVISIONS(const char *uri, int versionMajor, QList<int> *); \
QT_WARNING_POP \
inline constexpr void qt_qmlMarker_uncreatable() {}

Definition at line 63 of file qqmlintegration.h.

◆ QML_VALUE_TYPE

#define QML_VALUE_TYPE ( NAME)     Q_CLASSINFO("QML.Element", #NAME)

Definition at line 75 of file qqmlintegration.h.

Function Documentation

◆ qmlRegisterTypesAndRevisions()

template<typename... Args>
void qmlRegisterTypesAndRevisions ( const char * uri,
int versionMajor,
QList< int > * qmlTypeIds = nullptr )

Definition at line 914 of file qqml.h.