84 lines
4.3 KiB
XML
84 lines
4.3 KiB
XML
<UserControl xmlns="https://github.com/avaloniaui"
|
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
|
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
|
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
|
xmlns:vm="using:SPTInstaller.ViewModels"
|
|
mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="450"
|
|
x:Class="SPTInstaller.CustomControls.ProgressableTaskItem">
|
|
|
|
<UserControl.Styles>
|
|
<!-- Ellipse Styles -->
|
|
<Style Selector="Ellipse">
|
|
<Setter Property="Stroke"
|
|
Value="{Binding PendingColor, RelativeSource={RelativeSource AncestorType=UserControl}}" />
|
|
<Setter Property="Margin" Value="7 0" />
|
|
</Style>
|
|
<Style Selector="Ellipse.completed">
|
|
<Setter Property="Stroke"
|
|
Value="{Binding CompletedColor, RelativeSource={RelativeSource AncestorType=UserControl}}" />
|
|
</Style>
|
|
<Style Selector="Ellipse.running">
|
|
<Setter Property="Stroke"
|
|
Value="{Binding RunningColor, RelativeSource={RelativeSource AncestorType=UserControl}}" />
|
|
<Setter Property="Margin" Value="7 3" />
|
|
<Style.Animations>
|
|
<Animation Duration="0:0:1" PlaybackDirection="Alternate" IterationCount="Infinite">
|
|
<KeyFrame Cue="0%">
|
|
<Setter Property="ScaleTransform.ScaleX" Value="1" />
|
|
<Setter Property="ScaleTransform.ScaleY" Value="1" />
|
|
</KeyFrame>
|
|
<KeyFrame Cue="100%">
|
|
<Setter Property="ScaleTransform.ScaleX" Value="1.2" />
|
|
<Setter Property="ScaleTransform.ScaleY" Value="1.2" />
|
|
</KeyFrame>
|
|
</Animation>
|
|
</Style.Animations>
|
|
</Style>
|
|
<Style Selector="Ellipse.centerRunning">
|
|
<Setter Property="Fill"
|
|
Value="{Binding RunningColor, RelativeSource={RelativeSource AncestorType=UserControl}}" />
|
|
</Style>
|
|
<Style Selector="Ellipse.centerCompleted">
|
|
<Setter Property="Fill"
|
|
Value="{Binding CompletedColor, RelativeSource={RelativeSource AncestorType=UserControl}}" />
|
|
</Style>
|
|
|
|
<!-- Label Styles -->
|
|
<Style Selector="TextBlock">
|
|
<Setter Property="Foreground"
|
|
Value="{Binding PendingColor, RelativeSource={RelativeSource
|
|
AncestorType=UserControl}}" />
|
|
</Style>
|
|
<Style Selector="TextBlock.completed">
|
|
<Setter Property="Foreground"
|
|
Value="{Binding CompletedColor, RelativeSource={RelativeSource AncestorType=UserControl}}" />
|
|
</Style>
|
|
<Style Selector="TextBlock.running">
|
|
<Setter Property="Foreground"
|
|
Value="{Binding RunningColor, RelativeSource={RelativeSource AncestorType=UserControl}}" />
|
|
</Style>
|
|
</UserControl.Styles>
|
|
<Grid ColumnDefinitions="AUTO, *">
|
|
|
|
<Ellipse Height="30" Width="30"
|
|
StrokeThickness="4"
|
|
Fill="{StaticResource SPT_Background_Dark}"
|
|
HorizontalAlignment="Left"
|
|
Classes.running="{Binding IsRunning, RelativeSource={RelativeSource AncestorType=UserControl}}"
|
|
Classes.completed="{Binding IsCompleted, RelativeSource={RelativeSource AncestorType=UserControl}}" />
|
|
|
|
<Ellipse Height="20" Width="20"
|
|
Classes.centerRunning="{Binding IsRunning, RelativeSource={RelativeSource AncestorType=UserControl}}"
|
|
Classes.centerCompleted="{Binding IsCompleted, RelativeSource={RelativeSource AncestorType=UserControl}}" />
|
|
|
|
<TextBlock Grid.Column="1"
|
|
Text="{Binding TaskName, RelativeSource={RelativeSource AncestorType=UserControl}}"
|
|
Classes.running="{Binding IsRunning, RelativeSource={RelativeSource AncestorType=UserControl}}"
|
|
Classes.completed="{Binding IsCompleted, RelativeSource={RelativeSource AncestorType=UserControl}}"
|
|
FontWeight="SemiBold"
|
|
FontSize="15"
|
|
TextWrapping="Wrap"
|
|
VerticalAlignment="Center"
|
|
HorizontalAlignment="Left" />
|
|
</Grid>
|
|
</UserControl> |