8#include <QtCore/qglobal.h>
9#include <QtCore/qtclasshelpermacros.h>
13#ifndef Q_MOC_OUTPUT_REVISION
15#define Q_MOC_OUTPUT_REVISION 69
20#ifndef QT_ANNOTATE_CLASS
21# define QT_ANNOTATE_CLASS(type, ...)
23#ifndef QT_ANNOTATE_CLASS2
24# define QT_ANNOTATE_CLASS2(type, a1, a2)
26#ifndef QT_ANNOTATE_FUNCTION
27# define QT_ANNOTATE_FUNCTION(x)
29#ifndef QT_ANNOTATE_ACCESS_SPECIFIER
30# define QT_ANNOTATE_ACCESS_SPECIFIER(x)
37#ifndef QT_NO_META_MACROS
38# if defined(QT_NO_KEYWORDS)
41# ifndef QT_NO_SIGNALS_SLOTS_KEYWORDS
54# define Q_CLASSINFO(name, value)
61# define Q_REVISION(...)
67#define Q_ENUM_IMPL(ENUM)
68 friend constexpr const QMetaObject *qt_getEnumMetaObject(ENUM) noexcept { return &staticMetaObject; }
69 friend constexpr const char *qt_getEnumName(ENUM) noexcept { return #ENUM; }
72#define Q_ENUM_NS_IMPL(ENUM)
73 inline constexpr const QMetaObject *qt_getEnumMetaObject(ENUM) noexcept { return &staticMetaObject; }
74 inline constexpr const char *qt_getEnumName(ENUM) noexcept { return #ENUM; }
84#ifndef QT_NO_TRANSLATION
86# define QT_TR_FUNCTIONS
87 static inline QString tr(const char *s, const char *c = nullptr, int n = -1
)
88 { return staticMetaObject.tr(s, c, n); }
91# define QT_TR_FUNCTIONS
95#define QT_TR_FUNCTIONS
98#define Q_DECL_HIDDEN_STATIC_METACALL Q_DECL_HIDDEN
100#if defined(Q_CC_CLANG)
101# if Q_CC_CLANG >= 1100
102# define Q_OBJECT_NO_OVERRIDE_WARNING QT_WARNING_DISABLE_CLANG("-Winconsistent-missing-override") QT_WARNING_DISABLE_CLANG("-Wsuggest-override")
103# elif Q_CC_CLANG >= 306
104# define Q_OBJECT_NO_OVERRIDE_WARNING QT_WARNING_DISABLE_CLANG("-Winconsistent-missing-override")
106#elif defined(Q_CC_GNU) && Q_CC_GNU >= 501
107# define Q_OBJECT_NO_OVERRIDE_WARNING QT_WARNING_DISABLE_GCC("-Wsuggest-override")
108#elif defined(Q_CC_MSVC)
109# define Q_OBJECT_NO_OVERRIDE_WARNING QT_WARNING_DISABLE_MSVC(26433
)
111# define Q_OBJECT_NO_OVERRIDE_WARNING
114#if defined(Q_CC_GNU) && Q_CC_GNU >= 600
115# define Q_OBJECT_NO_ATTRIBUTES_WARNING QT_WARNING_DISABLE_GCC("-Wattributes")
117# define Q_OBJECT_NO_ATTRIBUTES_WARNING
120#define QT_META_OBJECT_VARS
121 template <typename> static constexpr auto qt_create_metaobjectdata();
122 template <typename MetaObjectTagType> static constexpr inline auto
123 qt_staticMetaObjectContent = qt_create_metaobjectdata<MetaObjectTagType>();
124 template <typename MetaObjectTagType> static constexpr inline auto
125 qt_staticMetaObjectStaticContent = qt_staticMetaObjectContent<MetaObjectTagType>.data;
126 template <typename MetaObjectTagType> static constexpr inline auto
127 qt_staticMetaObjectRelocatingContent = qt_staticMetaObjectContent<MetaObjectTagType>.metaTypes;
129#define QT_OBJECT_GADGET_COMMON
135#define Q_OBJECT public
139 static const QMetaObject staticMetaObject;
140 virtual const QMetaObject *metaObject() const;
141 virtual void *qt_metacast(const char *);
142 virtual int qt_metacall(QMetaObject::Call, int, void **);
146 QT_DEFINE_TAG_STRUCT(QPrivateSignal);
153#ifndef QT_NO_META_MACROS
155#define Q_GADGET_EXPORT(...) public
157 static __VA_ARGS__ const QMetaObject staticMetaObject;
158 void qt_check_for_QGADGET_macro();
159 typedef void QtGadgetHelper; private
171#define Q_NAMESPACE_EXPORT(...)
172 extern __VA_ARGS__ const QMetaObject staticMetaObject;
173 template <typename> static constexpr auto qt_create_metaobjectdata();
185#define signals signals
186#define Q_SLOTS Q_SLOTS
187#define Q_SIGNALS Q_SIGNALS
188#define Q_CLASSINFO(name, value) Q_CLASSINFO(name, value)
189#define Q_INTERFACES(x) Q_INTERFACES(x)
190#define Q_PROPERTY(text) Q_PROPERTY(text)
191#define Q_PRIVATE_PROPERTY(d, text) Q_PRIVATE_PROPERTY(d, text)
192#define Q_PRIVATE_QPROPERTY(accessor, type, name, setter, ...) Q_PRIVATE_QPROPERTY(accessor, type, name, setter, __VA_ARGS__)
193#define Q_PRIVATE_QPROPERTIES_BEGIN
194#define Q_PRIVATE_QPROPERTY_IMPL(name)
195#define Q_PRIVATE_QPROPERTIES_END
196#define Q_REVISION(...) Q_REVISION(__VA_ARGS__)
197#define Q_OVERRIDE(text) Q_OVERRIDE(text)
198#define Q_ENUMS(x) Q_ENUMS(x)
199#define Q_FLAGS(x) Q_FLAGS(x)
200#define Q_ENUM(x) Q_ENUM(x)
201#define Q_FLAGS(x) Q_FLAGS(x)
203#define Q_OBJECT Q_OBJECT
205#define Q_OBJECT_FAKE Q_OBJECT_FAKE
207#define Q_GADGET Q_GADGET
208#define Q_SCRIPTABLE Q_SCRIPTABLE
209#define Q_INVOKABLE Q_INVOKABLE
210#define Q_SIGNAL Q_SIGNAL