public SaveTaskDialogViewModel(TimeEntry timeEntry, ITimeEntryTypeRepository timeEntryTypeRepository, ITimeEntryRepository timeEntryRepository, ITaskSearchService taskSearchService, IUserSession userSession, IAppSettings appSettings, IUserWlanSettingsService userWlanSettingsService, bool isEditing, ITaskRepository taskRepository) { _timeEntry = timeEntry; _timeEntryTypeRepository = timeEntryTypeRepository; _timeEntryRepository = timeEntryRepository; _appSettings = appSettings; _userWlanSettingsService = userWlanSettingsService; _isEditing = isEditing; SaveTask = new DelegateCommand <object>(ExecuteSaveTask, CanSaveTask); executeSelectTaskCommand = new DelegateCommand <Task>(ExecuteSelectTask); taskStoppedCommand = new DelegateCommand <object>(TaskStopped); CloseCommand = new DelegateCommand <object>(ExecuteClose); TaskCommands.TaskIdle.RegisterCommand(taskStoppedCommand); TaskCommands.TaskSelectCompleted.RegisterCommand(executeSelectTaskCommand); SelectTaskViewModel = new SelectTaskViewModel(taskSearchService, userSession, appSettings, taskRepository); LoadTimeEntryTypes(); _isInSelectionMode = _timeEntry.Task == null; MinSelectedDate = appSettings.MinTimeEntryDate; }
public SelectTaskViewModel(ITaskSearchService taskSearchService, IUserSession userSession, IAppSettings appSettings, ITaskRepository taskRepository) { _taskSearchService = taskSearchService; SwitchModeCommand = new DelegateCommand <object>(ExecuteSwitchMode); CreateNewCommand = new DelegateCommand <object>(ExecuteCreateNew, CanCreateNew); SelectCommand = new DelegateCommand <object>(ExecuteSelectTask, CanSelectTask); CancelCommand = new DelegateCommand <object>(ExecuteCancel); SearchTasksCommand = new DelegateCommand <string>(SearchTasksCommandExecute); SearchServerCommand = new DelegateCommand <object>(SearchServerCommandExecute); _getLastTaskFinishedCommand = new DelegateCommand(() => SearchTasksCommandExecute(null)); ApplicationCommands.GetLatestTasksFinished.RegisterCommand(_getLastTaskFinishedCommand); IsInNewTaskMode = false; _userSession = userSession; _appSettings = appSettings; _taskRepository = taskRepository; LoadLastTasks(); }