| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194 | 
							- <UserControl x:Class="VirgoUI.Client.Controls.Parts.Efem"
 
-              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:parts="clr-namespace:VirgoUI.Controls.Parts"
 
-              xmlns:parts1="clr-namespace:VirgoUI.Client.Controls.Parts"
 
-              xmlns:converters="clr-namespace:Aitex.Core.UI.Converters;assembly=MECF.Framework.UI.Core"
 
-              xmlns:deviceControl="clr-namespace:Aitex.Core.UI.DeviceControl;assembly=MECF.Framework.UI.Core"
 
-              mc:Ignorable="d" 
 
-              d:DesignHeight="636" Width="905">
 
-     <UserControl.Resources>
 
-         <ResourceDictionary>
 
-             <ResourceDictionary.MergedDictionaries>
 
-                 <ResourceDictionary Source="/VirgoUI;component/Themes/Generic.xaml" />
 
-             </ResourceDictionary.MergedDictionaries>
 
-             <converters:bool2VisibilityConverter x:Key="bool2VisibilityConvert"/>
 
-         </ResourceDictionary>
 
-     </UserControl.Resources>
 
-     <Canvas Margin="0">
 
-         <Canvas.Resources>
 
-             <Storyboard x:Key="ATMDoor_Open">
 
-                 <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(FrameworkElement.Height)" >
 
-                     <EasingDoubleKeyFrame KeyTime="0" Value="88"/>
 
-                     <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="38"/>
 
-                 </DoubleAnimationUsingKeyFrames>
 
-             </Storyboard>
 
-             <Storyboard x:Key="ATMDoor_Close">
 
-                 <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(FrameworkElement.Height)" >
 
-                     <EasingDoubleKeyFrame KeyTime="0" Value="38"/>
 
-                     <EasingDoubleKeyFrame KeyTime="0:0:0.5" Value="88"/>
 
-                 </DoubleAnimationUsingKeyFrames>
 
-             </Storyboard>
 
-             <Style TargetType="{x:Type Rectangle}" x:Key="SlitValveA_Animation" >
 
-                 <Style.Triggers>
 
-                     <DataTrigger Binding="{Binding PMASlitValveIsOpen}" Value="true">
 
-                         <DataTrigger.EnterActions>
 
-                             <BeginStoryboard Storyboard="{StaticResource ATMDoor_Open}"/>
 
-                         </DataTrigger.EnterActions>
 
-                         <DataTrigger.ExitActions>
 
-                             <BeginStoryboard Storyboard="{StaticResource ATMDoor_Close}"/>
 
-                         </DataTrigger.ExitActions>
 
-                     </DataTrigger>
 
-                 </Style.Triggers>
 
-             </Style>
 
-             <Style TargetType="{x:Type Rectangle}" x:Key="SlitValveB_Animation" >
 
-                 <Style.Triggers>
 
-                     <DataTrigger Binding="{Binding PMBSlitValveIsOpen}" Value="true">
 
-                         <DataTrigger.EnterActions>
 
-                             <BeginStoryboard Storyboard="{StaticResource ATMDoor_Open}"/>
 
-                         </DataTrigger.EnterActions>
 
-                         <DataTrigger.ExitActions>
 
-                             <BeginStoryboard Storyboard="{StaticResource ATMDoor_Close}"/>
 
-                         </DataTrigger.ExitActions>
 
-                     </DataTrigger>
 
-                 </Style.Triggers>
 
-             </Style>
 
-         </Canvas.Resources>
 
-         <Image Source="/VirgoUI;component/Controls/Assets/Image1/efembg.png" Canvas.Left="95" Canvas.Top="177" Height="280" Width="644" />
 
-         <Image Source="/VirgoUI;component/Controls/Assets/Image1/walk.png" Canvas.Left="241" Canvas.Top="310" Width="350"  />
 
