diff --git a/src/AddIns/BackendBindings/Boo/BooBinding/Project/Src/BooAmbience.cs b/src/AddIns/BackendBindings/Boo/BooBinding/Project/Src/BooAmbience.cs index b5812e4f57..471c769c7e 100644 --- a/src/AddIns/BackendBindings/Boo/BooBinding/Project/Src/BooAmbience.cs +++ b/src/AddIns/BackendBindings/Boo/BooBinding/Project/Src/BooAmbience.cs @@ -116,7 +116,7 @@ namespace Grunwald.BooBinding return string.Empty; } - string GetModifier(IDecoration decoration) + string GetModifier(IEntity decoration) { string ret = ""; diff --git a/src/AddIns/BackendBindings/Boo/BooBinding/Project/Src/CodeCompletion/ConvertVisitor.cs b/src/AddIns/BackendBindings/Boo/BooBinding/Project/Src/CodeCompletion/ConvertVisitor.cs index d52011aef4..b1076de35e 100644 --- a/src/AddIns/BackendBindings/Boo/BooBinding/Project/Src/CodeCompletion/ConvertVisitor.cs +++ b/src/AddIns/BackendBindings/Boo/BooBinding/Project/Src/CodeCompletion/ConvertVisitor.cs @@ -159,7 +159,7 @@ namespace Grunwald.BooBinding.CodeCompletion m.TypeParameters = DefaultTypeParameter.EmptyTypeParameterList; } - void ConvertAttributes(AST.TypeMember node, AbstractDecoration to) + void ConvertAttributes(AST.TypeMember node, AbstractEntity to) { if (node.Attributes.Count == 0) { to.Attributes = DefaultAttribute.EmptyAttributeList; diff --git a/src/AddIns/BackendBindings/CSharpBinding/Project/Src/CSharpCompletionBinding.cs b/src/AddIns/BackendBindings/CSharpBinding/Project/Src/CSharpCompletionBinding.cs index 454b0d0566..232168408b 100644 --- a/src/AddIns/BackendBindings/CSharpBinding/Project/Src/CSharpCompletionBinding.cs +++ b/src/AddIns/BackendBindings/CSharpBinding/Project/Src/CSharpCompletionBinding.cs @@ -230,7 +230,7 @@ namespace CSharpBinding /// /// A class that copies the properties important for the code completion display from another class, /// but provides its own Name implementation. - /// Unlike the DefaultClass.Name implementation, here 'Name' may include the namespace or type arguments. + /// Unlike the AbstractEntity.Name implementation, here 'Name' may include the namespace or type arguments. /// sealed class RenamedClass : DefaultClass, IClass { @@ -243,7 +243,7 @@ namespace CSharpBinding this.FullyQualifiedName = c.FullyQualifiedName; } - string IClass.Name { + string IEntity.Name { get { return newName; } } } diff --git a/src/AddIns/BackendBindings/Python/PythonBinding/Test/Utils/MockProjectContent.cs b/src/AddIns/BackendBindings/Python/PythonBinding/Test/Utils/MockProjectContent.cs index 344d2af5ed..1487f00db8 100644 --- a/src/AddIns/BackendBindings/Python/PythonBinding/Test/Utils/MockProjectContent.cs +++ b/src/AddIns/BackendBindings/Python/PythonBinding/Test/Utils/MockProjectContent.cs @@ -337,7 +337,7 @@ namespace PythonBinding.Tests.Utils throw new NotImplementedException(); } - public IDecoration GetElement(string fullMemberName) + public IEntity GetElement(string fullMemberName) { throw new NotImplementedException(); } diff --git a/src/AddIns/DisplayBindings/ClassDiagram/ClassEditor/ClassEditor.cs b/src/AddIns/DisplayBindings/ClassDiagram/ClassEditor/ClassEditor.cs index 7f11eda100..524d05b308 100644 --- a/src/AddIns/DisplayBindings/ClassDiagram/ClassEditor/ClassEditor.cs +++ b/src/AddIns/DisplayBindings/ClassDiagram/ClassEditor/ClassEditor.cs @@ -439,13 +439,13 @@ namespace ClassDiagram // addItem.SubItems.Add(GetSummary(member)); } - private static string GetSummary (IDecoration decoration) + private static string GetSummary (IEntity decoration) { if (decoration == null) return String.Empty; return GetSummary(decoration.Documentation, @"/docroot/summary"); } - private static string GetParameterSummary (IDecoration decoration, string parameterName) + private static string GetParameterSummary (IEntity decoration, string parameterName) { if (decoration == null) return String.Empty; return GetSummary(decoration.Documentation, @"/docroot/param[@name='"+parameterName+"']"); diff --git a/src/AddIns/DisplayBindings/WpfDesign/WpfDesign.AddIn/Src/PropertyDescriptionService.cs b/src/AddIns/DisplayBindings/WpfDesign/WpfDesign.AddIn/Src/PropertyDescriptionService.cs index 78c2c3e9ff..48c67ca59d 100644 --- a/src/AddIns/DisplayBindings/WpfDesign/WpfDesign.AddIn/Src/PropertyDescriptionService.cs +++ b/src/AddIns/DisplayBindings/WpfDesign/WpfDesign.AddIn/Src/PropertyDescriptionService.cs @@ -29,7 +29,7 @@ namespace ICSharpCode.WpfDesign.AddIn IProjectContent pc = MyTypeFinder.GetProjectContent(file); if (pc != null) { string fullName = property.DeclaringType.FullName + "." + property.Name; - IDecoration dec = pc.GetElement(fullName); + IEntity dec = pc.GetElement(fullName); if (dec != null) return CodeCompletionData.GetDocumentation(dec.Documentation); foreach (IProjectContent rpc in pc.ReferencedContents) { diff --git a/src/AddIns/Misc/UnitTesting/Test/Utils/MockProjectContent.cs b/src/AddIns/Misc/UnitTesting/Test/Utils/MockProjectContent.cs index 0aaae42f83..bd54a1439f 100644 --- a/src/AddIns/Misc/UnitTesting/Test/Utils/MockProjectContent.cs +++ b/src/AddIns/Misc/UnitTesting/Test/Utils/MockProjectContent.cs @@ -148,7 +148,7 @@ namespace UnitTesting.Tests.Utils throw new NotImplementedException(); } - public IDecoration GetElement(string fullMemberName) + public IEntity GetElement(string fullMemberName) { throw new NotImplementedException(); } diff --git a/src/Libraries/ICSharpCode.TextEditor/Project/Src/Document/LineManager/LineManager.cs b/src/Libraries/ICSharpCode.TextEditor/Project/Src/Document/LineManager/LineManager.cs index f48b3c6550..f114b304de 100644 --- a/src/Libraries/ICSharpCode.TextEditor/Project/Src/Document/LineManager/LineManager.cs +++ b/src/Libraries/ICSharpCode.TextEditor/Project/Src/Document/LineManager/LineManager.cs @@ -91,6 +91,8 @@ namespace ICSharpCode.TextEditor.Document // Console.WriteLine("New text:"); // Console.WriteLine("'" + document.TextContent + "'"); // #endif + // Only fire events after RemoveInternal+InsertInternal finished completely: + // Otherwise we would expose inconsistent state to the event handlers. RunHighlighter(lineStart, 1 + Math.Max(0, this.TotalNumberOfLines - numberOfLinesAfterRemoving)); if (removedLines != null) { foreach (LineSegment ls in removedLines) diff --git a/src/Main/Base/Project/Src/Services/Debugger/BreakpointBookmark.cs b/src/Main/Base/Project/Src/Services/Debugger/BreakpointBookmark.cs index f95f43509a..b115a01c39 100644 --- a/src/Main/Base/Project/Src/Services/Debugger/BreakpointBookmark.cs +++ b/src/Main/Base/Project/Src/Services/Debugger/BreakpointBookmark.cs @@ -25,7 +25,7 @@ namespace ICSharpCode.SharpDevelop.Debugging } set { willBeHit = value; - if (Document != null) { + if (Document != null && !Line.IsDeleted) { Document.RequestUpdate(new TextAreaUpdate(TextAreaUpdateType.SingleLine, LineNumber)); Document.CommitUpdate(); } diff --git a/src/Main/Base/Project/Src/Services/Debugger/DebuggerService.cs b/src/Main/Base/Project/Src/Services/Debugger/DebuggerService.cs index be11316dfc..70327e1ace 100644 --- a/src/Main/Base/Project/Src/Services/Debugger/DebuggerService.cs +++ b/src/Main/Base/Project/Src/Services/Debugger/DebuggerService.cs @@ -467,7 +467,7 @@ namespace ICSharpCode.SharpDevelop.Debugging } } - static string GetMemberText(IAmbience ambience, IDecoration member, string expression, out bool debuggerCanShowValue) + static string GetMemberText(IAmbience ambience, IEntity member, string expression, out bool debuggerCanShowValue) { bool tryDisplayValue = false; debuggerCanShowValue = false; diff --git a/src/Main/Base/Project/Src/Services/RefactoringService/RefactoringService.cs b/src/Main/Base/Project/Src/Services/RefactoringService/RefactoringService.cs index 7c5062cff5..553cb58fbb 100644 --- a/src/Main/Base/Project/Src/Services/RefactoringService/RefactoringService.cs +++ b/src/Main/Base/Project/Src/Services/RefactoringService/RefactoringService.cs @@ -309,7 +309,7 @@ namespace ICSharpCode.SharpDevelop.Refactoring /// Gets the files of files that could have a reference to the /// int the . /// - static List GetPossibleFiles(IClass ownerClass, IDecoration member) + static List GetPossibleFiles(IClass ownerClass, IEntity member) { List resultList = new List(); if (ProjectService.OpenSolution == null) { diff --git a/src/Main/Base/Project/Src/TextEditor/Bookmarks/Bookmark.cs b/src/Main/Base/Project/Src/TextEditor/Bookmarks/Bookmark.cs index 4527357c38..486f9f426a 100644 --- a/src/Main/Base/Project/Src/TextEditor/Bookmarks/Bookmark.cs +++ b/src/Main/Base/Project/Src/TextEditor/Bookmarks/Bookmark.cs @@ -128,13 +128,24 @@ namespace ICSharpCode.SharpDevelop.Bookmarks public void RemoveMarker() { if (oldDocument != null) { + int from = SafeGetLineNumberForOffset(oldDocument, oldMarker.Offset); + int to = SafeGetLineNumberForOffset(oldDocument, oldMarker.Offset + oldMarker.Length); oldDocument.MarkerStrategy.RemoveMarker(oldMarker); - oldDocument.RequestUpdate(new TextAreaUpdate(TextAreaUpdateType.SingleLine, LineNumber)); + oldDocument.RequestUpdate(new TextAreaUpdate(TextAreaUpdateType.LinesBetween, from, to)); oldDocument.CommitUpdate(); } oldDocument = null; oldMarker = null; } + + static int SafeGetLineNumberForOffset(IDocument document, int offset) + { + if (offset <= 0) + return 0; + if (offset >= document.TextLength) + return document.TotalNumberOfLines; + return document.GetLineNumberForOffset(offset); + } } public class SDBookmarkFactory : IBookmarkFactory diff --git a/src/Main/Base/Project/Src/TextEditor/Gui/Dialogs/GotoDialog.cs b/src/Main/Base/Project/Src/TextEditor/Gui/Dialogs/GotoDialog.cs index 1694c335df..61ddc197de 100644 --- a/src/Main/Base/Project/Src/TextEditor/Gui/Dialogs/GotoDialog.cs +++ b/src/Main/Base/Project/Src/TextEditor/Gui/Dialogs/GotoDialog.cs @@ -123,6 +123,7 @@ namespace ICSharpCode.SharpDevelop.Gui } Dictionary visibleEntries = new Dictionary(); + int bestMatchType; double bestPriority; ListViewItem bestItem; @@ -209,18 +210,18 @@ namespace ICSharpCode.SharpDevelop.Gui void AddSourceFile(string text, int lineNumber, ProjectItem item) { - string lowerText = text.ToLowerInvariant(); string fileName = item.FileName; string display = Path.GetFileName(fileName); if (display.Length >= text.Length) { - if (display.ToLowerInvariant().IndexOf(lowerText) >= 0) { + int matchType = GetMatchType(text, display); + if (matchType >= 0) { if (lineNumber > 0) { display += ", line " + lineNumber; } if (item.Project != null) { display += StringParser.Parse(" ${res:MainWindow.Windows.SearchResultPanel.In} ") + item.Project.Name; } - AddItem(display, ClassBrowserIconService.GotoArrowIndex, new FileLineReference(fileName, lineNumber), 0.5); + AddItem(display, ClassBrowserIconService.GotoArrowIndex, new FileLineReference(fileName, lineNumber), 0.5, matchType); } } } @@ -232,7 +233,7 @@ namespace ICSharpCode.SharpDevelop.Gui TextEditorControl editor = GetEditor(); if (editor != null) { num = Math.Min(editor.Document.TotalNumberOfLines, Math.Max(1, num)); - AddItem(StringParser.Parse("${res:Dialog.Goto.GotoLine} ") + num, ClassBrowserIconService.GotoArrowIndex, num, 0); + AddItem(StringParser.Parse("${res:Dialog.Goto.GotoLine} ") + num, ClassBrowserIconService.GotoArrowIndex, num, 0, int.MaxValue); } } } @@ -245,13 +246,12 @@ namespace ICSharpCode.SharpDevelop.Gui if (ccd == null) return; string dataText = ccd.Text; - if (dataText.Length >= text.Length) { - if (dataText.ToLowerInvariant().IndexOf(lowerText) >= 0) { - if (ccd.Class != null) - AddItem(ccd.Class, data.ImageIndex, data.Priority); - else if (ccd.Member != null) - AddItem(ccd.Member, data.ImageIndex, data.Priority); - } + int matchType = GetMatchType(text, dataText); + if (matchType >= 0) { + if (ccd.Class != null) + AddItem(ccd.Class, data.ImageIndex, data.Priority, matchType); + else if (ccd.Member != null) + AddItem(ccd.Member, data.ImageIndex, data.Priority, matchType); } } } @@ -260,7 +260,7 @@ namespace ICSharpCode.SharpDevelop.Gui { ShowCompletionData(GetCompletionData(), text); foreach (IClass c in SearchClasses(text)) { - AddItem(c); + AddItem(c, GetMatchType(text, c.Name)); } } @@ -292,7 +292,44 @@ namespace ICSharpCode.SharpDevelop.Gui } } - void AddItem(string text, int imageIndex, object tag, double priority) + const int MatchType_NoMatch = -1; + const int MatchType_ContainsMatch_CaseInsensitive = 0; + const int MatchType_ContainsMatch = 1; + const int MatchType_StartingMatch_CaseInsensitive = 2; + const int MatchType_StartingMatch = 3; + const int MatchType_FullMatch_CaseInsensitive = 4; + const int MatchType_FullMatch = 5; + + static int GetMatchType(string searchText, string itemText) + { + if (itemText.Length < searchText.Length) + return MatchType_NoMatch; + int indexInsensitive = itemText.IndexOf(searchText, StringComparison.InvariantCultureIgnoreCase); + if (indexInsensitive < 0) + return MatchType_NoMatch; + // This is a case insensitive match + int indexSensitive = itemText.IndexOf(searchText, StringComparison.InvariantCulture); + if (itemText.Length == searchText.Length) { + // this is a full match + if (indexSensitive == 0) + return MatchType_FullMatch; + else + return MatchType_FullMatch_CaseInsensitive; + } else if (indexInsensitive == 0) { + // This is a starting match + if (indexSensitive == 0) + return MatchType_StartingMatch; + else + return MatchType_StartingMatch_CaseInsensitive; + } else { + if (indexSensitive >= 0) + return MatchType_ContainsMatch; + else + return MatchType_ContainsMatch_CaseInsensitive; + } + } + + void AddItem(string text, int imageIndex, object tag, double priority, int matchType) { if (visibleEntries.ContainsKey(text)) return; @@ -300,38 +337,34 @@ namespace ICSharpCode.SharpDevelop.Gui ListViewItem item = new ListViewItem(text, imageIndex); item.Tag = tag; if (bestItem == null - || (priority > bestPriority && !(tag is IClass && bestItem.Tag is IMember)) - || (tag is IMember && bestItem.Tag is IClass)) + || (tag is IMember && bestItem.Tag is IClass) + || (!(tag is IClass && bestItem.Tag is IMember) + && (matchType > bestMatchType || matchType == bestMatchType && priority > bestPriority))) { bestItem = item; bestPriority = priority; + bestMatchType = matchType; } listView.Items.Add(item); } - void AddItem(IClass c) + void AddItem(IClass c, int matchType) { - AddItem(c, ClassBrowserIconService.GetIcon(c), CodeCompletionDataUsageCache.GetPriority(c.DotNetName, true)); + AddItem(c, ClassBrowserIconService.GetIcon(c), CodeCompletionDataUsageCache.GetPriority(c.DotNetName, true), matchType); } void AddItemIfMatchText(string text, IMember member, int imageIndex) { string name = member.Name; - if (name.Length >= text.Length) { - if (text.Equals(name.Substring(0, text.Length), StringComparison.OrdinalIgnoreCase)) { - AddItem(member, imageIndex, CodeCompletionDataUsageCache.GetPriority(member.DotNetName, true)); - } + int matchType = GetMatchType(text, name); + if (matchType >= 0) { + AddItem(member, imageIndex, CodeCompletionDataUsageCache.GetPriority(member.DotNetName, true), matchType); } } - void AddItem(IClass c, int imageIndex, double priority) - { - AddItem(c.Name + " (" + c.FullyQualifiedName + ")", imageIndex, c, priority); - } - - void AddItem(IMember m, int imageIndex, double priority) + void AddItem(IEntity e, int imageIndex, double priority, int matchType) { - AddItem(m.Name + " (" + m.FullyQualifiedName + ")", imageIndex, m, priority); + AddItem(e.Name + " (" + e.FullyQualifiedName + ")", imageIndex, e, priority, matchType); } void CancelButtonClick(object sender, EventArgs e) diff --git a/src/Main/Base/Test/AbstractDecorationIsOverridableTestFixture.cs b/src/Main/Base/Test/AbstractEntityIsOverridableTestFixture.cs similarity index 59% rename from src/Main/Base/Test/AbstractDecorationIsOverridableTestFixture.cs rename to src/Main/Base/Test/AbstractEntityIsOverridableTestFixture.cs index a0660c446f..c1d9931d72 100644 --- a/src/Main/Base/Test/AbstractDecorationIsOverridableTestFixture.cs +++ b/src/Main/Base/Test/AbstractEntityIsOverridableTestFixture.cs @@ -16,48 +16,48 @@ namespace ICSharpCode.SharpDevelop.Tests /// Tests that the IsOverridable property returns the expected value. /// [TestFixture] - public class AbstractDecorationIsOverridableTestFixture + public class AbstractEntityIsOverridableTestFixture { - MockDecoration decoration; + MockEntity entity; [SetUp] public void SetUp() { - decoration = new MockDecoration(); + entity = new MockEntity(); } [Test] public void NotOverridableByDefault() { - Assert.IsFalse(decoration.IsOverridable); + Assert.IsFalse(entity.IsOverridable); } [Test] public void IsOverrideSet() { - decoration.Modifiers = ModifierEnum.Override; - Assert.IsTrue(decoration.IsOverridable); + entity.Modifiers = ModifierEnum.Override; + Assert.IsTrue(entity.IsOverridable); } [Test] public void IsVirtualSet() { - decoration.Modifiers = ModifierEnum.Virtual; - Assert.IsTrue(decoration.IsOverridable); + entity.Modifiers = ModifierEnum.Virtual; + Assert.IsTrue(entity.IsOverridable); } [Test] public void IsAbstractSet() { - decoration.Modifiers = ModifierEnum.Abstract; - Assert.IsTrue(decoration.IsOverridable); + entity.Modifiers = ModifierEnum.Abstract; + Assert.IsTrue(entity.IsOverridable); } [Test] public void IsAbstractAndSealedSet() { - decoration.Modifiers = ModifierEnum.Abstract | ModifierEnum.Sealed; - Assert.IsFalse(decoration.IsOverridable); + entity.Modifiers = ModifierEnum.Abstract | ModifierEnum.Sealed; + Assert.IsFalse(entity.IsOverridable); } } } diff --git a/src/Main/Base/Test/ICSharpCode.SharpDevelop.Tests.csproj b/src/Main/Base/Test/ICSharpCode.SharpDevelop.Tests.csproj index 82172470fc..2a3f62fda6 100644 --- a/src/Main/Base/Test/ICSharpCode.SharpDevelop.Tests.csproj +++ b/src/Main/Base/Test/ICSharpCode.SharpDevelop.Tests.csproj @@ -50,7 +50,7 @@ - + @@ -71,7 +71,7 @@ - + diff --git a/src/Main/Base/Test/Utils/MockDecoration.cs b/src/Main/Base/Test/Utils/MockEntity.cs similarity index 83% rename from src/Main/Base/Test/Utils/MockDecoration.cs rename to src/Main/Base/Test/Utils/MockEntity.cs index a049f9a78c..d267e12d11 100644 --- a/src/Main/Base/Test/Utils/MockDecoration.cs +++ b/src/Main/Base/Test/Utils/MockEntity.cs @@ -10,9 +10,9 @@ using ICSharpCode.SharpDevelop.Dom; namespace ICSharpCode.SharpDevelop.Tests.Utils { - public class MockDecoration : AbstractDecoration + public class MockEntity : AbstractEntity { - public MockDecoration() : base(null) + public MockEntity() : base(null) { } diff --git a/src/Main/ICSharpCode.SharpDevelop.Dom/Project/ICSharpCode.SharpDevelop.Dom.csproj b/src/Main/ICSharpCode.SharpDevelop.Dom/Project/ICSharpCode.SharpDevelop.Dom.csproj index 31f7974436..a448ea8bd7 100644 --- a/src/Main/ICSharpCode.SharpDevelop.Dom/Project/ICSharpCode.SharpDevelop.Dom.csproj +++ b/src/Main/ICSharpCode.SharpDevelop.Dom/Project/ICSharpCode.SharpDevelop.Dom.csproj @@ -63,9 +63,8 @@ Configuration\GlobalAssemblyInfo.cs - + - @@ -134,7 +133,7 @@ - + diff --git a/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/CSharp/CSharpAmbience.cs b/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/CSharp/CSharpAmbience.cs index 7d8f9149d0..dc77c39820 100644 --- a/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/CSharp/CSharpAmbience.cs +++ b/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/CSharp/CSharpAmbience.cs @@ -49,7 +49,7 @@ namespace ICSharpCode.SharpDevelop.Dom.CSharp return string.Empty; } - string GetModifier(IDecoration decoration) + string GetModifier(IEntity decoration) { string ret = ""; diff --git a/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/CecilReader.cs b/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/CecilReader.cs index e41ee5d089..f73434c4ac 100644 --- a/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/CecilReader.cs +++ b/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/CecilReader.cs @@ -62,7 +62,7 @@ namespace ICSharpCode.SharpDevelop.Dom /// /// Create a SharpDevelop return type from a Cecil type reference. /// - internal static IReturnType CreateType(IProjectContent pc, IDecoration member, TypeReference type) + internal static IReturnType CreateType(IProjectContent pc, IEntity member, TypeReference type) { while (type is ModType) { type = (type as ModType).ElementType; diff --git a/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Implementations/AbstractDecoration.cs b/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Implementations/AbstractEntity.cs similarity index 65% rename from src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Implementations/AbstractDecoration.cs rename to src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Implementations/AbstractEntity.cs index 80ee883730..1058d59aef 100644 --- a/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Implementations/AbstractDecoration.cs +++ b/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Implementations/AbstractEntity.cs @@ -10,45 +10,137 @@ using System.Collections.Generic; namespace ICSharpCode.SharpDevelop.Dom { - public abstract class AbstractDecoration : AbstractFreezable, IDecoration + public abstract class AbstractEntity : AbstractFreezable, IEntity { ModifierEnum modifiers = ModifierEnum.None; IList attributes; + DomRegion bodyRegion; IClass declaringType; - object userData = null; - protected override void FreezeInternal() + string fullyQualifiedName = null; + string name = null; + string nspace = null; + + public AbstractEntity(IClass declaringType) { - attributes = FreezeList(attributes); - base.FreezeInternal(); + this.declaringType = declaringType; } - public IClass DeclaringType { + public AbstractEntity(IClass declaringType, string name) + { + if (declaringType == null) + throw new ArgumentNullException("declaringType"); + this.declaringType = declaringType; + this.name = name; + nspace = declaringType.FullyQualifiedName; + + // lazy-computing the fully qualified name for class members saves ~7 MB RAM (when loading the SharpDevelop solution). + //fullyQualifiedName = nspace + '.' + name; + } + + public override string ToString() + { + return String.Format("[{0}: {1}]", GetType().Name, FullyQualifiedName); + } + + #region Naming + static readonly char[] nameDelimiters = { '.', '+' }; + + + public string FullyQualifiedName { get { - return declaringType; + if (fullyQualifiedName == null) { + if (name != null && nspace != null) { + fullyQualifiedName = nspace + '.' + name; + } else { + return String.Empty; + } + } + return fullyQualifiedName; + } + set { + CheckBeforeMutation(); + if (fullyQualifiedName == value) + return; + fullyQualifiedName = value; + name = null; + nspace = null; + OnFullyQualifiedNameChanged(EventArgs.Empty); } } - public object UserData { + protected virtual void OnFullyQualifiedNameChanged(EventArgs e) + { + } + + public virtual string DotNetName { get { - return userData; + if (this.DeclaringType != null) { + return this.DeclaringType.DotNetName + "." + this.Name; + } else { + return FullyQualifiedName; + } } - set { - userData = value; + } + + public string Name { + get { + if (name == null && FullyQualifiedName != null) { + int lastIndex = FullyQualifiedName.LastIndexOfAny(nameDelimiters); + + if (lastIndex < 0) { + name = FullyQualifiedName; + } else { + name = FullyQualifiedName.Substring(lastIndex + 1); + } + } + return name; + } + } + + public string Namespace { + get { + if (nspace == null && FullyQualifiedName != null) { + int lastIndex = FullyQualifiedName.LastIndexOf('.'); + + if (lastIndex < 0) { + nspace = String.Empty; + } else { + nspace = FullyQualifiedName.Substring(0, lastIndex); + } + } + return nspace; } } - public ModifierEnum Modifiers { + + #endregion + + protected override void FreezeInternal() + { + attributes = FreezeList(attributes); + base.FreezeInternal(); + } + + public IClass DeclaringType { get { - return modifiers; + return declaringType; + } + } + + public virtual DomRegion BodyRegion { + get { + return bodyRegion; } set { CheckBeforeMutation(); - modifiers = value; + bodyRegion = value; } } + public object UserData { get; set; } + public IList Attributes { get { if (attributes == null) { @@ -92,6 +184,17 @@ namespace ICSharpCode.SharpDevelop.Dom get; } + #region Modifiers + public ModifierEnum Modifiers { + get { + return modifiers; + } + set { + CheckBeforeMutation(); + modifiers = value; + } + } + public bool IsAbstract { get { return (modifiers & ModifierEnum.Abstract) == ModifierEnum.Abstract; @@ -184,11 +287,7 @@ namespace ICSharpCode.SharpDevelop.Dom return (modifiers & ModifierEnum.Synthetic) == ModifierEnum.Synthetic; } } - - public AbstractDecoration(IClass declaringType) - { - this.declaringType = declaringType; - } + #endregion bool IsInnerClass(IClass c, IClass possibleInnerClass) { @@ -230,14 +329,14 @@ namespace ICSharpCode.SharpDevelop.Dom return IsAccessible(callingClass, isClassInInheritanceTree); } - public virtual int CompareTo(IDecoration value) + public virtual int CompareTo(IEntity value) { return this.Modifiers - value.Modifiers; } int IComparable.CompareTo(object value) { - return CompareTo((IDecoration)value); + return CompareTo((IEntity)value); } } } diff --git a/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Implementations/AbstractMember.cs b/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Implementations/AbstractMember.cs index 2982b24ef1..b52299d7e0 100644 --- a/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Implementations/AbstractMember.cs +++ b/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Implementations/AbstractMember.cs @@ -10,11 +10,10 @@ using System.Collections.Generic; namespace ICSharpCode.SharpDevelop.Dom { - public abstract class AbstractMember : AbstractNamedEntity, IMember + public abstract class AbstractMember : AbstractEntity, IMember { IReturnType returnType; DomRegion region; - DomRegion bodyRegion; IList interfaceImplementations; IReturnType declaringTypeReference; @@ -34,16 +33,6 @@ namespace ICSharpCode.SharpDevelop.Dom } } - public virtual DomRegion BodyRegion { - get { - return bodyRegion; - } - set { - CheckBeforeMutation(); - bodyRegion = value; - } - } - public virtual IReturnType ReturnType { get { return returnType; diff --git a/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Implementations/AbstractNamedEntity.cs b/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Implementations/AbstractNamedEntity.cs deleted file mode 100644 index 8317b3e90c..0000000000 --- a/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Implementations/AbstractNamedEntity.cs +++ /dev/null @@ -1,116 +0,0 @@ -// -// -// -// -// $Revision$ -// - -using System; - -namespace ICSharpCode.SharpDevelop.Dom -{ - public abstract class AbstractNamedEntity : AbstractDecoration - { - static readonly char[] nameDelimiters = { '.', '+' }; - string fullyQualifiedName = null; - string name = null; - string nspace = null; - - public string FullyQualifiedName { - get { - if (fullyQualifiedName == null) { - if (name != null && nspace != null) { - fullyQualifiedName = nspace + '.' + name; - } else { - return String.Empty; - } - } - return fullyQualifiedName; - } - set { - CheckBeforeMutation(); - if (fullyQualifiedName == value) - return; - fullyQualifiedName = value; - name = null; - nspace = null; - OnFullyQualifiedNameChanged(EventArgs.Empty); - } - } - - protected virtual void OnFullyQualifiedNameChanged(EventArgs e) - { - } - - public virtual string DotNetName { - get { - if (this.DeclaringType != null) { - return this.DeclaringType.DotNetName + "." + this.Name; - } else { - return FullyQualifiedName; - } - } - } - - public string Name { - get { - if (name == null && FullyQualifiedName != null) { - int lastIndex; - - if (CanBeSubclass) { - lastIndex = FullyQualifiedName.LastIndexOfAny(nameDelimiters); - } else { - lastIndex = FullyQualifiedName.LastIndexOf('.'); - } - - if (lastIndex < 0) { - name = FullyQualifiedName; - } else { - name = FullyQualifiedName.Substring(lastIndex + 1); - } - } - return name; - } - } - - public string Namespace { - get { - if (nspace == null && FullyQualifiedName != null) { - int lastIndex = FullyQualifiedName.LastIndexOf('.'); - - if (lastIndex < 0) { - nspace = String.Empty; - } else { - nspace = FullyQualifiedName.Substring(0, lastIndex); - } - } - return nspace; - } - } - - protected virtual bool CanBeSubclass { - get { - return false; - } - } - - public AbstractNamedEntity(IClass declaringType) : base(declaringType) - { - } - - public AbstractNamedEntity(IClass declaringType, string name) : base(declaringType) - { - System.Diagnostics.Debug.Assert(declaringType != null); - this.name = name; - nspace = declaringType.FullyQualifiedName; - - // lazy-computing the fully qualified name for class members saves ~7 MB RAM (when loading the SharpDevelop solution). - //fullyQualifiedName = nspace + '.' + name; - } - - public override string ToString() - { - return String.Format("[{0}: {1}]", GetType().Name, FullyQualifiedName); - } - } -} diff --git a/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Implementations/DefaultClass.cs b/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Implementations/DefaultClass.cs index 5a15783d1b..a566ca8d85 100644 --- a/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Implementations/DefaultClass.cs +++ b/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Implementations/DefaultClass.cs @@ -11,11 +11,10 @@ using System.Collections.Generic; namespace ICSharpCode.SharpDevelop.Dom { - public class DefaultClass : AbstractNamedEntity, IClass, IComparable + public class DefaultClass : AbstractEntity, IClass, IComparable { ClassType classType; DomRegion region; - DomRegion bodyRegion; ICompilationUnit compilationUnit; @@ -40,6 +39,7 @@ namespace ICSharpCode.SharpDevelop.Dom base.FreezeInternal(); } + /* public virtual IClass Unfreeze() { DefaultClass copy = new DefaultClass(compilationUnit, DeclaringType); @@ -60,6 +60,7 @@ namespace ICSharpCode.SharpDevelop.Dom copy.UserData = this.UserData; return copy; } + */ byte flags; const byte hasPublicOrInternalStaticMembersFlag = 0x02; @@ -234,16 +235,6 @@ namespace ICSharpCode.SharpDevelop.Dom } } - public DomRegion BodyRegion { - get { - return bodyRegion; - } - set { - CheckBeforeMutation(); - bodyRegion = value; - } - } - public override string DotNetName { get { string fullName; @@ -338,7 +329,7 @@ namespace ICSharpCode.SharpDevelop.Dom { int cmp; - if(0 != (cmp = base.CompareTo((IDecoration)value))) { + if(0 != (cmp = base.CompareTo((IEntity)value))) { return cmp; } @@ -395,12 +386,6 @@ namespace ICSharpCode.SharpDevelop.Dom protected bool UseInheritanceCache = false; - protected override bool CanBeSubclass { - get { - return true; - } - } - public IReturnType GetBaseType(int index) { return BaseTypes[index]; diff --git a/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Implementations/DefaultEvent.cs b/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Implementations/DefaultEvent.cs index e5333abe79..a18a6048f9 100644 --- a/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Implementations/DefaultEvent.cs +++ b/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Implementations/DefaultEvent.cs @@ -66,7 +66,7 @@ namespace ICSharpCode.SharpDevelop.Dom { int cmp; - if(0 != (cmp = base.CompareTo((IDecoration)value))) + if(0 != (cmp = base.CompareTo((IEntity)value))) return cmp; if (FullyQualifiedName != null) { diff --git a/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Implementations/DefaultField.cs b/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Implementations/DefaultField.cs index eebc5f20c9..a7e4241801 100644 --- a/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Implementations/DefaultField.cs +++ b/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Implementations/DefaultField.cs @@ -37,7 +37,7 @@ namespace ICSharpCode.SharpDevelop.Dom { int cmp; - cmp = base.CompareTo((IDecoration)field); + cmp = base.CompareTo((IEntity)field); if (cmp != 0) { return cmp; } diff --git a/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Interfaces/IClass.cs b/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Interfaces/IClass.cs index 8dca0b554c..33d5c68160 100644 --- a/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Interfaces/IClass.cs +++ b/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Interfaces/IClass.cs @@ -11,12 +11,15 @@ using System.Collections.ObjectModel; namespace ICSharpCode.SharpDevelop.Dom { - public interface IClass : IDecoration + public interface IClass : IEntity { - string FullyQualifiedName { + /// + /// Region of the whole class including the body. + /// + DomRegion Region { get; } - + /// /// The default return type to use for this class. /// This property is mutable even when the IClass is frozen, see @@ -25,21 +28,6 @@ namespace ICSharpCode.SharpDevelop.Dom /// IReturnType DefaultReturnType { get; } - /// - /// The fully qualified name in the internal .NET notation (with `1 for generic types) - /// - string DotNetName { - get; - } - - string Name { - get; - } - - string Namespace { - get; - } - ClassType ClassType { get; } @@ -55,17 +43,6 @@ namespace ICSharpCode.SharpDevelop.Dom get; } - /// - /// Region of the whole class including the body. - /// - DomRegion Region { - get; - } - - DomRegion BodyRegion { - get; - } - IList BaseTypes { get; } diff --git a/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Interfaces/IDecoration.cs b/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Interfaces/IEntity.cs similarity index 83% rename from src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Interfaces/IDecoration.cs rename to src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Interfaces/IEntity.cs index c3c1f0c425..ee988a5997 100644 --- a/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Interfaces/IDecoration.cs +++ b/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Interfaces/IEntity.cs @@ -10,8 +10,31 @@ using System.Collections.Generic; namespace ICSharpCode.SharpDevelop.Dom { - public interface IDecoration : IFreezable, IComparable + public interface IEntity : IFreezable, IComparable { + string FullyQualifiedName { + get; + } + + string Name { + get; + } + + string Namespace { + get; + } + + /// + /// The fully qualified name in the internal .NET notation (with `1 for generic types) + /// + string DotNetName { + get; + } + + DomRegion BodyRegion { + get; + } + IClass DeclaringType { get; } diff --git a/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Interfaces/IMember.cs b/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Interfaces/IMember.cs index b1ccf3bf05..984e7357c0 100644 --- a/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Interfaces/IMember.cs +++ b/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Interfaces/IMember.cs @@ -10,9 +10,12 @@ using System.Collections.Generic; namespace ICSharpCode.SharpDevelop.Dom { - public interface IMember : IDecoration, ICloneable + public interface IMember : IEntity, ICloneable { - string FullyQualifiedName { + /// + /// Declaration region of the member (without body!) + /// + DomRegion Region { get; } @@ -42,34 +45,11 @@ namespace ICSharpCode.SharpDevelop.Dom /// IMember CreateSpecializedMember(); - /// - /// Declaration region of the member (without body!) - /// - DomRegion Region { - get; - } - - string Name { - get; - } - - string Namespace { - get; - } - - string DotNetName { - get; - } - IReturnType ReturnType { get; set; } - DomRegion BodyRegion { - get; - } - IList InterfaceImplementations { get; } diff --git a/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/NRefactoryResolver/NRefactoryASTConvertVisitor.cs b/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/NRefactoryResolver/NRefactoryASTConvertVisitor.cs index df459f2e99..7e700c77a6 100644 --- a/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/NRefactoryResolver/NRefactoryASTConvertVisitor.cs +++ b/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/NRefactoryResolver/NRefactoryASTConvertVisitor.cs @@ -187,7 +187,7 @@ namespace ICSharpCode.SharpDevelop.Dom.NRefactoryResolver return data; } - void ConvertAttributes(AST.AttributedNode from, AbstractDecoration to) + void ConvertAttributes(AST.AttributedNode from, AbstractEntity to) { if (from.Attributes.Count == 0) { to.Attributes = DefaultAttribute.EmptyAttributeList; diff --git a/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/ProjectContent/DefaultProjectContent.cs b/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/ProjectContent/DefaultProjectContent.cs index 1aa780a9b8..f00fdb7aeb 100644 --- a/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/ProjectContent/DefaultProjectContent.cs +++ b/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/ProjectContent/DefaultProjectContent.cs @@ -863,7 +863,7 @@ namespace ICSharpCode.SharpDevelop.Dom /// Gets the position of a member in this project content (not a referenced one). /// /// The full member name in Reflection syntax (always case sensitive, ` for generics) - public IDecoration GetElement(string fullMemberName) + public IEntity GetElement(string fullMemberName) { IClass curClass = GetClassByDotNetName(fullMemberName, false); if (curClass != null) { @@ -932,7 +932,7 @@ namespace ICSharpCode.SharpDevelop.Dom public FilePosition GetPosition(string fullMemberName) { - IDecoration d = GetElement(fullMemberName); + IEntity d = GetElement(fullMemberName); IMember m = d as IMember; IClass c = d as IClass; if (m != null) { diff --git a/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/ProjectContent/IProjectContent.cs b/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/ProjectContent/IProjectContent.cs index 41c128ebe4..f821234b5a 100644 --- a/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/ProjectContent/IProjectContent.cs +++ b/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/ProjectContent/IProjectContent.cs @@ -103,7 +103,7 @@ namespace ICSharpCode.SharpDevelop.Dom /// Gets the position of a member in this project content (not a referenced one). /// /// The full member name in Reflection syntax (always case sensitive, ` for generics) - IDecoration GetElement(string fullMemberName); + IEntity GetElement(string fullMemberName); /// /// Gets the definition position of the class/member. diff --git a/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/ReflectionLayer/DomPersistence.cs b/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/ReflectionLayer/DomPersistence.cs index bf03a4e68e..d83e95336d 100644 --- a/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/ReflectionLayer/DomPersistence.cs +++ b/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/ReflectionLayer/DomPersistence.cs @@ -748,7 +748,7 @@ namespace ICSharpCode.SharpDevelop.Dom } } - void ReadAttributes(AbstractDecoration decoration) + void ReadAttributes(AbstractEntity decoration) { int count = reader.ReadUInt16(); if (count > 0) { diff --git a/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/ReflectionLayer/ReflectionReturnType.cs b/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/ReflectionLayer/ReflectionReturnType.cs index e2f5d064e1..340b725cbf 100644 --- a/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/ReflectionLayer/ReflectionReturnType.cs +++ b/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/ReflectionLayer/ReflectionReturnType.cs @@ -27,7 +27,7 @@ namespace ICSharpCode.SharpDevelop.Dom.ReflectionLayer return Create(member.DeclaringType.ProjectContent, member, type, createLazyReturnType); } - public static IReturnType Create(IProjectContent pc, IDecoration member, Type type, bool createLazyReturnType) + public static IReturnType Create(IProjectContent pc, IEntity member, Type type, bool createLazyReturnType) { if (type.IsByRef) { // TODO: Use ByRefRefReturnType diff --git a/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/VBNet/VBNetAmbience.cs b/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/VBNet/VBNetAmbience.cs index dcef8cb49b..cfd94b0d51 100644 --- a/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/VBNet/VBNetAmbience.cs +++ b/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/VBNet/VBNetAmbience.cs @@ -24,7 +24,7 @@ namespace ICSharpCode.SharpDevelop.Dom.VBNet get { return instance; } } - string GetModifier(IDecoration decoration) + string GetModifier(IEntity decoration) { StringBuilder builder = new StringBuilder(); diff --git a/src/SharpDevelop.Tests.sln b/src/SharpDevelop.Tests.sln index cc76f456b6..fc049dca72 100644 --- a/src/SharpDevelop.Tests.sln +++ b/src/SharpDevelop.Tests.sln @@ -1,118 +1,122 @@  Microsoft Visual Studio Solution File, Format Version 10.00 # Visual Studio 2008 -# SharpDevelop 3.0.0.2847 +# SharpDevelop 3.0.0.2917 Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "AddIns", "AddIns", "{14A277EE-7DF1-4529-B639-7D1EF334C1C5}" ProjectSection(SolutionItems) = postProject EndProjectSection EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SearchAndReplace.Tests", "AddIns\Misc\SearchAndReplace\Test\SearchAndReplace.Tests.csproj", "{A569DCC1-C608-45FD-B770-4F79335EF154}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SearchAndReplace", "AddIns\Misc\SearchAndReplace\Project\SearchAndReplace.csproj", "{9196DD8A-B4D4-4780-8742-C5762E547FC2}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "WpfDesign", "WpfDesign", "{C12B6EA7-2EFC-4368-B585-EC69EFCC3F97}" +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Python", "Python", "{F94FA21D-78E6-410B-895D-E16D3E7240DB}" ProjectSection(SolutionItems) = postProject EndProjectSection EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WpfDesign", "AddIns\DisplayBindings\WpfDesign\WpfDesign\Project\WpfDesign.csproj", "{66A378A1-E9F4-4AD5-8946-D0EC06C2902F}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PythonBinding.Tests", "AddIns\BackendBindings\Python\PythonBinding\Test\PythonBinding.Tests.csproj", "{23B517C9-1ECC-4419-A13F-0B7136D085CB}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WpfDesign.Designer", "AddIns\DisplayBindings\WpfDesign\WpfDesign.Designer\Project\WpfDesign.Designer.csproj", "{78CC29AC-CC79-4355-B1F2-97936DF198AC}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Python.Build.Tasks.Tests", "AddIns\BackendBindings\Python\Python.Build.Tasks\Test\Python.Build.Tasks.Tests.csproj", "{833904AB-3CD4-4071-9B48-5770E44685AA}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WpfDesign.Tests", "AddIns\DisplayBindings\WpfDesign\WpfDesign.Designer\Tests\WpfDesign.Tests.csproj", "{943DBBB3-E84E-4CF4-917C-C05AFA8743C1}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PythonBinding", "AddIns\BackendBindings\Python\PythonBinding\Project\PythonBinding.csproj", "{8D732610-8FC6-43BA-94C9-7126FD7FE361}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WpfDesign.XamlDom", "AddIns\DisplayBindings\WpfDesign\WpfDesign.XamlDom\Project\WpfDesign.XamlDom.csproj", "{88DA149F-21B2-48AB-82C4-28FB6BDFD783}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Python.Build.Tasks", "AddIns\BackendBindings\Python\Python.Build.Tasks\Project\Python.Build.Tasks.csproj", "{D332F2D1-2CF1-43B7-903C-844BD5211A7E}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UnitTesting.Tests", "AddIns\Misc\UnitTesting\Test\UnitTesting.Tests.csproj", "{44A8DE09-CAB9-49D8-9CFC-5EB0A552F181}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CSharpBinding", "AddIns\BackendBindings\CSharpBinding\Project\CSharpBinding.csproj", "{1F1AC7CD-D154-45BB-8EAF-804CA8055F5A}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WixBinding.Tests", "AddIns\BackendBindings\WixBinding\Test\WixBinding.Tests.csproj", "{388E7B64-0393-4EB4-A3E3-5C474F141853}" +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Debugger", "Debugger", "{6604365C-C702-4C10-9BA8-637F1E3D4D0D}" + ProjectSection(SolutionItems) = postProject + EndProjectSection EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WixBinding", "AddIns\BackendBindings\WixBinding\Project\WixBinding.csproj", "{e1b288a2-08ee-4318-8bbb-8ab72c69e33e}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Debugger.Core", "AddIns\Misc\Debugger\Debugger.Core\Project\Debugger.Core.csproj", "{1D18D788-F7EE-4585-A23B-34DC8EC63CB8}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CodeAnalysis", "AddIns\Misc\CodeAnalysis\CodeAnalysis.csproj", "{3EAA45A9-735C-4AC7-A799-947B93EA449D}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Debugger.AddIn", "AddIns\Misc\Debugger\Debugger.AddIn\Project\Debugger.AddIn.csproj", "{EC06F96A-AEEC-49D6-B03D-AB87C6EB674C}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FormsDesigner", "AddIns\DisplayBindings\FormsDesigner\Project\FormsDesigner.csproj", "{7D7E92DF-ACEB-4B69-92C8-8AC7A703CD57}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Debugger.Tests", "AddIns\Misc\Debugger\Debugger.Tests\Project\Debugger.Tests.csproj", "{A4C858C8-51B6-4265-A695-A20FCEBA1D19}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BooBinding.Tests", "AddIns\BackendBindings\Boo\BooBinding\Test\BooBinding.Tests.csproj", "{6FA16499-896F-4C02-BB43-1AF5C6C7C713}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "XmlEditor", "AddIns\DisplayBindings\XmlEditor\Project\XmlEditor.csproj", "{6B717BD1-CD5E-498C-A42E-9E6A4584DC48}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BooBinding", "AddIns\BackendBindings\Boo\BooBinding\Project\BooBinding.csproj", "{4AC2D5F1-F671-480C-A075-6BF62B3721B2}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "XmlEditor.Tests", "AddIns\DisplayBindings\XmlEditor\Test\XmlEditor.Tests.csproj", "{FC0FE702-A87D-4D70-A9B6-1ECCD611125F}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UnitTesting", "AddIns\Misc\UnitTesting\UnitTesting.csproj", "{1F261725-6318-4434-A1B1-6C70CE4CD324}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "VBNetBinding", "AddIns\BackendBindings\VBNetBinding\Project\VBNetBinding.csproj", "{BF38FB72-B380-4196-AF8C-95749D726C61}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CodeCoverage.Tests", "AddIns\Misc\CodeCoverage\Test\CodeCoverage.Tests.csproj", "{A5C0E8F8-9D04-46ED-91D6-1DEF1575313B}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CodeCoverage", "AddIns\Misc\CodeCoverage\Project\CodeCoverage.csproj", "{08ce9972-283b-44f4-82fa-966f7dfa6b7a}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CodeCoverage.Tests", "AddIns\Misc\CodeCoverage\Test\CodeCoverage.Tests.csproj", "{A5C0E8F8-9D04-46ED-91D6-1DEF1575313B}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UnitTesting", "AddIns\Misc\UnitTesting\UnitTesting.csproj", "{1F261725-6318-4434-A1B1-6C70CE4CD324}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "VBNetBinding", "AddIns\BackendBindings\VBNetBinding\Project\VBNetBinding.csproj", "{BF38FB72-B380-4196-AF8C-95749D726C61}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FormsDesigner", "AddIns\DisplayBindings\FormsDesigner\Project\FormsDesigner.csproj", "{7D7E92DF-ACEB-4B69-92C8-8AC7A703CD57}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "XmlEditor.Tests", "AddIns\DisplayBindings\XmlEditor\Test\XmlEditor.Tests.csproj", "{FC0FE702-A87D-4D70-A9B6-1ECCD611125F}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CodeAnalysis", "AddIns\Misc\CodeAnalysis\CodeAnalysis.csproj", "{3EAA45A9-735C-4AC7-A799-947B93EA449D}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "XmlEditor", "AddIns\DisplayBindings\XmlEditor\Project\XmlEditor.csproj", "{6B717BD1-CD5E-498C-A42E-9E6A4584DC48}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WixBinding", "AddIns\BackendBindings\WixBinding\Project\WixBinding.csproj", "{e1b288a2-08ee-4318-8bbb-8ab72c69e33e}" EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Debugger", "Debugger", "{6604365C-C702-4C10-9BA8-637F1E3D4D0D}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WixBinding.Tests", "AddIns\BackendBindings\WixBinding\Test\WixBinding.Tests.csproj", "{388E7B64-0393-4EB4-A3E3-5C474F141853}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UnitTesting.Tests", "AddIns\Misc\UnitTesting\Test\UnitTesting.Tests.csproj", "{44A8DE09-CAB9-49D8-9CFC-5EB0A552F181}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "WpfDesign", "WpfDesign", "{C12B6EA7-2EFC-4368-B585-EC69EFCC3F97}" ProjectSection(SolutionItems) = postProject EndProjectSection EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Debugger.Tests", "AddIns\Misc\Debugger\Debugger.Tests\Project\Debugger.Tests.csproj", "{A4C858C8-51B6-4265-A695-A20FCEBA1D19}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WpfDesign.XamlDom", "AddIns\DisplayBindings\WpfDesign\WpfDesign.XamlDom\Project\WpfDesign.XamlDom.csproj", "{88DA149F-21B2-48AB-82C4-28FB6BDFD783}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Debugger.AddIn", "AddIns\Misc\Debugger\Debugger.AddIn\Project\Debugger.AddIn.csproj", "{EC06F96A-AEEC-49D6-B03D-AB87C6EB674C}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WpfDesign.Tests", "AddIns\DisplayBindings\WpfDesign\WpfDesign.Designer\Tests\WpfDesign.Tests.csproj", "{943DBBB3-E84E-4CF4-917C-C05AFA8743C1}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Debugger.Core", "AddIns\Misc\Debugger\Debugger.Core\Project\Debugger.Core.csproj", "{1D18D788-F7EE-4585-A23B-34DC8EC63CB8}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WpfDesign.Designer", "AddIns\DisplayBindings\WpfDesign\WpfDesign.Designer\Project\WpfDesign.Designer.csproj", "{78CC29AC-CC79-4355-B1F2-97936DF198AC}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NRefactoryToBooConverter.Tests", "AddIns\BackendBindings\Boo\NRefactoryToBooConverter\Test\NRefactoryToBooConverter.Tests.csproj", "{C9DE556D-325C-4544-B29F-16A9EB7C9830}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WpfDesign", "AddIns\DisplayBindings\WpfDesign\WpfDesign\Project\WpfDesign.csproj", "{66A378A1-E9F4-4AD5-8946-D0EC06C2902F}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NRefactoryToBooConverter", "AddIns\BackendBindings\Boo\NRefactoryToBooConverter\Project\NRefactoryToBooConverter.csproj", "{DBCF20A1-BA13-4582-BFA9-74DE4D987B73}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SearchAndReplace", "AddIns\Misc\SearchAndReplace\Project\SearchAndReplace.csproj", "{9196DD8A-B4D4-4780-8742-C5762E547FC2}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CSharpBinding", "AddIns\BackendBindings\CSharpBinding\Project\CSharpBinding.csproj", "{1F1AC7CD-D154-45BB-8EAF-804CA8055F5A}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SearchAndReplace.Tests", "AddIns\Misc\SearchAndReplace\Test\SearchAndReplace.Tests.csproj", "{A569DCC1-C608-45FD-B770-4F79335EF154}" EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Python", "Python", "{F94FA21D-78E6-410B-895D-E16D3E7240DB}" +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Boo", "Boo", "{5DA95927-5F2D-46D8-9265-D092734B6F0E}" ProjectSection(SolutionItems) = postProject EndProjectSection EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Python.Build.Tasks", "AddIns\BackendBindings\Python\Python.Build.Tasks\Project\Python.Build.Tasks.csproj", "{D332F2D1-2CF1-43B7-903C-844BD5211A7E}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BooBinding", "AddIns\BackendBindings\Boo\BooBinding\Project\BooBinding.csproj", "{4AC2D5F1-F671-480C-A075-6BF62B3721B2}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PythonBinding", "AddIns\BackendBindings\Python\PythonBinding\Project\PythonBinding.csproj", "{8D732610-8FC6-43BA-94C9-7126FD7FE361}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BooBinding.Tests", "AddIns\BackendBindings\Boo\BooBinding\Test\BooBinding.Tests.csproj", "{6FA16499-896F-4C02-BB43-1AF5C6C7C713}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Python.Build.Tasks.Tests", "AddIns\BackendBindings\Python\Python.Build.Tasks\Test\Python.Build.Tasks.Tests.csproj", "{833904AB-3CD4-4071-9B48-5770E44685AA}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NRefactoryToBooConverter", "AddIns\BackendBindings\Boo\NRefactoryToBooConverter\Project\NRefactoryToBooConverter.csproj", "{DBCF20A1-BA13-4582-BFA9-74DE4D987B73}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PythonBinding.Tests", "AddIns\BackendBindings\Python\PythonBinding\Test\PythonBinding.Tests.csproj", "{23B517C9-1ECC-4419-A13F-0B7136D085CB}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NRefactoryToBooConverter.Tests", "AddIns\BackendBindings\Boo\NRefactoryToBooConverter\Test\NRefactoryToBooConverter.Tests.csproj", "{C9DE556D-325C-4544-B29F-16A9EB7C9830}" EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Libraries", "Libraries", "{9421EDF4-9769-4BE9-B5A6-C87DE221D73C}" ProjectSection(SolutionItems) = postProject EndProjectSection EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Aga.Controls", "Libraries\TreeViewAdv\Aga.Controls\Aga.Controls.csproj", "{E73BB233-D88B-44A7-A98F-D71EE158381D}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.TextEditor.Tests", "Libraries\ICSharpCode.TextEditor\Test\ICSharpCode.TextEditor.Tests.csproj", "{6259D767-BA7C-484D-9472-68F350A20086}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NRefactory", "Libraries\NRefactory\Project\NRefactory.csproj", "{3A9AE6AA-BC07-4A2F-972C-581E3AE2F195}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.TextEditor", "Libraries\ICSharpCode.TextEditor\Project\ICSharpCode.TextEditor.csproj", "{2D18BE89-D210-49EB-A9DD-2246FBB3DF6D}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WinFormsUI", "Libraries\DockPanel_Src\WinFormsUI\WinFormsUI.csproj", "{D3C782BA-178E-4235-A3BA-8C11DEBB6BEE}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NRefactoryTests", "Libraries\NRefactory\Test\NRefactoryTests.csproj", "{870115DD-960A-4406-A6B9-600BCDC36A03}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WinFormsUI", "Libraries\DockPanel_Src\WinFormsUI\WinFormsUI.csproj", "{D3C782BA-178E-4235-A3BA-8C11DEBB6BEE}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.TextEditor", "Libraries\ICSharpCode.TextEditor\Project\ICSharpCode.TextEditor.csproj", "{2D18BE89-D210-49EB-A9DD-2246FBB3DF6D}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NRefactory", "Libraries\NRefactory\Project\NRefactory.csproj", "{3A9AE6AA-BC07-4A2F-972C-581E3AE2F195}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.TextEditor.Tests", "Libraries\ICSharpCode.TextEditor\Test\ICSharpCode.TextEditor.Tests.csproj", "{6259D767-BA7C-484D-9472-68F350A20086}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Aga.Controls", "Libraries\TreeViewAdv\Aga.Controls\Aga.Controls.csproj", "{E73BB233-D88B-44A7-A98F-D71EE158381D}" EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Main", "Main", "{5A3EBEBA-0560-41C1-966B-23F7D03A5486}" ProjectSection(SolutionItems) = postProject EndProjectSection EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.BuildWorker", "Main\ICSharpCode.SharpDevelop.BuildWorker\ICSharpCode.SharpDevelop.BuildWorker.csproj", "{C3CBC8E3-81D8-4C5B-9941-DCCD12D50B1F}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "StartUp", "Main\StartUp\Project\StartUp.csproj", "{1152B71B-3C05-4598-B20D-823B5D40559E}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.Widgets", "Main\ICSharpCode.SharpDevelop.Widgets\Project\ICSharpCode.SharpDevelop.Widgets.csproj", "{8035765F-D51F-4A0C-A746-2FD100E19419}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Core", "Main\Core\Project\ICSharpCode.Core.csproj", "{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.Dom", "Main\ICSharpCode.SharpDevelop.Dom\Project\ICSharpCode.SharpDevelop.Dom.csproj", "{924EE450-603D-49C1-A8E5-4AFAA31CE6F3}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop", "Main\Base\Project\ICSharpCode.SharpDevelop.csproj", "{2748AD25-9C63-4E12-877B-4DCE96FBED54}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.Sda", "Main\ICSharpCode.SharpDevelop.Sda\ICSharpCode.SharpDevelop.Sda.csproj", "{80318B5F-A25D-45AB-8A95-EF31D2370A4C}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.Tests", "Main\Base\Test\ICSharpCode.SharpDevelop.Tests.csproj", "{4980B743-B32F-4aba-AABD-45E2CAD3568D}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Core.Tests", "Main\Core\Test\ICSharpCode.Core.Tests.csproj", "{AD6FAA08-D6F5-4DBA-AF85-F4DA9F40C3B5}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.Tests", "Main\Base\Test\ICSharpCode.SharpDevelop.Tests.csproj", "{4980B743-B32F-4aba-AABD-45E2CAD3568D}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.Sda", "Main\ICSharpCode.SharpDevelop.Sda\ICSharpCode.SharpDevelop.Sda.csproj", "{80318B5F-A25D-45AB-8A95-EF31D2370A4C}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop", "Main\Base\Project\ICSharpCode.SharpDevelop.csproj", "{2748AD25-9C63-4E12-877B-4DCE96FBED54}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.Dom", "Main\ICSharpCode.SharpDevelop.Dom\Project\ICSharpCode.SharpDevelop.Dom.csproj", "{924EE450-603D-49C1-A8E5-4AFAA31CE6F3}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.Core", "Main\Core\Project\ICSharpCode.Core.csproj", "{35CEF10F-2D4C-45F2-9DD1-161E0FEC583C}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.Widgets", "Main\ICSharpCode.SharpDevelop.Widgets\Project\ICSharpCode.SharpDevelop.Widgets.csproj", "{8035765F-D51F-4A0C-A746-2FD100E19419}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "StartUp", "Main\StartUp\Project\StartUp.csproj", "{1152B71B-3C05-4598-B20D-823B5D40559E}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.SharpDevelop.BuildWorker", "Main\ICSharpCode.SharpDevelop.BuildWorker\ICSharpCode.SharpDevelop.BuildWorker.csproj", "{C3CBC8E3-81D8-4C5B-9941-DCCD12D50B1F}" EndProject Project("{00000000-0000-0000-0000-000000000000}") = "Tools", "Tools\Tools.build", "{970116b0-f96b-4257-8579-986b9cf086f5}" EndProject @@ -355,52 +359,53 @@ Global HideSolutionNode = FALSE EndGlobalSection GlobalSection(NestedProjects) = preSolution - {F94FA21D-78E6-410B-895D-E16D3E7240DB} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} - {1F1AC7CD-D154-45BB-8EAF-804CA8055F5A} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} - {DBCF20A1-BA13-4582-BFA9-74DE4D987B73} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} - {C9DE556D-325C-4544-B29F-16A9EB7C9830} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} - {6604365C-C702-4C10-9BA8-637F1E3D4D0D} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} - {6B717BD1-CD5E-498C-A42E-9E6A4584DC48} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} - {FC0FE702-A87D-4D70-A9B6-1ECCD611125F} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} - {BF38FB72-B380-4196-AF8C-95749D726C61} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} - {A5C0E8F8-9D04-46ED-91D6-1DEF1575313B} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} - {08ce9972-283b-44f4-82fa-966f7dfa6b7a} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} - {1F261725-6318-4434-A1B1-6C70CE4CD324} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} - {4AC2D5F1-F671-480C-A075-6BF62B3721B2} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} - {6FA16499-896F-4C02-BB43-1AF5C6C7C713} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} - {7D7E92DF-ACEB-4B69-92C8-8AC7A703CD57} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} - {3EAA45A9-735C-4AC7-A799-947B93EA449D} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} - {e1b288a2-08ee-4318-8bbb-8ab72c69e33e} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} - {388E7B64-0393-4EB4-A3E3-5C474F141853} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} - {44A8DE09-CAB9-49D8-9CFC-5EB0A552F181} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} - {C12B6EA7-2EFC-4368-B585-EC69EFCC3F97} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} - {9196DD8A-B4D4-4780-8742-C5762E547FC2} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} + {5DA95927-5F2D-46D8-9265-D092734B6F0E} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} {A569DCC1-C608-45FD-B770-4F79335EF154} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} - {88DA149F-21B2-48AB-82C4-28FB6BDFD783} = {C12B6EA7-2EFC-4368-B585-EC69EFCC3F97} - {943DBBB3-E84E-4CF4-917C-C05AFA8743C1} = {C12B6EA7-2EFC-4368-B585-EC69EFCC3F97} - {78CC29AC-CC79-4355-B1F2-97936DF198AC} = {C12B6EA7-2EFC-4368-B585-EC69EFCC3F97} - {66A378A1-E9F4-4AD5-8946-D0EC06C2902F} = {C12B6EA7-2EFC-4368-B585-EC69EFCC3F97} - {1D18D788-F7EE-4585-A23B-34DC8EC63CB8} = {6604365C-C702-4C10-9BA8-637F1E3D4D0D} - {EC06F96A-AEEC-49D6-B03D-AB87C6EB674C} = {6604365C-C702-4C10-9BA8-637F1E3D4D0D} - {A4C858C8-51B6-4265-A695-A20FCEBA1D19} = {6604365C-C702-4C10-9BA8-637F1E3D4D0D} - {23B517C9-1ECC-4419-A13F-0B7136D085CB} = {F94FA21D-78E6-410B-895D-E16D3E7240DB} - {833904AB-3CD4-4071-9B48-5770E44685AA} = {F94FA21D-78E6-410B-895D-E16D3E7240DB} - {8D732610-8FC6-43BA-94C9-7126FD7FE361} = {F94FA21D-78E6-410B-895D-E16D3E7240DB} + {9196DD8A-B4D4-4780-8742-C5762E547FC2} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} + {C12B6EA7-2EFC-4368-B585-EC69EFCC3F97} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} + {44A8DE09-CAB9-49D8-9CFC-5EB0A552F181} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} + {388E7B64-0393-4EB4-A3E3-5C474F141853} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} + {e1b288a2-08ee-4318-8bbb-8ab72c69e33e} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} + {3EAA45A9-735C-4AC7-A799-947B93EA449D} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} + {7D7E92DF-ACEB-4B69-92C8-8AC7A703CD57} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} + {1F261725-6318-4434-A1B1-6C70CE4CD324} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} + {08ce9972-283b-44f4-82fa-966f7dfa6b7a} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} + {A5C0E8F8-9D04-46ED-91D6-1DEF1575313B} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} + {BF38FB72-B380-4196-AF8C-95749D726C61} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} + {FC0FE702-A87D-4D70-A9B6-1ECCD611125F} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} + {6B717BD1-CD5E-498C-A42E-9E6A4584DC48} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} + {6604365C-C702-4C10-9BA8-637F1E3D4D0D} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} + {1F1AC7CD-D154-45BB-8EAF-804CA8055F5A} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} + {F94FA21D-78E6-410B-895D-E16D3E7240DB} = {14A277EE-7DF1-4529-B639-7D1EF334C1C5} {D332F2D1-2CF1-43B7-903C-844BD5211A7E} = {F94FA21D-78E6-410B-895D-E16D3E7240DB} - {3A9AE6AA-BC07-4A2F-972C-581E3AE2F195} = {9421EDF4-9769-4BE9-B5A6-C87DE221D73C} - {D3C782BA-178E-4235-A3BA-8C11DEBB6BEE} = {9421EDF4-9769-4BE9-B5A6-C87DE221D73C} - {870115DD-960A-4406-A6B9-600BCDC36A03} = {9421EDF4-9769-4BE9-B5A6-C87DE221D73C} - {2D18BE89-D210-49EB-A9DD-2246FBB3DF6D} = {9421EDF4-9769-4BE9-B5A6-C87DE221D73C} - {6259D767-BA7C-484D-9472-68F350A20086} = {9421EDF4-9769-4BE9-B5A6-C87DE221D73C} + {8D732610-8FC6-43BA-94C9-7126FD7FE361} = {F94FA21D-78E6-410B-895D-E16D3E7240DB} + {833904AB-3CD4-4071-9B48-5770E44685AA} = {F94FA21D-78E6-410B-895D-E16D3E7240DB} + {23B517C9-1ECC-4419-A13F-0B7136D085CB} = {F94FA21D-78E6-410B-895D-E16D3E7240DB} + {A4C858C8-51B6-4265-A695-A20FCEBA1D19} = {6604365C-C702-4C10-9BA8-637F1E3D4D0D} + {EC06F96A-AEEC-49D6-B03D-AB87C6EB674C} = {6604365C-C702-4C10-9BA8-637F1E3D4D0D} + {1D18D788-F7EE-4585-A23B-34DC8EC63CB8} = {6604365C-C702-4C10-9BA8-637F1E3D4D0D} + {66A378A1-E9F4-4AD5-8946-D0EC06C2902F} = {C12B6EA7-2EFC-4368-B585-EC69EFCC3F97} + {78CC29AC-CC79-4355-B1F2-97936DF198AC} = {C12B6EA7-2EFC-4368-B585-EC69EFCC3F97} + {943DBBB3-E84E-4CF4-917C-C05AFA8743C1} = {C12B6EA7-2EFC-4368-B585-EC69EFCC3F97} + {88DA149F-21B2-48AB-82C4-28FB6BDFD783} = {C12B6EA7-2EFC-4368-B585-EC69EFCC3F97} + {C9DE556D-325C-4544-B29F-16A9EB7C9830} = {5DA95927-5F2D-46D8-9265-D092734B6F0E} + {DBCF20A1-BA13-4582-BFA9-74DE4D987B73} = {5DA95927-5F2D-46D8-9265-D092734B6F0E} + {6FA16499-896F-4C02-BB43-1AF5C6C7C713} = {5DA95927-5F2D-46D8-9265-D092734B6F0E} + {4AC2D5F1-F671-480C-A075-6BF62B3721B2} = {5DA95927-5F2D-46D8-9265-D092734B6F0E} {E73BB233-D88B-44A7-A98F-D71EE158381D} = {9421EDF4-9769-4BE9-B5A6-C87DE221D73C} - {1152B71B-3C05-4598-B20D-823B5D40559E} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486} - {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486} - {2748AD25-9C63-4E12-877B-4DCE96FBED54} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486} - {4980B743-B32F-4aba-AABD-45E2CAD3568D} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486} - {AD6FAA08-D6F5-4DBA-AF85-F4DA9F40C3B5} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486} - {80318B5F-A25D-45AB-8A95-EF31D2370A4C} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486} - {924EE450-603D-49C1-A8E5-4AFAA31CE6F3} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486} - {8035765F-D51F-4A0C-A746-2FD100E19419} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486} + {6259D767-BA7C-484D-9472-68F350A20086} = {9421EDF4-9769-4BE9-B5A6-C87DE221D73C} + {2D18BE89-D210-49EB-A9DD-2246FBB3DF6D} = {9421EDF4-9769-4BE9-B5A6-C87DE221D73C} + {870115DD-960A-4406-A6B9-600BCDC36A03} = {9421EDF4-9769-4BE9-B5A6-C87DE221D73C} + {D3C782BA-178E-4235-A3BA-8C11DEBB6BEE} = {9421EDF4-9769-4BE9-B5A6-C87DE221D73C} + {3A9AE6AA-BC07-4A2F-972C-581E3AE2F195} = {9421EDF4-9769-4BE9-B5A6-C87DE221D73C} {C3CBC8E3-81D8-4C5B-9941-DCCD12D50B1F} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486} + {8035765F-D51F-4A0C-A746-2FD100E19419} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486} + {924EE450-603D-49C1-A8E5-4AFAA31CE6F3} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486} + {80318B5F-A25D-45AB-8A95-EF31D2370A4C} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486} + {AD6FAA08-D6F5-4DBA-AF85-F4DA9F40C3B5} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486} + {4980B743-B32F-4aba-AABD-45E2CAD3568D} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486} + {2748AD25-9C63-4E12-877B-4DCE96FBED54} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486} + {35CEF10F-2D4C-45F2-9DD1-161E0FEC583C} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486} + {1152B71B-3C05-4598-B20D-823B5D40559E} = {5A3EBEBA-0560-41C1-966B-23F7D03A5486} EndGlobalSection EndGlobal