public MainWindowViewModel(MenuViewModel menuViewModel, InjectionConfigurationViewModelFactory injectionConfigurationViewModelFactory, IEventPublisher eventPublisher, ITaskRunner dispatcher) { _eventPublisher = eventPublisher; _eventPublisher.Register <ChangeViewEnabledEvent>(this); _eventPublisher.Register <UpdateStatusEvent>(this); StatusViewModel = new StatusViewModel(dispatcher); MenuViewModel = menuViewModel; InjectionConfigurationViewModel = injectionConfigurationViewModelFactory.Create(this); }
async Task IEventHandler <UpdateStatusEvent> .HandleAsync(UpdateStatusEvent @event) { if (@event.Target == Target.Configurator) { StatusViewModel.Set(@event.Type, @event.Text); } await Task.Yield(); }
public ConfigurationViewModel( DomainActionBuilder actionBuilder, IEventPublisher eventPublisher, IFindConstantSettingsQuery findConstantSettingsQuery, ITaskRunner runner) { _actionBuilder = actionBuilder; _eventPublisher = eventPublisher; _eventPublisher.Register(this); _findConstantSettingsQuery = findConstantSettingsQuery; StatusViewModel = new StatusViewModel(runner); ChangedCommand = new ActionCommand(UpdateApplicationSettings, () => true); }