Browse Source

Make EnvDTE available to T4 templates.

pull/23/head
Matt Ward 15 years ago
parent
commit
ac4bb7b171
  1. 9
      src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/ChildProjectItems.cs
  2. 2
      src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/ColorableItems.cs
  3. 2
      src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/DTE.cs
  4. 2
      src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/FontsAndColorsItems.cs
  5. 2
      src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/ItemOperations.cs
  6. 2
      src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/Project.cs
  7. 2
      src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/ProjectItem.cs
  8. 7
      src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/ProjectItemPropertyFactory.cs
  9. 2
      src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/ProjectItems.cs
  10. 7
      src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/ProjectItemsInsideProject.cs
  11. 2
      src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/ProjectObject.cs
  12. 8
      src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/ProjectPropertyFactory.cs
  13. 2
      src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/Properties.cs
  14. 2
      src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/Property.cs
  15. 2
      src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/Reference.cs
  16. 10
      src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/References.cs
  17. 2
      src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/Solution.cs
  18. 7
      src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/TextEditorFontsAndColorsPropertyFactory.cs

9
src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/ChildProjectItems.cs

@ -5,6 +5,7 @@ using System;
using System.Collections; using System.Collections;
using System.Collections.Generic; using System.Collections.Generic;
using System.IO; using System.IO;
using System.Linq;
using ICSharpCode.SharpDevelop.Project; using ICSharpCode.SharpDevelop.Project;
using SD = ICSharpCode.SharpDevelop.Project; using SD = ICSharpCode.SharpDevelop.Project;
@ -28,13 +29,19 @@ namespace ICSharpCode.PackageManagement.EnvDTE
} }
public IEnumerator<ProjectItem> GetEnumerator() public IEnumerator<ProjectItem> GetEnumerator()
{
List<ProjectItem> projectItems = GetProjectItems().ToList();
return projectItems.GetEnumerator();
}
IEnumerable<ProjectItem> GetProjectItems()
{ {
foreach (SD.ProjectItem msbuildProjectItem in Project.MSBuildProject.Items) { foreach (SD.ProjectItem msbuildProjectItem in Project.MSBuildProject.Items) {
ProjectItem item = ConvertToProjectItem(msbuildProjectItem); ProjectItem item = ConvertToProjectItem(msbuildProjectItem);
if (item != null) { if (item != null) {
yield return item; yield return item;
} }
} }
} }
ProjectItem ConvertToProjectItem(SD.ProjectItem msbuildProjectItem) ProjectItem ConvertToProjectItem(SD.ProjectItem msbuildProjectItem)

2
src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/ColorableItems.cs

