DiagramDesigner/diagramCavas/include/diagramCavas.h

71 lines
2.1 KiB
C++
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#ifndef DIAGRAMCAVAS_H
#define DIAGRAMCAVAS_H
#include <QMdiArea>
#include "global.h"
#include "export.hpp"
QT_BEGIN_NAMESPACE
namespace Ui { class diagramCavas; }
QT_END_NAMESPACE
class DrawingPanel;
class PowerEntity;
class DiagramEditorWizard;
class EditPanel;
class GraphicsBaseModelItem;
class DIAGRAM_DESIGNER_PUBLIC DiagramCavas : public QMdiArea
{
Q_OBJECT
public:
DiagramCavas(QWidget *parent = nullptr);
~DiagramCavas();
DrawingPanel* getPanel(QString);
public:
void initial();
public slots:
void onSignal_addDrawingPanel(PowerEntity* p,DiagramMode = DM_edit);
void onSignal_addGraphicsItem(modelStateInfo&);
void onSignal_addPage();
void onSignal_savePage();
void onSignal_loadPage(PowerEntity* p);
void runPage(const QString); //运行时
void onSignal_runPage();
void onSignal_deletePage();
void onSignal_activatePage(const QString& name);
void onSignal_panelDelete(const QString& name);
void onSignal_createEntity(EntityInfo);
void onSignal_changeEntity(EntityInfo);
void onSignal_deleteEntity(EntityInfo);
void onSignal_selectEntity(EntityInfo);
void onSignal_createDiagram(DiagramInfo);
void onSignal_changeDiagram(DiagramInfo);
void onSignal_deleteDiagram(DiagramInfo);
void onSignal_selectDiagram(DiagramInfo);
void onCreateTestBaseModelDiagram(); //生成测试基模图
/******************************生成组态***********************************/
void onSignal_createEditPanel(QString);
EditPanel* onSignal_addEditPanel(QString);
void onSignal_addEditWizard(QString);
void onSignal_wizardFinished(QString,QMap<QUuid,GraphicsBaseModelItem*>);
/*********************************间隔**************************************/
void onSignl_openCurrentBay();
private:
void removePanel(PowerEntity*);
void autoSetModelName(GraphicsBaseModelItem*); //如果此页的工程模已被设置将projectName更新到item
private:
QMap<QString,QPair<DrawingPanel*,QMdiSubWindow*>> m_mapDrawPanel;
int _pageIndex;
QString _curPage;
DiagramEditorWizard* _pEditorWizard;
};
#endif