/// <summary> /// Creates the ViewModels. /// </summary> /// <param name="localFileFactory">Factory for creating <see cref="Scrobbling.Data.ILocalFile"/>s.</param> /// <param name="directoryOperator">DirectoryOperator for operating with directories.</param> /// <param name="serializer">Serializer for <see cref="User"/>s.</param> /// <param name="gitHubClient">GitHub client to check for updates.</param> /// <param name="processManager">ProcessManager for working with processor functions.</param> private void SetupViewModels(ILocalFileFactory localFileFactory, IDirectoryOperator directoryOperator, ISerializer serializer, IGitHubClient gitHubClient, IProcessManager processManager) { UserViewModel = new UserViewModel(_windowManager, _client.Auth, _fileOperator, directoryOperator, serializer); _generalSettingsVM = new GeneralSettingsViewModel(_windowManager, gitHubClient, processManager); _scrobblerVM = new ScrobblerViewModel(_windowManager, localFileFactory, _fileOperator, _client); _scrobblerVM.StatusUpdated += StatusUpdated; ActivateItem(_scrobblerVM); _extraFunctionsVM = new ExtraFunctionsViewModel(_windowManager, _client.User, _fileOperator); _extraFunctionsVM.StatusUpdated += StatusUpdated; ActivateItem(_extraFunctionsVM); // we do this later to stop a NullReferenceException (we create scrobblers here anyways!) UserViewModel.ActiveUserChanged += UserViewModel_ActiveUserChanged; if (UserViewModel.ActiveUser != null) { CreateScrobblers(); } // should be active ActivateItem(_scrobblerVM); }
/// <summary> /// Creates the ViewModels. /// </summary> private void SetupViewModels(ILocalFileFactory localFileFactory) { _scrobblerVM = new ScrobblerViewModel(_windowManager, localFileFactory); _scrobblerVM.StatusUpdated += StatusUpdated; CreateScrobblers(); ActivateItem(_scrobblerVM); _extraFunctionsVM = new ExtraFunctionsViewModel(_windowManager, Client.User); _extraFunctionsVM.StatusUpdated += StatusUpdated; ActivateItem(_extraFunctionsVM); // should be active ActivateItem(_scrobblerVM); UserViewModel = new UserViewModel(_windowManager); UserViewModel.ActiveUserChanged += UserViewModel_ActiveUserChanged; UserViewModel.LoadLastUser(); }
/// <summary> /// Creates the ViewModels. /// </summary> /// <param name="localFileFactory">Factory for creating <see cref="ILocalFile"/>s.</param> /// <param name="directoryOperator">DirectoryOperator for operating with directories.</param> /// <param name="userSerializer">Serializer for <see cref="User"/>s.</param> private void SetupViewModels(ILocalFileFactory localFileFactory, IDirectoryOperator directoryOperator, ISerializer <User> userSerializer) { _scrobblerVM = new ScrobblerViewModel(_windowManager, localFileFactory, _fileOperator, _client); _scrobblerVM.StatusUpdated += StatusUpdated; CreateScrobblers(); ActivateItem(_scrobblerVM); _extraFunctionsVM = new ExtraFunctionsViewModel(_windowManager, _client.User, _fileOperator); _extraFunctionsVM.StatusUpdated += StatusUpdated; ActivateItem(_extraFunctionsVM); // should be active ActivateItem(_scrobblerVM); UserViewModel = new UserViewModel(_windowManager, _client.Auth, _fileOperator, directoryOperator, userSerializer); UserViewModel.ActiveUserChanged += UserViewModel_ActiveUserChanged; UserViewModel.LoadLastUser(); }
/// <summary> /// Creates the ViewModels. /// </summary> /// <param name="localFileFactory">Factory for creating <see cref="ILocalFile"/>s.</param> /// <param name="directoryOperator">DirectoryOperator for operating with directories.</param> /// <param name="userSerializer">Serializer for <see cref="User"/>s.</param> private void SetupViewModels(ILocalFileFactory localFileFactory, IDirectoryOperator directoryOperator, ISerializer <User> userSerializer) { UserViewModel = new UserViewModel(_windowManager, _client.Auth, _fileOperator, directoryOperator, userSerializer); UserViewModel.LoadLastUser(); _scrobblerVM = new ScrobblerViewModel(_windowManager, localFileFactory, _fileOperator, _client); _scrobblerVM.StatusUpdated += StatusUpdated; ActivateItem(_scrobblerVM); _extraFunctionsVM = new ExtraFunctionsViewModel(_windowManager, _client.User, _fileOperator); _extraFunctionsVM.StatusUpdated += StatusUpdated; ActivateItem(_extraFunctionsVM); // we do this later to stop a NullReferenceException (we create scrobblers here anyways!) UserViewModel.ActiveUserChanged += UserViewModel_ActiveUserChanged; // should be active ActivateItem(_scrobblerVM); }
/// <summary> /// Creates the ViewModels. /// </summary> /// <param name="localFileFactory">Factory for creating <see cref="Scrobbling.Data.ILocalFile"/>s.</param> /// <param name="directoryOperator">DirectoryOperator for operating with directories.</param> /// <param name="serializer">Serializer for <see cref="User"/>s.</param> /// <param name="gitHubClient">GitHub client to check for updates.</param> /// <param name="processManager">ProcessManager for working with processor functions.</param> /// <param name="discogsClient">Client used to interact with Discogs.com</param> /// <param name="fileParserFactory">Factory for creating <see cref="IFileParser"/></param> private TabViewModel[] SetupViewModels(ILocalFileFactory localFileFactory, IDirectoryOperator directoryOperator, ISerializer serializer, IGitHubClient gitHubClient, IProcessManager processManager, IDiscogsDataBaseClient discogsClient, IFileParserFactory fileParserFactory) { UserViewModel = new UserViewModel(_windowManager, _client.Auth, _client.User, _fileOperator, directoryOperator, serializer); _generalSettingsVM = new GeneralSettingsViewModel(_windowManager, gitHubClient, processManager); _scrobblerVM = new ScrobblerViewModel(_windowManager, localFileFactory, _fileOperator, _client, discogsClient, fileParserFactory); _scrobblerVM.StatusUpdated += MainStatusUpdated; _extraFunctionsVM = new ExtraFunctionsViewModel(_windowManager, _client.User, _fileOperator); _extraFunctionsVM.StatusUpdated += MainStatusUpdated; // we do this later to stop a NullReferenceException (we create scrobblers here anyways!) UserViewModel.ActiveUserChanged += UserViewModel_ActiveUserChanged; if (UserViewModel.ActiveUser != null) { CreateScrobblers(); } return(new TabViewModel[] { _scrobblerVM, _extraFunctionsVM }); }