diff --git a/src/AddIns/Misc/AddInManager/Project/AddInManager.addin b/src/AddIns/Misc/AddInManager/Project/AddInManager.addin index 21d364a380..4faedd1fcc 100644 --- a/src/AddIns/Misc/AddInManager/Project/AddInManager.addin +++ b/src/AddIns/Misc/AddInManager/Project/AddInManager.addin @@ -11,13 +11,16 @@ + - + + + diff --git a/src/AddIns/Misc/AddInManager/Project/Src/Commands.cs b/src/AddIns/Misc/AddInManager/Project/Src/Commands.cs index bef2ef7e98..e815531cdd 100644 --- a/src/AddIns/Misc/AddInManager/Project/Src/Commands.cs +++ b/src/AddIns/Misc/AddInManager/Project/Src/Commands.cs @@ -4,6 +4,7 @@ using System; using System.Collections.Generic; using ICSharpCode.Core; +using System.Linq; #if !STANDALONE using ICSharpCode.SharpDevelop; @@ -43,6 +44,24 @@ namespace ICSharpCode.AddInManager } } + public class AddInManager2NotInstalledConditionEvaluator : IConditionEvaluator + { + public bool IsValid(object caller, Condition condition) + { + #if !STANDALONE + AddIn addInManager2AddIn = SD.AddInTree.AddIns.Where( + a => ((a.Manifest != null) && (a.Manifest.PrimaryIdentity == "ICSharpCode.AddInManager2"))) + .FirstOrDefault(); + if (addInManager2AddIn != null) + { + return !addInManager2AddIn.Enabled; + } + #endif + + return true; + } + } + public class DisableCommand : AbstractMenuCommand { public override void Run()