public SessionsViewModel( ISessionsService sessionsService, IPatientsService patientsService, [NotNull] ILogger logger, [NotNull] ToastNotifications.Notifier notifier, [NotNull] SessionAddedEventHandler sessionAddedEventHandler, [NotNull] SessionChangedEventHandler sessionChangedEventHandler, [NotNull] SessionDeletedEventHandler sessionDeletedEventHandler, [NotNull] ISessionsFileUiManager sessionFileManager) { _sessionsService = sessionsService ?? throw new ArgumentNullException(nameof(sessionsService)); _patientsService = patientsService; _logger = logger ?? throw new ArgumentNullException(nameof(logger)); _notifier = notifier; _sessionAddedEventHandler = sessionAddedEventHandler ?? throw new ArgumentNullException(nameof(sessionAddedEventHandler)); _sessionChangedEventHandler = sessionChangedEventHandler ?? throw new ArgumentNullException(nameof(sessionChangedEventHandler)); _sessionDeletedEventHandler = sessionDeletedEventHandler ?? throw new ArgumentNullException(nameof(sessionDeletedEventHandler)); _sessionFileManager = sessionFileManager; _sessionAddedEventHandler.SessionAdded += delegate { _isSessionListChanged = true; }; _sessionChangedEventHandler.SessionChanged += delegate { _isSessionListChanged = true; }; _sessionDeletedEventHandler.SessionDeleted += delegate { _isSessionListChanged = true; }; _isSessionListChanged = false; }
public SessionDataViewModel(ILogger logger, [NotNull] ISessionsFileUiManager sessionFileUiManager, [NotNull] ToastNotifications.Notifier notifier) { _logger = logger ?? throw new ArgumentNullException(nameof(logger)); _sessionFileUiManager = sessionFileUiManager ?? throw new ArgumentNullException(nameof(sessionFileUiManager)); _notifier = notifier; IsReadOnly = true; }