From 8b0fbd2f16796d9e822f5e0afe15e83b48d56faa Mon Sep 17 00:00:00 2001 From: Siegfried Pammer Date: Sat, 11 Jan 2014 00:52:13 +0100 Subject: [PATCH] some UI improvements in tooltips: - use Editor font size - reduce padding in insight tooltip - do not use fully qualified names in completion documentation --- .../Project/Src/Completion/CSharpInsightItem.cs | 5 ++++- .../Project/Src/Completion/EntityCompletionData.cs | 5 ++--- .../Project/Src/Completion/TypeCompletionData.cs | 5 ++--- .../Base/Project/Editor/DocumentationUIBuilder.cs | 1 + src/Main/Base/Project/Editor/XmlDocFormatter.cs | 12 ++++++++---- 5 files changed, 17 insertions(+), 11 deletions(-) diff --git a/src/AddIns/BackendBindings/CSharpBinding/Project/Src/Completion/CSharpInsightItem.cs b/src/AddIns/BackendBindings/CSharpBinding/Project/Src/Completion/CSharpInsightItem.cs index cd46f7fee9..e2dfa930e9 100644 --- a/src/AddIns/BackendBindings/CSharpBinding/Project/Src/Completion/CSharpInsightItem.cs +++ b/src/AddIns/BackendBindings/CSharpBinding/Project/Src/Completion/CSharpInsightItem.cs @@ -79,8 +79,11 @@ namespace CSharpBinding.Completion VerticalScrollBarVisibility = ScrollBarVisibility.Auto }; + var flowDocument = b.CreateFlowDocument(); + flowDocument.PagePadding = new Thickness(0); // default is NOT Thickness(0), but Thickness(Auto), which adds unnecessary space + return new FlowDocumentScrollViewer { - Document = b.CreateFlowDocument(), + Document = flowDocument, VerticalScrollBarVisibility = ScrollBarVisibility.Auto }; } diff --git a/src/AddIns/BackendBindings/CSharpBinding/Project/Src/Completion/EntityCompletionData.cs b/src/AddIns/BackendBindings/CSharpBinding/Project/Src/Completion/EntityCompletionData.cs index 6767c1b54b..57e67b5db1 100644 --- a/src/AddIns/BackendBindings/CSharpBinding/Project/Src/Completion/EntityCompletionData.cs +++ b/src/AddIns/BackendBindings/CSharpBinding/Project/Src/Completion/EntityCompletionData.cs @@ -29,9 +29,8 @@ namespace CSharpBinding.Completion protected override object CreateFancyDescription() { return new FlowDocumentScrollViewer { - Document = XmlDocFormatter.CreateTooltip(entity), - VerticalScrollBarVisibility = ScrollBarVisibility.Auto, - FontSize = SD.EditorControlService.GlobalOptions.FontSize + Document = XmlDocFormatter.CreateTooltip(entity, false), + VerticalScrollBarVisibility = ScrollBarVisibility.Auto }; } } diff --git a/src/AddIns/BackendBindings/CSharpBinding/Project/Src/Completion/TypeCompletionData.cs b/src/AddIns/BackendBindings/CSharpBinding/Project/Src/Completion/TypeCompletionData.cs index b6b4fc7a98..60cd282b7f 100644 --- a/src/AddIns/BackendBindings/CSharpBinding/Project/Src/Completion/TypeCompletionData.cs +++ b/src/AddIns/BackendBindings/CSharpBinding/Project/Src/Completion/TypeCompletionData.cs @@ -29,9 +29,8 @@ namespace CSharpBinding.Completion protected override object CreateFancyDescription() { return new FlowDocumentScrollViewer { - Document = XmlDocFormatter.CreateTooltip(type), - VerticalScrollBarVisibility = ScrollBarVisibility.Auto, - FontSize = SD.EditorControlService.GlobalOptions.FontSize + Document = XmlDocFormatter.CreateTooltip(type, false), + VerticalScrollBarVisibility = ScrollBarVisibility.Auto }; } } diff --git a/src/Main/Base/Project/Editor/DocumentationUIBuilder.cs b/src/Main/Base/Project/Editor/DocumentationUIBuilder.cs index 9d09c3883d..5f7e869c1d 100644 --- a/src/Main/Base/Project/Editor/DocumentationUIBuilder.cs +++ b/src/Main/Base/Project/Editor/DocumentationUIBuilder.cs @@ -50,6 +50,7 @@ namespace ICSharpCode.SharpDevelop.Editor public FlowDocument CreateFlowDocument() { FlushAddedText(true); + flowDocument.FontSize = SD.EditorControlService.GlobalOptions.FontSize; return flowDocument; } diff --git a/src/Main/Base/Project/Editor/XmlDocFormatter.cs b/src/Main/Base/Project/Editor/XmlDocFormatter.cs index 9fd78fca81..7b7681f238 100644 --- a/src/Main/Base/Project/Editor/XmlDocFormatter.cs +++ b/src/Main/Base/Project/Editor/XmlDocFormatter.cs @@ -13,10 +13,12 @@ namespace ICSharpCode.SharpDevelop.Editor /// public static class XmlDocFormatter { - public static FlowDocument CreateTooltip(IType type) + public static FlowDocument CreateTooltip(IType type, bool useFullyQualifiedMemberNames = true) { var ambience = AmbienceService.GetCurrentAmbience(); - ambience.ConversionFlags = ConversionFlags.StandardConversionFlags | ConversionFlags.ShowDeclaringType | ConversionFlags.UseFullyQualifiedMemberNames; + ambience.ConversionFlags = ConversionFlags.StandardConversionFlags | ConversionFlags.ShowDeclaringType; + if (useFullyQualifiedMemberNames) + ambience.ConversionFlags |= ConversionFlags.UseFullyQualifiedMemberNames; string header; if (type is ITypeDefinition) header = ambience.ConvertEntity((ITypeDefinition)type); @@ -39,10 +41,12 @@ namespace ICSharpCode.SharpDevelop.Editor return b.CreateFlowDocument(); } - public static FlowDocument CreateTooltip(IEntity entity) + public static FlowDocument CreateTooltip(IEntity entity, bool useFullyQualifiedMemberNames = true) { var ambience = AmbienceService.GetCurrentAmbience(); - ambience.ConversionFlags = ConversionFlags.StandardConversionFlags | ConversionFlags.ShowDeclaringType | ConversionFlags.UseFullyQualifiedMemberNames; + ambience.ConversionFlags = ConversionFlags.StandardConversionFlags | ConversionFlags.ShowDeclaringType; + if (useFullyQualifiedMemberNames) + ambience.ConversionFlags |= ConversionFlags.UseFullyQualifiedMemberNames; string header = ambience.ConvertEntity(entity); var documentation = XmlDocumentationElement.Get(entity);