---
This commit is contained in:
@@ -56,6 +56,27 @@ void MainWindow::keyPressEvent(QKeyEvent* event){
|
||||
}
|
||||
}
|
||||
|
||||
void MainWindow::StartupTalkingTimer(){
|
||||
if(m_timer){
|
||||
m_timer->stop();
|
||||
}else{
|
||||
m_timer = std::make_shared<QTimer>();
|
||||
QObject::connect(&*m_timer, &QTimer::timeout, [this]() {
|
||||
m_callDuration += 1;
|
||||
QTime t(0,0,0);
|
||||
t = t.addSecs(m_callDuration);
|
||||
ui->lblCallDuration->setText(t.toString("hh:mm:ss"));
|
||||
});
|
||||
}
|
||||
m_callDuration = 0;
|
||||
m_timer->start(1000);
|
||||
}
|
||||
void MainWindow::ShutdownTalkingTimer(){
|
||||
if(m_timer){
|
||||
m_timer->stop();
|
||||
}
|
||||
}
|
||||
|
||||
void MainWindow::readPendingDatagrams(){
|
||||
while (m_udpServerSocket->hasPendingDatagrams()) {
|
||||
QByteArray datagram;
|
||||
@@ -70,11 +91,37 @@ void MainWindow::readPendingDatagrams(){
|
||||
//TODO:处理数据包
|
||||
//qDebug() << "Received datagram from" << sender.toString() << ":" << senderPort;
|
||||
//qDebug() << "Data:" << datagram;
|
||||
|
||||
//有来电
|
||||
ui->cmbCallNumber->setEnabled(false);
|
||||
ui->btnCallAnswer->show();
|
||||
ui->btnCallReject->show();
|
||||
ui->lblCallStatus->setText("来电中...");
|
||||
ui->lblCallDuration->hide();
|
||||
//通话中
|
||||
ui->cmbCallNumber->setEnabled(false);
|
||||
ui->btnCallAnswer->hide();
|
||||
ui->btnCallReject->show();
|
||||
ui->lblCallStatus->setText("通话中...");
|
||||
ui->lblCallDuration->show();
|
||||
StartupTalkingTimer();
|
||||
//挂断电话
|
||||
ui->cmbCallNumber->setEnabled(true);
|
||||
ui->btnCallAnswer->show();
|
||||
ui->btnCallReject->hide();
|
||||
ui->lblCallStatus->setText("空闲中...");
|
||||
ui->lblCallDuration->hide();
|
||||
ShutdownTalkingTimer();
|
||||
//拨号中
|
||||
ui->cmbCallNumber->setEnabled(false);
|
||||
ui->btnCallAnswer->hide();
|
||||
ui->btnCallReject->show();
|
||||
ui->lblCallStatus->setText("拨号中...");
|
||||
ui->lblCallDuration->hide();
|
||||
}
|
||||
}
|
||||
|
||||
void MainWindow::test() {
|
||||
|
||||
// 随机生成信号能量数据
|
||||
setSignalStrengthValues(
|
||||
QStringList{"1号星", "2号星", "3号星", "4号星", "5号星", "6号星"},
|
||||
@@ -127,6 +174,14 @@ void MainWindow::test() {
|
||||
|
||||
|
||||
m_logger->info("{}---{}---{}",1,"22",30);
|
||||
|
||||
//通话中
|
||||
// ui->cmbCallNumber->setEnabled(false);
|
||||
// ui->btnCallAnswer->hide();
|
||||
// ui->btnCallReject->show();
|
||||
// ui->lblCallStatus->setText("通话中...");
|
||||
// ui->lblCallDuration->show();
|
||||
// StartupTalkingTimer();
|
||||
}
|
||||
//--------------------------------------------------------------------------------------
|
||||
//--------------------------------------------------------------------------------------
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
#include <QMainWindow>
|
||||
#include <memory>
|
||||
#include <vector>
|
||||
#include <QTimer>
|
||||
|
||||
#include "RecordQuery.h"
|
||||
#include "LoggerWidget.h"
|
||||
@@ -79,6 +80,8 @@ private:
|
||||
bool rejectCall();
|
||||
bool sendShortMessage(const QString &number,const QString& message);
|
||||
|
||||
void StartupTalkingTimer();
|
||||
void ShutdownTalkingTimer();
|
||||
void test();
|
||||
private:
|
||||
Ui::MainWindow *ui;
|
||||
@@ -95,5 +98,9 @@ private:
|
||||
std::shared_ptr<spdlog::logger> m_logger;
|
||||
|
||||
std::vector<Record> m_msgList;
|
||||
|
||||
std::shared_ptr<QTimer> m_timer;
|
||||
int m_callDuration = 0;
|
||||
|
||||
};
|
||||
#endif // MAINWINDOW_H
|
||||
|
||||
Reference in New Issue
Block a user