Exemple #1
0
        private void ObserveModuleStateSelectedEvidenceSource(object _)
        {
            var evidenceSourceViewModel = _moduleState.SelectedEvidenceSource.MatchUnsafe(
                es => EvidenceSourceViewModels.Find(vm => vm.ID == es.ID).AssertSome(),
                default(IEvidenceSourceViewModel)
                );

            SelectedEvidenceSourceViewModel = evidenceSourceViewModel;
            PopulateObservations();
        }
Exemple #2
0
        private void HandleDeleteEvidenceSource()
        {
            using (_reactiveSafeInvoke.SuspendedReactivity)
            {
                RequireNotNull(SelectedEvidenceSourceViewModel);

                SelectedObservationsViewModel = default;
                ObservationsViewModels        = default;

                var id = SelectedEvidenceSourceViewModel.ID;
                SelectedEvidenceSourceViewModel = default;

                var observations = _evidence.GetObservations(id);
                var references   = observations.Map(o => _evidence.GetReference(o));

                _evidence.RemoveEvidenceSource(id);

                var index = EvidenceSourceViewModels.FindIndex(vm => vm.ID == id);
                RequireTrue(index.IsFound());
                EvidenceSourceViewModels.RemoveAt(index);

                _sharedState.UnshareObservationsState(references);
            }
        }