You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
VideoClient98/src/mainwindow.cpp

118 lines
3.9 KiB
C++

#include "mainwindow.h"
#include <QWKWidgets/qwkwidgetsglobal.h>
#include <QWKWidgets/widgetwindowagent.h>
#include <QList>
#include "ui_mainwindow.h"
#include "widgetframe/windowbar.h"
#include "widgetframe/windowbutton.h"
MainWindow::MainWindow(QWidget* parent)
: QMainWindow(parent), ui(new Ui::MainWindow) {
ui->setupUi(this);
this->setWindowTitle("载荷视频播放软件");
// windowAgent = new QWK::WidgetWindowAgent(this);
// windowAgent->setup(this);
// auto windowBar = new QWK::WindowBar();
// auto iconButton = new QWK::WindowButton();
/*
iconButton->setObjectName(QStringLiteral("icon-button"));
iconButton->setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Preferred);
auto minButton = new QWK::WindowButton();
minButton->setObjectName(QStringLiteral("min-button"));
minButton->setProperty("system-button", true);
minButton->setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Preferred);
auto maxButton = new QWK::WindowButton();
maxButton->setCheckable(true);
maxButton->setObjectName(QStringLiteral("max-button"));
maxButton->setProperty("system-button", true);
maxButton->setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Preferred);
auto closeButton = new QWK::WindowButton();
closeButton->setObjectName(QStringLiteral("close-button"));
closeButton->setProperty("system-button", true);
closeButton->setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Preferred);
windowBar->setIconButton(iconButton);
windowBar->setMinButton(minButton);
windowBar->setMaxButton(maxButton);
windowBar->setCloseButton(closeButton);
windowAgent->setTitleBar(windowBar);
*/
// apply the qss
QFile qssfile(":/Qss/qss.qss");
if (qssfile.open(QFile::ReadOnly)) {
// file.open(QFile::ReadOnly);
QString style = QLatin1String(qssfile.readAll());
qApp->setStyleSheet(style);
// qDebug()<<style;
qssfile.close();
} else {
qDebug() << "Open file fail " << Qt::endl;
}
// QList<QString> list;
// list.append("rtmp://liteavapp.qcloud.com/live/liteavdemoplayerstreamid");
// list.append("rtsp://182.92.130.23/nmyj/video");
// list.append("rtmp://182.92.130.23/nmyj/video");
// list.append("rtmp://ns8.indexforce.com/home/mystream");
// // ui->videoWidget->udpPlay("172.10.1.199", 13001);
// ui->videoWidget->setVedioSaveFileDirPath("./video");
// ui->videoWidget->play(list.at(1));
// ui->videoWidget->pushStream("udp://172.10.1.199:8009");
QString urlFile = "networkSettingInfo.ini";
QFile file(urlFile);
if (!file.exists()) {
file.open(QIODevice::WriteOnly);
file.close();
}
g_networkSettingInfo =
new QSettings("networkSettingInfo.ini", QSettings::IniFormat);
initSignalConnection();
initNotifyManager();
initNotifyMessageConnection();
}
MainWindow::~MainWindow() {
delete ui;
}
void MainWindow::initSignalConnection() {
connect(ui->commandWidget, &CommandWidget::startConnectionSignal,
ui->videoWidget, &VideoWidget::udpPlay, Qt::UniqueConnection);
connect(ui->commandWidget, &CommandWidget::stopConnectionSignal,
ui->videoWidget, &VideoWidget::stopPlay, Qt::UniqueConnection);
}
void MainWindow::initNotifyMessageConnection() {
connect(ui->videoWidget, &VideoWidget::sendErrorMessageSignal, this,
&MainWindow::showMessageSlots);
connect(ui->commandWidget, &CommandWidget::sendErrorMessage, this,
&MainWindow::showMessageSlots);
}
void MainWindow::initNotifyManager() {
m_notifyManager = new NotifyManager(this, this);
m_notifyManager->setMaxCount(5);
m_notifyManager->setDisplayTime(2000);
m_notifyManager->setNotifyWndSize(400, 60);
}
void MainWindow::showMessageSlots(QString message, int type) {
if (m_notifyManager) {
m_notifyManager->notify(message, "", type, 3000);
}
}