summaryrefslogtreecommitdiff
path: root/TelepathyQt/base-call-internal.h
diff options
context:
space:
mode:
Diffstat (limited to 'TelepathyQt/base-call-internal.h')
-rw-r--r--TelepathyQt/base-call-internal.h136
1 files changed, 136 insertions, 0 deletions
diff --git a/TelepathyQt/base-call-internal.h b/TelepathyQt/base-call-internal.h
new file mode 100644
index 00000000..3fff0319
--- /dev/null
+++ b/TelepathyQt/base-call-internal.h
@@ -0,0 +1,136 @@
+/**
+ * This file is part of TelepathyQt
+ *
+ * @copyright Copyright (C) 2013 Matthias Gehre <gehre.matthias@gmail.com>
+ * @copyright Copyright 2013 Canonical Ltd.
+ * @license LGPL 2.1
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+#include "TelepathyQt/_gen/svc-call.h"
+
+#include <TelepathyQt/Global>
+#include <TelepathyQt/MethodInvocationContext>
+#include <TelepathyQt/Constants>
+#include <TelepathyQt/Types>
+#include "TelepathyQt/debug-internal.h"
+
+
+namespace Tp
+{
+
+class TP_QT_NO_EXPORT BaseCallContent::Adaptee : public QObject
+{
+ Q_OBJECT
+ Q_PROPERTY(QString name READ name)
+ Q_PROPERTY(uint type READ type)
+ Q_PROPERTY(uint disposition READ disposition)
+ Q_PROPERTY(Tp::ObjectPathList streams READ streams)
+ Q_PROPERTY(QStringList interfaces READ interfaces)
+
+public:
+ Adaptee(const QDBusConnection &dbusConnection, BaseCallContent *content);
+ ~Adaptee() override;
+ QStringList interfaces() const;
+
+ QString name() const {
+ return mContent->name();
+ }
+
+ uint type() const {
+ return mContent->type();
+ }
+
+ uint disposition() const {
+ return mContent->disposition();
+ }
+
+ Tp::ObjectPathList streams() const {
+ return mContent->streams();
+ }
+
+public Q_SLOTS:
+ void remove(const Tp::Service::CallContentAdaptor::RemoveContextPtr &context);
+
+
+Q_SIGNALS:
+ void streamsAdded(const Tp::ObjectPathList &streams);
+ void streamsRemoved(const Tp::ObjectPathList &streams, const Tp::CallStateReason &reason);
+
+private:
+ BaseCallContent *mContent;
+ Service::CallContentAdaptor *mAdaptor;
+};
+
+
+class TP_QT_NO_EXPORT BaseCallMuteInterface::Adaptee : public QObject
+{
+ Q_OBJECT
+ Q_PROPERTY(uint localMuteState READ localMuteState)
+
+public:
+ Adaptee(BaseCallMuteInterface *content);
+ ~Adaptee() override;
+ QStringList interfaces() const;
+
+ uint localMuteState() const {
+ return mInterface->localMuteState();
+ }
+
+public Q_SLOTS:
+ void requestMuted(bool muted, const Tp::Service::CallInterfaceMuteAdaptor::RequestMutedContextPtr &context);
+
+Q_SIGNALS:
+ void muteStateChanged(uint muteState);
+
+public:
+ BaseCallMuteInterface *mInterface;
+ Service::CallInterfaceMuteAdaptor *mAdaptor;
+};
+
+class TP_QT_NO_EXPORT BaseCallContentDTMFInterface::Adaptee : public QObject
+{
+ Q_OBJECT
+ Q_PROPERTY(bool currentlySendingTones READ currentlySendingTones)
+ Q_PROPERTY(QString deferredTones READ deferredTones)
+
+public:
+ Adaptee(BaseCallContentDTMFInterface *interface);
+ ~Adaptee() override;
+ QStringList interfaces() const;
+
+ bool currentlySendingTones() const {
+ return mInterface->currentlySendingTones();
+ }
+ QString deferredTones() const {
+ return mInterface->deferredTones();
+ }
+
+public Q_SLOTS:
+ void multipleTones(const QString& tones, const Tp::Service::CallContentInterfaceDTMFAdaptor::MultipleTonesContextPtr &context);
+ void startTone(uchar event, const Tp::Service::CallContentInterfaceDTMFAdaptor::StartToneContextPtr &context);
+ void stopTone(const Tp::Service::CallContentInterfaceDTMFAdaptor::StopToneContextPtr &context);
+Q_SIGNALS:
+ void tonesDeferred(const QString& tones);
+ void sendingTones(const QString& tones);
+ void stoppedTones(bool cancelled);
+
+public:
+ BaseCallContentDTMFInterface *mInterface;
+ Service::CallContentInterfaceDTMFAdaptor *mAdaptor;
+};
+
+}