Files
Futonizer/Views/HistoryWindow.xaml
T

122 lines
6.2 KiB
XML

<ui:FluentWindow x:Class="Futonizer.Views.HistoryWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:ui="http://schemas.lepo.co/wpfui/2022/xaml"
Title="History"
Height="520" Width="640"
MinHeight="360" MinWidth="480"
WindowStartupLocation="CenterOwner"
ExtendsContentIntoTitleBar="True"
WindowBackdropType="Mica"
WindowCornerPreference="Round">
<Window.Resources>
<BooleanToVisibilityConverter x:Key="BoolToVis"/>
<Style x:Key="HistoryListBoxItemStyle" TargetType="ListBoxItem">
<Setter Property="HorizontalContentAlignment" Value="Stretch"/>
<Setter Property="Padding" Value="10,6"/>
<Setter Property="Margin" Value="3,1"/>
<Setter Property="FocusVisualStyle" Value="{x:Null}"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="ListBoxItem">
<Border x:Name="ItemBorder"
Background="Transparent"
CornerRadius="6"
Padding="{TemplateBinding Padding}"
SnapsToDevicePixels="True">
<Grid>
<Border x:Name="AccentBar"
Width="3" HorizontalAlignment="Left"
Margin="-10,-6,0,-6"
CornerRadius="2"
Background="{DynamicResource AccentFillColorDefaultBrush}"
Visibility="Collapsed"/>
<ContentPresenter/>
</Grid>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter TargetName="ItemBorder" Property="Background"
Value="{DynamicResource ControlFillColorSecondaryBrush}"/>
</Trigger>
<Trigger Property="IsSelected" Value="True">
<Setter TargetName="ItemBorder" Property="Background"
Value="{DynamicResource AccentFillColorSecondaryBrush}"/>
<Setter TargetName="AccentBar" Property="Visibility" Value="Visible"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</Window.Resources>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<ui:TitleBar Grid.Row="0" Title="History"/>
<Grid Grid.Row="1" Margin="16,4,16,16">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<TextBlock Grid.Row="0" x:Name="SummaryText"
FontSize="12" Opacity="0.7" Margin="4,0,0,8"/>
<Border Grid.Row="1" CornerRadius="8" ClipToBounds="True"
Background="{DynamicResource ControlFillColorDefaultBrush}"
BorderBrush="{DynamicResource ControlElevationBorderBrush}"
BorderThickness="1">
<Grid>
<TextBlock x:Name="EmptyHint"
HorizontalAlignment="Center" VerticalAlignment="Center"
Text="No history yet"
Opacity="0.4" FontSize="14"
IsHitTestVisible="False"/>
<ListBox x:Name="HistoryList"
Background="Transparent" BorderThickness="0"
HorizontalContentAlignment="Stretch"
ScrollViewer.HorizontalScrollBarVisibility="Disabled"
VirtualizingPanel.ScrollUnit="Pixel"
PreviewMouseWheel="HistoryList_PreviewMouseWheel"
ItemContainerStyle="{StaticResource HistoryListBoxItemStyle}">
<ListBox.ItemTemplate>
<DataTemplate>
<Grid ToolTip="{Binding Message}">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="16"/>
<ColumnDefinition Width="140"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<TextBlock Grid.Column="0" Text="&#x2713;" FontSize="12"
Foreground="#4CAF50" VerticalAlignment="Center"
Visibility="{Binding Success, Converter={StaticResource BoolToVis}}"/>
<TextBlock Grid.Column="0" Text="&#x2717;" FontSize="12"
Foreground="#F44336" VerticalAlignment="Center"
Visibility="{Binding Failed, Converter={StaticResource BoolToVis}}"/>
<TextBlock Grid.Column="1" Text="{Binding TimestampDisplay}"
FontSize="11" Opacity="0.7" VerticalAlignment="Center" Margin="8,0"/>
<TextBlock Grid.Column="2" Text="{Binding FileName}"
FontSize="12" VerticalAlignment="Center"
TextTrimming="CharacterEllipsis"/>
</Grid>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</Grid>
</Border>
</Grid>
</Grid>
</ui:FluentWindow>