diff options
author | Thiago Macieira <thiago@kde.org> | 2006-03-28 18:56:08 +0000 |
---|---|---|
committer | Thiago Macieira <thiago@kde.org> | 2006-03-28 18:56:08 +0000 |
commit | d42c8663e8fd441838a238bfb845a7c80c37b253 (patch) | |
tree | ac29c8e23bc1e48690cac1fc8416a1b34628e832 /qt/qdbusreply.h | |
parent | 36e1d8bfc79614617f364306bb168f46e0d4761c (diff) |
* qt/*:
* dbus/qdbus.h: Sync with KDE Subversion revision
523647. Hopefully, this will be the last of the
source-incompatible changes. Documentation has been improved;
support for QList<basic-types> has been added; QDBusObject is
gone; QDBus(Abstract)Interface is now a QObject with
auto-generated meta-object; QDBusIntrospection is marked
private, since QMetaObject can be used now; lots of bugfixes.
Diffstat (limited to 'qt/qdbusreply.h')
-rw-r--r-- | qt/qdbusreply.h | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/qt/qdbusreply.h b/qt/qdbusreply.h index 3d7a0085..f22082c6 100644 --- a/qt/qdbusreply.h +++ b/qt/qdbusreply.h @@ -30,22 +30,22 @@ #include "qdbusmacros.h" #include "qdbusmessage.h" #include "qdbuserror.h" -#include "qdbusvariant.h" + +#include "qdbustypehelper_p.h" template<typename T> class QDBUS_EXPORT QDBusReply { typedef T Type; public: - inline QDBusReply(const QDBusMessage &reply) - : m_error(reply) + : m_error(reply), m_data(Type()) { if (isSuccess()) - m_data = qvariant_cast<Type>(reply.at(0)); + m_data = QDBusTypeHelper<Type>::fromVariant(reply.at(0)); } inline QDBusReply(const QDBusError &error) - : m_error(error) + : m_error(error), m_data(Type()) { } @@ -64,14 +64,14 @@ public: return m_data; } - static QDBusReply<T> fromVariant(const QDBusReply<QDBusVariant> &variantReply) + static QDBusReply<T> fromVariant(const QDBusReply<QVariant> &variantReply) { QDBusReply<T> retval; retval.m_error = variantReply.m_error; if (retval.isSuccess()) { - retval.m_data = qvariant_cast<Type>(variantReply.value); - if (!qVariantCanConvert<Type>(variantReply.value)) - retval.m_error = QDBusError(QLatin1String(DBUS_ERROR_INVALID_SIGNATURE), + retval.m_data = qvariant_cast<Type>(variantReply.m_data); + if (!qVariantCanConvert<Type>(variantReply.m_data)) + retval.m_error = QDBusError(QDBusError::InvalidSignature, QLatin1String("Unexpected reply signature")); } return retval; @@ -82,7 +82,7 @@ private: Type m_data; }; -#ifndef DOXYGEN_SHOULD_SKIP_THIS +# ifndef Q_QDOC // specialize for void: template<> class QDBUS_EXPORT QDBusReply<void> @@ -105,6 +105,6 @@ public: private: QDBusError m_error; }; -#endif +# endif #endif |