#pragma once #include #include #include #include "chartPlot/ChartXMLMgr.h" namespace Ui { class MainWindow; } class DataPanelManager; class MainWindow : public QMainWindow { Q_OBJECT public: MainWindow(QWidget* parent = 0); ~MainWindow() override; class PropertyBrowser* GetPropertyBrowser() const { return propertyBrowser_; } class ModelBrowser* GetModelBrowser() const { return modelBrowser_; } class OsgWidget* GetViewWidget() const { return qtOsgViewWidget_; } class FitCurveDialog* GetFitCurveDlg() const { return fitCurveDlg_; } class FitCurveDialog* GetFitYLgCurveDlg() const { return fitYLgCurveDlg_; } class SurfaceDialog* GetSurfaceDlg() const { return surfaceDlg_; } DataPanelManager* GetDataPanelManager() const { return dataPanelManager_; } public slots: void slotResetWorkSpace(); private: void InitUI(); void UninitUI(); void InitChartLayout(); QDockWidget *InitChart(QVariantMap mapChart, QMainWindow* mainWindow); QDockWidget *InitCurveChart(QVariantMap mapChart, QMainWindow* mainWindow); private: Ui::MainWindow* ui; class ModelBrowser* modelBrowser_{ nullptr }; class PropertyBrowser* propertyBrowser_{ nullptr }; class QWebEngineView* webEngineView_{ nullptr }; class OsgWidget* qtOsgViewWidget_{ nullptr }; class FitCurveDialog* fitCurveDlg_{ nullptr }; class FitCurveDialog* fitYLgCurveDlg_{ nullptr }; class SurfaceDialog* surfaceDlg_{ nullptr }; class TargetListWgt* targetUITable_{ nullptr }; class QTabWidget* tabWidget_{ nullptr }; class SignalIndicatorLampUI* signalIndicatorLampUI_{ nullptr }; class CodeEdtUI* matlabFileDlg_{ nullptr }; class AddParamSetting* addParamDlg_{ nullptr }; DataPanelManager* dataPanelManager_{ nullptr }; QMap m_mapDockWidget; ChartXMLMgr m_mgrChart; QMap m_mapChartWidget; };