public StateLogicViewModel(DeviceLogicViewModel deviceDetailsViewModel, StateLogic stateLogic) { AddCommand = new RelayCommand(OnAdd); RemoveCommand = new RelayCommand<ClauseViewModel>(OnRemove); ChangeJoinOperatorCommand = new RelayCommand(OnChangeJoinOperator); StateTypes = new List<XStateType>(); StateTypes.Add(XStateType.TurnOn); StateTypes.Add(XStateType.CancelDelay); StateTypes.Add(XStateType.TurnOff); StateTypes.Add(XStateType.Stop); StateTypes.Add(XStateType.ForbidStart); StateTypes.Add(XStateType.TurnOnNow); StateTypes.Add(XStateType.TurnOffNow); SelectedStateType = stateLogic.StateType; _deviceDetailsViewModel = deviceDetailsViewModel; Clauses = new ObservableCollection<ClauseViewModel>(); foreach (var clause in stateLogic.Clauses) { var clauseViewModel = new ClauseViewModel(this, clause); Clauses.Add(clauseViewModel); } }
void OnChangeAutomaticOffLogic() { var deviceLogicViewModel = new DeviceLogicViewModel(XManager.DeviceConfiguration.RootDevice, PumpStation.AutomaticOffLogic); if (DialogService.ShowModalWindow(deviceLogicViewModel)) { PumpStation.AutomaticOffLogic = deviceLogicViewModel.GetModel(); OnPropertyChanged("AutomaticOffPresentationName"); ServiceFactory.SaveService.GKChanged = true; } }