Browse Source

EnvDTE types now implement parameterised properties instead of methods.

EnvDTE.ProjectItem.FileNames and EnvDTE.CodeType.IsDerivedFrom are now parameterised properties
to match the Visual Studio API.
pull/28/head
Matt Ward 13 years ago
parent
commit
1671b462e9
  1. 7
      src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/CodeElement.cs
  2. 2
      src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/CodeType.cs
  3. 4
      src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/ProjectItem.cs
  4. 4
      src/AddIns/Misc/PackageManagement/SharpDevelop.EnvDTE/SharpDevelop.EnvDTE.vbproj
  5. 16
      src/AddIns/Misc/PackageManagement/SharpDevelop.EnvDTE/Src/CodeElementBase.vb
  6. 2
      src/AddIns/Misc/PackageManagement/SharpDevelop.EnvDTE/Src/CodeType.vb
  7. 2
      src/AddIns/Misc/PackageManagement/SharpDevelop.EnvDTE/Src/ProjectItem.vb
  8. 16
      src/AddIns/Misc/PackageManagement/SharpDevelop.EnvDTE/Src/ProjectItemBase.vb
  9. 10
      src/AddIns/Misc/PackageManagement/Test/Src/EnvDTE/CodeTypeTests.cs
  10. 2
      src/AddIns/Misc/PackageManagement/Test/Src/EnvDTE/ProjectItemTests.cs

7
src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/CodeElement.cs

@ -7,7 +7,7 @@ using ICSharpCode.SharpDevelop.Project;
namespace ICSharpCode.PackageManagement.EnvDTE namespace ICSharpCode.PackageManagement.EnvDTE
{ {
public class CodeElement : MarshalByRefObject, global::EnvDTE.CodeElement public class CodeElement : global::EnvDTE.CodeElementBase, global::EnvDTE.CodeElement
{ {
DTE dte; DTE dte;
@ -68,5 +68,10 @@ namespace ICSharpCode.PackageManagement.EnvDTE
public virtual global::EnvDTE.vsCMElement Kind { public virtual global::EnvDTE.vsCMElement Kind {
get { return global::EnvDTE.vsCMElement.vsCMElementOther; } get { return global::EnvDTE.vsCMElement.vsCMElementOther; }
} }
protected override bool GetIsDerivedFrom(string fullName)
{
return false;
}
} }
} }

2
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 /// Returns true if the current type matches the fully qualified name or any of its
/// base types are a match. /// base types are a match.
/// </summary> /// </summary>
public virtual bool IsDerivedFrom(string fullName) protected override bool GetIsDerivedFrom(string fullName)
{ {
return Class.IsDerivedFrom(fullName); return Class.IsDerivedFrom(fullName);
} }

4
src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/ProjectItem.cs

