diff options
-rw-r--r-- | src/dbus/qdbuserror.cpp | 10 | ||||
-rw-r--r-- | src/dbus/qdbuserror.h | 5 | ||||
-rw-r--r-- | src/dbus/qdbusmessage.h | 2 | ||||
-rw-r--r-- | src/dbus/qdbusmetatype.cpp | 16 | ||||
-rw-r--r-- | src/dbus/qdbusmetatype.h | 2 |
5 files changed, 25 insertions, 10 deletions
diff --git a/src/dbus/qdbuserror.cpp b/src/dbus/qdbuserror.cpp index b81d8a68f6..85d7d016ff 100644 --- a/src/dbus/qdbuserror.cpp +++ b/src/dbus/qdbuserror.cpp @@ -250,6 +250,16 @@ static inline QDBusError::ErrorType get(const char *name) \value InvalidInterface The interface is invalid. */ +/*! + \internal + Constructs a QDBusError that represents no error. +*/ +QDBusError::QDBusError() + : code(NoError) +{ + +} + #ifndef QT_BOOTSTRAPPED /*! \internal diff --git a/src/dbus/qdbuserror.h b/src/dbus/qdbuserror.h index a6b3c9a70a..52e65d677d 100644 --- a/src/dbus/qdbuserror.h +++ b/src/dbus/qdbuserror.h @@ -95,8 +95,9 @@ public: #endif }; + QDBusError(); #ifndef QT_BOOTSTRAPPED - explicit QDBusError(const DBusError *error = 0); + explicit QDBusError(const DBusError *error); /*implicit*/ QDBusError(const QDBusMessage& msg); #endif QDBusError(ErrorType error, const QString &message); @@ -126,6 +127,8 @@ Q_DBUS_EXPORT QDebug operator<<(QDebug, const QDBusError &); QT_END_NAMESPACE +Q_DECLARE_METATYPE(QDBusError) + QT_END_HEADER #endif // QT_NO_DBUS diff --git a/src/dbus/qdbusmessage.h b/src/dbus/qdbusmessage.h index 20859ebb70..461a27600e 100644 --- a/src/dbus/qdbusmessage.h +++ b/src/dbus/qdbusmessage.h @@ -124,6 +124,8 @@ Q_DBUS_EXPORT QDebug operator<<(QDebug, const QDBusMessage &); QT_END_NAMESPACE +Q_DECLARE_METATYPE(QDBusMessage) + QT_END_HEADER #endif // QT_NO_DBUS diff --git a/src/dbus/qdbusmetatype.cpp b/src/dbus/qdbusmetatype.cpp index 5c8a7bc08f..835fa4fa43 100644 --- a/src/dbus/qdbusmetatype.cpp +++ b/src/dbus/qdbusmetatype.cpp @@ -105,15 +105,15 @@ void QDBusMetaTypeId::init() // set the guard variable at the end if (!initialized) { #ifndef QT_BOOTSTRAPPED - // register our types with QtCore - message = qRegisterMetaType<QDBusMessage>("QDBusMessage"); - error = qRegisterMetaType<QDBusError>("QDBusError"); + // register our types with QtCore (calling qMetaTypeId<T>() does this implicitly) + message = qMetaTypeId<QDBusMessage>(); + error = qMetaTypeId<QDBusError>(); #endif - argument = qRegisterMetaType<QDBusArgument>("QDBusArgument"); - variant = qRegisterMetaType<QDBusVariant>("QDBusVariant"); - objectpath = qRegisterMetaType<QDBusObjectPath>("QDBusObjectPath"); - signature = qRegisterMetaType<QDBusSignature>("QDBusSignature"); - unixfd = qRegisterMetaType<QDBusUnixFileDescriptor>("QDBusUnixFileDescriptor"); + argument = qMetaTypeId<QDBusArgument>(); + variant = qMetaTypeId<QDBusVariant>(); + objectpath = qMetaTypeId<QDBusObjectPath>(); + signature = qMetaTypeId<QDBusSignature>(); + unixfd = qMetaTypeId<QDBusUnixFileDescriptor>(); #ifndef QDBUS_NO_SPECIALTYPES // and register QtCore's with us diff --git a/src/dbus/qdbusmetatype.h b/src/dbus/qdbusmetatype.h index bb791c9636..060e8adf2e 100644 --- a/src/dbus/qdbusmetatype.h +++ b/src/dbus/qdbusmetatype.h @@ -84,7 +84,7 @@ int qDBusRegisterMetaType( void (*mf)(QDBusArgument &, const T *) = qDBusMarshallHelper<T>; void (*df)(const QDBusArgument &, T *) = qDBusDemarshallHelper<T>; - int id = qRegisterMetaType<T>(); // make sure it's registered + int id = qMetaTypeId<T>(); // make sure it's registered QDBusMetaType::registerMarshallOperators(id, reinterpret_cast<QDBusMetaType::MarshallFunction>(mf), reinterpret_cast<QDBusMetaType::DemarshallFunction>(df)); |