DiagramDesigner/diagramUtils/include/basePropertyManager.h

35 lines
936 B
C
Raw Normal View History

2025-05-23 10:30:52 +08:00
#ifndef BASEPROPERTYMANAGER_H
#define BASEPROPERTYMANAGER_H
#include <QObject>
#include <QMap>
#include "export.hpp"
/****元件属性数据管理类*****/
class BaseProperty;
class DIAGRAM_DESIGNER_PUBLIC BasePropertyManager : public QObject
{
Q_OBJECT
public:
explicit BasePropertyManager(QObject *parent = nullptr);
~BasePropertyManager();
static BasePropertyManager& instance();
//===========================元件实时数据================================
void insertEntityData(QUuid,BaseProperty*);
BaseProperty* findEntityData(QUuid);
void deleteEntityData(QUuid);
QMap<QUuid,BaseProperty*> getEntityData() const;
signals:
void dataCreated(QString uuid);
void dataChanged(QString uuid);
public slots:
void onDataDelete(QString uuid);
private:
QMap<QUuid,BaseProperty*> m_entityData; //每个实例化元件的唯一数据
};
#endif // BASEPROPERTYMANAGER_H