@ -13,7 +13,7 @@ using SD = ICSharpCode.SharpDevelop.Project;
namespace ICSharpCode.PackageManagement.EnvDTE namespace ICSharpCode.PackageManagement.EnvDTE
{ {
public class ProjectItem : MarshalByRefObject, global::EnvDTE.ProjectItem public class ProjectItem : global::EnvDTE.ProjectItemBase, global::EnvDTE.ProjectItem
{ {
SD.FileProjectItem projectItem; SD.FileProjectItem projectItem;
Project containingProject; Project containingProject;
@ -177,7 +177,7 @@ namespace ICSharpCode.PackageManagement.EnvDTE
get { return projectItem; } get { return projectItem; }
} }
public virtual string FileNames(short index) protected override string GetFileNames(short index)
{ {
return FileName; return FileName;
} }

4
src/AddIns/Misc/PackageManagement/SharpDevelop.EnvDTE/SharpDevelop.EnvDTE.vbproj

@ -90,6 +90,7 @@
<Compile Include="Src\ItemOperations.vb" /> <Compile Include="Src\ItemOperations.vb" />
<Compile Include="Src\Project.vb" /> <Compile Include="Src\Project.vb" />
<Compile Include="Src\ProjectItem.vb" /> <Compile Include="Src\ProjectItem.vb" />
<Compile Include="Src\ProjectItemBase.vb" />
<Compile Include="Src\ProjectItems.vb" /> <Compile Include="Src\ProjectItems.vb" />
<Compile Include="Src\ProjectObject.vb" /> <Compile Include="Src\ProjectObject.vb" />
<Compile Include="Src\Projects.vb" /> <Compile Include="Src\Projects.vb" />
@ -128,5 +129,8 @@
<ItemGroup> <ItemGroup>
<Compile Include="Src\Constants.vb" /> <Compile Include="Src\Constants.vb" />
</ItemGroup> </ItemGroup>
<ItemGroup>
<Compile Include="Src\CodeElementBase.vb" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" /> <Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" />
</Project> </Project>

16
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

2
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 ''' Returns true if the current type matches the fully qualified name or any of its
''' base types are a match. ''' base types are a match.
''' </summary> ''' </summary>
Function IsDerivedFrom(fullName As String) As Boolean ReadOnly Property IsDerivedFrom (fullName As String) As Boolean
End Interface End Interface
End Namespace End Namespace

2
src/AddIns/Misc/PackageManagement/SharpDevelop.EnvDTE/Src/ProjectItem.vb

@ -11,11 +11,11 @@ Namespace EnvDTE
ReadOnly Property ProjectItems() As ProjectItems ReadOnly Property ProjectItems() As ProjectItems
ReadOnly Property FileCodeModel() As FileCodeModel2 ReadOnly Property FileCodeModel() As FileCodeModel2
ReadOnly Property Document() As Document ReadOnly Property Document() As Document
ReadOnly Property FileNames(index As Short) As String
ReadOnly Property FileCount() As Short ReadOnly Property FileCount() As Short
Sub Delete() Sub Delete()
Sub Remove() Sub Remove()
Function FileNames(index As Short) As String
Function Open(viewKind As String) As Global.EnvDTE.Window Function Open(viewKind As String) As Global.EnvDTE.Window
End Interface End Interface
End Namespace End Namespace

16
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

10
src/AddIns/Misc/PackageManagement/Test/Src/EnvDTE/CodeTypeTests.cs

@ -137,7 +137,7 @@ namespace PackageManagement.Tests.EnvDTE
CreateClass("System.Web.Mvc.ActionResult"); CreateClass("System.Web.Mvc.ActionResult");
CreateCodeType(); CreateCodeType();
bool derivedFrom = codeType.IsDerivedFrom("System.Web.Mvc.ActionResult"); bool derivedFrom = codeType.get_IsDerivedFrom("System.Web.Mvc.ActionResult");
Assert.IsTrue(derivedFrom); Assert.IsTrue(derivedFrom);
} }
@ -150,7 +150,7 @@ namespace PackageManagement.Tests.EnvDTE
AddClassInheritanceTree("System.Object"); AddClassInheritanceTree("System.Object");
CreateCodeType(); CreateCodeType();
bool derivedFrom = codeType.IsDerivedFrom("System.Web.Mvc.ActionResult"); bool derivedFrom = codeType.get_IsDerivedFrom("System.Web.Mvc.ActionResult");
Assert.IsFalse(derivedFrom); Assert.IsFalse(derivedFrom);
} }
@ -163,7 +163,7 @@ namespace PackageManagement.Tests.EnvDTE
helper.AddBaseTypeToClass("System.Web.Mvc.ActionResult"); helper.AddBaseTypeToClass("System.Web.Mvc.ActionResult");
CreateCodeType(); CreateCodeType();
bool derivedFrom = codeType.IsDerivedFrom("System.Web.Mvc.ActionResult"); bool derivedFrom = codeType.get_IsDerivedFrom("System.Web.Mvc.ActionResult");
Assert.IsTrue(derivedFrom); Assert.IsTrue(derivedFrom);
} }
@ -176,7 +176,7 @@ namespace PackageManagement.Tests.EnvDTE
AddClassInheritanceTree("CustomActionResultBase", "System.Web.Mvc.ActionResult"); AddClassInheritanceTree("CustomActionResultBase", "System.Web.Mvc.ActionResult");
CreateCodeType(); CreateCodeType();
bool derivedFrom = codeType.IsDerivedFrom("System.Web.Mvc.ActionResult"); bool derivedFrom = codeType.get_IsDerivedFrom("System.Web.Mvc.ActionResult");
Assert.IsTrue(derivedFrom); Assert.IsTrue(derivedFrom);
} }
@ -190,7 +190,7 @@ namespace PackageManagement.Tests.EnvDTE
AddClassInheritanceTree("CustomActionResultBase", "System.Web.Mvc.ActionResult"); AddClassInheritanceTree("CustomActionResultBase", "System.Web.Mvc.ActionResult");
CreateCodeType(); CreateCodeType();
bool derivedFrom = codeType.IsDerivedFrom("System.Web.Mvc.ActionResult"); bool derivedFrom = codeType.get_IsDerivedFrom("System.Web.Mvc.ActionResult");
Assert.IsTrue(derivedFrom); Assert.IsTrue(derivedFrom);
} }

2
src/AddIns/Misc/PackageManagement/Test/Src/EnvDTE/ProjectItemTests.cs

@ -245,7 +245,7 @@ namespace PackageManagement.Tests.EnvDTE
msbuildProject.AddFile(@"src\program.cs"); msbuildProject.AddFile(@"src\program.cs");
global::EnvDTE.ProjectItem directoryItem = projectItems.Item("src"); 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); Assert.AreEqual(@"d:\projects\MyProject\src", fileName);
} }

Loading…
Cancel
Save