Add InitializeWidget before login.
This commit is contained in:
@@ -83,10 +83,10 @@ QString getFullScanJson(QObject* obj)
|
|||||||
|
|
||||||
void DeviceManager::initDevice()
|
void DeviceManager::initDevice()
|
||||||
{
|
{
|
||||||
|
mIsInitializing = true;
|
||||||
dmsmq_init();
|
dmsmq_init();
|
||||||
if(JsonObject::Instance()->isDmsSimulator())
|
if(JsonObject::Instance()->isDmsSimulator())
|
||||||
{
|
{
|
||||||
qDebug()<< JsonObject::Instance()->isDmsSimulator();
|
|
||||||
//set simulator
|
//set simulator
|
||||||
QString simulatorCode = "{ \"code\":0, \"info\":\"1\"}";
|
QString simulatorCode = "{ \"code\":0, \"info\":\"1\"}";
|
||||||
QByteArray byteArray = simulatorCode.toUtf8();
|
QByteArray byteArray = simulatorCode.toUtf8();
|
||||||
@@ -132,6 +132,9 @@ void DeviceManager::initDevice()
|
|||||||
mPreviewScanAction = new DmsSyncAction(USRV_SCAN, ACT_SCAN_PREVIEW, this, "responsePreviewScan(const QString&)", this);
|
mPreviewScanAction = new DmsSyncAction(USRV_SCAN, ACT_SCAN_PREVIEW, this, "responsePreviewScan(const QString&)", this);
|
||||||
mTransferAction = new DmsSyncAction(USRV_XFR, ACT_XFR_START, this, "responseTransfer(const QString&)", this);
|
mTransferAction = new DmsSyncAction(USRV_XFR, ACT_XFR_START, this, "responseTransfer(const QString&)", this);
|
||||||
mGetTransferProgressAction = new DmsSyncAction(USRV_XFR, ACT_XFR_PROGRESS_PASSIVE, this, "responseGetTransferProgress(const QString&)", this);
|
mGetTransferProgressAction = new DmsSyncAction(USRV_XFR, ACT_XFR_PROGRESS_PASSIVE, this, "responseGetTransferProgress(const QString&)", this);
|
||||||
|
mCEScanAction = new DmsSyncAction(USRV_SCAN, ACT_SCAN_CE, this, "responseCEScan(const QString&)", this);
|
||||||
|
mGetCEStatusAction = new DmsSyncAction(USRV_SCAN, ACT_SCAN_CE_STATUS, this, "responseGetCEStatus(const QString&)", this);
|
||||||
|
mPumpControlAction = new DmsSyncAction(USRV_CONTROL, ACT_CTL_PUMP, this, "responsePumpControl(const QString&)", this);
|
||||||
|
|
||||||
//Async action
|
//Async action
|
||||||
mGetScanProgressAction = new DmsAsyncAction(USRV_SCAN, ACT_SCAN_PROGRESS_PASSIVE, this,"responseGetScanProgress(const QString&)", this);
|
mGetScanProgressAction = new DmsAsyncAction(USRV_SCAN, ACT_SCAN_PROGRESS_PASSIVE, this,"responseGetScanProgress(const QString&)", this);
|
||||||
@@ -166,10 +169,55 @@ void DeviceManager::initDevice()
|
|||||||
{
|
{
|
||||||
mStopScanAction->execute();
|
mStopScanAction->execute();
|
||||||
}
|
}
|
||||||
|
if(!getCEStatus())
|
||||||
|
{
|
||||||
|
if(startCEScan())
|
||||||
|
{
|
||||||
|
mScanProgressTimer = startTimer(500);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
emit initializeProgress("33");
|
||||||
|
QThread::msleep(500);
|
||||||
|
emit initializeProgress("66");
|
||||||
|
QThread::msleep(500);
|
||||||
|
emit initializeProgress("100");
|
||||||
|
emit initializeFinished();
|
||||||
|
}
|
||||||
|
|
||||||
startTransfer();
|
startTransfer();
|
||||||
initEmptyScanMeasurementID();
|
initEmptyScanMeasurementID();
|
||||||
//mGetSoftwareVersionAction->execute();
|
//mGetSoftwareVersionAction->execute();
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
void DeviceManager::processInitializeProgress(const QString& aProgress)
|
||||||
|
{
|
||||||
|
if(!mIsInitializing)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
QJsonObject jsonObj = toJsonObject(aProgress);
|
||||||
|
int code = jsonObj["code"].toInt();
|
||||||
|
QString msg = jsonObj["info"].toString();
|
||||||
|
switch (code)
|
||||||
|
{
|
||||||
|
case 1:
|
||||||
|
emit initializeProgress(msg);
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
prepareFinishInitialize();
|
||||||
|
emit initializeFinished();
|
||||||
|
break;
|
||||||
|
case -1:
|
||||||
|
prepareFinishInitialize();
|
||||||
|
THROW_ERROR(msg);
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
bool DeviceManager::hasValidEmptyScan()
|
bool DeviceManager::hasValidEmptyScan()
|
||||||
@@ -209,7 +257,7 @@ void DeviceManager::startScan(const QString& json, bool empty)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void DeviceManager::processScanProcess(const QString& aProgress)
|
void DeviceManager::processScanProgress(const QString& aProgress)
|
||||||
{
|
{
|
||||||
if(mIsScanning == false)
|
if(mIsScanning == false)
|
||||||
{
|
{
|
||||||
@@ -274,6 +322,8 @@ void DeviceManager::prepareFinishScan(bool isNormalFinish, const QString& aReaso
|
|||||||
insertScanRecord();
|
insertScanRecord();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
startTransfer();
|
||||||
|
|
||||||
if(isCompleteNotify)
|
if(isCompleteNotify)
|
||||||
{
|
{
|
||||||
QString msg = QString("Scan completed!");
|
QString msg = QString("Scan completed!");
|
||||||
@@ -283,8 +333,16 @@ void DeviceManager::prepareFinishScan(bool isNormalFinish, const QString& aReaso
|
|||||||
{
|
{
|
||||||
TRIGGER_EVENT(InvokeOperationEnd, nullptr, var);
|
TRIGGER_EVENT(InvokeOperationEnd, nullptr, var);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
startTransfer();
|
void DeviceManager::prepareFinishInitialize()
|
||||||
|
{
|
||||||
|
mIsInitializing = false;
|
||||||
|
if(mScanProgressTimer != -1)
|
||||||
|
{
|
||||||
|
killTimer(mScanProgressTimer);
|
||||||
|
mScanProgressTimer = -1;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void DeviceManager::stopFullScan()
|
void DeviceManager::stopFullScan()
|
||||||
@@ -449,7 +507,14 @@ void DeviceManager::processReceiveDMSInfoResult(int aServerID, int aActionID, co
|
|||||||
break;
|
break;
|
||||||
case ACT_SCAN_PROGRESS_PASSIVE :
|
case ACT_SCAN_PROGRESS_PASSIVE :
|
||||||
emit responseGetScanProgress(aContents);
|
emit responseGetScanProgress(aContents);
|
||||||
processScanProcess(aContents);
|
if(mIsInitializing)
|
||||||
|
{
|
||||||
|
processInitializeProgress(aContents);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
processScanProgress(aContents);
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case ACT_SCAN_PRESIG:
|
case ACT_SCAN_PRESIG:
|
||||||
processPreviewData(aContents);
|
processPreviewData(aContents);
|
||||||
@@ -457,6 +522,12 @@ void DeviceManager::processReceiveDMSInfoResult(int aServerID, int aActionID, co
|
|||||||
case ACT_SCAN_STOP :
|
case ACT_SCAN_STOP :
|
||||||
emit responseStopScan(aContents);
|
emit responseStopScan(aContents);
|
||||||
break;
|
break;
|
||||||
|
case ACT_SCAN_CE :
|
||||||
|
emit responseCEScan(aContents);
|
||||||
|
break;
|
||||||
|
case ACT_SCAN_CE_STATUS :
|
||||||
|
emit responseGetCEStatus(aContents);
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -494,6 +565,14 @@ void DeviceManager::processReceiveDMSInfoResult(int aServerID, int aActionID, co
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
case USRV_CONTROL:
|
||||||
|
switch(aActionID)
|
||||||
|
{
|
||||||
|
case ACT_CTL_PUMP:
|
||||||
|
emit responsePumpControl(aContents);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -582,6 +661,26 @@ bool DeviceManager::startFullScan(const QString& aPatientInfo)
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool DeviceManager::startCEScan()
|
||||||
|
{
|
||||||
|
DmsSyncActionResult result = mCEScanAction->execute();
|
||||||
|
if(!result.mIsSucessful)
|
||||||
|
{
|
||||||
|
QString message = QString("Dms connection error. Reason:%1").arg(result.mData);
|
||||||
|
THROW_ERROR(message);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
QJsonObject jsonObj = toJsonObject(result.mData);
|
||||||
|
if(jsonObj.contains("code") && jsonObj["code"].toInt() != 0)
|
||||||
|
{
|
||||||
|
QString msg = jsonObj["info"].toString();
|
||||||
|
THROW_ERROR(msg);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
void DeviceManager::getDeviceTemperature()
|
void DeviceManager::getDeviceTemperature()
|
||||||
{
|
{
|
||||||
mGetDeviceTemperatureAction->execute();
|
mGetDeviceTemperatureAction->execute();
|
||||||
@@ -896,3 +995,19 @@ int DeviceManager::getTransferProgress()
|
|||||||
return mTransferProgress;
|
return mTransferProgress;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool DeviceManager::getCEStatus()
|
||||||
|
{
|
||||||
|
auto result = mGetCEStatusAction->execute();
|
||||||
|
if(result.mIsSucessful)
|
||||||
|
{
|
||||||
|
QJsonObject jsonObj = toJsonObject(result.mData);
|
||||||
|
if(jsonObj["code"].toInt() == 0 )
|
||||||
|
{
|
||||||
|
if(jsonObj["info"].toString().toInt() == 0)
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|||||||
@@ -101,11 +101,15 @@ private:
|
|||||||
void stopPreviewScan();
|
void stopPreviewScan();
|
||||||
void getDeviceTemperature();
|
void getDeviceTemperature();
|
||||||
void getScanProcess();
|
void getScanProcess();
|
||||||
|
bool getCEStatus();
|
||||||
|
bool startCEScan();
|
||||||
void startTransfer();
|
void startTransfer();
|
||||||
void initEmptyScanMeasurementID();
|
void initEmptyScanMeasurementID();
|
||||||
|
|
||||||
void processScanProcess(const QString& aProgress);
|
void processScanProgress(const QString& aProgress);
|
||||||
|
void processInitializeProgress(const QString& aProgress);
|
||||||
void prepareFinishScan(bool isNormalFinish, const QString& aReason = "");
|
void prepareFinishScan(bool isNormalFinish, const QString& aReason = "");
|
||||||
|
void prepareFinishInitialize();
|
||||||
void processAlarm(const QString& aAlarm);
|
void processAlarm(const QString& aAlarm);
|
||||||
void processPreviewData(const QString& aPreviewData);
|
void processPreviewData(const QString& aPreviewData);
|
||||||
void processGetSoftwareVersion(const QString& aSoftwareVersion);
|
void processGetSoftwareVersion(const QString& aSoftwareVersion);
|
||||||
@@ -119,6 +123,7 @@ private:
|
|||||||
private slots:
|
private slots:
|
||||||
//DMS
|
//DMS
|
||||||
void processReceiveDMSInfoResult(int aServerID, int aActionID, const QString& aContents);
|
void processReceiveDMSInfoResult(int aServerID, int aActionID, const QString& aContents);
|
||||||
|
|
||||||
//Recon
|
//Recon
|
||||||
void processReconCreateEmptyScan(bool aResult, const QString& aScanID, const QString& aMessage);
|
void processReconCreateEmptyScan(bool aResult, const QString& aScanID, const QString& aMessage);
|
||||||
void processReconCreateScan(bool aResult, const QString& aScanID, const QString& aMessage);
|
void processReconCreateScan(bool aResult, const QString& aScanID, const QString& aMessage);
|
||||||
@@ -131,12 +136,15 @@ signals:
|
|||||||
void responseGetDeviceStatus(const QString& aDeviceStatus);
|
void responseGetDeviceStatus(const QString& aDeviceStatus);
|
||||||
void responseGetDeviceTemperature(const QString& aDeviceTemperature);
|
void responseGetDeviceTemperature(const QString& aDeviceTemperature);
|
||||||
void responseFullScan(const QString& aResponse);
|
void responseFullScan(const QString& aResponse);
|
||||||
|
void responseCEScan(const QString& aResponse);
|
||||||
void responseGetScanProgress(const QString& aProgrese);
|
void responseGetScanProgress(const QString& aProgrese);
|
||||||
void responseStopScan(const QString& aResponse);
|
void responseStopScan(const QString& aResponse);
|
||||||
void responsePreviewScan(const QString& aResponse);
|
void responsePreviewScan(const QString& aResponse);
|
||||||
void responseGetSoftwareVersion(const QString& aSoftwareVersion);
|
void responseGetSoftwareVersion(const QString& aSoftwareVersion);
|
||||||
void responseTransfer(const QString& aResponse);
|
void responseTransfer(const QString& aResponse);
|
||||||
void responseGetTransferProgress(const QString& aProgress);
|
void responseGetTransferProgress(const QString& aProgress);
|
||||||
|
void responseGetCEStatus(const QString& aProgress);
|
||||||
|
void responsePumpControl(const QString aResponse);
|
||||||
//Recon
|
//Recon
|
||||||
void createEmptyScanToRecon(const QString& aScanID, const QString& aPath);
|
void createEmptyScanToRecon(const QString& aScanID, const QString& aPath);
|
||||||
void createScanToRecon(const QString& aScanID, const QString& aPatientID, const QString& aReferenceID, const QString& aPath);
|
void createScanToRecon(const QString& aScanID, const QString& aPatientID, const QString& aReferenceID, const QString& aPath);
|
||||||
@@ -144,6 +152,7 @@ signals:
|
|||||||
void updateReconStateFinished();
|
void updateReconStateFinished();
|
||||||
//GUI
|
//GUI
|
||||||
void initializeFinished();
|
void initializeFinished();
|
||||||
|
void initializeProgress(const QString& aProgress);
|
||||||
void transferStatusUpdated();
|
void transferStatusUpdated();
|
||||||
|
|
||||||
|
|
||||||
@@ -156,6 +165,7 @@ private:
|
|||||||
bool mIsScanning = false;
|
bool mIsScanning = false;
|
||||||
bool mIsTransfering = false;
|
bool mIsTransfering = false;
|
||||||
bool mIsPreviewing = false;
|
bool mIsPreviewing = false;
|
||||||
|
bool mIsInitializing = false;
|
||||||
|
|
||||||
QString mCurrentScanMeasurementID = "";
|
QString mCurrentScanMeasurementID = "";
|
||||||
QString mCurrentEmptyMeasurementID = "";
|
QString mCurrentEmptyMeasurementID = "";
|
||||||
@@ -176,6 +186,8 @@ private:
|
|||||||
DmsSyncAction* mStopScanAction = nullptr;
|
DmsSyncAction* mStopScanAction = nullptr;
|
||||||
DmsSyncAction* mTransferAction = nullptr;
|
DmsSyncAction* mTransferAction = nullptr;
|
||||||
DmsSyncAction* mGetTransferProgressAction = nullptr;
|
DmsSyncAction* mGetTransferProgressAction = nullptr;
|
||||||
|
DmsSyncAction* mGetCEStatusAction = nullptr;
|
||||||
|
DmsSyncAction* mPumpControlAction = nullptr;
|
||||||
|
|
||||||
DmsAsyncAction* mGetDeviceTemperatureAction = nullptr;
|
DmsAsyncAction* mGetDeviceTemperatureAction = nullptr;
|
||||||
DmsAsyncAction* mGetScanProgressAction = nullptr;
|
DmsAsyncAction* mGetScanProgressAction = nullptr;
|
||||||
|
|||||||
@@ -89,6 +89,7 @@ void DialogManager::requestLogin(QWidget* aParent)
|
|||||||
//Login 直接最顶层模态
|
//Login 直接最顶层模态
|
||||||
if (!mFunctionDialog){
|
if (!mFunctionDialog){
|
||||||
mFunctionDialog = new LoginDialog(aParent);
|
mFunctionDialog = new LoginDialog(aParent);
|
||||||
|
connect(mFunctionDialog, &LoginDialog::loginDialogShown, this, &DialogManager::loginDialogShown, Qt::QueuedConnection);
|
||||||
}
|
}
|
||||||
|
|
||||||
if(mFunctionDialog->isRunning())
|
if(mFunctionDialog->isRunning())
|
||||||
|
|||||||
@@ -33,6 +33,7 @@ struct DialogResult
|
|||||||
};
|
};
|
||||||
|
|
||||||
class DialogManager:public QObject {
|
class DialogManager:public QObject {
|
||||||
|
Q_OBJECT
|
||||||
public:
|
public:
|
||||||
static DialogManager *Default() {
|
static DialogManager *Default() {
|
||||||
static DialogManager manager;
|
static DialogManager manager;
|
||||||
@@ -82,6 +83,9 @@ private:
|
|||||||
void setTopWidget(QWidget* widget);
|
void setTopWidget(QWidget* widget);
|
||||||
void releaseTopWidget(QWidget* expectedTopWidget);
|
void releaseTopWidget(QWidget* expectedTopWidget);
|
||||||
|
|
||||||
|
signals:
|
||||||
|
void loginDialogShown();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
LoginDialog* mFunctionDialog;
|
LoginDialog* mFunctionDialog;
|
||||||
ScreenSaverWindow* mScreenSaverWindow;
|
ScreenSaverWindow* mScreenSaverWindow;
|
||||||
|
|||||||
@@ -115,8 +115,6 @@ int main(int argc, char* argv[])
|
|||||||
Timer.start(1000);
|
Timer.start(1000);
|
||||||
thread.start();
|
thread.start();
|
||||||
|
|
||||||
w.requestLogin();
|
|
||||||
|
|
||||||
DeviceManager::Default()->initDevice();
|
DeviceManager::Default()->initDevice();
|
||||||
|
|
||||||
ret = a.exec();
|
ret = a.exec();
|
||||||
@@ -126,9 +124,8 @@ int main(int argc, char* argv[])
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
w.showFullScreen();
|
w.showFullScreen();
|
||||||
w.requestLogin();
|
|
||||||
|
|
||||||
DeviceManager::Default()->initDevice();
|
DeviceManager::Default()->initDevice();
|
||||||
|
|
||||||
ret = a.exec();
|
ret = a.exec();
|
||||||
}
|
}
|
||||||
DeviceManager::Default()->close();
|
DeviceManager::Default()->close();
|
||||||
|
|||||||
30
src/windows/InitializeWidget.cpp
Normal file
30
src/windows/InitializeWidget.cpp
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
#include "InitializeWidget.h"
|
||||||
|
|
||||||
|
#include <QLabel>
|
||||||
|
#include <QVBoxLayout>
|
||||||
|
#include <QProgressBar>
|
||||||
|
|
||||||
|
InitializeWidget::InitializeWidget(QWidget* aParent)
|
||||||
|
: QWidget(aParent)
|
||||||
|
, mMessage(new QLabel(this))
|
||||||
|
, mProgressBar(new QProgressBar(this))
|
||||||
|
{
|
||||||
|
setContentsMargins(0, 0, 0, 0);
|
||||||
|
setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
|
||||||
|
|
||||||
|
QVBoxLayout* layout = new QVBoxLayout(this);
|
||||||
|
layout->addWidget(mMessage);
|
||||||
|
layout->addWidget(mProgressBar);
|
||||||
|
|
||||||
|
QPixmap pixmap = QPixmap("./cfgs/initialize.jpg");
|
||||||
|
mMessage->setPixmap(pixmap);
|
||||||
|
mMessage->setScaledContents(true);
|
||||||
|
mProgressBar->setTextVisible(true);
|
||||||
|
mProgressBar->setFormat("Initializing %p%");
|
||||||
|
mProgressBar->setAlignment(Qt::AlignCenter);
|
||||||
|
}
|
||||||
|
|
||||||
|
void InitializeWidget::setMessage(const QString& aMessage)
|
||||||
|
{
|
||||||
|
mProgressBar->setValue(aMessage.toInt());
|
||||||
|
}
|
||||||
24
src/windows/InitializeWidget.h
Normal file
24
src/windows/InitializeWidget.h
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
#ifndef INITIALIZEWIDGET_H
|
||||||
|
#define INITIALIZEWIDGET_H
|
||||||
|
|
||||||
|
#include <QWidget>
|
||||||
|
|
||||||
|
class QLabel;
|
||||||
|
class QProgressBar;
|
||||||
|
|
||||||
|
class InitializeWidget : public QWidget
|
||||||
|
{
|
||||||
|
Q_OBJECT
|
||||||
|
public:
|
||||||
|
InitializeWidget(QWidget* aParent);
|
||||||
|
|
||||||
|
public slots:
|
||||||
|
void setMessage(const QString& aMessage);
|
||||||
|
|
||||||
|
private:
|
||||||
|
QLabel* mMessage;
|
||||||
|
QProgressBar* mProgressBar;
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif // INITIALIZEWIDGET_H
|
||||||
@@ -152,4 +152,11 @@ bool LoginDialog::isRunning()
|
|||||||
return mIsRunning;
|
return mIsRunning;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void LoginDialog::showEvent(QShowEvent* event)
|
||||||
|
{
|
||||||
|
QDialog::showEvent(event);
|
||||||
|
emit loginDialogShown();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -24,8 +24,12 @@ public:
|
|||||||
int exec() override;
|
int exec() override;
|
||||||
bool isRunning();
|
bool isRunning();
|
||||||
|
|
||||||
|
protected:
|
||||||
|
void showEvent(QShowEvent *event) override;
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
void sigUserLoginSuccessful(const QString& aUserCode);
|
void sigUserLoginSuccessful(const QString& aUserCode);
|
||||||
|
void loginDialogShown();
|
||||||
|
|
||||||
private slots:
|
private slots:
|
||||||
void doLogin();
|
void doLogin();
|
||||||
|
|||||||
@@ -8,6 +8,7 @@
|
|||||||
#include <QGestureEvent>
|
#include <QGestureEvent>
|
||||||
#include <QDockWidget>
|
#include <QDockWidget>
|
||||||
|
|
||||||
|
#include "InitializeWidget.h"
|
||||||
#include "event/EventCenter.h"
|
#include "event/EventCenter.h"
|
||||||
#include "forms/TabFormWidget.h"
|
#include "forms/TabFormWidget.h"
|
||||||
#include "forms/recon/ReconFormWidget.h"
|
#include "forms/recon/ReconFormWidget.h"
|
||||||
@@ -29,6 +30,7 @@ MainWindow::MainWindow(QWidget* aParent)
|
|||||||
, mDebugConsoleWidget(nullptr)
|
, mDebugConsoleWidget(nullptr)
|
||||||
, mDebugMessageConsole(nullptr)
|
, mDebugMessageConsole(nullptr)
|
||||||
, mTabWidget(new QTabWidget(this))
|
, mTabWidget(new QTabWidget(this))
|
||||||
|
, mInitializWidget(new InitializeWidget(this))
|
||||||
, mAdminTabIndex(-1)
|
, mAdminTabIndex(-1)
|
||||||
, mThread(nullptr)
|
, mThread(nullptr)
|
||||||
, mIsDebugMode(false)
|
, mIsDebugMode(false)
|
||||||
@@ -46,25 +48,14 @@ MainWindow::MainWindow(QWidget* aParent)
|
|||||||
connect(DeviceManager::Default(), &DeviceManager::raiseGlobalInfo, this, &MainWindow::triggerInfo);
|
connect(DeviceManager::Default(), &DeviceManager::raiseGlobalInfo, this, &MainWindow::triggerInfo);
|
||||||
connect(EventCenter::Default(), &EventCenter::ReloadLanguage, this, &MainWindow::reloadLanguage);
|
connect(EventCenter::Default(), &EventCenter::ReloadLanguage, this, &MainWindow::reloadLanguage);
|
||||||
connect(EventCenter::Default(), &EventCenter::RequestScreenSaver, this, &MainWindow::requestScreenSaver);
|
connect(EventCenter::Default(), &EventCenter::RequestScreenSaver, this, &MainWindow::requestScreenSaver);
|
||||||
GUIErrorHandle::Default()->init();
|
connect(DeviceManager::Default(), &DeviceManager::initializeFinished, this, &MainWindow::requestLogin);
|
||||||
mThread = QThread::create([]() {
|
connect(DeviceManager::Default(), &DeviceManager::initializeProgress, mInitializWidget, &InitializeWidget::setMessage);
|
||||||
QThread::sleep(10);
|
connect(DialogManager::Default(), &DialogManager::loginDialogShown, this, [this]()
|
||||||
int f = 0x00100001;
|
|
||||||
for (int i = 0; i < 8; ++i)
|
|
||||||
{
|
{
|
||||||
QThread::sleep(10);
|
mInitializWidget->setVisible(false);
|
||||||
f = f << (i * 4);
|
mTabWidget->setVisible(true);
|
||||||
char* v = (char*)&f;
|
|
||||||
QString msg;
|
|
||||||
msg.append("w ");
|
|
||||||
msg.append(v[0]);
|
|
||||||
msg.append(v[1]);
|
|
||||||
msg.append(v[2]);
|
|
||||||
msg.append(v[3]);
|
|
||||||
EventCenter::Default()->triggerEvent(GUIErrorRaise, nullptr, (QObject*)&msg);
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
mThread->start();
|
GUIErrorHandle::Default()->init();
|
||||||
QApplication::setActiveWindow(centralWidget());
|
QApplication::setActiveWindow(centralWidget());
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -97,6 +88,9 @@ void MainWindow::initializeLayout()
|
|||||||
QWidget* topBarWidget = new TopBarWidget(this);
|
QWidget* topBarWidget = new TopBarWidget(this);
|
||||||
layout->addWidget(topBarWidget);
|
layout->addWidget(topBarWidget);
|
||||||
layout->addWidget(mTabWidget);
|
layout->addWidget(mTabWidget);
|
||||||
|
layout->addWidget(mInitializWidget);
|
||||||
|
|
||||||
|
mTabWidget->setVisible(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
void MainWindow::initializeTabWidget()
|
void MainWindow::initializeTabWidget()
|
||||||
|
|||||||
@@ -18,6 +18,7 @@ class QGestureEvent;
|
|||||||
class QSwipeGesture;
|
class QSwipeGesture;
|
||||||
class QPanGesture;
|
class QPanGesture;
|
||||||
class QDockWidget;
|
class QDockWidget;
|
||||||
|
class InitializeWidget;
|
||||||
|
|
||||||
class MainWindow : public QMainWindow
|
class MainWindow : public QMainWindow
|
||||||
{
|
{
|
||||||
@@ -29,13 +30,13 @@ public:
|
|||||||
static void QMessageOutput(QtMsgType aType, const QMessageLogContext& aContext, const QString& aMessage);
|
static void QMessageOutput(QtMsgType aType, const QMessageLogContext& aContext, const QString& aMessage);
|
||||||
void centerWidgetHide();
|
void centerWidgetHide();
|
||||||
void centerWidgetShow();
|
void centerWidgetShow();
|
||||||
void requestLogin();
|
|
||||||
void requestScreenSaver();
|
void requestScreenSaver();
|
||||||
QTextEdit* getEdit();
|
QTextEdit* getEdit();
|
||||||
void debugConsoleOn();
|
void debugConsoleOn();
|
||||||
void grabGestures(const QList<Qt::GestureType>& aGestures);
|
void grabGestures(const QList<Qt::GestureType>& aGestures);
|
||||||
|
|
||||||
public slots:
|
public slots:
|
||||||
|
void requestLogin();
|
||||||
void triggerError(const QString&);
|
void triggerError(const QString&);
|
||||||
void triggerInfo(const QPair<QString,unsigned int>&);
|
void triggerInfo(const QPair<QString,unsigned int>&);
|
||||||
|
|
||||||
@@ -58,6 +59,7 @@ private:
|
|||||||
QDockWidget* mDebugConsoleWidget;
|
QDockWidget* mDebugConsoleWidget;
|
||||||
QTextEdit* mDebugMessageConsole;
|
QTextEdit* mDebugMessageConsole;
|
||||||
QTabWidget* mTabWidget;
|
QTabWidget* mTabWidget;
|
||||||
|
InitializeWidget* mInitializWidget;
|
||||||
int mAdminTabIndex;
|
int mAdminTabIndex;
|
||||||
QThread* mThread;
|
QThread* mThread;
|
||||||
bool mIsDebugMode;
|
bool mIsDebugMode;
|
||||||
|
|||||||
Reference in New Issue
Block a user