Files
GUI/src/windows/MainWindow.h
2025-05-28 14:33:40 +08:00

80 lines
1.8 KiB
C++

#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include <QTimer>
#include "utilities/StdOutRedirector.h"
#include "json/cJSON.h"
namespace Ui
{
class MainWindow;
}
class GUIMessageDialog;
class QTabWidget;
class QGestureEvent;
class QSwipeGesture;
class QPanGesture;
class QDockWidget;
class InitializeWidget;
class ShutdownWidget;
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget* aParent = nullptr);
~MainWindow() override;
void centerWidgetHide();
void centerWidgetShow();
void requestScreenSaver();
//void grabGestures(const QList<Qt::GestureType>& aGestures);
public slots:
void requestLogin();
void triggerError(const QString&);
void triggerInfo(const QPair<QString,unsigned int>&);
protected:
void changeEvent(QEvent* aEvent) override;
// bool event(QEvent* aEvent) override;
void keyPressEvent(QKeyEvent *event) override;
private:
void initializeTabWidget();
void initializeLayout();
// bool gestureEvent(QGestureEvent* aGestureEvent);
// void swipeTriggered(QSwipeGesture* aSwipeGesture);
// void panTriggered(QPanGesture* aPanGesture);
void loadStyleSheet(const QString& aSheetName);
void showShutdownWidget();
void processShutdownDmsFailed();
void checkEmptyScanValidity();
void enableAllTabWidget();
void handleEmptyScanDataCorrupted();
private:
Ui::MainWindow* mUI;
QDockWidget* mDebugConsoleWidget;
QTabWidget* mTabWidget;
InitializeWidget* mInitializWidget;
ShutdownWidget* mShutdownWidget;
QWidget* mScanPage;
QWidget* mTopbarWidget;
bool mTabInited;
void switchToScanTab(QObject* sender, QObject* data);
void reloadLanguage() ;
void resetRoleLayout();
};
#endif // MAINWINDOW_H