summaryrefslogtreecommitdiffstats
path: root/pica-client/callwindow.cpp
diff options
context:
space:
mode:
authorAnton <anton@picapica.im>2025-08-19 17:20:35 +0400
committerAnton <anton@picapica.im>2025-08-19 17:20:35 +0400
commitdc8dc3d49d4b98e28cee3e68cf408bc8af9633b9 (patch)
treeb051634fd022a79c4368cc7dcb65f737588dc645 /pica-client/callwindow.cpp
parentc725f856286dc7918c20a6fb9de34d3d72cb2768 (diff)
downloadpica-pica-dc8dc3d49d4b98e28cee3e68cf408bc8af9633b9.tar.gz
pica-pica-dc8dc3d49d4b98e28cee3e68cf408bc8af9633b9.zip
pica-client: add call initiation & termination in skynet and audiovideocallscontroller and callwindow
Diffstat (limited to 'pica-client/callwindow.cpp')
-rw-r--r--pica-client/callwindow.cpp38
1 files changed, 34 insertions, 4 deletions
diff --git a/pica-client/callwindow.cpp b/pica-client/callwindow.cpp
index d63f1b7..4443807 100644
--- a/pica-client/callwindow.cpp
+++ b/pica-client/callwindow.cpp
@@ -19,17 +19,47 @@
#include <QHBoxLayout>
#include <QVBoxLayout>
-CallWindow::CallWindow(QByteArray peer_id)
- : m_peer_id(peer_id)
+CallWindow::CallWindow(QByteArray peer_id, bool incoming)
+ : m_peer_id(peer_id), is_incoming(incoming)
{
QHBoxLayout *lh = new QHBoxLayout(this);
QVBoxLayout *lv = new QVBoxLayout(this);
+ pbAccept = new QPushButton(tr("Accept"), this);
pbCall = new QPushButton(tr("Call"), this);
pbHang = new QPushButton(tr("Hang Up"), this);
- lh->addWidget(pbCall, Qt::AlignRight);
- lh->addWidget(pbHang, Qt::AlignLeft);
+ lh->addWidget(pbAccept, Qt::AlignLeft);
+ lh->addWidget(pbCall, Qt::AlignLeft);
+ lh->addWidget(pbHang, Qt::AlignRight);
lh->addLayout(lv);
setLayout(lh);
+
+ connect(pbCall, SIGNAL(clicked()), this, SLOT(call()));
+ connect(pbHang, SIGNAL(clicked()), this, SLOT(hang()));
+ connect(pbAccept, SIGNAL(clicked()), this, SLOT(accept()));
+
+ if (is_incoming)
+ {
+ pbCall->hide();
+ }
+ else
+ {
+ pbAccept->hide();
+ }
+}
+
+void CallWindow::call()
+{
+ emit start_call_pressed();
+}
+
+void CallWindow::hang()
+{
+ emit hang_call_pressed();
+}
+
+void CallWindow::accept()
+{
+ emit accept_call_pressed();
}