summaryrefslogtreecommitdiff
path: root/qt/qdbusinterface.h
diff options
context:
space:
mode:
Diffstat (limited to 'qt/qdbusinterface.h')
-rw-r--r--qt/qdbusinterface.h161
1 files changed, 10 insertions, 151 deletions
diff --git a/qt/qdbusinterface.h b/qt/qdbusinterface.h
index 966a470..0495ada 100644
--- a/qt/qdbusinterface.h
+++ b/qt/qdbusinterface.h
@@ -1,6 +1,5 @@
/* -*- C++ -*-
*
- * Copyright (C) 2005 Thiago Macieira <thiago@kde.org>
* Copyright (C) 2006 Trolltech AS. All rights reserved.
* Author: Thiago Macieira <thiago.macieira@trolltech.com>
*
@@ -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 <QtCore/qstring.h>
-#include <QtCore/qvariant.h>
-#include <QtCore/qlist.h>
-
-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<QVariant>& args = QList<QVariant>(),
- CallMode mode = WaitForReply);
- QDBusMessage callWithArgs(const QString& method, const QList<QVariant>& args = QList<QVariant>(),
- CallMode mode = WaitForReply);
- QDBusMessage callWithArgs(const QString& method, const QString& signature,
- const QList<QVariant>& args = QList<QVariant>(),
- 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<QDBusVariant> property(const QDBusIntrospection::Property&);
- QDBusReply<QDBusVariant> property(const QString& property);
-
- QDBusReply<void> setProperty(const QDBusIntrospection::Property&, const QDBusVariant& newValue);
- QDBusReply<void> setProperty(const QString& property, const QDBusVariant& newValue);
-
-#ifndef DOXYGEN_SHOULD_SKIP_THIS
- template<typename MethodType>
- inline QDBusMessage call(MethodType m)
- {
- return callWithArgs(m);
- }
-
- template<typename MethodType, typename T1>
- inline QDBusMessage call(MethodType m, T1 t1)
- {
- QList<QVariant> args;
- args << t1;
- return callWithArgs(m, args);
- }
-
- template<typename MethodType, typename T1, typename T2>
- inline QDBusMessage call(MethodType m, T1 t1, T2 t2)
- {
- QList<QVariant> args;
- args << t1 << t2;
- return callWithArgs(m, args);
- }
-
- template<typename MethodType, typename T1, typename T2, typename T3>
- inline QDBusMessage call(MethodType m, T1 t1, T2 t2, T3 t3)
- {
- QList<QVariant> args;
- args << t1 << t2 << t3;
- return callWithArgs(m, args);
- }
-
- template<typename MethodType, typename T1, typename T2, typename T3, typename T4>
- inline QDBusMessage call(MethodType m, T1 t1, T2 t2, T3 t3, T4 t4)
- {
- QList<QVariant> args;
- args << t1 << t2 << t3 << t4;
- return callWithArgs(m, args);
- }
-
- template<typename MethodType, typename T1, typename T2, typename T3, typename T4, typename T5>
- inline QDBusMessage call(MethodType m, T1 t1, T2 t2, T3 t3, T4 t4, T5 t5)
- {
- QList<QVariant> args;
- args << t1 << t2 << t3 << t4 << t5;
- return callWithArgs(m, args);
- }
-
- template<typename MethodType, typename T1, typename T2, typename T3, typename T4, typename T5,
- typename T6>
- inline QDBusMessage call(MethodType m, T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6)
- {
- QList<QVariant> args;
- args << t1 << t2 << t3 << t4 << t5 << t6;
- return callWithArgs(m, args);
- }
-
- template<typename MethodType, typename T1, typename T2, typename T3, typename T4, typename T5,
- typename T6, typename T7>
- inline QDBusMessage call(MethodType m, T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6, T7 t7)
- {
- QList<QVariant> args;
- args << t1 << t2 << t3 << t4 << t5 << t6 << t7;
- return callWithArgs(m, args);
- }
-
- template<typename MethodType, typename T1, typename T2, typename T3, typename T4, typename T5,
- typename T6, typename T7, typename T8>
- inline QDBusMessage call(MethodType m, T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6, T7 t7, T8 t8)
- {
- QList<QVariant> 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