internal MainWindowViewModel( ModelMetadata modelMetadata, ILatestVersionService latestVersionService, IMainWindowService mainWindowService, ModelViewModel modelViewModel, OpenModelViewModel openModelViewModel, IOpenModelService openModelService, IRecentModelsService recentModelsService, IModelMetadataService modelMetadataService, IStartInstanceService startInstanceService, IModelViewService modelViewService, IProgressService progress) { this.modelMetadata = modelMetadata; this.mainWindowService = mainWindowService; this.openModelService = openModelService; this.recentModelsService = recentModelsService; this.modelMetadataService = modelMetadataService; this.startInstanceService = startInstanceService; this.modelViewService = modelViewService; this.progress = progress; ModelViewModel = modelViewModel; OpenModelViewModel = openModelViewModel; modelMetadata.OnChange += (s, e) => Notify(nameof(MainTitle)); latestVersionService.OnNewVersionAvailable += (s, e) => IsNewVersionVisible = true; latestVersionService.StartCheckForLatestVersion(); SearchItems = new ObservableCollection <SearchEntry>(); ClearSelectionItems(); }
internal MainWindowViewModel( WorkingFolder workingFolder, WindowOwner owner, IRepositoryCommands repositoryCommands, IRemoteService remoteService, ICommitsService commitsService, ILatestVersionService latestVersionService, IStartInstanceService startInstanceService, IRecentReposService recentReposService, IGitInfoService gitInfoService, IMessage message, IMainWindowService mainWindowService, MainWindowIpcService mainWindowIpcService, RepositoryViewModel repositoryViewModel) { this.workingFolder = workingFolder; this.owner = owner; this.repositoryCommands = repositoryCommands; this.remoteService = remoteService; this.commitsService = commitsService; this.startInstanceService = startInstanceService; this.recentReposService = recentReposService; this.gitInfoService = gitInfoService; this.message = message; this.mainWindowService = mainWindowService; this.mainWindowIpcService = mainWindowIpcService; RepositoryViewModel = repositoryViewModel; workingFolder.OnChange += (s, e) => Notify(nameof(WorkingFolder)); latestVersionService.OnNewVersionAvailable += (s, e) => IsNewVersionVisible = true; latestVersionService.StartCheckForLatestVersion(); IsRepoView = true; }
internal App( ICommandLine commandLine, IThemeService themeService, IInstaller installer, Lazy <MainWindow> mainWindow, IModelMetadataService modelMetadataService, IExistingInstanceService existingInstanceService, ILatestVersionService latestVersionService) { this.commandLine = commandLine; this.themeService = themeService; this.installer = installer; this.mainWindow = mainWindow; this.modelMetadataService = modelMetadataService; this.existingInstanceService = existingInstanceService; this.latestVersionService = latestVersionService; }