private void InitUpdateCheck() { // Disposed += (sender, args) => InstallUpdateIfAvailable(true); var updateObserver = new FormMainUpdateObserver(checkForUpdatesToolStripMenuItem, updateToolStripMenuItem, downloadUpdateToolStripMenuItem); _updateClient.CurrentVersion = AppUtils.AppVersion; _updateClient.IsPortable = _directoryLocator.IsPortable; _updateClient.Checking += updater => Invoke(updateObserver.Checking); _updateClient.UpdateFound += updater => Invoke(() => updateObserver.UpdateFound(_updateClient.LatestUpdate)); _updateClient.UpdateNotFound += updater => Invoke(updateObserver.NoUpdateFound); _updateClient.Error += (updater, exception) => Invoke(() => updateObserver.Error(exception)); downloadUpdateToolStripMenuItem.ToolTipText = AppConstants.DownloadPageUrl; }
public FormMain(ILog logger, IDirectoryLocator directoryLocator, IPreferenceManager preferenceManager, PluginLoader pluginLoader, IPluginRepository pluginRepository, IController controller, IDriveDetector driveDetector, ITaskbarItemFactory taskbarItemFactory, INetworkStatusMonitor networkStatusMonitor, Updater updater) { InitializeComponent(); Load += OnLoad; _logger = logger; _directoryLocator = directoryLocator; _preferenceManager = preferenceManager; _pluginLoader = pluginLoader; _pluginRepository = pluginRepository; _controller = controller; _driveDetector = driveDetector; _taskbarItem = taskbarItemFactory.GetInstance(Handle); _networkStatusMonitor = networkStatusMonitor; _updater = updater; _updater.IsPortable = _directoryLocator.IsPortable; _updateHelper = new UpdateHelper(_updater, AppUtils.AppVersion) { AllowDownload = false }; _progressBarToolTip = new ToolTip(); _progressBarToolTip.SetToolTip(progressBar, null); progressBar.UseCustomColors = true; progressBar.GenerateText = percentComplete => string.Format("{0}: {1:0.00}%", _state, percentComplete); playlistListView.ItemSelectionChanged += PlaylistListViewOnItemSelectionChanged; playlistListView.ShowAllChanged += PlaylistListViewOnShowAllChanged; playlistListView.PlaylistReconfigured += PlaylistListViewOnPlaylistReconfigured; tracksPanel.PlaylistReconfigured += TracksPanelOnPlaylistReconfigured; mediaPanel.SelectedMediaChanged += MediaPanelOnSelectedMediaChanged; mediaPanel.Search = ShowMetadataSearchWindow; var updateObserver = new FormMainUpdateObserver(this, checkForUpdatesToolStripMenuItem, updateToolStripMenuItem, downloadUpdateToolStripMenuItem); updateObserver.BeforeInstallUpdate += update => DisableUpdates(); SystemEvents.SessionEnded += (sender, args) => DisableUpdates(); _updateHelper.RegisterObserver(updateObserver); FormClosing += OnFormClosing; var recentFiles = _preferenceManager.Preferences.RecentFiles; if (recentFiles.RememberRecentFiles && recentFiles.RecentBDROMPaths.Any()) { textBoxInput.Text = recentFiles.RecentBDROMPaths.First(); } InitSystemMenu(); }