-         <Image x:Name="imgBuffer" Source="/VirgoUI;component/Controls/Assets/Image1/station.png" Canvas.Left="596" Canvas.Top="225" Height="95" Width="105" Visibility="{Binding IsBufferIntalled, Converter={StaticResource bool2VisibilityConvert}}" />
 
-         <Image x:Name="imgFlipper" Source="/VirgoUI;component/Controls/Assets/Image1/station.png" Canvas.Left="130" Canvas.Top="275" Height="95" Width="105" Visibility="{Binding IsFlipperInstalled, Converter={StaticResource bool2VisibilityConvert}}" />
 
-         <Image x:Name="imgAligner1" Source="/VirgoUI;component/Controls/Assets/Image1/station.png" Canvas.Left="595" Canvas.Top="315" Height="95" Width="105" Visibility="{Binding IsAligner1Installed, Converter={StaticResource bool2VisibilityConvert}}" />
 
-         <Image x:Name="imgAligner2" Source="/VirgoUI;component/Controls/Assets/Image1/station.png" Canvas.Left="596" Canvas.Top="225" Height="95" Width="105" Visibility="{Binding IsAligner2Installed, Converter={StaticResource bool2VisibilityConvert}}"/>
 
-         <Image x:Name="imgCooling1" Source="/VirgoUI;component/Controls/Assets/Image1/station.png" Canvas.Left="130" Canvas.Top="315" Height="95" Width="105" Visibility="{Binding IsCooling1Installed, Converter={StaticResource bool2VisibilityConvert}}" />
 
-         <Image x:Name="imgCooling2" Source="/VirgoUI;component/Controls/Assets/Image1/station.png" Canvas.Left="130" Canvas.Top="225" Height="95" Width="105" Visibility="{Binding IsCooling2Installed, Converter={StaticResource bool2VisibilityConvert}}"/>
 
-         <Image Source="/VirgoUI;component/Controls/Assets/Image1/pm2.png" Canvas.Left="199" Canvas.Top="60" Height="133" Width="174"  Visibility="{Binding IsPMAInstalled, Converter={StaticResource bool2VisibilityConvert}}" />
 
-         <Image Source="/VirgoUI;component/Controls/Assets/Image1/pm2.png" Canvas.Left="445" Canvas.Top="60" Height="133" Width="174"   Visibility="{Binding IsPMBInstalled, Converter={StaticResource bool2VisibilityConvert}}" />
 
-         <Image Source="/VirgoUI;component/Controls/Assets/Image1/ef03.png" Canvas.Left="429" Canvas.Top="445" Height="123" Width="146"  Visibility="{Binding Foup2Visibility}"  />
 
-         <Image Source="/VirgoUI;component/Controls/Assets/Image1/ef03.png" Canvas.Left="243" Canvas.Top="445" Height="123" Width="146"   Visibility="{Binding Foup1Visibility}" />
 
-         <Image Source="/VirgoUI;component/Controls/Assets/Image1/ef00.png" Canvas.Left="252" Canvas.Top="440" Height="12" Width="128"   Visibility="{Binding Foup1Visibility}" />
 
-         <Image Source="/VirgoUI;component/Controls/Assets/Image1/ef00.png" Canvas.Left="438" Canvas.Top="440" Height="12" Width="128"   Visibility="{Binding Foup2Visibility}" />
 
-         <Path Data="M361.75,148 L347.25,142.75 381.5,50.25 496.5,91.75 463.5,183.5 446.25,176.75 441.25,190.25 471.75,201.5 514.5,83 372.5,31.25 330,150 357,160 z" Fill="{Binding PMBBackground}" Visibility="{Binding IsPMBInstalled, Converter={StaticResource bool2VisibilityConvert}}" Opacity="0.7" Height="183.08" Canvas.Left="433.277" Stretch="Fill" Canvas.Top="35.131" Width="196" RenderTransformOrigin="0.5,0.5">
 
-             <Path.RenderTransform>
 
-                 <TransformGroup>
 
