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

259 lines
17 KiB
XML

<UserControl x:Class="AuroraOCT.Views.UCOCTManualMotion"
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:AuroraOCT.Views"
xmlns:view="clr-namespace:Aurora.View;assembly=Aurora"
mc:Ignorable="d" Name="uc"
xmlns:behavior="http://schemas.microsoft.com/xaml/behaviors"
xmlns:usercontrols="clr-namespace:AuroraUIComponent.UserControls;assembly=AuroraUIComponent"
d:DataContext="{d:DesignInstance Type=local:UCOCTManualMotionViewModel}"
d:DesignHeight="900" d:DesignWidth="1200">
<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>
<UserControl.Resources>
<ResourceDictionary>
<view:BoolConverter x:Key="convFieldColor" TrueValue="Red" FalseValue="Gray" />
<Style x:Key="styleRbJogUnit" TargetType="RadioButton">
<Setter Property="MinWidth" Value="{Binding RelativeSource={x:Static RelativeSource.Self}, Path=ActualHeight}"/>
<Setter Property="FontWeight" Value="Bold"/>
<Setter Property="FontSize" Value="16"/>
<Setter Property="Foreground" Value="White"/>
<Setter Property="Height" Value="40"/>
<Setter Property="OverridesDefaultStyle" Value="True"/>
<Setter Property="Margin" Value="2 0"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type RadioButton}">
<Border Name="border" BorderThickness="1" Background="#1A2242"
BorderBrush="#1A2242">
<ContentPresenter Margin="0,0,0,4" HorizontalAlignment="Center" VerticalAlignment="Center" />
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Opacity" Value="0.8" />
</Trigger>
<Trigger Property="IsChecked"
Value="True">
<Setter TargetName="border"
Property="Background"
Value="#A50034" />
<Setter TargetName="border"
Property="BorderThickness"
Value="1" />
<Setter Property="FontWeight"
Value="Bold" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</ResourceDictionary>
</UserControl.Resources>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
<RowDefinition Height="*"/>
<RowDefinition Height="4*"/>
</Grid.RowDefinitions>
<GroupBox Grid.Row="0" Grid.Column="0" Margin="5" FontSize="18">
<GroupBox.HeaderTemplate>
<DataTemplate>
<TextBlock Text="OCT SoftWare Control" FontSize="25" FontWeight="Bold"/>
</DataTemplate>
</GroupBox.HeaderTemplate>
<StackPanel Orientation="Horizontal" Height="50" VerticalAlignment="Top">
<Button Margin="5" Width="100" Command="{Binding CMD_Connect}" Content="Connect"/>
<Button Margin="5" Width="100" Command="{Binding CMD_DisConnect}" Content="DisConnect"/>
<Button Margin="5" Width="100" Command="{Binding CMD_StartSW}" Content="Start SW"/>
</StackPanel>
</GroupBox>
<GroupBox Grid.Row="1" Grid.Column="0" Margin="5" FontSize="18">
<GroupBox.HeaderTemplate>
<DataTemplate>
<TextBlock Text="Cell Serial Number Control" FontSize="25" FontWeight="Bold"/>
</DataTemplate>
</GroupBox.HeaderTemplate>
<StackPanel Orientation="Horizontal" Height="50" VerticalAlignment="Top">
<TextBox Margin="5" Width="200" Text="{Binding strCellSerialNumber}"/>
<Button Margin="5" Width="100" Command="{Binding CMD_AddSerialNumber}" Content="Add"/>
<Button Margin="5" Width="100" Command="{Binding CMD_CheckSerialNumber}" Content="Check"/>
<Button Margin="5" Width="100" Command="{Binding CMD_ClearSerialNumber}">
<StackPanel Orientation="Horizontal">
<Image x:Name="ImageClear"></Image>
<TextBlock Text=" Clear"/>
</StackPanel>
</Button>
</StackPanel>
</GroupBox>
<GroupBox Grid.Row="2" Grid.Column="0" Margin="5" FontSize="18">
<GroupBox.HeaderTemplate>
<DataTemplate>
<TextBlock Text="Job" FontSize="25" FontWeight="Bold"/>
</DataTemplate>
</GroupBox.HeaderTemplate>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
<RowDefinition Height="*"/>
<RowDefinition Height="*"/>
<RowDefinition Height="*"/>
<RowDefinition Height="*"/>
<RowDefinition Height="*"/>
<RowDefinition Height="*"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<StackPanel Grid.Row="0" Orientation="Horizontal" VerticalAlignment="Center">
<TextBox Margin="5" Padding="10" Width="200" Text="{Binding strJobName}"/>
<Button Margin="5" Width="100" Command="{Binding CMD_RunJob}" Content="Start"/>
<Button Margin="5" Width="100" Command="{Binding CMD_StopJob}" Content="Stop"/>
</StackPanel>
<StackPanel Grid.Row="1" Orientation="Horizontal" VerticalAlignment="Center">
<TextBlock Margin="5" Padding="10" Width="200" Text="{Binding strJobCMDResult}" Background="White" Foreground="black" TextWrapping="Wrap" />
<Button Margin="5" Width="100" Command="{Binding CMD_ENTER_JOB}" Content="Enter Remote"/>
<Button Margin="5" Width="100" Command="{Binding CMD_EXIT_JOB}" Content="Exit Remote"/>
<Button Margin="5" Width="150" Command="{Binding CMD_JOB_GET_REMOTE_MODE}" Content="Get Remote Mode"/>
</StackPanel>
<StackPanel Grid.Row="2" Orientation="Horizontal" VerticalAlignment="Center">
<Button Margin="5" Width="100" Command="{Binding CMD_JOB_GET_JUDGE}" Content="Get Result"/>
<TextBlock Margin="5" Padding="10" Width="400" Text="{Binding strJob_KHD_Judge}" Background="White" Foreground="black" TextWrapping="Wrap">
</TextBlock>
</StackPanel>
<StackPanel Grid.Row="3" Orientation="Horizontal" VerticalAlignment="Center">
<Button Margin="5" Width="100" Command="{Binding CMD_JOB_GET_AVG}" Content="Get Average"/>
<TextBlock Margin="5" Padding="10" Width="400" Text="{Binding strJob_KHD_AVG}" Background="White" Foreground="black" TextWrapping="Wrap">
</TextBlock>
</StackPanel>
<StackPanel Grid.Row="4" Orientation="Horizontal" VerticalAlignment="Center">
<Button Margin="5" Width="100" Command="{Binding CMD_JOB_GET_MAX}" Content="Get Max"/>
<TextBlock Margin="5" Padding="10" Width="400" Text="{Binding strJob_KHD_MAX}" Background="White" Foreground="black" TextWrapping="Wrap">
</TextBlock>
</StackPanel>
<StackPanel Grid.Row="5" Orientation="Horizontal" VerticalAlignment="Center">
<Button Margin="5" Width="100" Command="{Binding CMD_JOB_GET_MIN}" Content="Get Min"/>
<TextBlock Margin="5" Padding="10" Width="400" Text="{Binding strJob_KHD_MIN}" Background="White" Foreground="black" TextWrapping="Wrap">
</TextBlock>
</StackPanel>
<StackPanel Grid.Row="6" Orientation="Horizontal" VerticalAlignment="Center">
<Button Margin="5" Width="100" Command="{Binding CMD_JOB_GET_LOWSUM}" Content="Get LowSum"/>
<TextBlock Margin="5" Padding="10" Width="400" Text="{Binding strJob_KHD_LOWSUM}" Background="White" Foreground="black" TextWrapping="Wrap">
</TextBlock>
</StackPanel>
<StackPanel Grid.Row="7" Orientation="Horizontal" VerticalAlignment="Center">
<Button Margin="5" Width="100" Command="{Binding CMD_JOB_GET_HIGHSUM}" Content="Get HighSum"/>
<TextBlock Margin="5" Padding="10" Width="400" Text="{Binding strJob_KHD_HIGH_SUM}" Background="White" Foreground="black" TextWrapping="Wrap">
</TextBlock>
</StackPanel>
</Grid>
</GroupBox>
<GroupBox Grid.Row="0" Grid.Column="1" Grid.RowSpan="2" Margin="5" FontSize="18">
<GroupBox.HeaderTemplate>
<DataTemplate>
<TextBlock Text="OCT System State" FontSize="25" FontWeight="Bold"/>
</DataTemplate>
</GroupBox.HeaderTemplate>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
<RowDefinition Height="*"/>
<RowDefinition Height="*"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<RadioButton Grid.Column="0" Grid.Row="0" Command="{Binding CMD_OCTStateChanged}" CommandParameter="Initializing" IsChecked="{Binding bRadioInitializing}" IsEnabled="False"
Style="{StaticResource styleRbJogUnit}" Content="Initializing" Margin="3"/>
<RadioButton Grid.Column="0" Grid.Row="1" Command="{Binding CMD_OCTStateChanged}" CommandParameter="Ready for Command" IsChecked="{Binding bRadioReady}" IsEnabled="False"
Style="{StaticResource styleRbJogUnit}" Content="Ready for Command" Margin="3"/>
<RadioButton Grid.Column="0" Grid.Row="2" Command="{Binding CMD_OCTStateChanged}" CommandParameter="Busy" IsChecked="{Binding bRadioBusy}" IsEnabled="False"
Style="{StaticResource styleRbJogUnit}" Content="Busy" Margin="3"/>
<RadioButton Grid.Column="0" Grid.Row="3" Command="{Binding CMD_OCTStateChanged}" CommandParameter="No Response" IsChecked="{Binding bRadioNoRespone}" IsEnabled="False"
Style="{StaticResource styleRbJogUnit}" Content="No Response" Margin="3"/>
<RadioButton Grid.Column="1" Grid.Row="0" Command="{Binding CMD_OCTStateChanged}" CommandParameter="Acquiring" IsChecked="{Binding bRadioAcquiring}" IsEnabled="False"
Style="{StaticResource styleRbJogUnit}" Content="Acquiring" Margin="3"/>
<RadioButton Grid.Column="1" Grid.Row="1" Command="{Binding CMD_OCTStateChanged}" CommandParameter="Processing" IsChecked="{Binding bRadioProcessing}" IsEnabled="False"
Style="{StaticResource styleRbJogUnit}" Content="Processing" Margin="3"/>
<RadioButton Grid.Column="1" Grid.Row="2" Command="{Binding CMD_OCTStateChanged}" CommandParameter="Waiting for Trigger" IsChecked="{Binding bRadioWaitingTrigger}" IsEnabled="False"
Style="{StaticResource styleRbJogUnit}" Content="Waiting for Trigger" Margin="3"/>
<RadioButton Grid.Column="1" Grid.Row="3" Command="{Binding CMD_OCTStateChanged}" CommandParameter="Not in Remote Mode" IsChecked="{Binding bRadioNotRemoteMode}" IsEnabled="False"
Style="{StaticResource styleRbJogUnit}" Content="Not in Remote Mode" Margin="3"/>
</Grid>
</GroupBox>
<GroupBox Grid.Row="2" Grid.Column="1" Margin="5" FontSize="18">
<GroupBox.HeaderTemplate>
<DataTemplate>
<TextBlock Text="Sequence" FontSize="25" FontWeight="Bold"/>
</DataTemplate>
</GroupBox.HeaderTemplate>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
<RowDefinition Height="*"/>
<RowDefinition Height="*"/>
<RowDefinition Height="*"/>
<RowDefinition Height="*"/>
<RowDefinition Height="*"/>
<RowDefinition Height="*"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<StackPanel Grid.Row="0" Orientation="Horizontal" VerticalAlignment="Center">
<TextBox Margin="5" Padding="10" Width="200" Text="{Binding strSequenceName}"/>
<Button Margin="5" Width="100" Command="{Binding CMD_RunSequence}" Content="Start"/>
<Button Margin="5" Width="100" Command="{Binding CMD_StopSequence}" Content="Stop"/>
</StackPanel>
<StackPanel Grid.Row="1" Orientation="Horizontal" VerticalAlignment="Center">
<TextBlock Margin="5" Width="200" Padding="10" Text="{Binding strSequenceCMDResult}" Background="White" Foreground="black" TextWrapping="Wrap"/>
<Button Margin="5" Width="100" Command="{Binding CMD_ENTER_SEQUENCE}" Content="Enter Remote"/>
<Button Margin="5" Width="100" Command="{Binding CMD_EXIT_SEQUENCE}" Content="Exit Remote"/>
<Button Margin="5" Width="150" Command="{Binding CMD_SEQUENCE_GET_REMOTE_MODE}" Content="Get Remote Mode"/>
</StackPanel>
<StackPanel Grid.Row="2" Orientation="Horizontal" VerticalAlignment="Center">
<Button Margin="5" Width="100" Command="{Binding CMD_SEQUENCE_GET_JUDGE}" Content="Get Result"/>
<TextBlock Margin="5" Width="400" Padding="10" Text="{Binding strSequence_KHD_Judge}" Background="White" Foreground="black" TextWrapping="Wrap">
</TextBlock>
</StackPanel>
<StackPanel Grid.Row="3" Orientation="Horizontal" VerticalAlignment="Center">
<Button Margin="5" Width="100" Command="{Binding CMD_SEQUENCE_GET_AVG}" Content="Get Average"/>
<TextBlock Margin="5" Width="400" Padding="10" Text="{Binding strSequence_KHD_AVG}" Background="White" Foreground="black" TextWrapping="Wrap">
</TextBlock>
</StackPanel>
<StackPanel Grid.Row="4" Orientation="Horizontal" VerticalAlignment="Center">
<Button Margin="5" Width="100" Command="{Binding CMD_SEQUENCE_GET_MAX}" Content="Get Max"/>
<TextBlock Margin="5" Width="400" Padding="10" Text="{Binding strSequence_KHD_MAX}" Background="White" Foreground="black" TextWrapping="Wrap">
</TextBlock>
</StackPanel>
<StackPanel Grid.Row="5" Orientation="Horizontal" VerticalAlignment="Center">
<Button Margin="5" Width="100" Command="{Binding CMD_SEQUENCE_GET_MIN}" Content="Get Min"/>
<TextBlock Margin="5" Width="400" Padding="10" Text="{Binding strSequence_KHD_MIN}" Background="White" Foreground="black" TextWrapping="Wrap">
</TextBlock>
</StackPanel>
<StackPanel Grid.Row="6" Orientation="Horizontal" VerticalAlignment="Center">
<Button Margin="5" Width="100" Command="{Binding CMD_SEQUENCE_GET_LOWSUM}" Content="Get LowSum"/>
<TextBlock Margin="5" Width="400" Padding="10" Text="{Binding strSequence_KHD_LOWSUM}" Background="White" Foreground="black" TextWrapping="Wrap">
</TextBlock>
</StackPanel>
<StackPanel Grid.Row="7" Orientation="Horizontal" VerticalAlignment="Center">
<Button Margin="5" Width="100" Command="{Binding CMD_SEQUENCE_GET_HIGHSUM}" Content="Get HighSum"/>
<TextBlock Margin="5" Width="400" Padding="10" Text="{Binding strSequence_KHD_HIGH_SUM}" Background="White" Foreground="black" TextWrapping="Wrap">
</TextBlock>
</StackPanel>
</Grid>
</GroupBox>
</Grid>
</UserControl>