From d42c8663e8fd441838a238bfb845a7c80c37b253 Mon Sep 17 00:00:00 2001 From: Thiago Macieira Date: Tue, 28 Mar 2006 18:56:08 +0000 Subject: * 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 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. --- qt/qdbusinterface.h | 161 ++++------------------------------------------------ 1 file changed, 10 insertions(+), 151 deletions(-) (limited to 'qt/qdbusinterface.h') diff --git a/qt/qdbusinterface.h b/qt/qdbusinterface.h index 966a4705..0495ada1 100644 --- a/qt/qdbusinterface.h +++ b/qt/qdbusinterface.h @@ -1,6 +1,5 @@ /* -*- C++ -*- * - * Copyright (C) 2005 Thiago Macieira * Copyright (C) 2006 Trolltech AS. All rights reserved. * Author: Thiago Macieira * @@ -25,163 +24,23 @@ #ifndef QDBUSINTERFACE_H #define QDBUSINTERFACE_H -#include "qdbusmessage.h" -#include "qdbusobject.h" -#include "qdbusintrospection.h" -#include "qdbusreply.h" -#include "qdbusvariant.h" -#include -#include -#include - -class QDBusConnection; +#include "qdbusabstractinterface.h" class QDBusInterfacePrivate; -class QDBUS_EXPORT QDBusInterface +class QDBUS_EXPORT QDBusInterface: public QDBusAbstractInterface { friend class QDBusConnection; - -public: - enum CallMode { - WaitForReply, - NoWaitForReply - }; - -public: - QDBusInterface(const QDBusObject& obj, const QString& name); - QDBusInterface(const QDBusInterface&); - virtual ~QDBusInterface(); - - QDBusInterface& operator=(const QDBusInterface&); - - inline QDBusObject object() - { return QDBusObject(*this); } - - inline const QDBusObject object() const - { return QDBusObject(*this); } - - inline operator QDBusObject() - { return QDBusObject(*this); } - - inline operator const QDBusObject() const - { return QDBusObject(*this); } - +private: + QDBusInterface(QDBusInterfacePrivate *p); - QDBusConnection connection() const; - - QString service() const; - QString path() const; - QString interface() const; - - virtual QString introspectionData() const; - const QDBusIntrospection::Interface& interfaceData() const; - const QDBusIntrospection::Annotations& annotationData() const; - const QDBusIntrospection::Methods& methodData() const; - const QDBusIntrospection::Signals& signalData() const; - const QDBusIntrospection::Properties& propertyData() const; - - QDBusMessage callWithArgs(const QDBusIntrospection::Method& method, - const QList& args = QList(), - CallMode mode = WaitForReply); - QDBusMessage callWithArgs(const QString& method, const QList& args = QList(), - CallMode mode = WaitForReply); - QDBusMessage callWithArgs(const QString& method, const QString& signature, - const QList& args = QList(), - CallMode mode = WaitForReply); - - bool connect(const QDBusIntrospection::Signal&, QObject* obj, const char *slot); - bool connect(const QString& signalName, QObject* obj, const char *slot); - bool connect(const QString& signalName, const QString& signature, - QObject* obj, const char *slot); - - QDBusReply property(const QDBusIntrospection::Property&); - QDBusReply property(const QString& property); - - QDBusReply setProperty(const QDBusIntrospection::Property&, const QDBusVariant& newValue); - QDBusReply setProperty(const QString& property, const QDBusVariant& newValue); - -#ifndef DOXYGEN_SHOULD_SKIP_THIS - template - inline QDBusMessage call(MethodType m) - { - return callWithArgs(m); - } - - template - inline QDBusMessage call(MethodType m, T1 t1) - { - QList args; - args << t1; - return callWithArgs(m, args); - } - - template - inline QDBusMessage call(MethodType m, T1 t1, T2 t2) - { - QList args; - args << t1 << t2; - return callWithArgs(m, args); - } - - template - inline QDBusMessage call(MethodType m, T1 t1, T2 t2, T3 t3) - { - QList args; - args << t1 << t2 << t3; - return callWithArgs(m, args); - } - - template - inline QDBusMessage call(MethodType m, T1 t1, T2 t2, T3 t3, T4 t4) - { - QList args; - args << t1 << t2 << t3 << t4; - return callWithArgs(m, args); - } - - template - inline QDBusMessage call(MethodType m, T1 t1, T2 t2, T3 t3, T4 t4, T5 t5) - { - QList args; - args << t1 << t2 << t3 << t4 << t5; - return callWithArgs(m, args); - } - - template - inline QDBusMessage call(MethodType m, T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6) - { - QList args; - args << t1 << t2 << t3 << t4 << t5 << t6; - return callWithArgs(m, args); - } - - template - inline QDBusMessage call(MethodType m, T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6, T7 t7) - { - QList args; - args << t1 << t2 << t3 << t4 << t5 << t6 << t7; - return callWithArgs(m, args); - } - - template - inline QDBusMessage call(MethodType m, T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6, T7 t7, T8 t8) - { - QList args; - args << t1 << t2 << t3 << t4 << t5 << t6 << t7 << t8; - return callWithArgs(m, args); - } -#else - // fool Doxygen - inline QDBusMessage call(const QDBusIntrospection::Method &method, ...); - inline QDBusMessage call(const QString &method, ...); -#endif +public: + ~QDBusInterface(); + virtual const QMetaObject *metaObject() const; + virtual void *qt_metacast(const char *); + virtual int qt_metacall(QMetaObject::Call, int, void **); private: - QDBusInterface(QDBusInterfacePrivate*); - QDBusInterfacePrivate *d; + Q_DECLARE_PRIVATE(QDBusInterface); }; #endif -- cgit