modelsregister.cpp 505 B

1234567891011121314151617181920212223
  1. #include "modelsregister.h"
  2. #include "models/basemodel.h"
  3. void ModelsRegister::registerModel(BaseModel *model)
  4. {
  5. Q_ASSERT(model != nullptr);
  6. model->setParent(&instance()->m_parent);
  7. instance()->m_models[model->entity()] = model;
  8. }
  9. BaseModel *ModelsRegister::model(const QString &name)
  10. {
  11. Q_ASSERT(!name.isEmpty());
  12. if (!instance()->m_models.contains(name)) {
  13. registerModel(new BaseModel(name, &instance()->m_parent));
  14. }
  15. return instance()->m_models.value(name);
  16. }