Banner message
This commit is contained in:
@@ -167,6 +167,19 @@ SelectFormWidget::SelectFormWidget(QWidget *parent) :
|
||||
if (currentRow<0)return;
|
||||
EventCenter::Default()->triggerEvent(GUIEvents::PatientSelected, nullptr,edit_patient->getPatientInformation()->Copy());
|
||||
});
|
||||
connect(EventCenter::Default(),&EventCenter::ResponsePreview,[=](QObject* sender,QObject* data){
|
||||
btnSelect->setEnabled(false);
|
||||
btnDelete->setEnabled(false);
|
||||
btnEdit->setEnabled(false);
|
||||
btnAdd->setEnabled(false);
|
||||
});
|
||||
connect(EventCenter::Default(),&EventCenter::ResponseStop,[=](QObject* sender,QObject* data){
|
||||
btnSelect->setEnabled(true);
|
||||
btnDelete->setEnabled(true);
|
||||
btnEdit->setEnabled(true);
|
||||
btnAdd->setEnabled(true);
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
SelectFormWidget::~SelectFormWidget()
|
||||
|
||||
@@ -6,6 +6,8 @@
|
||||
#include "../event/EventCenter.h"
|
||||
#include <QVariant>
|
||||
#include <QTimerEvent>
|
||||
#include <QDate>
|
||||
#include <QDateTime>
|
||||
#include <qdebug.h>
|
||||
|
||||
#define TRIGGER_EVENT EventCenter::Default()->triggerEvent
|
||||
@@ -37,6 +39,7 @@ std::string getJsonFromPatInf(QObject* obj)
|
||||
|
||||
void ErrorCallback(const char * msg)
|
||||
{
|
||||
DeviceManager::Default()->setErrorOccurred(true);
|
||||
printf("Error Callback , message:%s\r\n", msg);
|
||||
QString m(msg);
|
||||
THROW_ERROR(m);
|
||||
@@ -48,10 +51,7 @@ void DeviceManager::initDevice() {
|
||||
InitLib(ErrorCallback);
|
||||
|
||||
deviceInfTimerID = startTimer(1000);
|
||||
// global error flag
|
||||
connect(EventCenter::Default(),&EventCenter::GUIErrorRaise,[=](QObject* sender, QObject* detail){
|
||||
this->errorOccured = true;
|
||||
});
|
||||
|
||||
// empty scan
|
||||
connect(EventCenter::Default(),&EventCenter::RequestEmptyScan,[=](QObject* sender, QObject* detail){
|
||||
std::string json= getJsonFromPatInf(detail);
|
||||
@@ -87,13 +87,21 @@ void DeviceManager::initDevice() {
|
||||
qDebug()<<"Error thrown!";
|
||||
lastStatus = -1;
|
||||
previewing = false;
|
||||
QString s("%1 %2");
|
||||
s = s.arg(QDateTime::currentDateTime().toString("yyyy/MM/dd HH:mm:ss"), msg);
|
||||
TRIGGER_EVENT(GUIEvents::GlobalBannerMessage, nullptr,(QObject*)&msg);
|
||||
return;
|
||||
}
|
||||
lastStatus = -1;
|
||||
previewing = false;
|
||||
QString s("%1 %2");
|
||||
s = s.arg(QDateTime::currentDateTime().toString("yyyy/MM/dd HH:mm:ss"),("Scan Stopped!"));
|
||||
TRIGGER_EVENT(GUIEvents::GlobalBannerMessage, nullptr,(QObject*)&s);
|
||||
}
|
||||
|
||||
TRIGGER_EVENT(GUIEvents::InvokeOperationEnd, nullptr, nullptr);
|
||||
TRIGGER_EVENT(GUIEvents::ResponseStop, nullptr, nullptr);
|
||||
|
||||
});
|
||||
// preview
|
||||
connect(EventCenter::Default(),&EventCenter::RequestPreviewScan,[=](){
|
||||
@@ -113,6 +121,8 @@ void DeviceManager::initDevice() {
|
||||
// timerID = startTimer(500);
|
||||
TRIGGER_EVENT(GUIEvents::ResponsePreview, nullptr, nullptr);
|
||||
TRIGGER_EVENT(GUIEvents::InvokeOperationEnd, nullptr, nullptr);
|
||||
QString s("Device Previewing!");
|
||||
TRIGGER_EVENT(GUIEvents::GlobalBannerMessage, nullptr, (QObject*)&s);
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -154,7 +164,7 @@ void DeviceManager::timerEvent(QTimerEvent *event) {
|
||||
qDebug()<<"GetStatus";
|
||||
StatusInfo inf = GetStatus();
|
||||
qDebug() << "Scanning request status, status:" << getStatusString(inf.status);
|
||||
if (errorOccured)
|
||||
if (errorOccurred)
|
||||
{
|
||||
qDebug() << "Error occurred, exit progress timer" << inf.progress;
|
||||
goto exitTimer;
|
||||
@@ -172,6 +182,7 @@ void DeviceManager::timerEvent(QTimerEvent *event) {
|
||||
QVariant var(inf.progress);
|
||||
qDebug() << "Normal scan, invoke InvokeOperationProgress:" << inf.progress;
|
||||
TRIGGER_EVENT(GUIEvents::InvokeOperationProgress, nullptr, (QObject*)&var);
|
||||
return;
|
||||
} else{
|
||||
//未发生错误并且,之前状态是扫描,代表正常扫描完成
|
||||
if (lastStatus == SCANNING)
|
||||
@@ -182,14 +193,18 @@ void DeviceManager::timerEvent(QTimerEvent *event) {
|
||||
TRIGGER_EVENT(GUIEvents::InvokeOperationEnd, nullptr, (QObject*)&var);
|
||||
lastStatus = -1;
|
||||
previewing = false;
|
||||
QString s("%1 %2");
|
||||
s = s.arg(QDateTime::currentDateTime().toString("yyyy/MM/dd HH:mm:ss")).arg("Scan finished");
|
||||
TRIGGER_EVENT(GUIEvents::GlobalBannerMessage, nullptr,(QObject*)&s);
|
||||
}
|
||||
return;
|
||||
}
|
||||
exitTimer:
|
||||
qDebug() << "Scanning progress Timer exit";
|
||||
killTimer(timerID);
|
||||
timerID=-1;
|
||||
lastStatus = -1;
|
||||
previewing = false;
|
||||
TRIGGER_EVENT(GUIEvents::GlobalBannerMessage, nullptr,nullptr);
|
||||
return;
|
||||
} else{
|
||||
QString temp = QString(GetDeviceInfo(MEAN_TEMPERATURE));
|
||||
|
||||
@@ -16,6 +16,12 @@ public:
|
||||
return &manager;
|
||||
}
|
||||
void initDevice();
|
||||
void setErrorOccurred(bool v){
|
||||
errorOccurred = v;
|
||||
}
|
||||
bool getErrorOccurred(){
|
||||
return errorOccurred;
|
||||
}
|
||||
|
||||
protected:
|
||||
void timerEvent(QTimerEvent* event) override ;
|
||||
@@ -27,7 +33,7 @@ private:
|
||||
int lastStatus=-1;
|
||||
bool previewing = false;
|
||||
bool endLoop = false;
|
||||
bool errorOccured = false;
|
||||
bool errorOccurred = false;
|
||||
QThread* previewDataCaller;
|
||||
};
|
||||
|
||||
|
||||
@@ -23,6 +23,7 @@ ADD_EVENT_VALUE(InvokeOperationStart)\
|
||||
ADD_EVENT_VALUE(InvokeOperationProgress)\
|
||||
ADD_EVENT_VALUE(InvokeOperationEnd)\
|
||||
ADD_EVENT_VALUE(PromptDialogOpen)\
|
||||
ADD_EVENT_VALUE(GlobalBannerMessage)\
|
||||
ADD_EVENT_VALUE(GUIErrorRaise)
|
||||
|
||||
enum GUIEvents{
|
||||
|
||||
@@ -48,7 +48,15 @@ TabFormWidget::TabFormWidget(QWidget* parent) :
|
||||
if (!msg) return;
|
||||
QString* s = (QString*)msg;
|
||||
lockIcon->setText(QString("%1%2").arg(*s).arg(tr("°C")));
|
||||
});
|
||||
});
|
||||
connect(EventCenter::Default(), &EventCenter::GlobalBannerMessage, [=](QObject*, QObject* msg) {
|
||||
if (!msg) {
|
||||
ui->systemMsgBar->setText("");
|
||||
return;
|
||||
}
|
||||
QString* s = (QString*)msg;
|
||||
ui->systemMsgBar->setText(*s);
|
||||
});
|
||||
}
|
||||
|
||||
TabFormWidget::~TabFormWidget()
|
||||
|
||||
Reference in New Issue
Block a user