Browse Source

CodeCompletion window is empty when no EmptyText is set.

git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@5907 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
pull/1/head
Martin Koníček 15 years ago
parent
commit
a2034b31db
  1. 1
      src/AddIns/DisplayBindings/AvalonEdit.AddIn/AvalonEdit.AddIn.csproj
  2. 6
      src/AddIns/DisplayBindings/AvalonEdit.AddIn/Src/SharpDevelopCompletionWindow.xaml
  3. 29
      src/AddIns/DisplayBindings/AvalonEdit.AddIn/Src/StringToVisibilityConverter.cs

1
src/AddIns/DisplayBindings/AvalonEdit.AddIn/AvalonEdit.AddIn.csproj

@ -146,6 +146,7 @@ @@ -146,6 +146,7 @@
<Compile Include="Src\SharpDevelopCompletionWindow.cs" />
<Compile Include="Src\SharpDevelopInsightWindow.cs">
</Compile>
<Compile Include="Src\StringToVisibilityConverter.cs" />
<Compile Include="Src\SyntaxModeDoozer.cs" />
<Compile Include="Src\TextMarkerService.cs" />
<EmbeddedResource Include="Resources\IncrementalSearchCursor.cur" />

6
src/AddIns/DisplayBindings/AvalonEdit.AddIn/Src/SharpDevelopCompletionWindow.xaml

@ -6,6 +6,8 @@ @@ -6,6 +6,8 @@
Style="{x:Static core:GlobalStyles.WindowStyle}"
>
<Window.Resources>
<local:StringToVisibilityConverter x:Key="StringToVisibilityConverter" />
<Style TargetType="cc:CompletionListBox" BasedOn="{StaticResource {x:Type ListBox}}">
<Style.Triggers>
<DataTrigger
@ -18,7 +20,9 @@ @@ -18,7 +20,9 @@
<TextBlock Text="{Binding EmptyText, RelativeSource={RelativeSource AncestorType={x:Type local:SharpDevelopCompletionWindow}, AncestorLevel=1}}"
FontStyle="Italic"
Foreground="{DynamicResource {x:Static SystemColors.GrayTextBrushKey}}"
TextWrapping="WrapWithOverflow"/>
TextWrapping="WrapWithOverflow"
Visibility="{Binding EmptyText, RelativeSource={RelativeSource AncestorType={x:Type local:SharpDevelopCompletionWindow}, AncestorLevel=1},
Converter={StaticResource StringToVisibilityConverter}}" />
</ControlTemplate>
</Setter.Value>
</Setter>

29
src/AddIns/DisplayBindings/AvalonEdit.AddIn/Src/StringToVisibilityConverter.cs

@ -0,0 +1,29 @@ @@ -0,0 +1,29 @@
// <file>
// <copyright see="prj:///doc/copyright.txt"/>
// <license see="prj:///doc/license.txt"/>
// <owner name="Martin Konicek" email="martin.konicek@gmail.com"/>
// <version>$Revision: $</version>
// </file>
using System;
using System.Globalization;
using System.Windows;
using System.Windows.Data;
namespace ICSharpCode.AvalonEdit.AddIn
{
[ValueConversion(typeof(string), typeof(Visibility))]
public class StringToVisibilityConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
if (!(value is string))
return value == null ? Visibility.Collapsed : Visibility.Visible;
return string.IsNullOrEmpty((string)value) ? Visibility.Collapsed : Visibility.Visible;
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
return null;
}
}
}
Loading…
Cancel
Save