Files

119 lines
13 KiB
XML

<UserControl x:Class="XP.Hardware.MotionControl.Views.MotionControlView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
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:loc="clr-namespace:XP.Common.Localization.Extensions;assembly=XP.Common"
xmlns:telerik="http://schemas.telerik.com/2008/xaml/presentation"
xmlns:prism="http://prismlibrary.com/"
prism:ViewModelLocator.AutoWireViewModel="True"
mc:Ignorable="d"
HorizontalAlignment="Stretch" Background="White">
<ScrollViewer VerticalScrollBarVisibility="Auto">
<StackPanel Margin="8">
<GroupBox Margin="0,0,0,6">
<GroupBox.Header><TextBlock Text="{loc:Localization MC_DoorStatus_Title}" FontWeight="Bold" FontSize="12"/></GroupBox.Header>
<DockPanel Margin="5" LastChildFill="False">
<TextBlock Text="{loc:Localization MC_DoorStatus}" FontSize="12" Foreground="#616161" VerticalAlignment="Center" Margin="0,0,5,0" DockPanel.Dock="Left"/>
<TextBlock Text="{Binding DoorStatus}" FontSize="12" FontWeight="Bold" VerticalAlignment="Center" Margin="5,0,5,0" DockPanel.Dock="Left"/>
<TextBlock Text="{Binding InterlockStatusText}" FontSize="12" VerticalAlignment="Center" DockPanel.Dock="Left" FontWeight="Bold" Margin="5,0,5,0">
<TextBlock.Style>
<Style TargetType="TextBlock">
<Setter Property="Foreground" Value="#FFE53935"/>
<Style.Triggers>
<DataTrigger Binding="{Binding IsInterlocked}" Value="True">
<Setter Property="Foreground" Value="#FF43A047"/>
</DataTrigger>
</Style.Triggers>
</Style>
</TextBlock.Style>
</TextBlock>
<telerik:RadButton Content="{loc:Localization MC_CloseDoor}" Command="{Binding CloseDoorCommand}" Width="60" Height="22" FontSize="12" Margin="3,0,0,0" DockPanel.Dock="Right" telerik:StyleManager.Theme="Crystal"/>
<telerik:RadButton Content="{loc:Localization MC_OpenDoor}" Command="{Binding OpenDoorCommand}" IsEnabled="{Binding IsNotInterlocked}" Width="60" Height="22" FontSize="12" DockPanel.Dock="Right" telerik:StyleManager.Theme="Crystal"/>
</DockPanel>
</GroupBox>
<GroupBox Margin="0,0,0,6">
<GroupBox.Header><TextBlock Text="{loc:Localization MC_Geometry_Title}" FontWeight="Bold" FontSize="12"/></GroupBox.Header>
<StackPanel Margin="5">
<Grid Margin="0,0,0,4">
<Grid.ColumnDefinitions><ColumnDefinition Width="Auto" MinWidth="35"/><ColumnDefinition Width="*"/><ColumnDefinition Width="Auto" MinWidth="35"/><ColumnDefinition Width="*"/><ColumnDefinition Width="Auto" MinWidth="18"/><ColumnDefinition Width="*"/></Grid.ColumnDefinitions>
<TextBlock Grid.Column="0" Text="{loc:Localization MC_FOD}" FontSize="12" Foreground="#616161" VerticalAlignment="Center"/>
<TextBlock Grid.Column="1" Text="{Binding FOD, StringFormat=F2}" FontSize="12" FontWeight="SemiBold" VerticalAlignment="Center" Margin="4,0"/>
<TextBlock Grid.Column="2" Text="{loc:Localization MC_FDD}" FontSize="12" Foreground="#616161" VerticalAlignment="Center"/>
<TextBlock Grid.Column="3" Text="{Binding FDD, StringFormat=F2}" FontSize="12" FontWeight="SemiBold" VerticalAlignment="Center" Margin="4,0"/>
<TextBlock Grid.Column="4" Text="{loc:Localization MC_Magnification}" FontSize="12" Foreground="#616161" VerticalAlignment="Center"/>
<TextBlock Grid.Column="5" Text="{Binding Magnification, StringFormat=F3}" FontSize="12" FontWeight="SemiBold" VerticalAlignment="Center" Margin="4,0"/>
</Grid>
</StackPanel>
</GroupBox>
<GroupBox Margin="0,0,0,6">
<GroupBox.Header><TextBlock Text="{loc:Localization MC_Axes_Title}" FontWeight="Bold" FontSize="12"/></GroupBox.Header>
<StackPanel Margin="5">
<Grid>
<Grid.ColumnDefinitions><ColumnDefinition Width="Auto" MinWidth="70"/><ColumnDefinition Width="*"/><ColumnDefinition Width="*"/></Grid.ColumnDefinitions>
<Grid.RowDefinitions><RowDefinition Height="Auto"/><RowDefinition Height="Auto"/><RowDefinition Height="Auto"/><RowDefinition Height="Auto"/><RowDefinition Height="Auto"/><RowDefinition Height="Auto"/><RowDefinition Height="Auto"/><RowDefinition Height="Auto"/></Grid.RowDefinitions>
<TextBlock Grid.Row="0" Grid.Column="0" Text="{loc:Localization MC_Axis}" FontWeight="Bold" FontSize="12" Margin="0,0,0,2"/>
<TextBlock Grid.Row="0" Grid.Column="1" Text="{loc:Localization MC_Actual}" FontWeight="Bold" FontSize="12" HorizontalAlignment="Center" Margin="4,0,0,2"/>
<TextBlock Grid.Row="0" Grid.Column="2" Text="{loc:Localization MC_Target}" FontWeight="Bold" FontSize="12" HorizontalAlignment="Center" Margin="4,0,0,2"/>
<TextBlock Grid.Row="1" Grid.Column="0" Text="{loc:Localization MC_SourceZ}" FontSize="12" VerticalAlignment="Center" Margin="0,2"/>
<TextBlock Grid.Row="1" Grid.Column="1" Text="{Binding SourceZActual, StringFormat=F2}" FontSize="12" FontWeight="SemiBold" VerticalAlignment="Center" HorizontalAlignment="Center" Margin="4,2"/>
<telerik:RadNumericUpDown Grid.Row="1" Grid.Column="2" Value="{Binding SourceZTarget, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" ValueFormat="Numeric" NumberDecimalDigits="2" SmallChange="0.1" LargeChange="1" Margin="4,2" telerik:StyleManager.Theme="Crystal"/>
<TextBlock Grid.Row="2" Grid.Column="0" Text="{loc:Localization MC_DetectorZ}" FontSize="12" VerticalAlignment="Center" Margin="0,2"/>
<TextBlock Grid.Row="2" Grid.Column="1" Text="{Binding DetectorZActual, StringFormat=F2}" FontSize="12" FontWeight="SemiBold" VerticalAlignment="Center" HorizontalAlignment="Center" Margin="4,2"/>
<telerik:RadNumericUpDown Grid.Row="2" Grid.Column="2" Value="{Binding DetectorZTarget, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" ValueFormat="Numeric" NumberDecimalDigits="2" SmallChange="0.1" LargeChange="1" Margin="4,2" telerik:StyleManager.Theme="Crystal"/>
<TextBlock Grid.Row="3" Grid.Column="0" Text="{loc:Localization MC_StageX}" FontSize="12" VerticalAlignment="Center" Margin="0,2"/>
<TextBlock Grid.Row="3" Grid.Column="1" Text="{Binding StageXActual, StringFormat=F2}" FontSize="12" FontWeight="SemiBold" VerticalAlignment="Center" HorizontalAlignment="Center" Margin="4,2"/>
<telerik:RadNumericUpDown Grid.Row="3" Grid.Column="2" Value="{Binding StageXTarget, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" ValueFormat="Numeric" NumberDecimalDigits="2" SmallChange="0.1" LargeChange="1" Margin="4,2" telerik:StyleManager.Theme="Crystal"/>
<TextBlock Grid.Row="4" Grid.Column="0" Text="{loc:Localization MC_StageY}" FontSize="12" VerticalAlignment="Center" Margin="0,2"/>
<TextBlock Grid.Row="4" Grid.Column="1" Text="{Binding StageYActual, StringFormat=F2}" FontSize="12" FontWeight="SemiBold" VerticalAlignment="Center" HorizontalAlignment="Center" Margin="4,2"/>
<telerik:RadNumericUpDown Grid.Row="4" Grid.Column="2" Value="{Binding StageYTarget, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" ValueFormat="Numeric" NumberDecimalDigits="2" SmallChange="0.1" LargeChange="1" Margin="4,2" telerik:StyleManager.Theme="Crystal"/>
<TextBlock Grid.Row="5" Grid.Column="0" Text="{loc:Localization MC_DetSwing}" FontSize="12" VerticalAlignment="Center" Margin="0,2"/>
<TextBlock Grid.Row="5" Grid.Column="1" Text="{Binding DetSwingActual, StringFormat=F2}" FontSize="12" FontWeight="SemiBold" VerticalAlignment="Center" HorizontalAlignment="Center" Margin="4,2"/>
<telerik:RadNumericUpDown Grid.Row="5" Grid.Column="2" Value="{Binding DetSwingTarget, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" ValueFormat="Numeric" NumberDecimalDigits="2" SmallChange="0.1" LargeChange="1" Margin="4,2" telerik:StyleManager.Theme="Crystal"/>
<TextBlock Grid.Row="6" Grid.Column="0" Text="{loc:Localization MC_StageRot}" FontSize="12" VerticalAlignment="Center" Margin="0,2" Visibility="{Binding StageRotationVisibility}"/>
<TextBlock Grid.Row="6" Grid.Column="1" Text="{Binding StageRotActual, StringFormat=F2}" FontSize="12" FontWeight="SemiBold" VerticalAlignment="Center" HorizontalAlignment="Center" Margin="4,2" Visibility="{Binding StageRotationVisibility}"/>
<telerik:RadNumericUpDown Grid.Row="6" Grid.Column="2" Value="{Binding StageRotTarget, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" ValueFormat="Numeric" NumberDecimalDigits="2" SmallChange="0.1" LargeChange="1" Margin="4,2" Visibility="{Binding StageRotationVisibility}" telerik:StyleManager.Theme="Crystal"/>
<TextBlock Grid.Row="7" Grid.Column="0" Text="{loc:Localization MC_FixtureRot}" FontSize="12" VerticalAlignment="Center" Margin="0,2" Visibility="{Binding FixtureRotationVisibility}"/>
<TextBlock Grid.Row="7" Grid.Column="1" Text="{Binding FixtureRotActual, StringFormat=F2}" FontSize="12" FontWeight="SemiBold" VerticalAlignment="Center" HorizontalAlignment="Center" Margin="4,2" Visibility="{Binding FixtureRotationVisibility}"/>
<telerik:RadNumericUpDown Grid.Row="7" Grid.Column="2" Value="{Binding FixtureRotTarget, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" ValueFormat="Numeric" NumberDecimalDigits="2" SmallChange="0.1" LargeChange="1" Margin="4,2" Visibility="{Binding FixtureRotationVisibility}" telerik:StyleManager.Theme="Crystal"/>
</Grid>
<UniformGrid Columns="4" Margin="0,6,0,0">
<telerik:RadButton Content="{loc:Localization MC_Move}" Command="{Binding MoveCommand}" Height="28" Margin="3" telerik:StyleManager.Theme="Crystal" FontSize="12">
<telerik:RadButton.Background>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
<GradientStop Color="White"/>
<GradientStop Color="#FF62B8E0" Offset="1"/>
</LinearGradientBrush>
</telerik:RadButton.Background>
</telerik:RadButton>
<telerik:RadButton Content="{loc:Localization MC_Stop}" Command="{Binding StopCommand}" Height="28" Margin="3" telerik:StyleManager.Theme="Crystal" FontSize="12">
<telerik:RadButton.Background>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
<GradientStop Color="White"/>
<GradientStop Color="#FFFFA1A1" Offset="1"/>
</LinearGradientBrush>
</telerik:RadButton.Background>
</telerik:RadButton>
<telerik:RadButton Content="{loc:Localization MC_Home}" Command="{Binding HomeCommand}" Height="28" Margin="3" telerik:StyleManager.Theme="Crystal" FontSize="12">
<telerik:RadButton.Background>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
<GradientStop Color="White"/>
<GradientStop Color="#FF77E062" Offset="1"/>
</LinearGradientBrush>
</telerik:RadButton.Background>
</telerik:RadButton>
<telerik:RadButton Content="{loc:Localization MC_CopyActualToTarget}" Command="{Binding CopyActualToTargetCommand}" Height="28" Margin="3" telerik:StyleManager.Theme="Crystal" FontSize="12">
<telerik:RadButton.Background>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
<GradientStop Color="White"/>
<GradientStop Color="#FFFFD54F" Offset="1"/>
</LinearGradientBrush>
</telerik:RadButton.Background>
</telerik:RadButton>
</UniformGrid>
</StackPanel>
</GroupBox>
</StackPanel>
</ScrollViewer>
</UserControl>