Refactoring the new dialog manager module and fixed keyboard problem in Linux touch panel.

This commit is contained in:
sunwen
2022-08-10 15:28:59 +08:00
parent 9b96af094b
commit 30df175f22
28 changed files with 485 additions and 303 deletions

View File

@@ -14,7 +14,6 @@
#include "forms/scan/ScanFormWidget.h"
#include "forms/settings/SettingFormWidget.h"
#include "forms/TopBarWidget.h"
#include "dialogs/GUIMessageDialog.h"
#include "dialogs/DialogManager.h"
#include "device/DeviceManager.h"
#include "errorhandle/GUIErrorHandle.h"
@@ -27,7 +26,6 @@ MainWindow::MainWindow(QWidget* aParent)
: QMainWindow(aParent)
, mUI(new Ui::MainWindow)
, mDebugConsoleWidget(nullptr)
, mMessageDialog(nullptr)
, mDebugMessageConsole(nullptr)
, mTabWidget(new QTabWidget(this))
, mAdminTabIndex(-1)
@@ -45,6 +43,7 @@ MainWindow::MainWindow(QWidget* aParent)
connect(EventCenter::Default(), &EventCenter::RequestLogin, this,&MainWindow::requestLogin);
connect(EventCenter::Default(), &EventCenter::LoginRoleChanged, this,&MainWindow::resetRoleLayout);
connect(DeviceManager::Default(), &DeviceManager::raiseGlobalError, this, &MainWindow::triggerError);
connect(DeviceManager::Default(), &DeviceManager::raiseGlobalInfo, this, &MainWindow::triggerInfo);
connect(EventCenter::Default(), &EventCenter::ReloadLanguage, this, &MainWindow::reloadLanguage);
GUIErrorHandle::Default()->init();
mThread = QThread::create([]() {
@@ -138,6 +137,12 @@ void MainWindow::triggerError(const QString& aMessage)
EventCenter::Default()->triggerEvent(GUIErrorRaise, nullptr, (QObject*)&message);
}
void MainWindow::triggerInfo(const QPair<QString, unsigned int>& aInfoData)
{
QPair<QString, unsigned int> infoData = aInfoData;
EventCenter::Default()->triggerEvent(DeviceInfoRaise, nullptr, (QObject*)&infoData);
}
//------events-----------------------------------------------------------------
//! [event handler]
@@ -267,7 +272,7 @@ void MainWindow::swipeTriggered(QSwipeGesture* aSwipeGesture)
void MainWindow::requestLogin()
{
DialogManager::Default()->requestLogin();
DialogManager::Default()->requestLogin(this);
QApplication::setActiveWindow(centralWidget());
}