示例#1
0
        public MainViewModel(AppSettings appSettings, DatabaseSettings dbSettings, IScenarioBuilder scenarioBuilder, IRepository <Scenario> repository, IScenarioExecutor scenarioExecutor, IScenarioFileManager scenarioFileManager)
        {
            Settings             = appSettings;
            DbSettings           = dbSettings;
            _scenarioBuilder     = scenarioBuilder;
            _repository          = repository;
            _scenarioExecutor    = scenarioExecutor;
            _scenarioFileManager = scenarioFileManager;

            _aggregateScenarios = new ObservableCollection <Scenario>();
            _aggregateScenarios.CollectionChanged +=
                (sender, args) =>
            {
                CreateAggregateScenarioCommand.RaiseCanExecuteChanged();
                ClearAggregateScenariosCommand.RaiseCanExecuteChanged();
            };

            ExecuteScenarioCommand         = new RelayCommand <Scenario>(ExecuteScenario);
            DeleteScenarioCommand          = new RelayCommand <Scenario>(DeleteScenario);
            StartCommand                   = new RelayCommand(Start);
            StopCommand                    = new RelayCommand(Stop);
            EditScenarioCommand            = new RelayCommand <Scenario>(EditScenario);
            ExportScenarioCommand          = new RelayCommand <Scenario>(ExportScenario);
            CreateAggregateScenarioCommand = new RelayCommand(CreateAggregateScenario, AnyAggregateScenarios);
            AddAggregateScenarioCommand    = new RelayCommand(AddAggregateScenario, IsAggregateScenario);
            ClearAggregateScenariosCommand = new RelayCommand(ClearAggregateScenarios, AnyAggregateScenarios);

            DbSettings.DbFilePathChanged += DbSettings_DbFilePathChanged;
            LoadScenarios();
            IsRecording = false;
        }
示例#2
0
 public ScenarioBusiness(IScenarioFileManager scenarioFileManager)
 {
     _scenarioFileManager = scenarioFileManager;
 }