#ifndef BASEDRAWINGPANEL_H #define BASEDRAWINGPANEL_H /****************工程模和运行时panel的基类*****************/ #include #include "global.h" #include "designerScene.h" class DesignerView; class DesignerScene; class SelectorManager; class GraphicsItemGroup; class StatusBar; class PowerEntity; class ProjectDiagramNameInput; class BayManagerDlg; class BaseDrawingPanel : public QWidget { Q_OBJECT public: BaseDrawingPanel(PowerEntity* pEntity,QWidget *parent = nullptr,DiagramMode mode = DM_edit); ~BaseDrawingPanel(); QGraphicsScene* getQGraphicsScene(); DesignerScene* getDesignerScene(); SelectorManager* selectorManager() const; //返回manager指针 void setPageName(QString s){_name = s;_pModel->setPageName(_name);} //设置当前page名称 QString pageName(){return _name;} FixedPortsModel* getModelController() const {return _pModel;} DiagramMode getMode(){return _mode;} virtual void loadNodes(QJsonObject obj) {}; //加载图元信息 virtual void saveNodes(int pageId) {}; //保存到数据库 DesignerScene* getScene() {return m_pGraphicsScene;} DesignerView* getView() {return m_pGraphicsView;} signals: void panelDelete(const QString&,int); protected: virtual void closeEvent(QCloseEvent *closeEvent) {}; protected: DesignerView* m_pGraphicsView; DesignerScene* m_pGraphicsScene; SelectorManager* m_pSelectorManager; StatusBar* m_pStatusBar; FixedPortsModel* _pModel; DiagramMode _mode; QString _name; PowerEntity* _pEntity; //组态图拓扑对象 }; #endif