Files
beerlog/services/modelsregister.cpp

24 lines
505 B
C++

#include "modelsregister.h"
#include "models/basemodel.h"
void ModelsRegister::registerModel(BaseModel *model)
{
Q_ASSERT(model != nullptr);
model->setParent(&instance()->m_parent);
instance()->m_models[model->entity()] = model;
}
BaseModel *ModelsRegister::model(const QString &name)
{
Q_ASSERT(!name.isEmpty());
if (!instance()->m_models.contains(name)) {
registerModel(new BaseModel(name, &instance()->m_parent));
}
return instance()->m_models.value(name);
}