SinglePage erweitert
This commit is contained in:
61
DaSaSo.ViewModel/Factories/MainWindowViewModelFactory.cs
Normal file
61
DaSaSo.ViewModel/Factories/MainWindowViewModelFactory.cs
Normal file
@@ -0,0 +1,61 @@
|
||||
using DaSaSo.Domain.Model;
|
||||
using DaSaSo.EntityFramework;
|
||||
using DaSaSo.EntityFramework.Services;
|
||||
using DaSaSo.ViewModel.Enums;
|
||||
using DaSaSo.ViewModel.Interface;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace DaSaSo.ViewModel.Factories
|
||||
{
|
||||
public class MainWindowViewModelFactory : IViewModelAbstractFactory
|
||||
{
|
||||
private CreateViewModel<HomeViewModel> _createHomeViewModel;
|
||||
private CreateViewModel<ClientListViewModel> _createClientListViewModel;
|
||||
private CreateViewModel<ClientEditViewModel> _createClientEditViewModel;
|
||||
private CreateViewModel<ProjectListViewModel> _createProjektListViewModel;
|
||||
private CreateViewModel<BuildingsiteListViewModel> _createBuildingsiteListViewModel;
|
||||
private CreateViewModel<SewerObjectListViewModel> _createSewerObjectListViewModel;
|
||||
|
||||
public MainWindowViewModelFactory(
|
||||
CreateViewModel<HomeViewModel> createHomeViewModel,
|
||||
CreateViewModel<ClientListViewModel> createClientListViewModel,
|
||||
CreateViewModel<ClientEditViewModel> createClientEditViewModel,
|
||||
CreateViewModel<ProjectListViewModel> createProjektListViewModel,
|
||||
CreateViewModel<BuildingsiteListViewModel> createBuildingsiteListViewModel, CreateViewModel<SewerObjectListViewModel> createSewerObjectListViewModel)
|
||||
{
|
||||
_createHomeViewModel = createHomeViewModel;
|
||||
_createClientListViewModel = createClientListViewModel;
|
||||
_createClientEditViewModel = createClientEditViewModel;
|
||||
_createProjektListViewModel = createProjektListViewModel;
|
||||
_createBuildingsiteListViewModel = createBuildingsiteListViewModel;
|
||||
_createSewerObjectListViewModel = createSewerObjectListViewModel;
|
||||
}
|
||||
|
||||
public BaseViewModel CreateViewModel(EMainWindowViewType viewType)
|
||||
{
|
||||
|
||||
switch (viewType)
|
||||
{
|
||||
case EMainWindowViewType.Home:
|
||||
return _createHomeViewModel();
|
||||
case EMainWindowViewType.Clients:
|
||||
return _createClientListViewModel();
|
||||
case EMainWindowViewType.ClientEdit:
|
||||
return _createClientEditViewModel();
|
||||
case EMainWindowViewType.Projects:
|
||||
return _createProjektListViewModel();
|
||||
case EMainWindowViewType.Buildingsites:
|
||||
return _createBuildingsiteListViewModel();
|
||||
case EMainWindowViewType.SewerObjects:
|
||||
return _createSewerObjectListViewModel();
|
||||
|
||||
default:
|
||||
throw new ArgumentException("The Viewtype does not have a ViewModel.", "viewType");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user