@ -8,7 +8,7 @@ using ICSharpCode.AvalonEdit.AddIn;
namespace ICSharpCode.PackageManagement.EnvDTE namespace ICSharpCode.PackageManagement.EnvDTE
{ {
public class ColorableItems public class ColorableItems : MarshalByRefObject
{ {
public static readonly Wpf.Color DefaultForegroundColor = System.Windows.SystemColors.WindowTextColor; public static readonly Wpf.Color DefaultForegroundColor = System.Windows.SystemColors.WindowTextColor;
public static readonly Wpf.Color DefaultBackgroundColor = System.Windows.SystemColors.WindowColor; public static readonly Wpf.Color DefaultBackgroundColor = System.Windows.SystemColors.WindowColor;

2
src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/DTE.cs

@ -9,7 +9,7 @@ using SD = ICSharpCode.SharpDevelop.Project;
namespace ICSharpCode.PackageManagement.EnvDTE namespace ICSharpCode.PackageManagement.EnvDTE
{ {
public class DTE public class DTE : MarshalByRefObject
{ {
IPackageManagementProjectService projectService; IPackageManagementProjectService projectService;
IPackageManagementFileService fileService; IPackageManagementFileService fileService;

2
src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/FontsAndColorsItems.cs

@ -7,7 +7,7 @@ using ICSharpCode.AvalonEdit.AddIn;
namespace ICSharpCode.PackageManagement.EnvDTE namespace ICSharpCode.PackageManagement.EnvDTE
{ {
public class FontsAndColorsItems public class FontsAndColorsItems : MarshalByRefObject
{ {
static readonly string PlainTextItem = "Plain Text"; static readonly string PlainTextItem = "Plain Text";

2
src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/ItemOperations.cs

@ -5,7 +5,7 @@ using System;
namespace ICSharpCode.PackageManagement.EnvDTE namespace ICSharpCode.PackageManagement.EnvDTE
{ {
public class ItemOperations public class ItemOperations : MarshalByRefObject
{ {
IPackageManagementFileService fileService; IPackageManagementFileService fileService;

2
src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/Project.cs

@ -11,7 +11,7 @@ using SD = ICSharpCode.SharpDevelop.Project;
namespace ICSharpCode.PackageManagement.EnvDTE namespace ICSharpCode.PackageManagement.EnvDTE
{ {
public class Project public class Project : MarshalByRefObject
{ {
IPackageManagementProjectService projectService; IPackageManagementProjectService projectService;
IPackageManagementFileService fileService; IPackageManagementFileService fileService;

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

@ -10,7 +10,7 @@ using ICSharpCode.SharpDevelop.Project;
namespace ICSharpCode.PackageManagement.EnvDTE namespace ICSharpCode.PackageManagement.EnvDTE
{ {
public class ProjectItem public class ProjectItem : MarshalByRefObject
{ {
SD.FileProjectItem projectItem; SD.FileProjectItem projectItem;

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

@ -3,6 +3,7 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq;
namespace ICSharpCode.PackageManagement.EnvDTE namespace ICSharpCode.PackageManagement.EnvDTE
{ {
@ -21,6 +22,12 @@ namespace ICSharpCode.PackageManagement.EnvDTE
} }
public IEnumerator<Property> GetEnumerator() public IEnumerator<Property> GetEnumerator()
{
List<Property> properties = GetProperties().ToList();
return properties.GetEnumerator();
}
IEnumerable<Property> GetProperties()
{ {
yield return new ProjectItemProperty(projectItem, ProjectItem.CopyToOutputDirectoryPropertyName); yield return new ProjectItemProperty(projectItem, ProjectItem.CopyToOutputDirectoryPropertyName);
yield return new ProjectItemProperty(projectItem, ProjectItem.CustomToolPropertyName); yield return new ProjectItemProperty(projectItem, ProjectItem.CustomToolPropertyName);

2
src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/ProjectItems.cs

@ -8,7 +8,7 @@ using System.IO;
namespace ICSharpCode.PackageManagement.EnvDTE namespace ICSharpCode.PackageManagement.EnvDTE
{ {
public class ProjectItems : IEnumerable<ProjectItem> public class ProjectItems : MarshalByRefObject, IEnumerable<ProjectItem>
{ {
Project project; Project project;
IPackageManagementFileService fileService; IPackageManagementFileService fileService;

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

@ -5,6 +5,7 @@ using System;
using System.Collections; using System.Collections;
using System.Collections.Generic; using System.Collections.Generic;
using System.IO; using System.IO;
using System.Linq;
using SD = ICSharpCode.SharpDevelop.Project; using SD = ICSharpCode.SharpDevelop.Project;
using ICSharpCode.SharpDevelop.Project; using ICSharpCode.SharpDevelop.Project;
@ -22,6 +23,12 @@ namespace ICSharpCode.PackageManagement.EnvDTE
} }
public IEnumerator<ProjectItem> GetEnumerator() public IEnumerator<ProjectItem> GetEnumerator()
{
List<ProjectItem> projectItems = GetProjectItems().ToList();
return projectItems.GetEnumerator();
}
IEnumerable<ProjectItem> GetProjectItems()
{ {
foreach (SD.ProjectItem item in project.MSBuildProject.Items) { foreach (SD.ProjectItem item in project.MSBuildProject.Items) {
ProjectItem projectItem = ConvertToProjectItem(item); ProjectItem projectItem = ConvertToProjectItem(item);

2
src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/ProjectObject.cs

@ -6,7 +6,7 @@ using ICSharpCode.SharpDevelop.Project;
namespace ICSharpCode.PackageManagement.EnvDTE namespace ICSharpCode.PackageManagement.EnvDTE
{ {
public class ProjectObject public class ProjectObject : MarshalByRefObject
{ {
public ProjectObject(Project project) public ProjectObject(Project project)
{ {

8
src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/ProjectPropertyFactory.cs

@ -3,6 +3,8 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq;
using ICSharpCode.SharpDevelop.Project; using ICSharpCode.SharpDevelop.Project;
using Microsoft.Build.Construction; using Microsoft.Build.Construction;
@ -23,6 +25,12 @@ namespace ICSharpCode.PackageManagement.EnvDTE
} }
public IEnumerator<Property> GetEnumerator() public IEnumerator<Property> GetEnumerator()
{
List<Property> properties = GetProperties().ToList();
return properties.GetEnumerator();
}
IEnumerable<Property> GetProperties()
{ {
foreach (string propertyName in project.GetAllPropertyNames()) { foreach (string propertyName in project.GetAllPropertyNames()) {
yield return CreateProperty(propertyName); yield return CreateProperty(propertyName);

2
src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/Properties.cs

@ -8,7 +8,7 @@ using ICSharpCode.SharpDevelop.Project;
namespace ICSharpCode.PackageManagement.EnvDTE namespace ICSharpCode.PackageManagement.EnvDTE
{ {
public class Properties : IEnumerable<Property> public class Properties : MarshalByRefObject, IEnumerable<Property>
{ {
IPropertyFactory propertyFactory; IPropertyFactory propertyFactory;

2
src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/Property.cs

@ -6,7 +6,7 @@ using ICSharpCode.SharpDevelop.Project;
namespace ICSharpCode.PackageManagement.EnvDTE namespace ICSharpCode.PackageManagement.EnvDTE
{ {
public class Property public class Property : MarshalByRefObject
{ {
public Property(string name) public Property(string name)
{ {

2
src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/Reference.cs

@ -6,7 +6,7 @@ using ICSharpCode.SharpDevelop.Project;
namespace ICSharpCode.PackageManagement.EnvDTE namespace ICSharpCode.PackageManagement.EnvDTE
{ {
public class Reference public class Reference : MarshalByRefObject
{ {
ReferenceProjectItem referenceProjectItem; ReferenceProjectItem referenceProjectItem;
Project project; Project project;

10
src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/References.cs

@ -4,11 +4,13 @@
using System; using System;
using System.Collections; using System.Collections;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq;
using ICSharpCode.SharpDevelop.Project; using ICSharpCode.SharpDevelop.Project;
namespace ICSharpCode.PackageManagement.EnvDTE namespace ICSharpCode.PackageManagement.EnvDTE
{ {
public class References : IEnumerable<Reference> public class References : MarshalByRefObject, IEnumerable<Reference>
{ {
MSBuildBasedProject msbuildProject; MSBuildBasedProject msbuildProject;
IPackageManagementProjectService projectService; IPackageManagementProjectService projectService;
@ -44,6 +46,12 @@ namespace ICSharpCode.PackageManagement.EnvDTE
} }
public IEnumerator<Reference> GetEnumerator() public IEnumerator<Reference> GetEnumerator()
{
List<Reference> references = GetReferences().ToList();
return references.GetEnumerator();
}
IEnumerable<Reference> GetReferences()
{ {
foreach (ReferenceProjectItem referenceProjectItem in project.GetReferences()) { foreach (ReferenceProjectItem referenceProjectItem in project.GetReferences()) {
yield return new Reference(project, referenceProjectItem); yield return new Reference(project, referenceProjectItem);

2
src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/Solution.cs

@ -6,7 +6,7 @@ using SD = ICSharpCode.SharpDevelop.Project;
namespace ICSharpCode.PackageManagement.EnvDTE namespace ICSharpCode.PackageManagement.EnvDTE
{ {
public class Solution public class Solution : MarshalByRefObject
{ {
SD.Solution solution; SD.Solution solution;

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

@ -3,6 +3,7 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq;
namespace ICSharpCode.PackageManagement.EnvDTE namespace ICSharpCode.PackageManagement.EnvDTE
{ {
@ -34,6 +35,12 @@ namespace ICSharpCode.PackageManagement.EnvDTE
} }
public IEnumerator<Property> GetEnumerator() public IEnumerator<Property> GetEnumerator()
{
List<Property> properties = GetProperties().ToList();
return properties.GetEnumerator();
}
IEnumerable<Property> GetProperties()
{ {
yield return new TextEditorFontSizeProperty(); yield return new TextEditorFontSizeProperty();
yield return new TextEditorFontsAndColorsItemsProperty(); yield return new TextEditorFontsAndColorsItemsProperty();

Loading…
Cancel
Save