AdvancedLauncher.UI.Controls.GameControl.OnUpdateStatusChanged C# (CSharp) Method

OnUpdateStatusChanged() private method

private OnUpdateStatusChanged ( object sender, UpdateStatusEventArgs e ) : void
sender object
e AdvancedLauncher.SDK.Model.Events.UpdateStatusEventArgs
return void
        private void OnUpdateStatusChanged(object sender, UpdateStatusEventArgs e) {
            if (!this.Dispatcher.CheckAccess()) {
                this.Dispatcher.Invoke(System.Windows.Threading.DispatcherPriority.Normal, new UpdateStatusEventHandler((s, e2) => {
                    OnUpdateStatusChanged(sender, e2);
                }), sender, e);
                return;
            }
            UpdateMainProgressBar(e.Progress, e.MaxProgress);
            UpdateSubProgressBar(e.SummaryProgress, e.SummaryMaxProgress);

            string updateText = string.Empty;
            switch (e.UpdateStage) {
                case UpdateStatusEventArgs.Stage.DOWNLOADING:
                    updateText = string.Format(LanguageManager.Model.UpdateDownloading, e.CurrentPatch, e.MaxPatch, e.SummaryProgress, e.SummaryMaxProgress);
                    break;

                case UpdateStatusEventArgs.Stage.EXTRACTING:
                    updateText = string.Format(LanguageManager.Model.UpdateExtracting, e.CurrentPatch, e.MaxPatch, e.SummaryProgress, e.SummaryMaxProgress);
                    break;

                case UpdateStatusEventArgs.Stage.INSTALLING:
                    updateText = string.Format(LanguageManager.Model.UpdateInstalling, e.Progress, e.MaxProgress);
                    break;
            }
            this.Dispatcher.Invoke(System.Windows.Threading.DispatcherPriority.Normal, new SetInfoText((text_) => {
                UpdateText.Text = text_;
            }), updateText);
        }