diff options
Diffstat (limited to 'src/corelib/kernel/qmetaobject_p.h')
-rw-r--r-- | src/corelib/kernel/qmetaobject_p.h | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/corelib/kernel/qmetaobject_p.h b/src/corelib/kernel/qmetaobject_p.h index 3b732b4b93..5877ab18e4 100644 --- a/src/corelib/kernel/qmetaobject_p.h +++ b/src/corelib/kernel/qmetaobject_p.h @@ -110,6 +110,8 @@ enum MetaDataFlags { TypeNameIndexMask = 0x7FFFFFFF }; +extern int qMetaTypeTypeInternal(const char *); + class QArgumentType { public: @@ -117,7 +119,7 @@ public: : _type(type) {} QArgumentType(const QByteArray &name) - : _type(QMetaType::type(name.constData())), _name(name) + : _type(qMetaTypeTypeInternal(name.constData())), _name(name) {} QArgumentType() : _type(0) @@ -198,6 +200,7 @@ struct QMetaObjectPrivate int argc, const QArgumentType *types); static int indexOfConstructor(const QMetaObject *m, const QByteArray &name, int argc, const QArgumentType *types); + static QMetaMethod signal(const QMetaObject *m, int signal_index); static bool checkConnectArgs(int signalArgc, const QArgumentType *signalTypes, int methodArgc, const QArgumentType *methodTypes); static bool checkConnectArgs(const QMetaMethodPrivate *signal, @@ -211,10 +214,12 @@ struct QMetaObjectPrivate static void memberIndexes(const QObject *obj, const QMetaMethod &member, int *signalIndex, int *methodIndex); static QObjectPrivate::Connection *connect(const QObject *sender, int signal_index, + const QMetaObject *smeta, const QObject *receiver, int method_index_relative, const QMetaObject *rmeta = 0, int type = 0, int *types = 0); static bool disconnect(const QObject *sender, int signal_index, + const QMetaObject *smeta, const QObject *receiver, int method_index, void **slot, DisconnectType = DisconnectAll); static inline bool disconnectHelper(QObjectPrivate::Connection *c, |