Beispiel #1
0
        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;
        }
Beispiel #2
0
        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();
        }