From b496daa5e10077399e06d407b0173bd6b8e7d073 Mon Sep 17 00:00:00 2001 From: Matt Ward Date: Wed, 25 Oct 2006 18:24:06 +0000 Subject: [PATCH] Fixed SD2-1171 - Cancelling the Add File to Project dialog opens the New File Dialog. Modified the custom dialog so the escape key closes it if no cancel button has been defined. git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@1944 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61 --- src/Main/Base/Project/Src/Commands/FileCommands.cs | 13 +++++++------ .../Src/Services/MessageService/CustomDialog.cs | 8 ++++++++ 2 files changed, 15 insertions(+), 6 deletions(-) diff --git a/src/Main/Base/Project/Src/Commands/FileCommands.cs b/src/Main/Base/Project/Src/Commands/FileCommands.cs index 026cc0d7c5..2682809321 100644 --- a/src/Main/Base/Project/Src/Commands/FileCommands.cs +++ b/src/Main/Base/Project/Src/Commands/FileCommands.cs @@ -26,14 +26,15 @@ namespace ICSharpCode.SharpDevelop.Commands public override void Run() { if (ProjectBrowserPad.Instance.CurrentProject != null) { - if (MessageService.ShowCustomDialog("${res:Dialog.NewFile.AddToProjectQuestionTitle}", - "${res:Dialog.NewFile.AddToProjectQuestion}", - "${res:Dialog.NewFile.AddToProjectQuestionProject}", - "${res:Dialog.NewFile.AddToProjectQuestionStandalone}") - == 0) - { + int result = MessageService.ShowCustomDialog("${res:Dialog.NewFile.AddToProjectQuestionTitle}", + "${res:Dialog.NewFile.AddToProjectQuestion}", + "${res:Dialog.NewFile.AddToProjectQuestionProject}", + "${res:Dialog.NewFile.AddToProjectQuestionStandalone}"); + if (result == 0) { ProjectBrowserPad.Instance.CurrentProject.AddNewItemsToProject(); return; + } else if (result == -1) { + return; } } using (NewFileDialog nfd = new NewFileDialog(null)) { diff --git a/src/Main/Core/Project/Src/Services/MessageService/CustomDialog.cs b/src/Main/Core/Project/Src/Services/MessageService/CustomDialog.cs index 771d5e4131..a14e366c36 100644 --- a/src/Main/Core/Project/Src/Services/MessageService/CustomDialog.cs +++ b/src/Main/Core/Project/Src/Services/MessageService/CustomDialog.cs @@ -87,6 +87,13 @@ namespace ICSharpCode.Core this.ResumeLayout(false); } + protected override void OnKeyDown(KeyEventArgs e) + { + if (cancelButton == -1 && e.KeyCode == Keys.Escape) { + this.Close(); + } + } + void ButtonClick(object sender, EventArgs e) { result = (int)((Control)sender).Tag; @@ -133,6 +140,7 @@ namespace ICSharpCode.Core this.MaximizeBox = false; this.MinimizeBox = false; this.Name = "CustomDialog"; + this.KeyPreview = true; this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent; this.Text = "CustomDialog"; }