2026-06-05 13:44:39 +09:00

225 lines
15 KiB
XML

<UserControl x:Class="MilUI.TrainOriginSyncView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:MilUI"
xmlns:view="clr-namespace:Aurora.View;assembly=Aurora"
mc:Ignorable="d"
d:DesignWidth="520" d:DesignHeight="390"
d:DataContext="{d:DesignInstance Type=local:TrainOriginSyncViewModel}"
Width="680" Height="390">
<UserControl.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<view:SharedResourceDictionary Source="pack://application:,,,/VisionCommonUI;component/Styles/VisionResources.xaml"/>
</ResourceDictionary.MergedDictionaries>
<view:BoolToVisibilityConverter
x:Key="visibilityConverter"
True="Visible"
False="Collapsed"/>
</ResourceDictionary>
</UserControl.Resources>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="1*"/>
<RowDefinition Height="5"/>
<RowDefinition Height="70"/>
</Grid.RowDefinitions>
<GroupBox Grid.Row="0" Margin="5">
<GroupBox.Header>
<TextBlock Style="{StaticResource styleTextBlockSubTitleSmall}">
<Run Text="{Binding [Pattern], Source={StaticResource langTokens}, Mode=OneWay}"/>
<Run Text="{Binding [Position], Source={StaticResource langTokens}, Mode=OneWay}"/>
</TextBlock>
</GroupBox.Header>
<Grid >
<ListBox ItemsSource="{Binding TrainOriginInfos}" SelectedIndex="{Binding SelectedPatternIndex}">
<ListBox.Resources>
<Style TargetType="ListBoxItem">
<Setter Property="HorizontalContentAlignment" Value="Stretch"/>
<Setter Property="Background" Value="Transparent"/>
<Setter Property="Padding" Value="0"/>
<Setter Property="Margin" Value="0"/>
<Setter Property="BorderBrush" Value="Transparent" />
<Setter Property="FocusVisualStyle" Value="{x:Null}" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ListBoxItem}">
<ControlTemplate.Triggers>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsMouseOver" Value="True" />
<Condition Property="IsSelected" Value="False" />
</MultiTrigger.Conditions>
<Setter Value="#FF454545" Property="Background" />
<Setter Value="#FF7D7D7D" Property="BorderBrush" />
</MultiTrigger>
<Trigger Property="IsSelected" Value="True">
<Setter Value="#A50034" Property="Background" />
<Setter Value="#FF00589F" Property="BorderBrush" />
</Trigger>
</ControlTemplate.Triggers>
<Grid Margin="4 0 4 4">
<Border Background="{TemplateBinding Background}" SnapsToDevicePixels="True" />
<ContentPresenter Margin="8 5" />
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
<Style.Triggers>
<Trigger Property="IsSelected" Value="True">
<Setter Property="Background" Value="#A50034" />
<Setter Property="Foreground" Value="White" />
</Trigger>
</Style.Triggers>
</Style>
</ListBox.Resources>
<ListBox.Template>
<ControlTemplate>
<StackPanel>
<Grid Margin="0, 5">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1.25*"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="3*"/>
<ColumnDefinition Width="3*"/>
<ColumnDefinition Width="3*"/>
<ColumnDefinition Width="3*"/>
<ColumnDefinition Width="3*"/>
<ColumnDefinition Width="3*"/>
<ColumnDefinition Width="3*"/>
</Grid.ColumnDefinitions>
<TextBlock Grid.Column="0" Margin="5, 2" Style="{StaticResource styleOriginSyncTextBlock}" Text=""/>
<TextBlock Grid.Column="1" Style="{StaticResource styleOriginSyncTextBlock}" Text="ID"/>
<TextBlock Grid.Column="2" Style="{StaticResource styleOriginSyncTextBlock}">
<Run Text="{Binding [Activated], Source={StaticResource langTokens}, Mode=OneWay}"/>
</TextBlock>
<TextBlock Grid.Column="3" Style="{StaticResource styleOriginSyncTextBlock}">
<Run Text="{Binding [Image], Source={StaticResource langTokens}, Mode=OneWay}"/>
<Run Text="X"/>
</TextBlock>
<TextBlock Grid.Column="4" Style="{StaticResource styleOriginSyncTextBlock}">
<Run Text="{Binding [Image], Source={StaticResource langTokens}, Mode=OneWay}"/>
<Run Text="Y"/>
</TextBlock>
<TextBlock Grid.Column="5" Style="{StaticResource styleOriginSyncTextBlock}">
<Run Text="T"/>
</TextBlock>
<TextBlock Grid.Column="6" Style="{StaticResource styleOriginSyncTextBlock}">
<Run Text="{Binding [Offset], Source={StaticResource langTokens}, Mode=OneWay}"/>
<Run Text="X"/>
</TextBlock>
<TextBlock Grid.Column="7" Style="{StaticResource styleOriginSyncTextBlock}">
<Run Text="{Binding [Offset], Source={StaticResource langTokens}, Mode=OneWay}"/>
<Run Text="Y"/>
</TextBlock>
<TextBlock Grid.Column="8" Style="{StaticResource styleOriginSyncTextBlock}">
<Run Text="{Binding [Offset], Source={StaticResource langTokens}, Mode=OneWay}"/>
<Run Text="T"/>
</TextBlock>
</Grid>
<ItemsPresenter></ItemsPresenter>
</StackPanel>
</ControlTemplate>
</ListBox.Template>
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Margin="4">
<Grid Margin="0, 5">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="3*"/>
<ColumnDefinition Width="3*"/>
<ColumnDefinition Width="3*"/>
<ColumnDefinition Width="3*"/>
<ColumnDefinition Width="3*"/>
<ColumnDefinition Width="3*"/>
<ColumnDefinition Width="3*"/>
</Grid.ColumnDefinitions>
<Rectangle Grid.Column="0" Margin="5, 2" Width="10" Height="10" Fill="{Binding Color}"/>
<TextBlock Grid.Column="1" Style="{StaticResource styleOriginSyncTextBlock}" Text="{Binding PaternInfo.PatternIndex.PatternSubId}"/>
<TextBlock Grid.Column="2" Style="{StaticResource styleOriginSyncTextBlock}" Text="{Binding PaternInfo.IsActivated}"/>
<TextBlock Grid.Column="3" Style="{StaticResource styleOriginSyncTextBlock}" Text="{Binding OriginPoint.X, StringFormat=F1}"/>
<TextBlock Grid.Column="4" Style="{StaticResource styleOriginSyncTextBlock}" Text="{Binding OriginPoint.Y, StringFormat=F1}"/>
<TextBlock Grid.Column="5" Style="{StaticResource styleOriginSyncTextBlock}" Text="{Binding T.Degree, StringFormat=F2}"/>
<TextBlock Grid.Column="6" Style="{StaticResource styleOriginSyncTextBlock}" Text="{Binding OriginOffset.X, StringFormat=F1}"/>
<TextBlock Grid.Column="7" Style="{StaticResource styleOriginSyncTextBlock}" Text="{Binding OriginOffset.Y, StringFormat=F1}"/>
<TextBlock Grid.Column="8" Style="{StaticResource styleOriginSyncTextBlock}" Text="{Binding TOffset.Degree, StringFormat=F2}"/>
</Grid>
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</Grid>
</GroupBox>
<Separator Grid.Row="1"/>
<StackPanel Grid.Row="2" Margin="15, 10" Orientation="Horizontal" HorizontalAlignment="Right">
<Button Style="{StaticResource styleBtnPatternSetting}"
Command="{Binding CMD_Clear}">
<StackPanel Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Center">
<Image Style="{StaticResource stylePatternButtonImage}"
Source="pack://application:,,,/VisionCommonUI;component/Icons/ColorIcons/img_bin.png"/>
<TextBlock Style="{StaticResource stylePatternButtonTextBlock}"
Text="{Binding [Clear], Source={StaticResource langTokens}, Mode=OneWay}"/>
</StackPanel>
</Button>
<Button Style="{StaticResource styleBtnPatternSetting}"
Command="{Binding CMD_Find}">
<StackPanel Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Center">
<Image Style="{StaticResource stylePatternButtonImage}"
Source="pack://application:,,,/VisionCommonUI;component/Icons/ColorIcons/img_magnifying_glass.png"/>
<TextBlock Style="{StaticResource stylePatternButtonTextBlock}">
<Run Text="{Binding [Find], Source={StaticResource langTokens}, Mode=OneWay}"/>
<Run Text="{Binding [All], Source={StaticResource langTokens}, Mode=OneWay}"/>
</TextBlock>
</StackPanel>
</Button>
<Button Style="{StaticResource styleBtnPatternSetting}"
Command="{Binding CMD_SyncXY}">
<StackPanel Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Center">
<Image Style="{StaticResource stylePatternButtonImage}"
Source="pack://application:,,,/VisionCommonUI;component/Icons/ColorIcons/img_ok.png"/>
<TextBlock Style="{StaticResource stylePatternButtonTextBlock}">
<Run Text="{Binding [Sync], Source={StaticResource langTokens}, Mode=OneWay}"/>
<Run Text="XY"/>
</TextBlock>
</StackPanel>
</Button>
<Button Style="{StaticResource styleBtnPatternSetting}"
Command="{Binding CMD_SyncT}"
Visibility="{Binding EnableSyncT, Converter={StaticResource visibilityConverter}}">
<StackPanel Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Center">
<Image Style="{StaticResource stylePatternButtonImage}"
Source="pack://application:,,,/VisionCommonUI;component/Icons/ColorIcons/img_ok.png"/>
<TextBlock Style="{StaticResource stylePatternButtonTextBlock}">
<Run Text="{Binding [Sync], Source={StaticResource langTokens}, Mode=OneWay}"/>
<Run Text="T"/>
</TextBlock>
</StackPanel>
</Button>
<Button Style="{StaticResource styleBtnPatternSetting}"
Command="{Binding CMD_Cancel}"
CommandParameter="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type Window}}}">
<StackPanel Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Center">
<Image Style="{StaticResource stylePatternButtonImage}"
Source="pack://application:,,,/VisionCommonUI;component/Icons/ColorIcons/img_cancel.png"/>
<TextBlock Style="{StaticResource stylePatternButtonTextBlock}"
Text="{Binding [Close], Source={StaticResource langTokens}, Mode=OneWay}"/>
</StackPanel>
</Button>
</StackPanel>
</Grid>
</UserControl>