From 1de1b02de0e82b4f27ad1dc311ce93416156efc7 Mon Sep 17 00:00:00 2001 From: Daniel Grunwald Date: Wed, 29 Feb 2012 15:12:57 +0100 Subject: [PATCH] Add 'EmbedInteropTypes' to property grid. --- .../Src/Project/Items/ComReferenceProjectItem.cs | 2 +- .../Src/Project/Items/ReferenceProjectItem.cs | 15 ++++++++++++++- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/src/Main/Base/Project/Src/Project/Items/ComReferenceProjectItem.cs b/src/Main/Base/Project/Src/Project/Items/ComReferenceProjectItem.cs index 37155885c1..93c9a2f801 100644 --- a/src/Main/Base/Project/Src/Project/Items/ComReferenceProjectItem.cs +++ b/src/Main/Base/Project/Src/Project/Items/ComReferenceProjectItem.cs @@ -80,7 +80,7 @@ namespace ICSharpCode.SharpDevelop.Project } } - [ReadOnly(true)] + [DefaultValue(false)] public bool Isolated { get { return GetEvaluatedMetadata("Isolated", false); diff --git a/src/Main/Base/Project/Src/Project/Items/ReferenceProjectItem.cs b/src/Main/Base/Project/Src/Project/Items/ReferenceProjectItem.cs index 5559fc062f..d37d74678f 100644 --- a/src/Main/Base/Project/Src/Project/Items/ReferenceProjectItem.cs +++ b/src/Main/Base/Project/Src/Project/Items/ReferenceProjectItem.cs @@ -66,6 +66,19 @@ namespace ICSharpCode.SharpDevelop.Project } } + [DefaultValue(false)] + [LocalizedProperty("${res:ICSharpCode.SharpDevelop.Internal.Project.ProjectReference.EmbedInteropTypes}", + Description = "${res:ICSharpCode.SharpDevelop.Internal.Project.ProjectReference.EmbedInteropTypes.Description}")] + public bool EmbedInteropTypes { + get { + return GetEvaluatedMetadata("EmbedInteropTypes", false); + } + set { + SetEvaluatedMetadata("EmbedInteropTypes", value); + ReFilterProperties(); + } + } + internal const string CopyLocalMetadataName = "Private"; [LocalizedProperty("${res:ICSharpCode.SharpDevelop.Internal.Project.ProjectReference.LocalCopy}", @@ -198,7 +211,7 @@ namespace ICSharpCode.SharpDevelop.Project base.FilterProperties(globalizedProps); PropertyDescriptor copyLocalPD = globalizedProps["CopyLocal"]; globalizedProps.Remove(copyLocalPD); - if (defaultCopyLocalValue != null) { + if (defaultCopyLocalValue != null && !EmbedInteropTypes) { globalizedProps.Add(new ReplaceDefaultValueDescriptor(copyLocalPD, defaultCopyLocalValue.Value)); } else { globalizedProps.Add(new DummyValueDescriptor(copyLocalPD));