8#include <QtCore/qobjectdefs.h>
9#include <QtCore/qcompare.h>
10#include <QtCore/qvariant.h>
16#define Q_METAMETHOD_INVOKE_MAX_ARGS 10
26 int returnType()
const;
28 int parameterCount()
const;
29 int parameterType(
int index)
const;
31 void getParameterTypes(
int *
types)
const;
32 QList<QByteArray> parameterTypes()
const;
34 QList<QByteArray> parameterNames()
const;
35 const char *
tag()
const;
39 MethodType methodType()
const;
41 int attributes()
const;
42 int methodIndex()
const;
43 int relativeMethodIndex()
const;
49#if QT_VERSION <= QT_VERSION_CHECK(7, 0, 0)
77 val0, val1, val2, val3, val4, val5, val6, val7, val8, val9);
93 val0, val1, val2, val3, val4, val5, val6, val7, val8, val9);
108 val0, val1, val2, val3, val4, val5, val6, val7, val8, val9);
110 bool invokeOnGadget(
void *gadget,
135 val0, val1, val2, val3, val4, val5, val6, val7, val8, val9);
139 template <
typename ReturnArg,
typename... Args>
149 return invokeImpl(*
this,
obj,
c,
h.parameterCount(),
h.parameters.data(),
150 h.typeNames.data(),
h.metaTypes.data());
153 template <
typename... Args>
161 return invoke(
obj,
c, QTemplatedMetaMethodReturnArgument<void>{}, std::forward<Args>(
arguments)...);
164 template <
typename ReturnArg,
typename... Args>
175 template <
typename... Args>
186 template <
typename ReturnArg,
typename... Args>
196 h.parameters.data(),
h.typeNames.data(),
h.metaTypes.data());
199 template <
typename... Args>
207 return invokeOnGadget(gadget, QTemplatedMetaMethodReturnArgument<void>{}, std::forward<Args>(
arguments)...);
210 inline bool isValid()
const {
return mobj !=
nullptr; }
212 template <
typename Po
interToMemberFunction>
217 "No Q_OBJECT in the class with the signal");
218 return fromSignalImpl(&SignalType::Object::staticMetaObject,
219 reinterpret_cast<void **
>(&
signal));
224 const void *
const *parameters,
const char *
const *typeNames,
258 {
return lhs.data == rhs.data; }
268 const char *
name()
const;
269 const char *enumName()
const;
273 bool isScoped()
const;
275 int keyCount()
const;
279 const char *scope()
const;
281 int keyToValue(
const char *
key,
bool *
ok =
nullptr)
const;
282 const char *valueToKey(
int value)
const;
283 int keysToValue(
const char *
keys,
bool *
ok =
nullptr)
const;
294 "QMetaEnum::fromType only works with enums declared as "
295 "Q_ENUM, Q_ENUM_NS, Q_FLAG or Q_FLAG_NS");
297 const char *
name = qt_getEnumName(T());
305 quint32 alias()
const {
return d[1]; }
307 qint32 keyCount()
const {
return static_cast<qint32>(
d[3]); }
328 const char *
name()
const;
330#if QT_DEPRECATED_SINCE(6, 0)
334 QVariant::Type
type()
const
335 {
int t = userType();
return t >=
QMetaType::User ? QVariant::UserType : QVariant::Type(
t); }
339 int typeId()
const {
return metaType().id(); }
341 int propertyIndex()
const;
342 int relativePropertyIndex()
const;
345 bool isWritable()
const;
346 bool isResettable()
const;
347 bool isDesignable()
const;
348 bool isScriptable()
const;
349 bool isStored()
const;
351 bool isConstant()
const;
352 bool isFinal()
const;
353 bool isRequired()
const;
354 bool isBindable()
const;
356 bool isFlagType()
const;
357 bool isEnumType()
const;
360 bool hasNotifySignal()
const;
362 int notifySignalIndex()
const;
364 int revision()
const;
373 QVariant readOnGadget(
const void *gadget)
const;
374 bool writeOnGadget(
void *gadget,
const QVariant &
value)
const;
376 bool resetOnGadget(
void *gadget)
const;
378 bool hasStdCppSet()
const;
379 bool isAlias()
const;
384#if QT_DEPRECATED_SINCE(6, 4)
386 int registerPropertyType() const;
395 uint notifyIndex()
const {
return d[3]; }
396 uint revision()
const {
return d[4]; }
417 const char *
name()
const;
418 const char *
value()
const;
\macro QMetaMethodArgument Q_ARG(Type, const Type &value)
QList< QVariant > arguments
Combined button and popup list for selecting options.
std::enable_if_t<!AreOldStyleArgs< Args... >::value, T > IfNotOldStyleArgs
auto invokeMethodHelper(QMetaMethodReturnArgument r, const Args &... arguments)
#define Q_DECLARE_EQUALITY_COMPARABLE(...)
#define QT_WARNING_DISABLE_DEPRECATED
AudioChannelLayoutTag tag
EGLOutputLayerEXT EGLint EGLAttrib value
[5]
GLsizei GLenum GLenum * types
GLint GLsizei GLsizei GLenum GLenum GLsizei void * data
GLfloat GLfloat GLfloat GLfloat h
#define QT_DEPRECATED_VERSION_X_6_4(text)
#define QT_DEPRECATED_VERSION_6_0
return device isReadable() ? device -> read(static_cast< char * >(buf), size) :-1
#define Q_DECLARE_TYPEINFO(TYPE, FLAGS)
ReturnedValue read(const char *data)
gzip write("uncompressed data")
obj metaObject() -> className()