2025-11-14 19:31:09 +08:00
|
|
|
#ifndef BASEDRAWINGPANEL_H
|
|
|
|
|
#define BASEDRAWINGPANEL_H
|
|
|
|
|
|
|
|
|
|
/****************工程模和运行时panel的基类*****************/
|
|
|
|
|
|
|
|
|
|
#include <QWidget>
|
2025-11-21 19:22:41 +08:00
|
|
|
#include <QHBoxLayout>
|
|
|
|
|
#include <QSplitter>
|
2025-11-14 19:31:09 +08:00
|
|
|
#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; //组态图拓扑对象
|
2025-11-21 19:22:41 +08:00
|
|
|
QVBoxLayout* _verticalLayout;
|
|
|
|
|
QHBoxLayout* _horizontalLayout;
|
|
|
|
|
QSplitter* _hSplitter;
|
2025-11-14 19:31:09 +08:00
|
|
|
};
|
|
|
|
|
|
|
|
|
|
#endif
|