15 #ifndef BORNAGAIN_MVVM_VIEWMODEL_MVVM_FACTORIES_VIEWMODELFACTORY_H
16 #define BORNAGAIN_MVVM_VIEWMODEL_MVVM_FACTORIES_VIEWMODELFACTORY_H
20 #include "mvvm/viewmodel_export.h"
54 template <
typename ChildrenStrategy,
typename RowStrategy>
57 auto controller = CreateController<ChildrenStrategy, RowStrategy>(session_model,
nullptr);
58 return std::make_unique<ViewModel>(std::move(controller));
63 template <
typename ViewModelController>
66 auto controller = std::make_unique<ViewModelController>(session_model);
67 return std::make_unique<ViewModel>(std::move(controller));
Main class to hold hierarchy of SessionItem objects.
MVVM_VIEWMODEL_EXPORT std::unique_ptr< ViewModel > CreatePropertyTableViewModel(SessionModel *model)
Creates view model to represent SessionModel for Qt views.
MVVM_VIEWMODEL_EXPORT std::unique_ptr< ViewModel > CreatePropertyFlatViewModel(SessionModel *model)
Creates view model to represent SessionModel for Qt views.
MVVM_VIEWMODEL_EXPORT std::unique_ptr< ViewModel > CreateDefaultViewModel(SessionModel *model)
Creates view model to represent SessionModel for Qt views.
MVVM_VIEWMODEL_EXPORT std::unique_ptr< ViewModel > CreatePropertyViewModel(SessionModel *model)
Creates view model to represent SessionModel for Qt views.
std::unique_ptr< ViewModel > CreateViewModel(SessionModel *session_model)
Creates view model to represent SessionModel for Qt views.
MVVM_VIEWMODEL_EXPORT std::unique_ptr< ViewModel > CreateTopItemsViewModel(SessionModel *model)
Creates view model to represent SessionModel for Qt views.
materialitems.h Collection of materials to populate MaterialModel.