#pragma once #include "iPlotCurveWxT.h" #include "mGuiPlot_global.h" class iGuiPlot; // 该类是iGuiPlot的Cmd命令分发处理 class M_GUI_PLOT_EXPORT iGuiPlotCmdHelper : public QObject { Q_OBJECT public: explicit iGuiPlotCmdHelper(iGuiPlot* p); ~iGuiPlotCmdHelper(); //protected: virtual void initToolBar(QToolBar* pToolBar, QString sType); virtual bool runAction(QString sAction); virtual void fuzzyCheckStates(QAction* pAction, bool& bRepeatedHit); ActionCheckMode getAcmOf(QAction* pAction); virtual void finalWithAcm(bool bToNone, bool bChangeToolBar = false); public slots: // Toolbar按钮消息响应 virtual void slotBtnTriggered(); virtual void slotLoadGraph(); virtual void slotSaveGraph(); virtual void slotSaveTemplate(); virtual void slotHelp(); protected: iGuiPlot* m_pGuiPlot; // 动态按钮 QStringList m_listBtnNames; QStringList m_listBtnIcons; QStringList m_listBtnTips; QToolBar* m_pToolBar; ActionCheckMode m_oTempAcm; QAction* m_pTempAction; friend class iGuiPlot; };