2026-01-26 18:56:53 +09:00

189 lines
13 KiB
XML

<UserControl x:Class="VisionUI.Pattern.PatternListView"
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:aurora="clr-namespace:Aurora.View;assembly=Aurora"
xmlns:local="clr-namespace:VisionUI.Pattern"
xmlns:behavior="http://schemas.microsoft.com/xaml/behaviors"
xmlns:visionCommonUI="clr-namespace:VisionCommonUI;assembly=VisionCommonUI"
x:Name="uc"
mc:Ignorable="d" d:DesignHeight="800" d:DesignWidth="900"
d:DataContext="{d:DesignInstance Type=visionCommonUI:PatternListViewModelBase}"
IsEnabled="{Binding IsViewEnabled}"
IsVisibleChanged="uc_IsVisibleChanged">
<UserControl.Resources>
<ResourceDictionary>
<aurora:BoolConverter
x:Key="boolInverter"
FalseValue="True"
TrueValue="False"/>
<visionCommonUI:BitmapConverter x:Key="bitmapConverter"/>
</ResourceDictionary>
</UserControl.Resources>
<behavior:Interaction.Triggers>
<behavior:PropertyChangedTrigger Binding="{Binding IsVisible, ElementName=uc}">
<behavior:InvokeCommandAction
Command="{Binding CMD_VisibleChanged}"
CommandParameter="{Binding IsVisible, ElementName=uc}"/>
</behavior:PropertyChangedTrigger>
</behavior:Interaction.Triggers>
<Grid Margin="5">
<Grid.RowDefinitions>
<RowDefinition/>
<RowDefinition Height="70"/>
</Grid.RowDefinitions>
<Grid Grid.Row="0">
<ScrollViewer VerticalScrollBarVisibility="Auto">
<ListBox x:Name="lbPatternList" ItemsSource="{Binding Patterns}" SelectedIndex="{Binding SelectedPatternIndex}">
<ListBox.Resources>
<Style TargetType="ListBoxItem" BasedOn="{StaticResource styleListBoxItem}"/>
</ListBox.Resources>
<ListBox.Template>
<ControlTemplate>
<StackPanel>
<Grid Margin="10">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="3*"/>
<ColumnDefinition Width="7*"/>
<ColumnDefinition Width="5*"/>
<ColumnDefinition Width="15*"/>
</Grid.ColumnDefinitions>
<TextBlock Grid.Column="0" Style="{StaticResource styleGroupBoxHeaderTextBlock}" TextAlignment="Center" FontSize="15" Text="ID"/>
<TextBlock Grid.Column="1" Style="{StaticResource styleGroupBoxHeaderTextBlock}" TextAlignment="Center" FontSize="15"
Text="{Binding [Activated], Source={StaticResource langTokens}, Mode=OneWay}"/>
<TextBlock Grid.Column="2" Style="{StaticResource styleGroupBoxHeaderTextBlock}" TextAlignment="Center" FontSize="15">
<Run Text="{Binding [Pattern], Source={StaticResource langTokens}, Mode=OneWay}"/>
<Run Text="{Binding [Type], Source={StaticResource langTokens}, Mode=OneWay}"/>
</TextBlock>
<TextBlock Grid.Column="3" Style="{StaticResource styleGroupBoxHeaderTextBlock}" TextAlignment="Center" FontSize="15"
Text="{Binding [Thumbnail], Source={StaticResource langTokens}, Mode=OneWay}"/>
<TextBlock Grid.Column="4" Style="{StaticResource styleGroupBoxHeaderTextBlock}" TextAlignment="Center" FontSize="15"
Text="{Binding [Description], Source={StaticResource langTokens}, Mode=OneWay}"/>
</Grid>
<ItemsPresenter/>
</StackPanel>
</ControlTemplate>
</ListBox.Template>
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel>
<Grid Margin="0, 5">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="3*"/>
<ColumnDefinition Width="7*"/>
<ColumnDefinition Width="5*"/>
<ColumnDefinition Width="15*"/>
</Grid.ColumnDefinitions>
<TextBlock Grid.Column="0" Style="{StaticResource styleTextBlockDataGridItem}" FontSize="15" Text="{Binding PatternIndex.PatternId}"/>
<TextBlock Grid.Column="1" Style="{StaticResource styleTextBlockDataGridItem}" FontSize="15" Text="{Binding IsActivated}"/>
<TextBlock Grid.Column="2" Style="{StaticResource styleTextBlockDataGridItem}" FontSize="15" Text="{Binding PatternType}"/>
<Image Grid.Column="3" Margin="0" Width="38" Height="38"
RenderOptions.BitmapScalingMode="HighQuality"
Source="{Binding Thumbnail, Converter={StaticResource bitmapConverter}}"/>
<TextBlock Grid.Column="4" Style="{StaticResource styleTextBlockDataGridItem}" FontSize="15" Text="{Binding Description}"/>
</Grid>
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</ScrollViewer>
</Grid>
<Grid Grid.Row="1" Margin="0, 10">
<StackPanel Orientation="Horizontal" HorizontalAlignment="Right">
<Button Style="{StaticResource styleBtnPatternSetting}"
IsEnabled="{Binding IsSelectedPatternRegistered}"
Command="{Binding CMD_GrabFind}">
<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 [Grab], Source={StaticResource langTokens}, Mode=OneWay}"/>
<Run Text="{Binding [Find], Source={StaticResource langTokens}, Mode=OneWay}"/>
</TextBlock>
</StackPanel>
</Button>
<Button Style="{StaticResource styleBtnPatternSetting}"
IsEnabled="{Binding IsSelectedPatternRegistered}"
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}"
Text="{Binding [Find], Source={StaticResource langTokens}, Mode=OneWay}"/>
</StackPanel>
</Button>
<Button Style="{StaticResource styleBtnPatternSetting}"
IsEnabled="{Binding IsSelectedPatternRegistered, Converter={StaticResource boolInverter}}"
Command="{Binding CMD_Register}">
<StackPanel Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Center">
<Image Style="{StaticResource stylePatternButtonImage}"
Source="pack://application:,,,/VisionCommonUI;component/Icons/ColorIcons/img_register.png"/>
<TextBlock Style="{StaticResource stylePatternButtonTextBlock}"
Text="{Binding [Register], Source={StaticResource langTokens}, Mode=OneWay}"/>
</StackPanel>
</Button>
<Button Style="{StaticResource styleBtnPatternSetting}"
IsEnabled="{Binding IsSelectedPatternRegistered}"
Command="{Binding CMD_Edit}">
<StackPanel Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Center">
<Image Style="{StaticResource stylePatternButtonImage}"
Source="pack://application:,,,/VisionCommonUI;component/Icons/ColorIcons/img_edit.png"/>
<TextBlock Style="{StaticResource stylePatternButtonTextBlock}"
Text="{Binding [Edit], Source={StaticResource langTokens}, Mode=OneWay}"/>
</StackPanel>
</Button>
<Button Style="{StaticResource styleBtnPatternSetting}"
IsEnabled="{Binding IsSelectedPatternRegistered}"
Command="{Binding CMD_Delete}">
<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 [Delete], Source={StaticResource langTokens}, Mode=OneWay}"/>
</StackPanel>
</Button>
<Button Style="{StaticResource styleBtnPatternSetting}"
IsEnabled="{Binding UseCamPattern, Converter={StaticResource boolInverter}}"
Command="{Binding CMD_Apply}">
<StackPanel Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Center">
<Image Style="{StaticResource stylePatternButtonImage}"
Source="pack://application:,,,/VisionCommonUI;component/Icons/ColorIcons/img_apply.png"/>
<TextBlock Style="{StaticResource stylePatternButtonTextBlock}"
Text="{Binding [Apply], Source={StaticResource langTokens}, Mode=OneWay}"/>
</StackPanel>
</Button>
<Button Style="{StaticResource styleBtnPatternSetting}"
IsEnabled="{Binding IsSelectedPatternRegistered}"
Command="{Binding CMD_Tracking}">
<StackPanel Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Center">
<Image Style="{StaticResource stylePatternButtonImage}"
Source="pack://application:,,,/VisionCommonUI;component/Icons/ColorIcons/img_tracking.png"/>
<TextBlock Style="{StaticResource stylePatternButtonTextBlock}"
Text="{Binding [Tracking], Source={StaticResource langTokens}, Mode=OneWay}"/>
</StackPanel>
</Button>
<Button Style="{StaticResource styleBtnPatternSetting}"
IsEnabled="{Binding IsSelectedPatternRegistered}"
Command="{Binding CMD_PatternTest}">
<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 [Test], Source={StaticResource langTokens}, Mode=OneWay}"/>
</TextBlock>
</StackPanel>
</Button>
</StackPanel>
</Grid>
</Grid>
</UserControl>