public MainViewModel(
WelcomeViewModel welcomeViewModel,
ConnectingViewModel connectingViewModel,
ContactsViewModel contactsViewModel,
SettingsViewModel settingsViewModel,
CoreDispatcher uiDispatcher) : base(uiDispatcher)
{
WelcomeViewModel = welcomeViewModel;
ConnectingViewModel = connectingViewModel;
ContactsViewModel = contactsViewModel;
SettingsViewModel = settingsViewModel;
WelcomeViewModel.OnCompleted += WelcomeCompleted;
ConnectingViewModel.OnRegistered += ConnectingViewModel_OnRegistered;
ConnectingViewModel.OnRegistrationFailed += ConnectingViewModel_OnRegistrationFailed;
ShowSettingsCommand = new DelegateCommand(() => IsSettingsVisible = true);
WelcomeViewModel.OnShowSettings += () => IsSettingsVisible = true;
ContactsViewModel.OnShowSettings += () => IsSettingsVisible = true;
ConnectingViewModel.OnShowSettings += () => IsSettingsVisible = true;
SettingsViewModel.OnClose += SettingsViewModelOnClose;
SettingsViewModel.OnRegistrationSettingsChanged += RegistrationSettingChanged;
}