diff --git a/src/Libraries/NRefactory/ICSharpCode.NRefactory.CSharp/OutputVisitor/CSharpAmbience.cs b/src/Libraries/NRefactory/ICSharpCode.NRefactory.CSharp/OutputVisitor/CSharpAmbience.cs index 84d72ff750..053b6efadf 100644 --- a/src/Libraries/NRefactory/ICSharpCode.NRefactory.CSharp/OutputVisitor/CSharpAmbience.cs +++ b/src/Libraries/NRefactory/ICSharpCode.NRefactory.CSharp/OutputVisitor/CSharpAmbience.cs @@ -167,7 +167,7 @@ namespace ICSharpCode.NRefactory.CSharp if (typeDef.DeclaringTypeDefinition != null) { WriteTypeDeclarationName(typeDef.DeclaringTypeDefinition, writer, formattingPolicy); writer.WriteToken(Roles.Dot, "."); - } else if ((ConversionFlags & ConversionFlags.UseFullyQualifiedTypeNames) == ConversionFlags.UseFullyQualifiedTypeNames) { + } else if ((ConversionFlags & ConversionFlags.UseFullyQualifiedMemberNames) == ConversionFlags.UseFullyQualifiedMemberNames) { WriteQualifiedName(typeDef.Namespace, writer, formattingPolicy); writer.WriteToken(Roles.Dot, "."); } @@ -265,6 +265,7 @@ namespace ICSharpCode.NRefactory.CSharp throw new ArgumentNullException("type"); TypeSystemAstBuilder astBuilder = CreateAstBuilder(); + astBuilder.AlwaysUseShortTypeNames = (ConversionFlags & ConversionFlags.UseFullyQualifiedMemberNames) != ConversionFlags.UseFullyQualifiedMemberNames; AstType astType = astBuilder.ConvertType(type); return astType.ToString(); } @@ -272,6 +273,7 @@ namespace ICSharpCode.NRefactory.CSharp public void ConvertType(IType type, TokenWriter writer, CSharpFormattingOptions formattingPolicy) { TypeSystemAstBuilder astBuilder = CreateAstBuilder(); + astBuilder.AlwaysUseShortTypeNames = (ConversionFlags & ConversionFlags.UseFullyQualifiedMemberNames) != ConversionFlags.UseFullyQualifiedMemberNames; AstType astType = astBuilder.ConvertType(type); astType.AcceptVisitor(new CSharpOutputVisitor(writer, formattingPolicy)); } diff --git a/src/Libraries/NRefactory/ICSharpCode.NRefactory/TypeSystem/IAmbience.cs b/src/Libraries/NRefactory/ICSharpCode.NRefactory/TypeSystem/IAmbience.cs index 1aa9d299cb..e56e21c0b5 100644 --- a/src/Libraries/NRefactory/ICSharpCode.NRefactory/TypeSystem/IAmbience.cs +++ b/src/Libraries/NRefactory/ICSharpCode.NRefactory/TypeSystem/IAmbience.cs @@ -70,6 +70,11 @@ namespace ICSharpCode.NRefactory.TypeSystem /// ShowBody = 0x200, + /// + /// Use fully qualified names for members. + /// + UseFullyQualifiedMemberNames = 0x400, + StandardConversionFlags = ShowParameterNames | ShowAccessibility | ShowParameterList | @@ -79,7 +84,7 @@ namespace ICSharpCode.NRefactory.TypeSystem ShowDefinitionKeyword | ShowBody, - All = 0x3ff, + All = 0x7ff, } public interface IAmbience diff --git a/src/Main/Base/Project/Editor/XmlDocFormatter.cs b/src/Main/Base/Project/Editor/XmlDocFormatter.cs index 2c4c1af362..9fd78fca81 100644 --- a/src/Main/Base/Project/Editor/XmlDocFormatter.cs +++ b/src/Main/Base/Project/Editor/XmlDocFormatter.cs @@ -16,7 +16,7 @@ namespace ICSharpCode.SharpDevelop.Editor public static FlowDocument CreateTooltip(IType type) { var ambience = AmbienceService.GetCurrentAmbience(); - ambience.ConversionFlags = ConversionFlags.StandardConversionFlags | ConversionFlags.ShowDeclaringType | ConversionFlags.UseFullyQualifiedTypeNames; + ambience.ConversionFlags = ConversionFlags.StandardConversionFlags | ConversionFlags.ShowDeclaringType | ConversionFlags.UseFullyQualifiedMemberNames; string header; if (type is ITypeDefinition) header = ambience.ConvertEntity((ITypeDefinition)type); @@ -42,7 +42,7 @@ namespace ICSharpCode.SharpDevelop.Editor public static FlowDocument CreateTooltip(IEntity entity) { var ambience = AmbienceService.GetCurrentAmbience(); - ambience.ConversionFlags = ConversionFlags.StandardConversionFlags | ConversionFlags.ShowDeclaringType | ConversionFlags.UseFullyQualifiedTypeNames; + ambience.ConversionFlags = ConversionFlags.StandardConversionFlags | ConversionFlags.ShowDeclaringType | ConversionFlags.UseFullyQualifiedMemberNames; string header = ambience.ConvertEntity(entity); var documentation = XmlDocumentationElement.Get(entity);