-                     <ScaleTransform/>
 
-                     <SkewTransform/>
 
-                     <RotateTransform Angle="-20.212"/>
 
-                     <TranslateTransform/>
 
-                 </TransformGroup>
 
-             </Path.RenderTransform>
 
-         </Path>
 
-         <Path Data="M361.75,148 L347.25,142.75 381.5,50.25 496.5,91.75 463.5,183.5 446.25,176.75 441.25,190.25 471.75,201.5 514.5,83 372.5,31.25 330,150 357,160 z" Fill="{Binding PMABackground}" Visibility="{Binding IsPMAInstalled, Converter={StaticResource bool2VisibilityConvert}}" Opacity="0.7" Height="183.08" Canvas.Left="187.277" Stretch="Fill" Canvas.Top="35.131" Width="196" RenderTransformOrigin="0.5,0.5">
 
-             <Path.RenderTransform>
 
-                 <TransformGroup>
 
-                     <ScaleTransform/>
 
-                     <SkewTransform/>
 
-                     <RotateTransform Angle="-20.212"/>
 
-                     <TranslateTransform/>
 
-                 </TransformGroup>
 
-             </Path.RenderTransform>
 
-         </Path>
 
-         <parts:ATMDualArmRobot Canvas.Left="415" Canvas.Top="285" Wafer1="{Binding EfemRobotWafer1}"  Wafer2="{Binding EfemRobotWafer2}" RobotMoveInfo="{Binding EfemRobotMoveAction}"/>
 
-         <parts:WaferCtrl x:Name="bufferCtrl" Width="66" Height="66" Canvas.Left="615" Canvas.Top="240" WaferData="{Binding BufferWafer}" Visibility="{Binding IsBufferIntalled, Converter={StaticResource bool2VisibilityConvert}}" />
 
-         <parts:WaferCtrl x:Name="flipperCtrl" Width="66" Height="66" Canvas.Left="149" Canvas.Top="290" WaferData="{Binding FlipperWafer}"  Visibility="{Binding IsFlipperInstalled, Converter={StaticResource bool2VisibilityConvert}}"/>
 
-         <parts:WaferCtrl x:Name="aligner1Ctrl" Width="66" Height="66" Canvas.Left="615" Canvas.Top="330" WaferData="{Binding Aligner1Wafer}" Visibility="{Binding IsAligner1Installed, Converter={StaticResource bool2VisibilityConvert}}" />
 
-         <parts:WaferCtrl x:Name="aligner2Ctrl" Width="66" Height="66" Canvas.Left="615" Canvas.Top="240" WaferData="{Binding Aligner2Wafer}" Visibility="{Binding IsAligner2Installed, Converter={StaticResource bool2VisibilityConvert}}"/>
 
-         <parts:WaferCtrl x:Name="cooler1Ctrl" Width="66" Height="66" Canvas.Left="149" Canvas.Top="330" WaferData="{Binding Cooling1Wafer}" Visibility="{Binding IsCooling1Installed, Converter={StaticResource bool2VisibilityConvert}}"  />
 
-         <parts:WaferCtrl x:Name="cooler2Ctrl" Width="66" Height="66" Canvas.Left="149" Canvas.Top="240" WaferData="{Binding Cooling2Wafer}" Visibility="{Binding IsCooling2Installed, Converter={StaticResource bool2VisibilityConvert}}" />
 
-         <parts:WaferCtrl Width="66" Height="66" Canvas.Left="254" Canvas.Top="103" WaferData="{Binding PMAWafer}" Visibility="{Binding IsPMAInstalled, Converter={StaticResource bool2VisibilityConvert}}"/>
 
-         <parts:WaferCtrl Width="66" Height="66" Canvas.Left="500" Canvas.Top="103" WaferData="{Binding PMBWafer}" Visibility="{Binding IsPMBInstalled, Converter={StaticResource bool2VisibilityConvert}}"/>
 
