Skip to content
This repository was archived by the owner on Oct 16, 2020. It is now read-only.

Commit bb4e74c

Browse files
committed
Worked on IProjectService API.
1 parent 9ee497e commit bb4e74c

59 files changed

Lines changed: 439 additions & 572 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

src/AddIns/Analysis/UnitTesting/Test/NUnit/CreateNUnitTestRunnerTestFixture.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ public override void FixtureSetUp()
2222
{
2323
base.FixtureSetUp();
2424
SD.Services.AddService(typeof(IBookmarkManager), MockRepository.GenerateStub<IBookmarkManager>());
25+
SD.Services.AddService(typeof(IProjectService), MockRepository.GenerateStub<IProjectService>());
2526
project = MockRepository.GenerateStub<IProject>();
2627
testProject = new NUnitTestProject(project);
2728
}

src/AddIns/Analysis/UnitTesting/TestRunner/TestExecutionManager.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ public async Task RunTestsAsync(IEnumerable<ITest> selectedTests, TestExecutionO
7676
cancellationToken.ThrowIfCancellationRequested();
7777
using (IProgressMonitor progressMonitor = statusBarService.CreateProgressMonitor(cancellationToken)) {
7878
int projectsLeftToRun = testsByProject.Count;
79-
foreach (IGrouping<ITestProject, ITest> g in testsByProject) {
79+
foreach (IGrouping<ITestProject, ITest> g in testsByProject.OrderBy(g => g.Key.DisplayName)) {
8080
currentProjectBeingTested = g.Key;
8181
progressMonitor.TaskName = GetProgressMonitorLabel(currentProjectBeingTested);
8282
progressMonitor.Progress = GetProgress(projectsLeftToRun);

src/AddIns/BackendBindings/CSharpBinding/Project/Src/Refactoring/MoveTypeToFileContextAction.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
using System.Threading;
1010
using System.Threading.Tasks;
1111
using ICSharpCode.AvalonEdit.Document;
12+
using ICSharpCode.Core;
1213
using ICSharpCode.NRefactory.CSharp;
1314
using ICSharpCode.NRefactory.CSharp.Refactoring;
1415
using ICSharpCode.NRefactory.Editor;
@@ -49,7 +50,7 @@ public override async void Execute(EditorRefactoringContext context)
4950
EntityDeclaration node = (EntityDeclaration)st.GetNodeAt(context.CaretLocation, n => n is TypeDeclaration || n is DelegateDeclaration);
5051
IDocument document = context.Editor.Document;
5152

52-
string newFileName = Path.Combine(Path.GetDirectoryName(context.FileName), MakeValidFileName(node.Name));
53+
FileName newFileName = FileName.Create(Path.Combine(Path.GetDirectoryName(context.FileName), MakeValidFileName(node.Name)));
5354
string header = CopyFileHeader(document, info);
5455
string footer = CopyFileEnd(document, info);
5556

src/AddIns/BackendBindings/WixBinding/Test/Utils/MockWorkbench.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -175,7 +175,7 @@ public bool FullScreen {
175175
}
176176
}
177177

178-
public bool CloseAllSolutionViews()
178+
public bool CloseAllSolutionViews(bool force)
179179
{
180180
throw new NotImplementedException();
181181
}

src/AddIns/DisplayBindings/AvalonEdit.AddIn/Src/Snippets/SnippetCompletionItem.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ public SnippetCompletionItem(ITextEditor textEditor, CodeSnippet codeSnippet)
3535
throw new ArgumentException("textEditor must be an AvalonEdit text editor");
3636
this.codeSnippet = codeSnippet;
3737

38-
this.Priority = CodeCompletionDataUsageCache.GetPriority("snippet" + codeSnippet.Name, true);
38+
//this.Priority = CodeCompletionDataUsageCache.GetPriority("snippet" + codeSnippet.Name, true);
3939
}
4040

4141
public bool AlwaysInsertSnippet { get; set; }

src/AddIns/Misc/PackageManagement/Project/Src/Design/FakePackageManagementProjectService.cs

Lines changed: 9 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
using System.Collections.Generic;
66
using ICSharpCode.NRefactory.TypeSystem;
77
using ICSharpCode.PackageManagement;
8+
using ICSharpCode.SharpDevelop;
89
using ICSharpCode.SharpDevelop.Dom;
910
using ICSharpCode.SharpDevelop.Project;
1011

@@ -17,54 +18,29 @@ public class FakePackageManagementProjectService : IPackageManagementProjectServ
1718
public IProject CurrentProject { get; set; }
1819
public ISolution OpenSolution { get; set; }
1920

20-
public event EventHandler<ProjectEventArgs> ProjectAdded;
21-
public event SolutionFolderEventHandler SolutionFolderRemoved;
22-
public event EventHandler SolutionClosed;
23-
public event EventHandler<SolutionEventArgs> SolutionLoaded;
21+
public event EventHandler<SolutionEventArgs> SolutionClosed;
2422

2523
public void RefreshProjectBrowser()
2624
{
2725
IsRefreshProjectBrowserCalled = true;
28-
}
29-
30-
public void FireProjectAddedEvent(IProject project)
31-
{
32-
if (ProjectAdded != null) {
33-
ProjectAdded(this, new ProjectEventArgs(project));
34-
}
3526
}
3627

37-
public void FireSolutionClosedEvent()
28+
public void FireSolutionClosedEvent(ISolution solution)
3829
{
3930
if (SolutionClosed != null) {
40-
SolutionClosed(this, new EventArgs());
41-
}
42-
}
43-
44-
public void FireSolutionLoadedEvent(ISolution solution)
45-
{
46-
if (SolutionLoaded != null) {
47-
SolutionLoaded(this, new SolutionEventArgs(solution));
48-
}
49-
}
50-
51-
public void FireSolutionFolderRemoved(ISolutionItem solutionFolder)
52-
{
53-
if (SolutionFolderRemoved != null) {
54-
SolutionFolderRemoved(this, new SolutionFolderEventArgs(solutionFolder));
31+
SolutionClosed(this, new SolutionEventArgs(solution));
5532
}
5633
}
5734

58-
public List<IProject> FakeOpenProjects = new List<IProject>();
35+
public readonly ConcatModelCollection<IProject> AllProjects = new ConcatModelCollection<IProject>();
5936

60-
public void AddFakeProject(IProject project)
61-
{
62-
FakeOpenProjects.Add(project);
37+
IModelCollection<IProject> IPackageManagementProjectService.AllProjects {
38+
get { return AllProjects; }
6339
}
6440

65-
public IEnumerable<IProject> GetOpenProjects()
41+
public void AddProject(IProject project)
6642
{
67-
return FakeOpenProjects;
43+
AllProjects.Inputs.Add(new ReadOnlyModelCollection<IProject>(new[] { project }));
6844
}
6945

7046
public void AddProjectItem(IProject project, ProjectItem item)

src/AddIns/Misc/PackageManagement/Project/Src/IPackageManagementProjectService.cs

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
using System;
55
using System.Collections.Generic;
66
using ICSharpCode.NRefactory.TypeSystem;
7+
using ICSharpCode.SharpDevelop;
78
using ICSharpCode.SharpDevelop.Dom;
89
using ICSharpCode.SharpDevelop.Project;
910

@@ -15,18 +16,15 @@ public interface IPackageManagementProjectService
1516
ISolution OpenSolution { get; }
1617
IProjectBuilder ProjectBuilder { get; }
1718

18-
event EventHandler<ProjectEventArgs> ProjectAdded;
19-
event SolutionFolderEventHandler SolutionFolderRemoved;
20-
event EventHandler SolutionClosed;
21-
event EventHandler<SolutionEventArgs> SolutionLoaded;
19+
event EventHandler<SolutionEventArgs> SolutionClosed;
2220

2321
void RefreshProjectBrowser();
2422
void AddProjectItem(IProject project, ProjectItem item);
2523
void RemoveProjectItem(IProject project, ProjectItem item);
2624
void Save(IProject project);
2725
void Save(ISolution solution);
2826

29-
IEnumerable<IProject> GetOpenProjects();
27+
IModelCollection<IProject> AllProjects { get; }
3028

3129
//IProjectContent GetProjectContent(IProject project);
3230

src/AddIns/Misc/PackageManagement/Project/Src/OpenMSBuildProjects.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ public OpenMSBuildProjects(IPackageManagementProjectService projectService)
1919

2020
public MSBuildBasedProject FindProject(string name)
2121
{
22-
foreach (IProject project in projectService.GetOpenProjects()) {
22+
foreach (IProject project in projectService.AllProjects) {
2323
if (IsProjectNameMatch(project, name)) {
2424
return project as MSBuildBasedProject;
2525
}

src/AddIns/Misc/PackageManagement/Project/Src/PackageManagementProjectService.cs

Lines changed: 6 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77

88
using ICSharpCode.NRefactory.TypeSystem;
99
using ICSharpCode.SharpDevelop;
10+
using ICSharpCode.SharpDevelop.Dom;
1011
using ICSharpCode.SharpDevelop.Gui;
1112
using ICSharpCode.SharpDevelop.Project;
1213
using ICSharpCode.SharpDevelop.Project.Commands;
@@ -48,13 +49,8 @@ T InvokeIfRequired<T>(Func<T> callback)
4849
return SD.MainThread.InvokeIfRequired(callback);
4950
}
5051

51-
public IEnumerable<IProject> GetOpenProjects()
52-
{
53-
ISolution solution = OpenSolution;
54-
if (solution != null) {
55-
return solution.Projects;
56-
}
57-
return new IProject[0];
52+
public IModelCollection<IProject> AllProjects {
53+
get { return SD.ProjectService.AllProjects; }
5854
}
5955

6056
public void AddProjectItem(IProject project, ProjectItem item)
@@ -82,26 +78,11 @@ public void Save(ISolution solution)
8278
// return SD.ParserService.GetProjectContent(project);
8379
// }
8480

85-
public event EventHandler<ProjectEventArgs> ProjectAdded {
86-
add { ProjectService.ProjectAdded += value; }
87-
remove { ProjectService.ProjectAdded -= value; }
81+
public event EventHandler<SolutionEventArgs> SolutionClosed {
82+
add { SD.ProjectService.SolutionClosed += value; }
83+
remove { SD.ProjectService.SolutionClosed -= value; }
8884
}
8985

90-
public event EventHandler SolutionClosed {
91-
add { ProjectService.SolutionClosed += value; }
92-
remove { ProjectService.SolutionClosed -= value; }
93-
}
94-
95-
public event EventHandler<SolutionEventArgs> SolutionLoaded {
96-
add { ProjectService.SolutionLoaded += value; }
97-
remove { ProjectService.SolutionLoaded -= value; }
98-
}
99-
100-
public event SolutionFolderEventHandler SolutionFolderRemoved {
101-
add { ProjectService.SolutionFolderRemoved += value; }
102-
remove { ProjectService.SolutionFolderRemoved -= value; }
103-
}
104-
10586
public IProjectBrowserUpdater CreateProjectBrowserUpdater()
10687
{
10788
return new ThreadSafeProjectBrowserUpdater();

src/AddIns/Misc/PackageManagement/Project/Src/PackageManagementSolution.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -126,7 +126,7 @@ public IPackageManagementProject GetProject(IPackageRepository sourceRepository,
126126

127127
public IEnumerable<IProject> GetMSBuildProjects()
128128
{
129-
return projectService.GetOpenProjects();
129+
return projectService.AllProjects;
130130
}
131131

132132
public bool IsOpen {
@@ -135,7 +135,7 @@ public bool IsOpen {
135135

136136
public bool HasMultipleProjects()
137137
{
138-
return projectService.GetOpenProjects().Count() > 1;
138+
return projectService.AllProjects.Count > 1;
139139
}
140140

141141
public bool IsPackageInstalled(IPackage package)
@@ -169,7 +169,7 @@ public IEnumerable<IPackage> GetPackagesInReverseDependencyOrder()
169169

170170
public IEnumerable<IPackageManagementProject> GetProjects(IPackageRepository sourceRepository)
171171
{
172-
foreach (MSBuildBasedProject msbuildProject in GetMSBuildProjects()) {
172+
foreach (MSBuildBasedProject msbuildProject in GetMSBuildProjects().OfType<MSBuildBasedProject>()) {
173173
yield return projectFactory.CreateProject(sourceRepository, msbuildProject);
174174
}
175175
}

0 commit comments

Comments
 (0)