From 4b4905d787a849864f6d3c97f1affebb07798add Mon Sep 17 00:00:00 2001 From: Matt Ward Date: Thu, 1 Jun 2006 17:06:42 +0000 Subject: [PATCH] SD2-830. 'Prompt for Arguments' and 'Use Output Window' options now working for external tools. git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/branches/2.0@1442 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61 --- .../Base/Project/Src/Commands/MenuItemBuilders.cs | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/src/Main/Base/Project/Src/Commands/MenuItemBuilders.cs b/src/Main/Base/Project/Src/Commands/MenuItemBuilders.cs index 1da58d4469..a611aee6eb 100644 --- a/src/Main/Base/Project/Src/Commands/MenuItemBuilders.cs +++ b/src/Main/Base/Project/Src/Commands/MenuItemBuilders.cs @@ -104,16 +104,13 @@ namespace ICSharpCode.SharpDevelop.Commands Process p = (Process)sender; string output = p.StandardOutput.ReadToEnd(); - TaskService.BuildMessageViewCategory.AppendText(Environment.NewLine + "Exited with code:" + p.ExitCode + Environment.NewLine); + TaskService.BuildMessageViewCategory.AppendText(output + Environment.NewLine + "Exited with code:" + p.ExitCode + Environment.NewLine); } void ToolEvt(object sender, EventArgs e) { MenuCommand item = (MenuCommand)sender; - - - for (int i = 0; i < ToolLoader.Tool.Count; ++i) { if (item.Text == ToolLoader.Tool[i].ToString()) { ExternalTool tool = (ExternalTool)ToolLoader.Tool[i]; @@ -149,6 +146,16 @@ namespace ICSharpCode.SharpDevelop.Commands string command = StringParser.Parse(tool.Command); string args = StringParser.Parse(tool.Arguments); + if (tool.PromptForArguments) { + InputBox box = new InputBox(); + box.Text = tool.MenuCommand; + box.Label.Text = "Enter arguments for the tool:"; + box.TextBox.Text = args; + if (box.ShowDialog() != DialogResult.OK) + return; + args = box.TextBox.Text; + } + try { ProcessStartInfo startinfo; if (args == null || args.Length == 0 || args.Trim('"', ' ').Length == 0) {