forked from ccsens_hardware/qt_qcp_show
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
54 lines
1.9 KiB
54 lines
1.9 KiB
#include "mainwidget.h"
|
|
#include <QApplication>
|
|
#include "mainconfig.h"
|
|
#include "httpservice.h"
|
|
#include "websocketservice.h"
|
|
#include "patientemergencyinfo.h"
|
|
#include "deviceservice.h"
|
|
|
|
int main(int argc, char *argv[])
|
|
{
|
|
QApplication a(argc, argv);
|
|
|
|
//切换当前工作目录
|
|
QDir::setCurrent(QCoreApplication::applicationDirPath());
|
|
|
|
//初始化配置文件
|
|
MainConfig::initConfig();
|
|
|
|
//初始化httpservice,并自动登录
|
|
HttpService httpService;
|
|
httpService.login(MainConfig::username,MainConfig::password);
|
|
|
|
//初始化websocket,并自动连接服务器
|
|
WebsocketService websocketService;
|
|
websocketService.connectToServer(MainConfig::wsUrl);
|
|
|
|
//初始化DeviceInfo,并自动初始化IO配置
|
|
DeviceService deviceService;
|
|
|
|
//创建主窗体
|
|
MainWidget w(&httpService,&websocketService,&deviceService);
|
|
|
|
//绑定信号与槽
|
|
QObject::connect(&websocketService,&WebsocketService::wsConnectedStatusChanged,
|
|
&w,&MainWidget::onWsConnectedStatusChanged);
|
|
QObject::connect(&websocketService,&WebsocketService::newPatientMergencyInfo,
|
|
&w,&MainWidget::onNewPatientMergencyInfo);
|
|
QObject::connect(&websocketService,&WebsocketService::patientMergencyStatusChanged,
|
|
&w,&MainWidget::onPatientMergencyStatusChanged);
|
|
QObject::connect(&deviceService,&DeviceService::keyClicked,
|
|
&w,&MainWidget::onKeyClicked);
|
|
QObject::connect(&deviceService,&DeviceService::keyDown,
|
|
&w,&MainWidget::onKeyDown);
|
|
QObject::connect(&deviceService,&DeviceService::keyWorked,
|
|
&w,&MainWidget::onKeyWorked);
|
|
|
|
QObject::connect(&w,&MainWidget::statusChanged,&httpService,&HttpService::updateStatus);
|
|
QObject::connect(&w,&MainWidget::complexOneKeyStart,&httpService,&HttpService::onComplexOneKeyStart);
|
|
|
|
w.show();
|
|
// w.showFullScreen();
|
|
|
|
return a.exec();
|
|
}
|
|
|