From b9d1a2c2cdb8031b5e93669e36bf65ae35ae029b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=AD=B1=E5=82=91?= Date: Thu, 25 Aug 2022 23:54:51 +0800 Subject: [PATCH] Fix run button disabled after command failed --- Source/GrasscutterTools/Forms/FormMain.cs | 54 +++++++++++++---------- 1 file changed, 30 insertions(+), 24 deletions(-) diff --git a/Source/GrasscutterTools/Forms/FormMain.cs b/Source/GrasscutterTools/Forms/FormMain.cs index 1d8c682..21ac656 100644 --- a/Source/GrasscutterTools/Forms/FormMain.cs +++ b/Source/GrasscutterTools/Forms/FormMain.cs @@ -1234,35 +1234,41 @@ namespace GrasscutterTools.Forms } ExpandCommandRunLog(); - BtnInvokeOpenCommand.Enabled = false; - BtnInvokeOpenCommand.Cursor = Cursors.WaitCursor; - int i = 0; - foreach (var command in commands) + try { - TxtCommandRunLog.AppendText(">"); - TxtCommandRunLog.AppendText(command); - if (commands.Length > 1) - TxtCommandRunLog.AppendText($" ({++i}/{commands.Length})"); - TxtCommandRunLog.AppendText(Environment.NewLine); - var cmd = command.Substring(1); - try + BtnInvokeOpenCommand.Enabled = false; + BtnInvokeOpenCommand.Cursor = Cursors.WaitCursor; + int i = 0; + foreach (var command in commands) { - var msg = await OC.Invoke(cmd); - TxtCommandRunLog.AppendText(string.IsNullOrEmpty(msg) ? "OK" : msg); + TxtCommandRunLog.AppendText(">"); + TxtCommandRunLog.AppendText(command); + if (commands.Length > 1) + TxtCommandRunLog.AppendText($" ({++i}/{commands.Length})"); TxtCommandRunLog.AppendText(Environment.NewLine); + var cmd = command.Substring(1); + try + { + var msg = await OC.Invoke(cmd); + TxtCommandRunLog.AppendText(string.IsNullOrEmpty(msg) ? "OK" : msg); + TxtCommandRunLog.AppendText(Environment.NewLine); + } + catch (Exception ex) + { + TxtCommandRunLog.AppendText("Error: "); + TxtCommandRunLog.AppendText(ex.Message); + TxtCommandRunLog.AppendText(Environment.NewLine); + MessageBox.Show(ex.Message, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error); + return false; + } + TxtCommandRunLog.ScrollToCaret(); } - catch (Exception ex) - { - TxtCommandRunLog.AppendText("Error: "); - TxtCommandRunLog.AppendText(ex.Message); - TxtCommandRunLog.AppendText(Environment.NewLine); - MessageBox.Show(ex.Message, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error); - return false; - } - TxtCommandRunLog.ScrollToCaret(); } - BtnInvokeOpenCommand.Cursor = Cursors.Default; - BtnInvokeOpenCommand.Enabled = true; + finally + { + BtnInvokeOpenCommand.Cursor = Cursors.Default; + BtnInvokeOpenCommand.Enabled = true; + } return true; }