-         <TextBlock x:Name="lblFlipper" Text="Flipper" Canvas.Left="105" Canvas.Top="268"  Visibility="{Binding IsFlipperInstalled, Converter={StaticResource bool2VisibilityConvert}}" />
 
-         <TextBlock x:Name="lblBuffer" Text="Cooling" Canvas.Left="690" Canvas.Top="225"  Visibility="{Binding IsBufferIntalled, Converter={StaticResource bool2VisibilityConvert}}"/>
 
-         <TextBlock x:Name="lblAligner1" Text="Aligner" Canvas.Left="690" Canvas.Top="325" Visibility="{Binding IsAligner1Installed, Converter={StaticResource bool2VisibilityConvert}}" />
 
-         <TextBlock x:Name="lblAligner2" Text="Aligner2" Canvas.Left="690" Canvas.Top="225" Visibility="{Binding IsAligner2Installed, Converter={StaticResource bool2VisibilityConvert}}" />
 
-         <TextBlock x:Name="lblCooler1" Text="Cooling1" Canvas.Left="105" Canvas.Top="325" Visibility="{Binding IsCooling1Installed, Converter={StaticResource bool2VisibilityConvert}}" />
 
-         <TextBlock x:Name="lblCooler2" Text="Cooling2" Canvas.Left="105" Canvas.Top="225" Visibility="{Binding IsCooling2Installed, Converter={StaticResource bool2VisibilityConvert}}" />
 
-         <Grid x:Name="Slit_valve" Width="11" Height="159" Canvas.Left="280" Canvas.Top="111" RenderTransformOrigin="0.5,0.5" >
 
-             <Grid.RenderTransform>
 
-                 <TransformGroup>
 
-                     <ScaleTransform/>
 
-                     <SkewTransform/>
 
-                     <RotateTransform Angle="90"/>
 
-                     <TranslateTransform/>
 
-                 </TransformGroup>
 
-             </Grid.RenderTransform>
 
-             <Rectangle x:Name="SlitValve_Top" Style="{StaticResource SlitValveA_Animation}" Fill="DimGray" Width="8" VerticalAlignment="Top" Height="88"   />
 
-             <Rectangle x:Name="SlitValve_Bottom" Style="{StaticResource SlitValveA_Animation}" Fill="DimGray" Width="8" VerticalAlignment="Bottom" Height="88" />
 
-         </Grid>
 
-         <Grid x:Name="Slit_valve1" Width="11" Height="159" Canvas.Left="526" Canvas.Top="111" RenderTransformOrigin="0.5,0.5" >
 
-             <Grid.RenderTransform>
 
-                 <TransformGroup>
 
-                     <ScaleTransform/>
 
-                     <SkewTransform/>
 
-                     <RotateTransform Angle="90"/>
 
-                     <TranslateTransform/>
 
-                 </TransformGroup>
 
-             </Grid.RenderTransform>
 
-             <Rectangle x:Name="SlitValve_Top1" Style="{StaticResource SlitValveB_Animation}" Fill="DimGray" Width="8" VerticalAlignment="Top" Height="88"   />
 
-             <Rectangle x:Name="SlitValve_Bottom1" Style="{StaticResource SlitValveB_Animation}" Fill="DimGray" Width="8" VerticalAlignment="Bottom" Height="88" />
 
-         </Grid>
 
-         <parts1:FoupTopView  IsFoupLoaded="{Binding IsLoadedLP1}"  Visibility="{Binding Foup1Visibility}"  Canvas.Left="252" Canvas.Top="427" Height="178" Width="128"/>
 
-         <parts1:FoupTopView  IsFoupLoaded="{Binding IsLoadedLP2}"  Visibility="{Binding Foup2Visibility}"  Canvas.Left="435" Canvas.Top="427" Height="178" Width="128"/>
 
-         <Grid  Grid.Row="0" Canvas.Left="22" Canvas.Top="482"  Visibility="{Binding ScannerVisibility}" >
 
