diff --git a/src/AddIns/Misc/PackageManagement/Project/PackageManagement.addin b/src/AddIns/Misc/PackageManagement/Project/PackageManagement.addin index 271643c62e..2e9551b194 100644 --- a/src/AddIns/Misc/PackageManagement/Project/PackageManagement.addin +++ b/src/AddIns/Misc/PackageManagement/Project/PackageManagement.addin @@ -60,7 +60,8 @@ insertbefore="TextEditorOptions"> + label="General" + class="ICSharpCode.PackageManagement.PackageManagementOptionsView"/> + + + + + + PackageManagementOptionsView.xaml + Code + + @@ -120,6 +129,7 @@ + RegisteredPackageSourcesView.xaml Code @@ -170,6 +180,7 @@ + diff --git a/src/AddIns/Misc/PackageManagement/Project/Src/Design/FakePackageManagementService.cs b/src/AddIns/Misc/PackageManagement/Project/Src/Design/FakePackageManagementService.cs index 2a8dc37feb..5c5b211bdb 100644 --- a/src/AddIns/Misc/PackageManagement/Project/Src/Design/FakePackageManagementService.cs +++ b/src/AddIns/Misc/PackageManagement/Project/Src/Design/FakePackageManagementService.cs @@ -127,7 +127,7 @@ namespace ICSharpCode.PackageManagement.Design public FakePackageRepository FakeRecentPackageRepository = new FakePackageRepository(); - public IPackageRepository RecentPackageRepository { + public IRecentPackageRepository RecentPackageRepository { get { return FakeRecentPackageRepository; } } diff --git a/src/AddIns/Misc/PackageManagement/Project/Src/Design/FakePackageRepository.cs b/src/AddIns/Misc/PackageManagement/Project/Src/Design/FakePackageRepository.cs index b6180d2421..f58a9739fe 100644 --- a/src/AddIns/Misc/PackageManagement/Project/Src/Design/FakePackageRepository.cs +++ b/src/AddIns/Misc/PackageManagement/Project/Src/Design/FakePackageRepository.cs @@ -8,7 +8,7 @@ using NuGet; namespace ICSharpCode.PackageManagement.Design { - public class FakePackageRepository : IPackageRepository + public class FakePackageRepository : IRecentPackageRepository { public List FakePackages = new List(); public bool IsRemovePackageCalled; @@ -34,5 +34,9 @@ namespace ICSharpCode.PackageManagement.Design } public string Source { get; set; } + + public void Clear() + { + } } } diff --git a/src/AddIns/Misc/PackageManagement/Project/Src/IMachinePackageCache.cs b/src/AddIns/Misc/PackageManagement/Project/Src/IMachinePackageCache.cs new file mode 100644 index 0000000000..946eafbcc3 --- /dev/null +++ b/src/AddIns/Misc/PackageManagement/Project/Src/IMachinePackageCache.cs @@ -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) + +using System; +using System.Linq; +using NuGet; + +namespace ICSharpCode.PackageManagement +{ + public interface IMachinePackageCache + { + IQueryable GetPackages(); + void Clear(); + string Source { get; } + } +} diff --git a/src/AddIns/Misc/PackageManagement/Project/Src/IPackageManagementService.cs b/src/AddIns/Misc/PackageManagement/Project/Src/IPackageManagementService.cs index 8a7072dcf5..a1efd472ff 100644 --- a/src/AddIns/Misc/PackageManagement/Project/Src/IPackageManagementService.cs +++ b/src/AddIns/Misc/PackageManagement/Project/Src/IPackageManagementService.cs @@ -15,7 +15,7 @@ namespace ICSharpCode.PackageManagement IPackageRepository CreateAggregatePackageRepository(); IPackageRepository ActivePackageRepository { get; } IProjectManager ActiveProjectManager { get; } - IPackageRepository RecentPackageRepository { get; } + IRecentPackageRepository RecentPackageRepository { get; } void InstallPackage(IPackageRepository repository, IPackage package, IEnumerable operations); void UninstallPackage(IPackageRepository repository, IPackage package); diff --git a/src/AddIns/Misc/PackageManagement/Project/Src/IProcess.cs b/src/AddIns/Misc/PackageManagement/Project/Src/IProcess.cs new file mode 100644 index 0000000000..62f6bd67e6 --- /dev/null +++ b/src/AddIns/Misc/PackageManagement/Project/Src/IProcess.cs @@ -0,0 +1,12 @@ +// 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) + +using System; + +namespace ICSharpCode.PackageManagement +{ + public interface IProcess + { + void Start(string fileName); + } +} diff --git a/src/AddIns/Misc/PackageManagement/Project/Src/IRecentPackageRepository.cs b/src/AddIns/Misc/PackageManagement/Project/Src/IRecentPackageRepository.cs new file mode 100644 index 0000000000..30ac6c5a8a --- /dev/null +++ b/src/AddIns/Misc/PackageManagement/Project/Src/IRecentPackageRepository.cs @@ -0,0 +1,13 @@ +// 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) + +using System; +using NuGet; + +namespace ICSharpCode.PackageManagement +{ + public interface IRecentPackageRepository : IPackageRepository + { + void Clear(); + } +} diff --git a/src/AddIns/Misc/PackageManagement/Project/Src/MachinePackageCache.cs b/src/AddIns/Misc/PackageManagement/Project/Src/MachinePackageCache.cs new file mode 100644 index 0000000000..ab279b1381 --- /dev/null +++ b/src/AddIns/Misc/PackageManagement/Project/Src/MachinePackageCache.cs @@ -0,0 +1,26 @@ +// 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) + +using System; +using System.Linq; +using NuGet; + +namespace ICSharpCode.PackageManagement +{ + public class MachinePackageCache : IMachinePackageCache + { + public IQueryable GetPackages() + { + return MachineCache.Default.GetPackages(); + } + + public void Clear() + { + MachineCache.Default.Clear(); + } + + public string Source { + get { return MachineCache.Default.Source; } + } + } +} diff --git a/src/AddIns/Misc/PackageManagement/Project/Src/OpenHyperlinkCommand.cs b/src/AddIns/Misc/PackageManagement/Project/Src/OpenHyperlinkCommand.cs index 107b1fb1c0..21f67ea04d 100644 --- a/src/AddIns/Misc/PackageManagement/Project/Src/OpenHyperlinkCommand.cs +++ b/src/AddIns/Misc/PackageManagement/Project/Src/OpenHyperlinkCommand.cs @@ -35,7 +35,7 @@ namespace ICSharpCode.PackageManagement protected virtual void StartProcess(string fileName) { - Process.Start(fileName); + System.Diagnostics.Process.Start(fileName); } } } diff --git a/src/AddIns/Misc/PackageManagement/Project/Src/PackageManagementOptionsView.xaml b/src/AddIns/Misc/PackageManagement/Project/Src/PackageManagementOptionsView.xaml new file mode 100644 index 0000000000..f1ebcae289 --- /dev/null +++ b/src/AddIns/Misc/PackageManagement/Project/Src/PackageManagementOptionsView.xaml @@ -0,0 +1,59 @@ + + + + + + + + + + + + + + + + + + + +