| Home · All Classes · All Namespaces · Modules · Functions · Files

abstract-interface.h

    00001
    00023 #ifndef _TelepathyQt_abstract_interface_h_HEADER_GUARD_
    00024 #define _TelepathyQt_abstract_interface_h_HEADER_GUARD_
    00025
    00026 #ifndef IN_TP_QT_HEADER
    00027 #error IN_TP_QT_HEADER
    00028 #endif
    00029
    00030 #include <TelepathyQt/Global>
    00031
    00032 #include <QDBusAbstractInterface>
    00033
    00034 namespace Tp
    00035 {
    00036
    00037 class DBusProxy;
    00038 class PendingVariant;
    00039 class PendingOperation;
    00040 class PendingVariantMap;
    00041
    00042 class TP_QT_EXPORT AbstractInterface : public QDBusAbstractInterface
    00043 {
    00044     Q_OBJECT
    00045     Q_DISABLE_COPY(AbstractInterface)
    00046
    00047 public:
    00048     virtual ~AbstractInterface();
    00049
    00050     bool isValid() const;
    00051     QString invalidationReason() const;
    00052     QString invalidationMessage() const;
    00053
    00054 protected Q_SLOTS:
    00055     virtual void invalidate(Tp::DBusProxy *proxy,
    00056             const QString &error, const QString &message);
    00057
    00058 protected:
    00059     AbstractInterface(DBusProxy *proxy, const QLatin1String &interface);
    00060     AbstractInterface(const QString &busName, const QString &path,
    00061             const QLatin1String &interface, const QDBusConnection &connection,
    00062             QObject *parent);
    00063
    00064     PendingVariant *internalRequestProperty(const QString &name) const;
    00065     PendingOperation *internalSetProperty(const QString &name, const QVariant &newValue);
    00066     PendingVariantMap *internalRequestAllProperties() const;
    00067
    00068 private:
    00069     struct Private;
    00070     friend struct Private;
    00071     Private *mPriv;
    00072 };
    00073
    00074 } // Tp
    00075
    00076 #endif