Add shutdown widget.

This commit is contained in:
sunwen
2023-09-11 16:29:30 +08:00
parent ae1b063b72
commit 2bbef648f5
10 changed files with 140 additions and 7 deletions

View File

@@ -9,6 +9,7 @@
#include <QDockWidget>
#include "InitializeWidget.h"
#include "ShutdownWidget.h"
#include "event/EventCenter.h"
#include "forms/TabFormWidget.h"
#include "forms/recon/ReconFormWidget.h"
@@ -31,6 +32,7 @@ MainWindow::MainWindow(QWidget* aParent)
, mDebugMessageConsole(nullptr)
, mTabWidget(new QTabWidget(this))
, mInitializWidget(new InitializeWidget(this))
, mShutdownWidget(new ShutdownWidget(nullptr))
, mAdminTabIndex(-1)
, mThread(nullptr)
, mIsDebugMode(false)
@@ -50,6 +52,8 @@ MainWindow::MainWindow(QWidget* aParent)
connect(EventCenter::Default(), &EventCenter::RequestScreenSaver, this, &MainWindow::requestScreenSaver);
connect(DeviceManager::Default(), &DeviceManager::initializeFinished, this, &MainWindow::requestLogin);
connect(DeviceManager::Default(), &DeviceManager::initializeProgress, mInitializWidget, &InitializeWidget::setMessage);
connect(DeviceManager::Default(), &DeviceManager::shutdownDmsSended, this, &MainWindow::showShutdownWidget);
connect(DeviceManager::Default(), &DeviceManager::shutdownDmsFailed, this, &MainWindow::processShutdownDmsFailed);
connect(DialogManager::Default(), &DialogManager::loginDialogShown, this, [this]()
{
mInitializWidget->setVisible(false);
@@ -64,6 +68,7 @@ MainWindow::~MainWindow()
mThread->terminate();
mThread->deleteLater();
delete mUI;
delete mShutdownWidget;
}
//------Layout-----------------------------------------------------------------
@@ -91,6 +96,7 @@ void MainWindow::initializeLayout()
layout->addWidget(mInitializWidget);
mTabWidget->setVisible(false);
mShutdownWidget->setVisible(false);
}
void MainWindow::initializeTabWidget()
@@ -114,6 +120,17 @@ void MainWindow::reloadLanguage() {
mTabWidget->setTabText(3, tr("Settings"));
}
void MainWindow::showShutdownWidget()
{
mShutdownWidget->setVisible(true);
}
void MainWindow::processShutdownDmsFailed()
{
mShutdownWidget->setVisible(false);
triggerError(tr("Shut down failed, please push emergency button to shutdown."));
}
void MainWindow::switchToScanTab() { mTabWidget->setCurrentIndex(1); }
void MainWindow::centerWidgetHide()