Browse Source

Fix null reference exception when opening a WiX dialog in the designer.

4.0
Matt Ward 15 years ago
parent
commit
6e16bab319
  1. 19
      src/AddIns/DisplayBindings/FormsDesigner/Project/Src/DesignerViewContent.cs

19
src/AddIns/DisplayBindings/FormsDesigner/Project/Src/DesignerViewContent.cs

@ -12,11 +12,11 @@ using System.IO;
using System.Linq; using System.Linq;
using System.Text; using System.Text;
using System.Windows.Forms; using System.Windows.Forms;
using ICSharpCode.Core; using ICSharpCode.Core;
using ICSharpCode.FormsDesigner.Services; using ICSharpCode.FormsDesigner.Services;
using ICSharpCode.FormsDesigner.UndoRedo; using ICSharpCode.FormsDesigner.UndoRedo;
using ICSharpCode.SharpDevelop; using ICSharpCode.SharpDevelop;
using ICSharpCode.SharpDevelop.Dom;
using ICSharpCode.SharpDevelop.Editor; using ICSharpCode.SharpDevelop.Editor;
using ICSharpCode.SharpDevelop.Gui; using ICSharpCode.SharpDevelop.Gui;
@ -277,7 +277,7 @@ namespace ICSharpCode.FormsDesigner
serviceContainer.AddService(typeof(DesignerOptionService), new SharpDevelopDesignerOptionService()); serviceContainer.AddService(typeof(DesignerOptionService), new SharpDevelopDesignerOptionService());
serviceContainer.AddService(typeof(ITypeDiscoveryService), new TypeDiscoveryService()); serviceContainer.AddService(typeof(ITypeDiscoveryService), new TypeDiscoveryService());
serviceContainer.AddService(typeof(MemberRelationshipService), new DefaultMemberRelationshipService()); serviceContainer.AddService(typeof(MemberRelationshipService), new DefaultMemberRelationshipService());
serviceContainer.AddService(typeof(ProjectResourceService), new ProjectResourceService(ParserService.GetParseInformation(this.DesignerCodeFile.FileName).CompilationUnit.ProjectContent)); serviceContainer.AddService(typeof(ProjectResourceService), CreateProjectResourceService());
// Provide the ImageResourceEditor for all Image and Icon properties // Provide the ImageResourceEditor for all Image and Icon properties
this.addedTypeDescriptionProviders.Add(typeof(Image), TypeDescriptor.AddAttributes(typeof(Image), new EditorAttribute(typeof(ImageResourceEditor), typeof(System.Drawing.Design.UITypeEditor)))); this.addedTypeDescriptionProviders.Add(typeof(Image), TypeDescriptor.AddAttributes(typeof(Image), new EditorAttribute(typeof(ImageResourceEditor), typeof(System.Drawing.Design.UITypeEditor))));
@ -329,6 +329,21 @@ namespace ICSharpCode.FormsDesigner
LoggingService.Info("Form Designer: END INITIALIZE"); LoggingService.Info("Form Designer: END INITIALIZE");
} }
ProjectResourceService CreateProjectResourceService()
{
IProjectContent projectContent = GetProjectContentForFile();
return new ProjectResourceService(projectContent);
}
IProjectContent GetProjectContentForFile()
{
ParseInformation parseInfo = ParserService.GetParseInformation(this.DesignerCodeFile.FileName);
if (parseInfo != null) {
return parseInfo.CompilationUnit.ProjectContent;
}
return DefaultProjectContent.DummyProjectContent;
}
bool hasUnmergedChanges; bool hasUnmergedChanges;
void MakeDirty() void MakeDirty()

Loading…
Cancel
Save