From 8b3834d8c7dac9f1c35fe59f4331b70ef23d3277 Mon Sep 17 00:00:00 2001 From: Daniel Grunwald Date: Sun, 23 Apr 2006 16:51:13 +0000 Subject: [PATCH] Fixed SD2-730: Closing one of the partial form classes of a newly created form git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/branches/2.0@1348 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61 --- .../Src/DesignerGenerator/AbstractDesignerGenerator.cs | 4 ++++ .../Project/Src/DesignerLoader/NRefactoryDesignerLoader.cs | 6 +++++- src/Main/Base/Project/Src/Commands/FileCommands.cs | 2 +- 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/src/AddIns/DisplayBindings/FormsDesigner/Project/Src/DesignerGenerator/AbstractDesignerGenerator.cs b/src/AddIns/DisplayBindings/FormsDesigner/Project/Src/DesignerGenerator/AbstractDesignerGenerator.cs index a6f9e02f4a..d601be63e4 100644 --- a/src/AddIns/DisplayBindings/FormsDesigner/Project/Src/DesignerGenerator/AbstractDesignerGenerator.cs +++ b/src/AddIns/DisplayBindings/FormsDesigner/Project/Src/DesignerGenerator/AbstractDesignerGenerator.cs @@ -152,6 +152,10 @@ namespace ICSharpCode.FormsDesigner if (formClass == null || initializeComponent == null) { throw new InvalidOperationException("InitializeComponent method not found in framework-generated CodeDom."); } + if (this.formClass == null) { + MessageService.ShowMessage("Cannot save form: InitializeComponent method does not exist anymore. You should not modify the Designer.cs file while editing a form."); + return; + } if (formClass.Name != this.formClass.Name) { LoggingService.Info("Renaming form to " + formClass.Name); diff --git a/src/AddIns/DisplayBindings/FormsDesigner/Project/Src/DesignerLoader/NRefactoryDesignerLoader.cs b/src/AddIns/DisplayBindings/FormsDesigner/Project/Src/DesignerLoader/NRefactoryDesignerLoader.cs index 715e5c1771..fc267c122a 100644 --- a/src/AddIns/DisplayBindings/FormsDesigner/Project/Src/DesignerLoader/NRefactoryDesignerLoader.cs +++ b/src/AddIns/DisplayBindings/FormsDesigner/Project/Src/DesignerLoader/NRefactoryDesignerLoader.cs @@ -329,7 +329,11 @@ namespace ICSharpCode.FormsDesigner this.CodeDomProvider.GenerateCodeFromCompileUnit(unit, Console.Out, null); } #endif - generator.MergeFormChanges(unit); + try { + generator.MergeFormChanges(unit); + } catch (Exception ex) { + MessageService.ShowError(ex); + } } // public void Reload() diff --git a/src/Main/Base/Project/Src/Commands/FileCommands.cs b/src/Main/Base/Project/Src/Commands/FileCommands.cs index 4e6f072de9..2d1aaa5773 100644 --- a/src/Main/Base/Project/Src/Commands/FileCommands.cs +++ b/src/Main/Base/Project/Src/Commands/FileCommands.cs @@ -30,7 +30,7 @@ namespace ICSharpCode.SharpDevelop.Commands "${res:Dialog.NewFile.AddToProjectQuestionTitle}", "${res:Dialog.NewFile.AddToProjectQuestionProject}", "${res:Dialog.NewFile.AddToProjectQuestionStandalone}") - == 1) + == 0) { new Project.Commands.AddNewItemsToProject().Run(); return;