177 lines
4.2 KiB
C++
177 lines
4.2 KiB
C++
#include <QUuid>
|
|
#include "basePropertyManager.h"
|
|
#include "baseProperty.h"
|
|
|
|
BasePropertyManager& BasePropertyManager::instance()
|
|
{
|
|
//采用静态局部变量的方式,静态局部变量的初始化是在第一次访问时,以后的调用不会多次初始化,并且生命周期和程序一致
|
|
static BasePropertyManager instance;
|
|
return instance;
|
|
}
|
|
|
|
BasePropertyManager::BasePropertyManager(QObject *parent)
|
|
: QObject(parent)
|
|
{
|
|
|
|
}
|
|
|
|
BasePropertyManager::~BasePropertyManager()
|
|
{
|
|
qDeleteAll(m_entityData);
|
|
qDeleteAll(m_bayData);
|
|
}
|
|
|
|
void BasePropertyManager::insertEntityData(QUuid uid,BaseProperty* p)
|
|
{
|
|
if(!m_entityData.contains(uid))
|
|
m_entityData.insert(uid,p);
|
|
}
|
|
|
|
BaseProperty* BasePropertyManager::findEntityData(QUuid uid)
|
|
{
|
|
return m_entityData.value(uid,nullptr);
|
|
}
|
|
|
|
void BasePropertyManager::deleteEntityData(QUuid uid)
|
|
{
|
|
BaseProperty* pData = m_entityData.value(uid,nullptr);
|
|
if(pData)
|
|
delete pData;
|
|
}
|
|
|
|
QMap<QUuid,BaseProperty*> BasePropertyManager::getEntityData() const
|
|
{
|
|
return m_entityData;
|
|
}
|
|
|
|
void BasePropertyManager::onDataDelete(QString uuid)
|
|
{
|
|
|
|
}
|
|
|
|
/***************************基模数据******************************/
|
|
void BasePropertyManager::insertBaseEntityData(QUuid uid,BaseModelProperty* p)
|
|
{
|
|
if(!m_baseEntityData.contains(uid))
|
|
m_baseEntityData.insert(uid,p);
|
|
}
|
|
BaseModelProperty* BasePropertyManager::findBaseEntityData(QUuid uid)
|
|
{
|
|
return m_baseEntityData.value(uid,nullptr);
|
|
}
|
|
|
|
void BasePropertyManager::deleteBaseEntityData(QUuid uid)
|
|
{
|
|
BaseModelProperty* pData = m_baseEntityData.value(uid,nullptr);
|
|
if(pData)
|
|
delete pData;
|
|
}
|
|
QMap<QUuid,BaseModelProperty*> BasePropertyManager::getBaseEntityData() const
|
|
{
|
|
return m_baseEntityData;
|
|
}
|
|
|
|
/*****************************基模间隔数据*******************************/
|
|
void BasePropertyManager::insertBaseBayData(QUuid id,BayProperty* p)
|
|
{
|
|
if(!m_baseBayData.contains(id))
|
|
m_baseBayData.insert(id,p);
|
|
}
|
|
|
|
BayProperty* BasePropertyManager::findBaseBayData(QUuid id)
|
|
{
|
|
return m_baseBayData.value(id,nullptr);
|
|
}
|
|
|
|
void BasePropertyManager::deleteBaseBayData(QUuid id)
|
|
{
|
|
BayProperty* pData = m_baseBayData.value(id,nullptr);
|
|
if(pData)
|
|
delete pData;
|
|
}
|
|
|
|
QMap<QUuid,BayProperty*> BasePropertyManager::getBaseBayData() const
|
|
{
|
|
return m_baseBayData;
|
|
}
|
|
|
|
/*****************************间隔数据*******************************/
|
|
void BasePropertyManager::insertBayData(QUuid id,BayProperty* p)
|
|
{
|
|
if(!m_bayData.contains(id))
|
|
m_bayData.insert(id,p);
|
|
}
|
|
|
|
BayProperty* BasePropertyManager::findBayData(QUuid id)
|
|
{
|
|
return m_bayData.value(id,nullptr);
|
|
}
|
|
|
|
void BasePropertyManager::deleteBayData(QUuid id)
|
|
{
|
|
BayProperty* pData = m_bayData.value(id,nullptr);
|
|
if(pData)
|
|
delete pData;
|
|
}
|
|
|
|
QMap<QUuid,BayProperty*> BasePropertyManager::getBayData() const
|
|
{
|
|
return m_bayData;
|
|
}
|
|
|
|
/*****************************临时预览数据*******************************/
|
|
void BasePropertyManager::insertTempEditorData(QUuid id,DiagramEditorItemProperty* p)
|
|
{
|
|
if(!m_editorTempData.contains(id))
|
|
m_editorTempData.insert(id,p);
|
|
}
|
|
|
|
DiagramEditorItemProperty* BasePropertyManager::findTempEditorData(QUuid id)
|
|
{
|
|
return m_editorTempData.value(id,nullptr);
|
|
}
|
|
|
|
void BasePropertyManager::deleteTempEditorData(QUuid id)
|
|
{
|
|
DiagramEditorItemProperty* pData = m_editorTempData.value(id,nullptr);
|
|
if(pData)
|
|
delete pData;
|
|
}
|
|
|
|
QMap<QUuid,DiagramEditorItemProperty*> BasePropertyManager::getTempEditorData() const
|
|
{
|
|
return m_editorTempData;
|
|
}
|
|
|
|
/*****************************预览数据*******************************/
|
|
void BasePropertyManager::insertEditorData(QUuid id,DiagramEditorItemProperty* p)
|
|
{
|
|
if(!m_editorData.contains(id))
|
|
m_editorData.insert(id,p);
|
|
}
|
|
|
|
DiagramEditorItemProperty* BasePropertyManager::findEditorData(QUuid id)
|
|
{
|
|
return m_editorData.value(id,nullptr);
|
|
}
|
|
|
|
void BasePropertyManager::deleteEditorData(QUuid id)
|
|
{
|
|
DiagramEditorItemProperty* pData = m_editorData.value(id,nullptr);
|
|
if(pData)
|
|
delete pData;
|
|
}
|
|
|
|
QMap<QUuid,DiagramEditorItemProperty*> BasePropertyManager::getEditorData() const
|
|
{
|
|
return m_editorData;
|
|
}
|
|
|
|
void BasePropertyManager::clearEditorData()
|
|
{
|
|
for(auto &pPro:m_editorData){
|
|
delete pPro;
|
|
}
|
|
m_editorData.clear();
|
|
}
|