Пример #1
0
 private void ApplyPatch()
 {
     if (!File.Exists(Paths.Elsword.LauncherExe))
     {
         this.ShowElswordFolderSettings();
         return;
     }
     this.State = FrHome.States.Cancel;
     this.bgwPatcher.RunWorkerAsync();
 }
Пример #2
0
        private void UpdateState()
        {
            if (this.bgwPatcher.IsBusy)
            {
                return;
            }
            bool count = this.listBox.Items.Count > 0;

            if (count && this.chkModsEnabled.Checked)
            {
                this.State = FrHome.States.Patch;
                return;
            }
            if (count && !this.chkModsEnabled.Checked)
            {
                this.State = FrHome.States.OpenLauncher;
                return;
            }
            this.State = FrHome.States.Disabled;
        }
Пример #3
0
        private void bgwPatcher_ProgressChanged(object sender, FilePatchingProgressChangedArgs e)
        {
            this.progressBar.Value = e.ProgressPercentage;
            string statusPreparingFiles = null;

            switch (e.CurrentState)
            {
            case BackgroundFilePatcher.States.PreparingFilesStarted:
            {
                statusPreparingFiles = gPatcher.Localization.Text.Status_PreparingFiles;
                if (statusPreparingFiles == null)
                {
                    return;
                }
                this.statusLabel.Text = statusPreparingFiles.Replace("\r\n", " ");
                this.trayIcon.ShowBalloonTip(3000, null, statusPreparingFiles, ToolTipIcon.None);
                return;
            }

            case BackgroundFilePatcher.States.PreparingFiles:
            case BackgroundFilePatcher.States.DoingBackup:
            case BackgroundFilePatcher.States.Patching:
            case BackgroundFilePatcher.States.PatchingDone:
            case BackgroundFilePatcher.States.RestoringBackup:
            {
                if (statusPreparingFiles == null)
                {
                    return;
                }
                this.statusLabel.Text = statusPreparingFiles.Replace("\r\n", " ");
                this.trayIcon.ShowBalloonTip(3000, null, statusPreparingFiles, ToolTipIcon.None);
                return;
            }

            case BackgroundFilePatcher.States.WaitingForX2ToOpen:
            {
                statusPreparingFiles = gPatcher.Localization.Text.Status_WaitingForElswordClient;
                if (statusPreparingFiles == null)
                {
                    return;
                }
                this.statusLabel.Text = statusPreparingFiles.Replace("\r\n", " ");
                this.trayIcon.ShowBalloonTip(3000, null, statusPreparingFiles, ToolTipIcon.None);
                return;
            }

            case BackgroundFilePatcher.States.BackupStarted:
            {
                statusPreparingFiles = gPatcher.Localization.Text.Status_CreatingBackup;
                this.State           = FrHome.States.CancelDisabled;
                if (statusPreparingFiles == null)
                {
                    return;
                }
                this.statusLabel.Text = statusPreparingFiles.Replace("\r\n", " ");
                this.trayIcon.ShowBalloonTip(3000, null, statusPreparingFiles, ToolTipIcon.None);
                return;
            }

            case BackgroundFilePatcher.States.PatchingStarted:
            {
                statusPreparingFiles = gPatcher.Localization.Text.Status_ModifyingFiles;
                if (statusPreparingFiles == null)
                {
                    return;
                }
                this.statusLabel.Text = statusPreparingFiles.Replace("\r\n", " ");
                this.trayIcon.ShowBalloonTip(3000, null, statusPreparingFiles, ToolTipIcon.None);
                return;
            }

            case BackgroundFilePatcher.States.WaitingForX2ToClose:
            {
                statusPreparingFiles = gPatcher.Localization.Text.Status_ModifyingSuccessful;
                if (!this._settings.TrayIconEnabled)
                {
                    base.WindowState = FormWindowState.Minimized;
                    if (statusPreparingFiles == null)
                    {
                        return;
                    }
                    this.statusLabel.Text = statusPreparingFiles.Replace("\r\n", " ");
                    this.trayIcon.ShowBalloonTip(3000, null, statusPreparingFiles, ToolTipIcon.None);
                    return;
                }
                else
                {
                    this.ShowTrayIcon();
                    if (statusPreparingFiles == null)
                    {
                        return;
                    }
                    this.statusLabel.Text = statusPreparingFiles.Replace("\r\n", " ");
                    this.trayIcon.ShowBalloonTip(3000, null, statusPreparingFiles, ToolTipIcon.None);
                    return;
                }
            }

            case BackgroundFilePatcher.States.RestoringBackupStarted:
            {
                statusPreparingFiles = gPatcher.Localization.Text.Status_RestoringBackup;
                if (statusPreparingFiles == null)
                {
                    return;
                }
                this.statusLabel.Text = statusPreparingFiles.Replace("\r\n", " ");
                this.trayIcon.ShowBalloonTip(3000, null, statusPreparingFiles, ToolTipIcon.None);
                return;
            }

            case BackgroundFilePatcher.States.Done:
            {
                statusPreparingFiles = gPatcher.Localization.Text.Status_BackupRestored;
                if (statusPreparingFiles == null)
                {
                    return;
                }
                this.statusLabel.Text = statusPreparingFiles.Replace("\r\n", " ");
                this.trayIcon.ShowBalloonTip(3000, null, statusPreparingFiles, ToolTipIcon.None);
                return;
            }

            default:
            {
                if (statusPreparingFiles == null)
                {
                    return;
                }
                this.statusLabel.Text = statusPreparingFiles.Replace("\r\n", " ");
                this.trayIcon.ShowBalloonTip(3000, null, statusPreparingFiles, ToolTipIcon.None);
                return;
            }
            }
        }