You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
113 lines
6.2 KiB
113 lines
6.2 KiB
<UserControl x:Class="ICSharpCode.ILSpy.TextView.DecompilerTextView" x:Name="self"
|
|
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
|
xmlns:properties="clr-namespace:ICSharpCode.ILSpy.Properties"
|
|
xmlns:controls="clr-namespace:ICSharpCode.ILSpy.Controls"
|
|
xmlns:local="clr-namespace:ICSharpCode.ILSpy.TextView"
|
|
xmlns:editing="clr-namespace:ICSharpCode.AvalonEdit.Editing;assembly=ICSharpCode.AvalonEdit"
|
|
xmlns:folding="clr-namespace:ICSharpCode.AvalonEdit.Folding;assembly=ICSharpCode.AvalonEdit"
|
|
xmlns:styles="urn:TomsToolbox.Wpf.Styles"
|
|
xmlns:themes="clr-namespace:ICSharpCode.ILSpy.Themes">
|
|
<UserControl.Resources>
|
|
<SolidColorBrush x:Key="waitAdornerBackgoundBrush" Color="{DynamicResource {x:Static SystemColors.WindowColorKey}}" Opacity=".75" />
|
|
<Style TargetType="{x:Type editing:TextArea}">
|
|
<Setter Property="FocusVisualStyle" Value="{x:Null}" />
|
|
<Setter Property="SelectionForeground" Value="{x:Null}" />
|
|
<Setter Property="SelectionCornerRadius" Value="0.0" />
|
|
<Setter Property="SelectionBrush">
|
|
<Setter.Value>
|
|
<SolidColorBrush Color="{DynamicResource {x:Static SystemColors.HighlightColorKey}}" Opacity="0.3" />
|
|
</Setter.Value>
|
|
</Setter>
|
|
<Setter Property="SelectionBorder">
|
|
<Setter.Value>
|
|
<Pen Brush="{DynamicResource {x:Static SystemColors.HighlightBrushKey}}" Thickness="0" />
|
|
</Setter.Value>
|
|
</Setter>
|
|
</Style>
|
|
</UserControl.Resources>
|
|
<Grid>
|
|
<Border BorderThickness="1,1,0,1" BorderBrush="{DynamicResource {x:Static SystemColors.ControlLightBrushKey}}">
|
|
<Grid>
|
|
<local:DecompilerTextEditor x:Name="textEditor" AutomationProperties.Name="Decompilation" FontFamily="Consolas" FontSize="10pt" IsReadOnly="True"
|
|
Background="{DynamicResource {x:Static themes:ResourceKeys.TextBackgroundBrush}}"
|
|
Foreground="{DynamicResource {x:Static themes:ResourceKeys.TextForegroundBrush}}"
|
|
LineNumbersForeground="{DynamicResource {x:Static themes:ResourceKeys.LineNumbersForegroundBrush}}"
|
|
folding:FoldingMargin.FoldingMarkerBackgroundBrush="{DynamicResource {x:Static SystemColors.WindowBrushKey}}"
|
|
folding:FoldingMargin.SelectedFoldingMarkerBackgroundBrush="{DynamicResource {x:Static SystemColors.WindowBrushKey}}"
|
|
folding:FoldingMargin.FoldingMarkerBrush="{DynamicResource {x:Static SystemColors.ControlDarkBrushKey}}"
|
|
folding:FoldingMargin.SelectedFoldingMarkerBrush="{DynamicResource {x:Static SystemColors.ControlTextBrushKey}}">
|
|
<local:DecompilerTextEditor.Resources>
|
|
<!-- prevent App-wide button style from applying to the buttons in the search box -->
|
|
<Style TargetType="{x:Type Button}">
|
|
<Setter Property="Background" Value="{DynamicResource {x:Static SystemColors.ControlBrushKey}}" />
|
|
<Setter Property="BorderBrush" Value="{DynamicResource {x:Static styles:ResourceKeys.BorderBrush}}" />
|
|
<Setter Property="HorizontalContentAlignment" Value="Center" />
|
|
<Setter Property="VerticalContentAlignment" Value="Center" />
|
|
<Setter Property="Template">
|
|
<Setter.Value>
|
|
<ControlTemplate TargetType="Button">
|
|
<Border BorderThickness="1"
|
|
Background="{TemplateBinding Background}"
|
|
BorderBrush="{TemplateBinding BorderBrush}"
|
|
Padding="{TemplateBinding Padding}">
|
|
<ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
|
|
VerticalAlignment="{TemplateBinding VerticalContentAlignment}" />
|
|
</Border>
|
|
</ControlTemplate>
|
|
</Setter.Value>
|
|
</Setter>
|
|
<Style.Triggers>
|
|
<Trigger Property="IsMouseOver" Value="True">
|
|
<Setter Property="Background" Value="{DynamicResource {x:Static SystemColors.ControlDarkBrushKey}}" />
|
|
</Trigger>
|
|
</Style.Triggers>
|
|
</Style>
|
|
</local:DecompilerTextEditor.Resources>
|
|
<local:DecompilerTextEditor.Template>
|
|
<ControlTemplate TargetType="{x:Type local:DecompilerTextEditor}">
|
|
<controls:ZoomScrollViewer
|
|
Focusable="False"
|
|
x:Name="PART_ScrollViewer"
|
|
MouseWheelZoom="True"
|
|
CanContentScroll="True"
|
|
VerticalScrollBarVisibility="Visible"
|
|
HorizontalScrollBarVisibility="Visible"
|
|
Content="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=TextArea}"
|
|
VerticalContentAlignment="Top"
|
|
HorizontalContentAlignment="Left"
|
|
Background="{TemplateBinding Background}"
|
|
Padding="{TemplateBinding Padding}"
|
|
BorderBrush="{TemplateBinding BorderBrush}"
|
|
BorderThickness="{TemplateBinding BorderThickness}"
|
|
TextOptions.TextFormattingMode="{Binding CurrentZoom, ElementName=PART_ScrollViewer, Converter={x:Static local:ZoomLevelToTextFormattingModeConverter.Instance}}"/>
|
|
<ControlTemplate.Triggers>
|
|
<Trigger Property="WordWrap"
|
|
Value="True">
|
|
<Setter TargetName="PART_ScrollViewer"
|
|
Property="HorizontalScrollBarVisibility"
|
|
Value="Disabled" />
|
|
</Trigger>
|
|
</ControlTemplate.Triggers>
|
|
</ControlTemplate>
|
|
</local:DecompilerTextEditor.Template>
|
|
</local:DecompilerTextEditor>
|
|
<Border Name="waitAdorner" Background="{StaticResource waitAdornerBackgoundBrush}" Visibility="Collapsed">
|
|
<Grid>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="*" />
|
|
<ColumnDefinition Width="2*" />
|
|
<ColumnDefinition Width="*" />
|
|
</Grid.ColumnDefinitions>
|
|
<StackPanel Grid.Column="1" VerticalAlignment="Center">
|
|
<TextBlock Name="progressTitle" FontSize="14pt" Text="{x:Static properties:Resources.Decompiling}" Margin="3" />
|
|
<ProgressBar Name="progressBar" Height="16" />
|
|
<TextBlock Name="progressText" Visibility="Collapsed" Margin="3" />
|
|
<Button Click="CancelButton_Click" HorizontalAlignment="Center" Margin="3" Content="{x:Static properties:Resources.Cancel}" />
|
|
</StackPanel>
|
|
</Grid>
|
|
</Border>
|
|
</Grid>
|
|
</Border>
|
|
</Grid>
|
|
</UserControl>
|