Files
bluflame/intromat/Intromat/Themes/Endpoint.xaml
2026-04-18 22:31:51 +02:00

48 lines
3.2 KiB
XML

<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:reactiveUi="http://reactiveui.net"
xmlns:wpf="clr-namespace:NodeNetwork.Utilities.WPF;assembly=NodeNetwork"
xmlns:converters="clr-namespace:Intromat.Converters">
<wpf:NullVisibilityConverter x:Key="NullConverter"/>
<converters:WidthToMarginConverter x:Key="WidthToLeftMarginConverter" Side="False" />
<converters:WidthToMarginConverter x:Key="WidthToRightMarginConverter" Side="True" />
<ControlTemplate x:Key="LeftAlignedEndpoint">
<Grid Margin="-10, 0, 0, 5">
<Grid Margin="-35, 0, 0, 0">
<Canvas VerticalAlignment="Center" Height="{Binding ActualHeight, ElementName=NameLabel}" Width="{Binding ActualWidth, ElementName=NameLabel}" Margin="{Binding ActualWidth, ElementName=NameLabel, Converter={StaticResource WidthToRightMarginConverter}}">
<Canvas.Effect>
<DropShadowEffect Opacity="1" ShadowDepth="0" BlurRadius="5" Color="Black" />
</Canvas.Effect>
<TextBlock x:Name="NameLabel" FontFamily="Segoe UI Semibold" FontSize="14" Width="auto" Foreground="White" VerticalAlignment="Center" Visibility="Collapsed" />
</Canvas>
</Grid>
<reactiveUi:ViewModelViewHost x:Name="EndpointHost" Margin="0,0,10,0" Width="20" Height="20"
HorizontalContentAlignment="Stretch" VerticalContentAlignment="Stretch" IsTabStop="False"/>
</Grid>
<ControlTemplate.Triggers>
<DataTrigger Binding="{Binding IsMouseOver}" Value="True">
<Setter Property="Visibility" Value="Visible" TargetName="NameLabel" />
</DataTrigger>
</ControlTemplate.Triggers>
</ControlTemplate>
<ControlTemplate x:Key="RightAlignedEndpoint">
<Grid Margin="0, 0, -10, 5">
<Grid Margin="0, 0, -35, 0">
<Canvas VerticalAlignment="Center" Height="{Binding ActualHeight, ElementName=NameLabel}" Width="{Binding ActualWidth, ElementName=NameLabel}" Margin="{Binding ActualWidth, ElementName=NameLabel, Converter={StaticResource WidthToLeftMarginConverter}}">
<Canvas.Effect>
<DropShadowEffect Opacity="1" ShadowDepth="0" BlurRadius="5" Color="Black" />
</Canvas.Effect>
<TextBlock x:Name="NameLabel" FontFamily="Segoe UI Semibold" FontSize="14" Width="auto" Foreground="White" VerticalAlignment="Center" Visibility="Collapsed" />
</Canvas>
</Grid>
<reactiveUi:ViewModelViewHost x:Name="EndpointHost" Margin="10,0,0,0" Width="20" Height="20"
HorizontalContentAlignment="Stretch" VerticalContentAlignment="Stretch" IsTabStop="False"/>
</Grid>
<ControlTemplate.Triggers>
<DataTrigger Binding="{Binding IsMouseOver}" Value="True">
<Setter Property="Visibility" Value="Visible" TargetName="NameLabel" />
</DataTrigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</ResourceDictionary>