2 * dialer - Declarative Dialer UX Main Window.
3 * Copyright (c) 2011, Tom Swindell.
5 * This program is licensed under the terms and conditions of the
6 * Apache License, version 2.0. The full text of the Apache License is at
7 * http://www.apache.org/licenses/LICENSE-2.0
12 #include "qmlcallitem.h"
14 class QMLCallItemPrivate
20 QMLCallItem::QMLCallItem(CallItem *proxy, QObject *parent)
21 : QObject(parent), d(new QMLCallItemPrivate)
26 QObject::connect(proxy->callProxy(), SIGNAL(stateChanged()), SLOT(onStateChanged()));
29 QMLCallItem::~QMLCallItem()
35 CallItem* QMLCallItem::proxy() const
41 QString QMLCallItem::msisdn() const
44 if (d->proxy->callProxy())
45 return d->proxy->callProxy()->lineID();
49 int QMLCallItem::numberLen() const
52 QString number = msisdn();
56 QString QMLCallItem::name() const
59 if (d->proxy->callProxy())
60 return d->proxy->callProxy()->name();
64 QString QMLCallItem::state() const
67 if (d->proxy->callProxy())
68 return d->proxy->callProxy()->state();
72 QString QMLCallItem::reason() const
75 if (d->proxy->callProxy())
76 return d->proxy->callProxy()->reason();
80 QDateTime QMLCallItem::startedAt() const
83 if (d->proxy->callProxy())
84 return d->proxy->callProxy()->startTime();
88 int QMLCallItem::duration() const
93 if (d->proxy->callProxy())
94 return d->proxy->callProxy()->duration();
98 bool QMLCallItem::isMultiparty() const
101 if (d->proxy->callProxy())
102 return d->proxy->callProxy()->multiparty();
106 void QMLCallItem::answer()
109 if (d->proxy->callProxy())
110 d->proxy->callProxy()->answer();
113 void QMLCallItem::deflect(const QString &msisdn)
116 if (d->proxy->callProxy())
117 d->proxy->callProxy()->deflect(msisdn);
120 void QMLCallItem::hangup()
123 if (d->proxy->callProxy())
124 d->proxy->callProxy()->hangup();
127 void QMLCallItem::onStateChanged()
130 emit this->stateChanged(d->proxy->callProxy()->state());