EnergySpectrumAnalyer/src/MainWindow.h

66 lines
1.4 KiB
C
Raw Normal View History

2026-03-02 11:07:51 +08:00
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include <QMutex>
QT_BEGIN_NAMESPACE
namespace Ui {
class MainWindow;
}
namespace ads {
class CDockManager;
class CDockAreaWidget;
class CDockWidget;
}
class QPlainTextEdit;
namespace MeasureAnalysisTree {
class TreeWidget;
}
QT_END_NAMESPACE
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
enum OutputInfoType {
eInfo,
eWarning,
eError,
eDebug
};
Q_ENUM(OutputInfoType)
public slots:
static void OutputInfo(OutputInfoType out_type, const QString& ouput_info);
static void ShowStatusBarMsg(const QString& msg);
private:
static QMutex _s_mutex_info_output;
static QPlainTextEdit* _s_plain_edit_info_output;
static QStatusBar* _s_status_bar;
public:
MainWindow(QWidget *parent = nullptr);
~MainWindow();
private:
void initMainWindow();
void initAction();
void applyStyleSheet();
void AddProjectModelToTreeWidget();
protected:
virtual void closeEvent(QCloseEvent* event) override;
private:
Ui::MainWindow *ui;
ads::CDockManager* _dock_manager { nullptr };
ads::CDockAreaWidget* _central_dock_area { nullptr };
QAction* _action_central_dock_widget { nullptr };
MeasureAnalysisTree::TreeWidget* _tree_measure_analysis { nullptr };
QMenu* _menu_view_data_table_list { nullptr };
QMenu* _menu_view_analysis_view_list { nullptr };
};
#endif // MAINWINDOW_H