summaryrefslogtreecommitdiffstats
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, 19 insertions, 142 deletions
diff --git a/qt/qdbusinterface.h b/qt/qdbusinterface.h
index 2b96cae3..966a4705 100644
--- a/qt/qdbusinterface.h
+++ b/qt/qdbusinterface.h
@@ -28,6 +28,8 @@
#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>
@@ -35,9 +37,6 @@
class QDBusConnection;
class QDBusInterfacePrivate;
-/**
- * Base class for all DBUS interfaces in the QtDBUS binding.
- */
class QDBUS_EXPORT QDBusInterface
{
friend class QDBusConnection;
@@ -49,171 +48,65 @@ public:
};
public:
- /**
- * Construct an interface of the given name
- */
QDBusInterface(const QDBusObject& obj, const QString& name);
-
- /**
- * @overload.
- * Construct an interface of the given name
- */
- QDBusInterface(QDBusConnection& conn, const QString& service, const QString& path, const QString& name);
-
- /**
- * Construct a copy of the interface.
- */
QDBusInterface(const QDBusInterface&);
-
- /**
- * Destructs this interface.
- */
virtual ~QDBusInterface();
- /**
- * Copy the interface.
- */
QDBusInterface& operator=(const QDBusInterface&);
- /**
- * Returns the object associated with this interface.
- */
inline QDBusObject object()
{ return QDBusObject(*this); }
inline const QDBusObject object() const
{ return QDBusObject(*this); }
- /**
- * Returns the connection this interface is on.
- */
+ inline operator QDBusObject()
+ { return QDBusObject(*this); }
+
+ inline operator const QDBusObject() const
+ { return QDBusObject(*this); }
+
+
QDBusConnection connection() const;
- /**
- * Returns the name of the service this interface is associated with.
- */
QString service() const;
-
- /**
- * Returns the object path that this interface is associated with.
- */
QString path() const;
-
- /**
- * Returns the name of this interface.
- */
QString interface() const;
- /**
- * Returns the introspection XML fragment data of this interface.
- */
virtual QString introspectionData() const;
-
- /**
- * Returns the interface data for this interface.
- */
const QDBusIntrospection::Interface& interfaceData() const;
-
- /**
- * Returns the annotations present in this interface, if any.
- */
const QDBusIntrospection::Annotations& annotationData() const;
-
- /**
- * List all methods in this interface.
- */
const QDBusIntrospection::Methods& methodData() const;
-
- /**
- * List all signals in this interface.
- */
const QDBusIntrospection::Signals& signalData() const;
-
- /**
- * List all properties in this interface.
- */
const QDBusIntrospection::Properties& propertyData() const;
- /**
- * Call the given method.
- */
QDBusMessage callWithArgs(const QDBusIntrospection::Method& method,
const QList<QVariant>& args = QList<QVariant>(),
CallMode mode = WaitForReply);
-
- /**
- * Call the given method.
- */
QDBusMessage callWithArgs(const QString& method, const QList<QVariant>& args = QList<QVariant>(),
CallMode mode = WaitForReply);
-
- /**
- * Call the given method.
- */
QDBusMessage callWithArgs(const QString& method, const QString& signature,
const QList<QVariant>& args = QList<QVariant>(),
CallMode mode = WaitForReply);
- /**
- * Connects the DBUS signal to the given slot.
- */
bool connect(const QDBusIntrospection::Signal&, QObject* obj, const char *slot);
-
- /**
- * Connects the DBUS signal to the given slot.
- */
bool connect(const QString& signalName, QObject* obj, const char *slot);
-
- /**
- * Connects the DBUS signal to the given slot.
- */
bool connect(const QString& signalName, const QString& signature,
QObject* obj, const char *slot);
- /**
- * Gets the value of the given property.
- */
- QVariant propertyGet(const QDBusIntrospection::Property&);
-
- /**
- * Gets the value of the given property.
- */
- QVariant propertyGet(const QString& property);
-
- /**
- * Sets the value of the given property.
- */
- void propertySet(const QDBusIntrospection::Property&, QVariant newValue);
+ QDBusReply<QDBusVariant> property(const QDBusIntrospection::Property&);
+ QDBusReply<QDBusVariant> property(const QString& property);
- /**
- * Sets the value of the given property.
- */
- void propertySet(const QString& property, QVariant newValue);
+ QDBusReply<void> setProperty(const QDBusIntrospection::Property&, const QDBusVariant& newValue);
+ QDBusReply<void> setProperty(const QString& property, const QDBusVariant& newValue);
- /**
- * Casts to QDBusObject.
- */
- inline operator QDBusObject()
- { return QDBusObject(*this); }
-
- /**
- * Casts to const QDBusObject.
- */
- inline operator const QDBusObject() const
- { return QDBusObject(*this); }
-
- /**
- * Call the given method.
- */
+#ifndef DOXYGEN_SHOULD_SKIP_THIS
template<typename MethodType>
inline QDBusMessage call(MethodType m)
{
return callWithArgs(m);
}
- /**
- * Call the given method.
- */
template<typename MethodType, typename T1>
inline QDBusMessage call(MethodType m, T1 t1)
{
@@ -222,9 +115,6 @@ public:
return callWithArgs(m, args);
}
- /**
- * Call the given method.
- */
template<typename MethodType, typename T1, typename T2>
inline QDBusMessage call(MethodType m, T1 t1, T2 t2)
{
@@ -233,9 +123,6 @@ public:
return callWithArgs(m, args);
}
- /**
- * Call the given method.
- */
template<typename MethodType, typename T1, typename T2, typename T3>
inline QDBusMessage call(MethodType m, T1 t1, T2 t2, T3 t3)
{
@@ -244,9 +131,6 @@ public:
return callWithArgs(m, args);
}
- /**
- * Call the given method.
- */
template<typename MethodType, typename T1, typename T2, typename T3, typename T4>
inline QDBusMessage call(MethodType m, T1 t1, T2 t2, T3 t3, T4 t4)
{
@@ -255,9 +139,6 @@ public:
return callWithArgs(m, args);
}
- /**
- * Call the given method.
- */
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)
{
@@ -266,9 +147,6 @@ public:
return callWithArgs(m, args);
}
- /**
- * Call the given method.
- */
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)
@@ -278,9 +156,6 @@ public:
return callWithArgs(m, args);
}
- /**
- * Call the given method.
- */
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)
@@ -290,9 +165,6 @@ public:
return callWithArgs(m, args);
}
- /**
- * Call the given method.
- */
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)
@@ -301,6 +173,11 @@ public:
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
private:
QDBusInterface(QDBusInterfacePrivate*);