diff --git a/src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/CodeElement.cs b/src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/CodeElement.cs index 8de4c1504b..3dc6924b64 100644 --- a/src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/CodeElement.cs +++ b/src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/CodeElement.cs @@ -7,7 +7,7 @@ using ICSharpCode.SharpDevelop.Project; namespace ICSharpCode.PackageManagement.EnvDTE { - public class CodeElement : MarshalByRefObject, global::EnvDTE.CodeElement + public class CodeElement : global::EnvDTE.CodeElementBase, global::EnvDTE.CodeElement { DTE dte; @@ -68,5 +68,10 @@ namespace ICSharpCode.PackageManagement.EnvDTE public virtual global::EnvDTE.vsCMElement Kind { get { return global::EnvDTE.vsCMElement.vsCMElementOther; } } + + protected override bool GetIsDerivedFrom(string fullName) + { + return false; + } } } diff --git a/src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/CodeType.cs b/src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/CodeType.cs index d7433c1690..471ce3d0be 100644 --- a/src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/CodeType.cs +++ b/src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/CodeType.cs @@ -83,7 +83,7 @@ namespace ICSharpCode.PackageManagement.EnvDTE /// Returns true if the current type matches the fully qualified name or any of its /// base types are a match. /// - public virtual bool IsDerivedFrom(string fullName) + protected override bool GetIsDerivedFrom(string fullName) { return Class.IsDerivedFrom(fullName); } diff --git a/src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/ProjectItem.cs b/src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/ProjectItem.cs index 6b5615fa85..3e1d42c0b1 100644 --- a/src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/ProjectItem.cs +++ b/src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/ProjectItem.cs @@ -13,7 +13,7 @@ using SD = ICSharpCode.SharpDevelop.Project; namespace ICSharpCode.PackageManagement.EnvDTE { - public class ProjectItem : MarshalByRefObject, global::EnvDTE.ProjectItem + public class ProjectItem : global::EnvDTE.ProjectItemBase, global::EnvDTE.ProjectItem { SD.FileProjectItem projectItem; Project containingProject; @@ -177,7 +177,7 @@ namespace ICSharpCode.PackageManagement.EnvDTE get { return projectItem; } } - public virtual string FileNames(short index) + protected override string GetFileNames(short index) { return FileName; } diff --git a/src/AddIns/Misc/PackageManagement/SharpDevelop.EnvDTE/SharpDevelop.EnvDTE.vbproj b/src/AddIns/Misc/PackageManagement/SharpDevelop.EnvDTE/SharpDevelop.EnvDTE.vbproj index 0661024977..e002abf0b0 100644 --- a/src/AddIns/Misc/PackageManagement/SharpDevelop.EnvDTE/SharpDevelop.EnvDTE.vbproj +++ b/src/AddIns/Misc/PackageManagement/SharpDevelop.EnvDTE/SharpDevelop.EnvDTE.vbproj @@ -90,6 +90,7 @@ + @@ -128,5 +129,8 @@ + + + \ No newline at end of file diff --git a/src/AddIns/Misc/PackageManagement/SharpDevelop.EnvDTE/Src/CodeElementBase.vb b/src/AddIns/Misc/PackageManagement/SharpDevelop.EnvDTE/Src/CodeElementBase.vb new file mode 100644 index 0000000000..9aa975c7e5 --- /dev/null +++ b/src/AddIns/Misc/PackageManagement/SharpDevelop.EnvDTE/Src/CodeElementBase.vb @@ -0,0 +1,16 @@ +' Copyright (c) AlphaSierraPapa for the SharpDevelop Team (for details please see \doc\copyright.txt) +' This code is distributed under the GNU LGPL (for details please see \doc\license.txt) + +Namespace EnvDTE + Public MustInherit Class CodeElementBase + Inherits MarshalByRefObject + + ReadOnly Property IsDerivedFrom(fullName As String) As Boolean + Get + Return GetIsDerivedFrom(fullName) + End Get + End Property + + Protected MustOverride Function GetIsDerivedFrom(ByVal fullName As String) As Boolean + End Class +End Namespace \ No newline at end of file diff --git a/src/AddIns/Misc/PackageManagement/SharpDevelop.EnvDTE/Src/CodeType.vb b/src/AddIns/Misc/PackageManagement/SharpDevelop.EnvDTE/Src/CodeType.vb index 39480aa503..2c178b00a0 100644 --- a/src/AddIns/Misc/PackageManagement/SharpDevelop.EnvDTE/Src/CodeType.vb +++ b/src/AddIns/Misc/PackageManagement/SharpDevelop.EnvDTE/Src/CodeType.vb @@ -17,6 +17,6 @@ Namespace EnvDTE ''' Returns true if the current type matches the fully qualified name or any of its ''' base types are a match. ''' - Function IsDerivedFrom(fullName As String) As Boolean + ReadOnly Property IsDerivedFrom (fullName As String) As Boolean End Interface End Namespace \ No newline at end of file diff --git a/src/AddIns/Misc/PackageManagement/SharpDevelop.EnvDTE/Src/ProjectItem.vb b/src/AddIns/Misc/PackageManagement/SharpDevelop.EnvDTE/Src/ProjectItem.vb index 7b6445075f..b8dfe7577c 100644 --- a/src/AddIns/Misc/PackageManagement/SharpDevelop.EnvDTE/Src/ProjectItem.vb +++ b/src/AddIns/Misc/PackageManagement/SharpDevelop.EnvDTE/Src/ProjectItem.vb @@ -11,11 +11,11 @@ Namespace EnvDTE ReadOnly Property ProjectItems() As ProjectItems ReadOnly Property FileCodeModel() As FileCodeModel2 ReadOnly Property Document() As Document + ReadOnly Property FileNames(index As Short) As String ReadOnly Property FileCount() As Short Sub Delete() Sub Remove() - Function FileNames(index As Short) As String Function Open(viewKind As String) As Global.EnvDTE.Window End Interface End Namespace \ No newline at end of file diff --git a/src/AddIns/Misc/PackageManagement/SharpDevelop.EnvDTE/Src/ProjectItemBase.vb b/src/AddIns/Misc/PackageManagement/SharpDevelop.EnvDTE/Src/ProjectItemBase.vb new file mode 100644 index 0000000000..d241db32ee --- /dev/null +++ b/src/AddIns/Misc/PackageManagement/SharpDevelop.EnvDTE/Src/ProjectItemBase.vb @@ -0,0 +1,16 @@ +' Copyright (c) AlphaSierraPapa for the SharpDevelop Team (for details please see \doc\copyright.txt) +' This code is distributed under the GNU LGPL (for details please see \doc\license.txt) + +Namespace EnvDTE + Public MustInherit Class ProjectItemBase + Inherits MarshalByRefObject + + ReadOnly Property FileNames(index As Short) As String + Get + Return GetFileNames(index) + End Get + End Property + + Protected MustOverride Function GetFileNames(ByVal index As Short) As String + End Class +End Namespace \ No newline at end of file diff --git a/src/AddIns/Misc/PackageManagement/Test/Src/EnvDTE/CodeTypeTests.cs b/src/AddIns/Misc/PackageManagement/Test/Src/EnvDTE/CodeTypeTests.cs index 327b1a3a83..9359776cab 100644 --- a/src/AddIns/Misc/PackageManagement/Test/Src/EnvDTE/CodeTypeTests.cs +++ b/src/AddIns/Misc/PackageManagement/Test/Src/EnvDTE/CodeTypeTests.cs @@ -137,7 +137,7 @@ namespace PackageManagement.Tests.EnvDTE CreateClass("System.Web.Mvc.ActionResult"); CreateCodeType(); - bool derivedFrom = codeType.IsDerivedFrom("System.Web.Mvc.ActionResult"); + bool derivedFrom = codeType.get_IsDerivedFrom("System.Web.Mvc.ActionResult"); Assert.IsTrue(derivedFrom); } @@ -150,7 +150,7 @@ namespace PackageManagement.Tests.EnvDTE AddClassInheritanceTree("System.Object"); CreateCodeType(); - bool derivedFrom = codeType.IsDerivedFrom("System.Web.Mvc.ActionResult"); + bool derivedFrom = codeType.get_IsDerivedFrom("System.Web.Mvc.ActionResult"); Assert.IsFalse(derivedFrom); } @@ -163,7 +163,7 @@ namespace PackageManagement.Tests.EnvDTE helper.AddBaseTypeToClass("System.Web.Mvc.ActionResult"); CreateCodeType(); - bool derivedFrom = codeType.IsDerivedFrom("System.Web.Mvc.ActionResult"); + bool derivedFrom = codeType.get_IsDerivedFrom("System.Web.Mvc.ActionResult"); Assert.IsTrue(derivedFrom); } @@ -176,7 +176,7 @@ namespace PackageManagement.Tests.EnvDTE AddClassInheritanceTree("CustomActionResultBase", "System.Web.Mvc.ActionResult"); CreateCodeType(); - bool derivedFrom = codeType.IsDerivedFrom("System.Web.Mvc.ActionResult"); + bool derivedFrom = codeType.get_IsDerivedFrom("System.Web.Mvc.ActionResult"); Assert.IsTrue(derivedFrom); } @@ -190,7 +190,7 @@ namespace PackageManagement.Tests.EnvDTE AddClassInheritanceTree("CustomActionResultBase", "System.Web.Mvc.ActionResult"); CreateCodeType(); - bool derivedFrom = codeType.IsDerivedFrom("System.Web.Mvc.ActionResult"); + bool derivedFrom = codeType.get_IsDerivedFrom("System.Web.Mvc.ActionResult"); Assert.IsTrue(derivedFrom); } diff --git a/src/AddIns/Misc/PackageManagement/Test/Src/EnvDTE/ProjectItemTests.cs b/src/AddIns/Misc/PackageManagement/Test/Src/EnvDTE/ProjectItemTests.cs index 8d37d95bfc..2802f6643d 100644 --- a/src/AddIns/Misc/PackageManagement/Test/Src/EnvDTE/ProjectItemTests.cs +++ b/src/AddIns/Misc/PackageManagement/Test/Src/EnvDTE/ProjectItemTests.cs @@ -245,7 +245,7 @@ namespace PackageManagement.Tests.EnvDTE msbuildProject.AddFile(@"src\program.cs"); global::EnvDTE.ProjectItem directoryItem = projectItems.Item("src"); - string fileName = directoryItem.FileNames(1); + string fileName = directoryItem.get_FileNames(1); Assert.AreEqual(@"d:\projects\MyProject\src", fileName); }