-             <Grid.RowDefinitions>
 
-                 <RowDefinition Height="35" />
 
-             </Grid.RowDefinitions>
 
-             <Grid.ColumnDefinitions>
 
-                 <ColumnDefinition Width="75" />
 
-                 <ColumnDefinition Width="150" />
 
-             </Grid.ColumnDefinitions>
 
-             <Rectangle Grid.Row="0" Grid.Column="0" Fill="#376092" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
 
-             <TextBlock Grid.Row="0" Grid.Column="0" FontSize="13" Margin="3,0,0,0"  VerticalAlignment="Center"   Text="Carrier ID:"  Foreground="White" />
 
-             <Rectangle Grid.Row="0" Grid.Column="1" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
 
-             <deviceControl:AITBarcodeTextBox Grid.Row="0" Grid.Column="1" FontSize="12"   Foreground="White"  BarcodeText="{Binding LP1CarrierIDText, Mode=TwoWay}"  BarcodeInputChangedCommand="{Binding LP1CarrierIDChangedCommand}" MaxScanCount="1" />
 
-         </Grid>
 
-         <Grid  Grid.Row="0" Canvas.Left="575" Canvas.Top="482"  Visibility="{Binding ScannerVisibility}"   >
 
-             <Grid.RowDefinitions>
 
-                 <RowDefinition Height="35" />
 
-             </Grid.RowDefinitions>
 
-             <Grid.ColumnDefinitions>
 
-                 <ColumnDefinition Width="75" />
 
-                 <ColumnDefinition Width="150" />
 
-             </Grid.ColumnDefinitions>
 
-             <Rectangle Grid.Row="0" Grid.Column="0" Fill="#376092" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
 
-             <TextBlock Grid.Row="0" Grid.Column="0" FontSize="13" Margin="3,0,0,0" VerticalAlignment="Center"   Text="Carrier ID:"  Foreground="White" />
 
-             <Rectangle Grid.Row="0" Grid.Column="1" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
 
-             <deviceControl:AITBarcodeTextBox Grid.Row="0" Grid.Column="1" FontSize="12"   Foreground="White"  BarcodeText="{Binding LP2CarrierIDText, Mode=TwoWay}"  BarcodeInputChangedCommand="{Binding LP2CarrierIDChangedCommand}" MaxScanCount="1" />
 
-         </Grid>
 
-         <!--<parts1:Foup IdleVisibility="{Binding Foup1Idle, Converter={StaticResource BoolVisibilityConverter}}"
 
-                      ErrorVisibility="{Binding Foup1Error, Converter={StaticResource BoolVisibilityConverter}}"
 
-                      BusyVisibility="{Binding Foup1Busy, Converter={StaticResource BoolVisibilityConverter}}"
 
-                      CompleteVisibility="{Binding Foup1Complete, Converter={StaticResource BoolVisibilityConverter}}"
 
-                      Visibility="{Binding Foup1Present, Converter={StaticResource BoolVisibilityConverter}}" Width="70" Height="70" Canvas.Left="219" Canvas.Top="507"/>
 
-         <parts1:Foup 
 
-             IdleVisibility="{Binding Foup2Idle, Converter={StaticResource BoolVisibilityConverter}}"
 
-             ErrorVisibility="{Binding Foup2Error, Converter={StaticResource BoolVisibilityConverter}}"
 
-             BusyVisibility="{Binding Foup2Busy, Converter={StaticResource BoolVisibilityConverter}}"
 
-             CompleteVisibility="{Binding Foup2Complete, Converter={StaticResource BoolVisibilityConverter}}"
 
-             Visibility="{Binding Foup2Present, Converter={StaticResource BoolVisibilityConverter}}" Width="70" Height="70" Canvas.Left="368" Canvas.Top="506"/>-->
 
-     </Canvas>
 
- </UserControl>
 
 
  |