JobOperationView.xaml 62 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797
  1. <UserControl x:Class="CyberX8_MainPages.Views.JobOperationView"
  2. xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  3. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  4. xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  5. xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
  6. xmlns:local="clr-namespace:CyberX8_MainPages.Views"
  7. mc:Ignorable="d"
  8. xmlns:controls="http://OpenSEMI.Ctrlib.com/presentation"
  9. xmlns:customControls="clr-namespace:CyberX8_Themes.CustomControls;assembly=CyberX8_Themes"
  10. xmlns:Attach="clr-namespace:CyberX8_UI.Themes.Attach;assembly=CyberX8_Themes"
  11. xmlns:converters="clr-namespace:CyberX8_Themes.Converters;assembly=CyberX8_Themes"
  12. xmlns:converters2="clr-namespace:CyberX8_MainPages.Converters"
  13. xmlns:userControls="clr-namespace:CyberX8_Themes.UserControls;assembly=CyberX8_Themes"
  14. xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
  15. xmlns:prism="http://prismlibrary.com/"
  16. prism:ViewModelLocator.AutoWireViewModel="True"
  17. xmlns:deviceControl="clr-namespace:Aitex.Core.UI.DeviceControl;assembly=MECF.Framework.UI.Core"
  18. xmlns:unity="clr-namespace:CyberX8_MainPages.Unity"
  19. xmlns:sys="clr-namespace:System;assembly=mscorlib" xmlns:ctrl="http://OpenSEMI.Ctrlib.com/presentation"
  20. d:DesignHeight="1200" d:DesignWidth="1920" x:Name="jobOperationView">
  21. <UserControl.Resources>
  22. <converters:BoolToVisibility2 x:Key="BoolToVisibility2"/>
  23. <converters:BoolToVisibility x:Key="BoolToVisibility"/>
  24. <Style x:Key="LP1Style">
  25. <Style.Triggers>
  26. <DataTrigger Binding="{Binding RtDataValues[LP1.IsLoaded]}" Value="True">
  27. <DataTrigger.EnterActions>
  28. <BeginStoryboard>
  29. <Storyboard>
  30. <DoubleAnimation Storyboard.TargetProperty="RenderTransform.Children[0].X" To="30" Duration="0:0:1"/>
  31. </Storyboard>
  32. </BeginStoryboard>
  33. </DataTrigger.EnterActions>
  34. <DataTrigger.ExitActions>
  35. <BeginStoryboard>
  36. <Storyboard>
  37. <DoubleAnimation Storyboard.TargetProperty="RenderTransform.Children[0].X" To="0" Duration="0:0:1"/>
  38. </Storyboard>
  39. </BeginStoryboard>
  40. </DataTrigger.ExitActions>
  41. </DataTrigger>
  42. </Style.Triggers>
  43. </Style>
  44. <Style x:Key="LP2Style">
  45. <Style.Triggers>
  46. <DataTrigger Binding="{Binding RtDataValues[LP2.IsLoaded]}" Value="True">
  47. <DataTrigger.EnterActions>
  48. <BeginStoryboard>
  49. <Storyboard>
  50. <DoubleAnimation Storyboard.TargetProperty="RenderTransform.Children[0].X" To="30" Duration="0:0:1"/>
  51. </Storyboard>
  52. </BeginStoryboard>
  53. </DataTrigger.EnterActions>
  54. <DataTrigger.ExitActions>
  55. <BeginStoryboard>
  56. <Storyboard>
  57. <DoubleAnimation Storyboard.TargetProperty="RenderTransform.Children[0].X" To="0" Duration="0:0:1"/>
  58. </Storyboard>
  59. </BeginStoryboard>
  60. </DataTrigger.ExitActions>
  61. </DataTrigger>
  62. </Style.Triggers>
  63. </Style>
  64. <Style x:Key="LP3Style">
  65. <Style.Triggers>
  66. <DataTrigger Binding="{Binding RtDataValues[LP3.IsLoaded]}" Value="True">
  67. <DataTrigger.EnterActions>
  68. <BeginStoryboard>
  69. <Storyboard>
  70. <DoubleAnimation Storyboard.TargetProperty="RenderTransform.Children[0].X" To="30" Duration="0:0:1"/>
  71. </Storyboard>
  72. </BeginStoryboard>
  73. </DataTrigger.EnterActions>
  74. <DataTrigger.ExitActions>
  75. <BeginStoryboard>
  76. <Storyboard>
  77. <DoubleAnimation Storyboard.TargetProperty="RenderTransform.Children[0].X" To="0" Duration="0:0:1"/>
  78. </Storyboard>
  79. </BeginStoryboard>
  80. </DataTrigger.ExitActions>
  81. </DataTrigger>
  82. </Style.Triggers>
  83. </Style>
  84. <converters:MutiBoolToBool x:Key="mutiBoolToBool"/>
  85. </UserControl.Resources>
  86. <Canvas>
  87. <Grid Canvas.Left="116" Canvas.Top="104" Panel.ZIndex="2" Visibility="{Binding LP1Unable,Converter={StaticResource bool2VisibilityConverter}}">
  88. <Rectangle Width="70" Height="70" Fill="Silver" Opacity="0.8" RadiusX="0.1" RadiusY="0.1"
  89. />
  90. </Grid>
  91. <Grid Canvas.Left="116" Canvas.Top="247" Panel.ZIndex="2" Visibility="{Binding LP2Unable,Converter={StaticResource bool2VisibilityConverter}}">
  92. <Rectangle Width="70" Height="70" Fill="Silver" Opacity="0.8" RadiusX="0.1" RadiusY="0.1"
  93. />
  94. </Grid>
  95. <Grid Canvas.Left="116" Canvas.Top="378" Panel.ZIndex="2" Visibility="{Binding LP3Unable,Converter={StaticResource bool2VisibilityConverter}}">
  96. <Rectangle Width="70" Height="70" Fill="Silver" Opacity="0.8" RadiusX="0.1" RadiusY="0.1"
  97. />
  98. </Grid>
  99. <Canvas Canvas.Top="74" Height="1126" Width="1920" HorizontalAlignment="Center" VerticalAlignment="Top">
  100. <Canvas Height="406" Width="448" HorizontalAlignment="Left" Canvas.Left="42" VerticalAlignment="Center">
  101. <Grid Height="{Binding RelativeSource={RelativeSource FindAncestor,AncestorType={x:Type Canvas}},Path=Height}" Width="{Binding RelativeSource={RelativeSource FindAncestor,AncestorType={x:Type Canvas}},Path=Width}" Background="{DynamicResource Table_BG_Content}">
  102. <Grid.RowDefinitions>
  103. <RowDefinition/>
  104. <RowDefinition/>
  105. <RowDefinition/>
  106. </Grid.RowDefinitions>
  107. <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="1,1,1,0" Background="{DynamicResource Table_BG_Content}" Grid.Row="0" Padding="5,1,0,1">
  108. <Grid Margin="206,5,5,5" >
  109. <Grid.RowDefinitions>
  110. <RowDefinition/>
  111. <RowDefinition/>
  112. </Grid.RowDefinitions>
  113. <Grid.ColumnDefinitions>
  114. <ColumnDefinition/>
  115. <ColumnDefinition/>
  116. </Grid.ColumnDefinitions>
  117. <StackPanel Grid.ColumnSpan="2" HorizontalAlignment="Left" VerticalAlignment="Center" Orientation="Horizontal">
  118. <TextBlock Text="Wafer Count:" FontSize="15" FontFamily="Arial" Margin="15,0,20,0"/>
  119. <TextBlock Text="{Binding LP1WaferCount}" FontSize="15" FontFamily="Arial"/>
  120. </StackPanel>
  121. <customControls:PathButton Grid.Row="1" IsEnabled="{Binding IsLP1Unable}" Content="Load" Width="90" Height="33" Command="{Binding LPLoadCommand}" CommandParameter="LP1"/>
  122. <customControls:PathButton Grid.Row="1" Grid.Column="1" IsEnabled="{Binding IsLP1Unable}" Content="Unload" Width="90" Height="33" Command="{Binding LPUnLoadCommand}" CommandParameter="{Binding LP1WaferAssociation}"/>
  123. </Grid>
  124. </Border>
  125. <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="1,1,1,0" Background="{DynamicResource Table_BG_Content}" Grid.Row="1" Padding="5,1,0,1">
  126. <Grid Grid.Row="1" Margin="206,0,0,0">
  127. <Grid.RowDefinitions>
  128. <RowDefinition/>
  129. <RowDefinition/>
  130. </Grid.RowDefinitions>
  131. <Grid.ColumnDefinitions>
  132. <ColumnDefinition/>
  133. <ColumnDefinition/>
  134. </Grid.ColumnDefinitions>
  135. <StackPanel Grid.ColumnSpan="2" HorizontalAlignment="Left" VerticalAlignment="Center" Orientation="Horizontal">
  136. <TextBlock Text="Wafer Count:" FontSize="15" FontFamily="Arial" Margin="15,0,20,0"/>
  137. <TextBlock Text="{Binding LP2WaferCount}" FontSize="15" FontFamily="Arial"/>
  138. </StackPanel>
  139. <customControls:PathButton Grid.Row="1" IsEnabled="{Binding IsLP2Unable}" Content="Load" Width="90" Height="33" Command="{Binding LPLoadCommand}" CommandParameter="LP2"/>
  140. <customControls:PathButton Grid.Row="1" Grid.Column="1" IsEnabled="{Binding IsLP2Unable}" Content="Unload" Width="90" Height="33" Command="{Binding LPUnLoadCommand}" CommandParameter="{Binding LP2WaferAssociation}"/>
  141. </Grid>
  142. </Border>
  143. <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="1,1,1,1" Background="{DynamicResource Table_BG_Content}" Grid.Row="2" Padding="5,1,0,1">
  144. <Grid Grid.Row="2" Margin="206,0,0,0">
  145. <Grid.RowDefinitions>
  146. <RowDefinition/>
  147. <RowDefinition/>
  148. </Grid.RowDefinitions>
  149. <Grid.ColumnDefinitions>
  150. <ColumnDefinition/>
  151. <ColumnDefinition/>
  152. </Grid.ColumnDefinitions>
  153. <StackPanel Grid.ColumnSpan="2" HorizontalAlignment="Left" VerticalAlignment="Center" Orientation="Horizontal">
  154. <TextBlock Text="Wafer Count:" FontSize="15" FontFamily="Arial" Margin="15,0,20,0"/>
  155. <TextBlock Text="{Binding LP3WaferCount}" FontSize="15" FontFamily="Arial"/>
  156. </StackPanel>
  157. <customControls:PathButton Grid.Row="1" IsEnabled="{Binding IsLP3Unable}" Content="Load" Width="90" Height="33" Command="{Binding LPLoadCommand}" CommandParameter="LP3"/>
  158. <customControls:PathButton Grid.Row="1" Grid.Column="1" IsEnabled="{Binding IsLP3Unable}" Content="Unload" Width="90" Height="33" Command="{Binding LPUnLoadCommand}" CommandParameter="{Binding LP3WaferAssociation}"/>
  159. </Grid>
  160. </Border>
  161. </Grid>
  162. <Viewbox Stretch="Fill" Height="330" Width="330" Canvas.Left="158" Canvas.Top="10" HorizontalAlignment="Left" VerticalAlignment="Top">
  163. <Canvas Width="1000" Height="1000">
  164. <userControls:Loadport Canvas.Top="20" Width="300" Height="300" RotateTransformValue="90" HorizontalAlignment="Left" VerticalAlignment="Top"/>
  165. <userControls:Foup Width="230" Height="450" Canvas.Left="-35" Canvas.Top="53" Visibility="{Binding RtDataValues[LP1.CassettePlaced],Converter={StaticResource BoolToVisibility2}}" Style="{StaticResource LP1Style}" RotateTransformValue="90">
  166. <userControls:Foup.RenderTransform>
  167. <TransformGroup>
  168. <TranslateTransform/>
  169. </TransformGroup>
  170. </userControls:Foup.RenderTransform>
  171. </userControls:Foup>
  172. </Canvas>
  173. </Viewbox>
  174. <Viewbox Stretch="Fill" Height="330" Width="330" Canvas.Left="158" Canvas.Top="152" HorizontalAlignment="Left" VerticalAlignment="Center">
  175. <Canvas Width="1000" Height="1000">
  176. <userControls:Loadport Canvas.Top="20" Width="300" Height="300" RotateTransformValue="90" HorizontalAlignment="Left" VerticalAlignment="Top"/>
  177. <userControls:Foup Width="230" Height="450" Canvas.Left="-35" Canvas.Top="53" Visibility="{Binding RtDataValues[LP2.CassettePlaced],Converter={StaticResource BoolToVisibility2}}" Style="{StaticResource LP2Style}" RotateTransformValue="90">
  178. <userControls:Foup.RenderTransform>
  179. <TransformGroup>
  180. <TranslateTransform/>
  181. </TransformGroup>
  182. </userControls:Foup.RenderTransform>
  183. </userControls:Foup>
  184. </Canvas>
  185. </Viewbox>
  186. <Viewbox Stretch="Fill" Height="330" Width="330" Canvas.Left="158" Canvas.Top="283" HorizontalAlignment="Left" VerticalAlignment="Top">
  187. <Canvas Width="1000" Height="1000">
  188. <userControls:Loadport Canvas.Top="20" Width="300" Height="300" RotateTransformValue="90" HorizontalAlignment="Left" VerticalAlignment="Top"/>
  189. <userControls:Foup Width="230" Height="450" Canvas.Left="-35" Canvas.Top="53" Visibility="{Binding RtDataValues[LP3.CassettePlaced],Converter={StaticResource BoolToVisibility2}}" Style="{StaticResource LP3Style}" RotateTransformValue="90">
  190. <userControls:Foup.RenderTransform>
  191. <TransformGroup>
  192. <TranslateTransform/>
  193. </TransformGroup>
  194. </userControls:Foup.RenderTransform>
  195. </userControls:Foup>
  196. </Canvas>
  197. </Viewbox>
  198. </Canvas>
  199. <Grid Height="AUTO" Width="1800" HorizontalAlignment="Center" VerticalAlignment="Top" Canvas.Left="60" Canvas.Top="-40" >
  200. <Grid.ColumnDefinitions>
  201. <ColumnDefinition Width="2.5*"/>
  202. <ColumnDefinition Width="2.5*"/>
  203. <ColumnDefinition Width="2.5*"/>
  204. <ColumnDefinition Width="2.5*"/>
  205. </Grid.ColumnDefinitions>
  206. <Grid Grid.Column="1" HorizontalAlignment="Center" unity:GridOptions.ShowBorder="True" unity:GridOptions.LineBrush="Black" Background="{DynamicResource Table_BG_Content}" Width="AUTO" >
  207. <Grid.RowDefinitions>
  208. <RowDefinition Height="AUTO"></RowDefinition>
  209. <RowDefinition Height="33"></RowDefinition>
  210. <RowDefinition Height="33"></RowDefinition>
  211. <RowDefinition Height="33"></RowDefinition>
  212. <RowDefinition Height="33"></RowDefinition>
  213. <RowDefinition Height="33"></RowDefinition>
  214. <RowDefinition Height="33"></RowDefinition>
  215. <RowDefinition Height="33"></RowDefinition>
  216. <RowDefinition Height="33"></RowDefinition>
  217. <RowDefinition Height="33"></RowDefinition>
  218. <RowDefinition Height ="1*"></RowDefinition>
  219. </Grid.RowDefinitions>
  220. <Label Content="LP1" Background="{DynamicResource Table_BG_Title}" BorderBrush="{DynamicResource Table_BD}" BorderThickness="1,1,1,1" Grid.Row="0" HorizontalContentAlignment="Center" VerticalContentAlignment="Center"/>
  221. <StackPanel Grid.Row="1" Orientation="Horizontal">
  222. <TextBlock Margin="5,0,0,0" Text="Lot ID:" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="15" FontFamily="Arial" VerticalAlignment="Center" Width="80"></TextBlock>
  223. <TextBox Margin="5,3,0,3" FontSize="15" Text="{Binding LP1WaferAssociation.LotId}" Width="242" VerticalContentAlignment="Center" HorizontalContentAlignment="Center" RenderTransformOrigin="0.319,0.594" IsEnabled="{Binding ButtonIsEnableLP1}"/>
  224. </StackPanel>
  225. <StackPanel Grid.Row="2" Orientation="Horizontal">
  226. <TextBlock Margin="5,0,10,0" Text="Sequence Type:" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="15" FontFamily="Arial" VerticalAlignment="Center" Width="111"></TextBlock>
  227. <CheckBox Margin="5" Content="Engineering" VerticalAlignment="Center" IsChecked="{Binding LP1RecipeMode,Converter={StaticResource BoolToBool}}" IsEnabled="{Binding ButtonIsEnableLP1}">
  228. <i:Interaction.Triggers>
  229. <i:EventTrigger EventName="Checked">
  230. <i:InvokeCommandAction Command="{Binding SeqTypeChangeCommand}" CommandParameter="{Binding LP1WaferAssociation}"/>
  231. </i:EventTrigger>
  232. <i:EventTrigger EventName="Unchecked">
  233. <i:InvokeCommandAction Command="{Binding SeqTypeChangeCommand}" CommandParameter="{Binding LP1WaferAssociation}"/>
  234. </i:EventTrigger>
  235. </i:Interaction.Triggers>
  236. </CheckBox>
  237. <CheckBox Margin="5" Content="Production" VerticalAlignment="Center" IsChecked="{Binding LP1RecipeMode}" IsEnabled="{Binding ButtonIsEnableLP1}">
  238. <i:Interaction.Triggers>
  239. <i:EventTrigger EventName="Checked">
  240. <i:InvokeCommandAction Command="{Binding SeqTypeChangeCommand}" CommandParameter="{Binding LP1WaferAssociation}"/>
  241. </i:EventTrigger>
  242. <i:EventTrigger EventName="Unchecked">
  243. <i:InvokeCommandAction Command="{Binding SeqTypeChangeCommand}" CommandParameter="{Binding LP1WaferAssociation}"/>
  244. </i:EventTrigger>
  245. </i:Interaction.Triggers>
  246. </CheckBox>
  247. </StackPanel>
  248. <StackPanel Grid.Row="3" Orientation="Horizontal">
  249. <TextBlock Margin="5,0,0,0" Text="Sequence:" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="15" FontFamily="Arial" VerticalAlignment="Center" Width="80"></TextBlock>
  250. <ComboBox Margin="5,3,0,3" Width="242" SelectedItem="{Binding LP1SequenceName}" ItemsSource="{Binding SequenceSelectedItemsSource1}" IsEnabled="{Binding ButtonIsEnableLP1}">
  251. <i:Interaction.Triggers>
  252. <i:EventTrigger EventName="SelectionChanged">
  253. <i:InvokeCommandAction Command="{Binding SelectionChangedCommand}" CommandParameter="{Binding LP1WaferAssociation.ModuleData.ModuleID}"/>
  254. </i:EventTrigger>
  255. </i:Interaction.Triggers>
  256. </ComboBox>
  257. </StackPanel>
  258. <Grid Grid.Row="4" >
  259. <Grid.ColumnDefinitions>
  260. <ColumnDefinition/>
  261. <ColumnDefinition/>
  262. </Grid.ColumnDefinitions>
  263. <StackPanel Orientation="Horizontal" >
  264. <TextBlock Text="Cycle Set:" Margin="5,0,0,0" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="14" FontFamily="Arial" VerticalAlignment="Center" Width="65"></TextBlock>
  265. <CheckBox Margin="5" x:Name="IsEnableCycleCheckBox1" Content="IsEnable" VerticalAlignment="Center" Padding="3 0 0 0" IsEnabled="{Binding ButtonIsEnableLP1}" IsChecked="{Binding LP1WaferAssociation.IsEnableCycle}"/>
  266. </StackPanel>
  267. <StackPanel Orientation="Horizontal" Grid.Column="1">
  268. <TextBlock Text="Cycle Num:" Margin="5,0,0,0" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="14" FontFamily="Arial" VerticalAlignment="Center" Width="80"></TextBlock>
  269. <TextBox x:Name="CycleNumTextbox1" Margin="5,0,0,0" Width="72" VerticalAlignment="Center" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" Height="20" BorderThickness="1" Text="{Binding LP1WaferAssociation.CycleNumber}" >
  270. <TextBox.IsEnabled>
  271. <MultiBinding Converter="{StaticResource mutiBoolToBool}">
  272. <Binding Path="ButtonIsEnableLP1" />
  273. <Binding ElementName="IsEnableCycleCheckBox1" Path="IsChecked"/>
  274. </MultiBinding>
  275. </TextBox.IsEnabled>
  276. </TextBox>
  277. </StackPanel>
  278. </Grid>
  279. <StackPanel Grid.Row="5" Orientation="Horizontal">
  280. <TextBlock Text="Cycle Info:" Margin="5,0,0,0" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="14" FontFamily="Arial" VerticalAlignment="Center" Width="80"></TextBlock>
  281. <TextBlock FontSize="12" FontFamily="Arial" VerticalAlignment="Center">
  282. <TextBlock.Text>
  283. <MultiBinding StringFormat="{}{0}/{1} Wafer Count: {2}" >
  284. <Binding Path="RtDataValues[LP1.CycleSetPoint]"></Binding>
  285. <Binding Path="RtDataValues[LP1.CycledCount]"></Binding>
  286. <Binding Path="RtDataValues[LP1.CycledWafer]"></Binding>
  287. </MultiBinding>
  288. </TextBlock.Text>
  289. </TextBlock>
  290. </StackPanel>
  291. <StackPanel Grid.Row="6" Orientation="Horizontal" HorizontalAlignment="Center">
  292. <Button Content="Select All" Width="94" Height="33" Margin="10,2,10,2" Command="{Binding SelectAllCommand}" CommandParameter="{Binding LP1WaferAssociation}"/>
  293. <Button Content="DeSelect All" Width="94" Height="33" Margin="-5,2,10,2" Command="{Binding UnSelectAllCommand}" CommandParameter="{Binding LP1WaferAssociation}"/>
  294. </StackPanel>
  295. <Grid Grid.Row="7" >
  296. <Grid.ColumnDefinitions>
  297. <ColumnDefinition/>
  298. <ColumnDefinition/>
  299. </Grid.ColumnDefinitions>
  300. <StackPanel Grid.Column="0" Orientation="Horizontal">
  301. <TextBlock Margin="5,0,0,0" Text="Name:" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="15" FontFamily="Arial" VerticalAlignment="Center" Width="52"/>
  302. <TextBox Margin="0,3,0,3" FontSize="15" Text="{Binding LP1WaferAssociation.JobID}" Width="109" VerticalContentAlignment="Center" HorizontalContentAlignment="Center" RenderTransformOrigin="0.319,0.594" IsEnabled="{Binding ButtonIsEnableLP1}"/>
  303. </StackPanel>
  304. <StackPanel Grid.Column="1" Orientation="Horizontal">
  305. <TextBlock Margin="5,0,0,0" Text="Status:" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="15" FontFamily="Arial" VerticalAlignment="Center" Width="52"/>
  306. <TextBox Margin="0,3,0,3" FontSize="15" Text="{Binding LP1WaferAssociation.JobStatus}" VerticalContentAlignment="Center" HorizontalContentAlignment="Center" Width="115" RenderTransformOrigin="0.319,0.594" IsEnabled="False"/>
  307. </StackPanel>
  308. </Grid>
  309. <StackPanel Grid.Row="8" Orientation="Horizontal" HorizontalAlignment="Center">
  310. <Button IsEnabled="{Binding IsLP1CanCreatedJob}" Content="Create Job" Width="94" Height="33" Margin="10,2,10,2" Command="{Binding CreateJobCommand}" CommandParameter="{Binding LP1WaferAssociation}"/>
  311. </StackPanel>
  312. <StackPanel Grid.Row="9" Orientation="Horizontal" HorizontalAlignment="Center">
  313. <Button IsEnabled="{Binding IsLP1AutoStoped}" Content="Start" Width="64" Height="33" Margin="10,2,10,2" Command="{Binding StartCommand}" CommandParameter="{Binding LP1WaferAssociation}"/>
  314. <Button IsEnabled="{Binding IsLP1AutoStarted}" Content="Stop" Width="64" Height="33" Margin="10,2,10,2" Command="{Binding StopCommand}" CommandParameter="{Binding LP1WaferAssociation}"/>
  315. </StackPanel>
  316. <ListBox Grid.Row="10" ItemsSource="{Binding LP1WaferAssociation.ModuleData.WaferManager.Wafers}" Name="list1" IsEnabled="{Binding IsLP1Unable}">
  317. <ListBox.Resources>
  318. <Style TargetType="ListBoxItem" BasedOn="{StaticResource ResourceKey={x:Type ListBoxItem}}">
  319. <Setter Property="Rectangle.StrokeThickness" Value="1"/>
  320. </Style>
  321. </ListBox.Resources>
  322. <ListBox.ItemTemplate>
  323. <DataTemplate>
  324. <Grid Height="18" Background="#F5F7FA">
  325. <Grid.ColumnDefinitions>
  326. <ColumnDefinition Width="AUTO"></ColumnDefinition>
  327. <ColumnDefinition Width="AUTO"></ColumnDefinition>
  328. <ColumnDefinition Width="AUTO"></ColumnDefinition>
  329. </Grid.ColumnDefinitions>
  330. <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="0 0 1 1" Width="110" >
  331. <controls:Slot ViewType="Bottom" WaferStatus="{Binding WaferStatus}" SlotID="{Binding SlotID}" ModuleID="{Binding ModuleID}"
  332. SourceName="{Binding SourceName}" HorizontalAlignment="Center" VerticalAlignment="Center" Margin="8,1,8,1"
  333. SlotMouseButtonDown="Slot_SlotMouseButtonDown" WaferTransferStarted="Slot_WaferTransferStarted" FontFamily="Arial" FontSize="2">
  334. </controls:Slot>
  335. </Border>
  336. <Border Grid.Column="1" BorderBrush="{DynamicResource Table_BD}" BorderThickness="0,0,1,1" Width="200" >
  337. <Border.Style>
  338. <Style>
  339. <Style.Triggers>
  340. <DataTrigger Binding="{Binding WaferStatus}" Value="0">
  341. <Setter Property="Border.Background" Value="AliceBlue"/>
  342. </DataTrigger>
  343. <DataTrigger Binding="{Binding WaferStatus}" Value="1">
  344. <Setter Property="Border.Background" Value="AliceBlue"/>
  345. </DataTrigger>
  346. </Style.Triggers>
  347. </Style>
  348. </Border.Style>
  349. <TextBlock Name="txtSeqName" Text="{Binding SequenceName}" Foreground="{DynamicResource FG_Black}" FontSize="12" FontFamily="Arial" HorizontalAlignment="Center" VerticalAlignment="Center"></TextBlock>
  350. </Border>
  351. <Border Grid.Column="2" BorderBrush="{DynamicResource Table_BD}" BorderThickness="0,0,0,1" Width="110" Padding="5,1" >
  352. <Button Width="60" Height="14" Command="{Binding Path=DataContext.SetSequenceCommand, RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=ListBox}}" CommandParameter="{Binding}" IsEnabled="{Binding ButtonIsEnableLP1}">
  353. <Button.Style>
  354. <Style TargetType="{x:Type Button}" BasedOn="{StaticResource ResourceKey={x:Type Button}}">
  355. <Setter Property="Button.Content" Value="Remove"/>
  356. <Setter Property="FontSize" Value="10" />
  357. <Style.Triggers>
  358. <DataTrigger Binding="{Binding ElementName=txtSeqName, Path=Text}" Value="{x:Static sys:String.Empty}">
  359. <Setter Property="Button.Content" Value="Set"/>
  360. </DataTrigger>
  361. <DataTrigger Binding="{Binding WaferStatus}" Value="0">
  362. <Setter Property="Button.IsEnabled" Value="False"/>
  363. </DataTrigger>
  364. </Style.Triggers>
  365. </Style>
  366. </Button.Style>
  367. </Button>
  368. </Border>
  369. </Grid>
  370. </DataTemplate>
  371. </ListBox.ItemTemplate>
  372. </ListBox>
  373. </Grid>
  374. <Grid Grid.Column="2" HorizontalAlignment="Center" unity:GridOptions.ShowBorder="True" unity:GridOptions.LineBrush="Black" Background="{DynamicResource Table_BG_Content}" Width="AUTO" >
  375. <Grid.RowDefinitions>
  376. <RowDefinition Height="AUTO"></RowDefinition>
  377. <RowDefinition Height="33"></RowDefinition>
  378. <RowDefinition Height="33"></RowDefinition>
  379. <RowDefinition Height="33"></RowDefinition>
  380. <RowDefinition Height="33"></RowDefinition>
  381. <RowDefinition Height="33"></RowDefinition>
  382. <RowDefinition Height="33"></RowDefinition>
  383. <RowDefinition Height="33"></RowDefinition>
  384. <RowDefinition Height="33"></RowDefinition>
  385. <RowDefinition Height="33"></RowDefinition>
  386. <RowDefinition Height ="1*"></RowDefinition>
  387. </Grid.RowDefinitions>
  388. <Label Content="LP2" Background="{DynamicResource Table_BG_Title}" BorderBrush="{DynamicResource Table_BD}" BorderThickness="1,1,1,1" Grid.Row="0" HorizontalContentAlignment="Center" VerticalContentAlignment="Center"/>
  389. <StackPanel Grid.Row="1" Orientation="Horizontal">
  390. <TextBlock Margin="5,0,0,0" Text="Lot ID:" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="15" FontFamily="Arial" VerticalAlignment="Center" Width="80"></TextBlock>
  391. <TextBox Margin="5,3,0,3" FontSize="15" Text="{Binding LP2WaferAssociation.LotId}" Width="242" VerticalContentAlignment="Center" HorizontalContentAlignment="Center" RenderTransformOrigin="0.319,0.594" IsEnabled="{Binding ButtonIsEnableLP2}" />
  392. </StackPanel>
  393. <StackPanel Grid.Row="2" Orientation="Horizontal">
  394. <TextBlock Margin="5,0,10,0" Text="Sequence Type:" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="15" FontFamily="Arial" VerticalAlignment="Center" Width="111"></TextBlock>
  395. <CheckBox Margin="5" Content="Engineering" VerticalAlignment="Center" IsChecked="{Binding LP2RecipeMode,Converter={StaticResource BoolToBool}}" IsEnabled="{Binding ButtonIsEnableLP2}">
  396. <i:Interaction.Triggers>
  397. <i:EventTrigger EventName="Checked">
  398. <i:InvokeCommandAction Command="{Binding SeqTypeChangeCommand}" CommandParameter="{Binding LP2WaferAssociation}"/>
  399. </i:EventTrigger>
  400. <i:EventTrigger EventName="Unchecked">
  401. <i:InvokeCommandAction Command="{Binding SeqTypeChangeCommand}" CommandParameter="{Binding LP2WaferAssociation}"/>
  402. </i:EventTrigger>
  403. </i:Interaction.Triggers>
  404. </CheckBox>
  405. <CheckBox Margin="5" Content="Production" VerticalAlignment="Center" IsChecked="{Binding LP2RecipeMode}" IsEnabled="{Binding ButtonIsEnableLP2}">
  406. <i:Interaction.Triggers>
  407. <i:EventTrigger EventName="Checked">
  408. <i:InvokeCommandAction Command="{Binding SeqTypeChangeCommand}" CommandParameter="{Binding LP2WaferAssociation}"/>
  409. </i:EventTrigger>
  410. <i:EventTrigger EventName="Unchecked">
  411. <i:InvokeCommandAction Command="{Binding SeqTypeChangeCommand}" CommandParameter="{Binding LP2WaferAssociation}"/>
  412. </i:EventTrigger>
  413. </i:Interaction.Triggers>
  414. </CheckBox>
  415. </StackPanel>
  416. <StackPanel Grid.Row="3" Orientation="Horizontal">
  417. <TextBlock Margin="5,0,0,0" Text="Sequence:" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="15" FontFamily="Arial" VerticalAlignment="Center" Width="80"></TextBlock>
  418. <ComboBox Margin="5,3,0,3" Width="242" SelectedItem="{Binding LP2SequenceName}" ItemsSource="{Binding SequenceSelectedItemsSource2}" IsEnabled="{Binding ButtonIsEnableLP2}">
  419. <i:Interaction.Triggers>
  420. <i:EventTrigger EventName="SelectionChanged">
  421. <i:InvokeCommandAction Command="{Binding SelectionChangedCommand}" CommandParameter="{Binding LP2WaferAssociation.ModuleData.ModuleID}"/>
  422. </i:EventTrigger>
  423. </i:Interaction.Triggers>
  424. </ComboBox>
  425. </StackPanel>
  426. <Grid Grid.Row="4" >
  427. <Grid.ColumnDefinitions>
  428. <ColumnDefinition/>
  429. <ColumnDefinition/>
  430. </Grid.ColumnDefinitions>
  431. <StackPanel Orientation="Horizontal" >
  432. <TextBlock Text="Cycle Set:" Margin="5,0,0,0" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="14" FontFamily="Arial" VerticalAlignment="Center" Width="65"></TextBlock>
  433. <CheckBox Margin="5" x:Name="IsEnableCycleCheckBox2" Content="IsEnable" IsChecked="{Binding LP2WaferAssociation.IsEnableCycle}" IsEnabled="{Binding ButtonIsEnableLP2}" VerticalAlignment="Center" Padding="3 0 0 0"/>
  434. </StackPanel>
  435. <StackPanel Orientation="Horizontal" Grid.Column="1">
  436. <TextBlock Text="Cycle Num:" Margin="5,0,0,0" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="14" FontFamily="Arial" VerticalAlignment="Center" Width="80"></TextBlock>
  437. <TextBox x:Name="CycleNumTextbox2" Margin="5,0,0,0" Width="72" VerticalAlignment="Center" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" Height="20" BorderThickness="1" Text="{Binding LP2WaferAssociation.CycleNumber}">
  438. <TextBox.IsEnabled>
  439. <MultiBinding Converter="{StaticResource mutiBoolToBool}">
  440. <Binding Path="ButtonIsEnableLP2" />
  441. <Binding ElementName="IsEnableCycleCheckBox2" Path="IsChecked"/>
  442. </MultiBinding>
  443. </TextBox.IsEnabled>
  444. </TextBox>
  445. </StackPanel>
  446. </Grid>
  447. <StackPanel Grid.Row="5" Orientation="Horizontal">
  448. <TextBlock Text="Cycle Info:" Margin="5,0,0,0" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="14" FontFamily="Arial" VerticalAlignment="Center" Width="80"></TextBlock>
  449. <TextBlock FontSize="12" FontFamily="Arial" VerticalAlignment="Center">
  450. <TextBlock.Text>
  451. <MultiBinding StringFormat="{}{0}/{1} Wafer Count: {2}" >
  452. <Binding Path="RtDataValues[LP2.CycleSetPoint]"></Binding>
  453. <Binding Path="RtDataValues[LP2.CycledCount]"></Binding>
  454. <Binding Path="RtDataValues[LP2.CycledWafer]"></Binding>
  455. </MultiBinding>
  456. </TextBlock.Text>
  457. </TextBlock>
  458. </StackPanel>
  459. <StackPanel Grid.Row="6" Orientation="Horizontal" HorizontalAlignment="Center">
  460. <Button Content="Select All" Width="94" Height="33" Margin="10,2,10,2" Command="{Binding SelectAllCommand}" CommandParameter="{Binding LP2WaferAssociation}"/>
  461. <Button Content="DeSelect All" Width="94" Height="33" Margin="-5,2,10,2" Command="{Binding UnSelectAllCommand}" CommandParameter="{Binding LP2WaferAssociation}"/>
  462. </StackPanel>
  463. <Grid Grid.Row="7" >
  464. <Grid.ColumnDefinitions>
  465. <ColumnDefinition/>
  466. <ColumnDefinition/>
  467. </Grid.ColumnDefinitions>
  468. <StackPanel Orientation="Horizontal" >
  469. <TextBlock Margin="5,0,0,0" Text="Name:" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="15" FontFamily="Arial" VerticalAlignment="Center" Width="52"></TextBlock>
  470. <TextBox Margin="0,3,0,3" FontSize="15" Text="{Binding LP2WaferAssociation.JobID}" Width="101" VerticalContentAlignment="Center" HorizontalContentAlignment="Center" RenderTransformOrigin="0.319,0.594" IsEnabled="{Binding ButtonIsEnableLP2}"/>
  471. </StackPanel>
  472. <StackPanel Orientation="Horizontal" Grid.Column="1">
  473. <TextBlock Margin="5,0,0,0" Text="Status:" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="15" FontFamily="Arial" VerticalAlignment="Center" Width="52"></TextBlock>
  474. <TextBox Margin="0,3,0,3" FontSize="15" IsEnabled="False" Text="{Binding LP2WaferAssociation.JobStatus}" VerticalContentAlignment="Center" HorizontalContentAlignment="Center" Width="115" RenderTransformOrigin="0.319,0.594"/>
  475. </StackPanel>
  476. </Grid>
  477. <StackPanel Grid.Row="8" Orientation="Horizontal" HorizontalAlignment="Center">
  478. <Button IsEnabled="{Binding IsLP2CanCreatedJob}" Content="Create Job" Width="94" Height="33" Margin="10,2,10,2" Command="{Binding CreateJobCommand}" CommandParameter="{Binding LP2WaferAssociation}"/>
  479. </StackPanel>
  480. <StackPanel Grid.Row="9" Orientation="Horizontal" HorizontalAlignment="Center">
  481. <Button IsEnabled="{Binding IsLP2AutoStoped}" Content="Start" Width="64" Height="33" Margin="10,2,10,2" Command="{Binding StartCommand}" CommandParameter="{Binding LP2WaferAssociation}"/>
  482. <Button IsEnabled="{Binding IsLP2AutoStarted}" Content="Stop" Width="64" Height="33" Margin="10,2,10,2" Command="{Binding StopCommand}" CommandParameter="{Binding LP2WaferAssociation}"/>
  483. </StackPanel>
  484. <ListBox Grid.Row="10" ItemsSource="{Binding LP2WaferAssociation.ModuleData.WaferManager.Wafers}" Name="list2" IsEnabled="{Binding IsLP2Unable}">
  485. <ListBox.Resources>
  486. <Style TargetType="ListBoxItem" BasedOn="{StaticResource ResourceKey={x:Type ListBoxItem}}">
  487. <Setter Property="Rectangle.StrokeThickness" Value="1"/>
  488. </Style>
  489. </ListBox.Resources>
  490. <ListBox.ItemTemplate>
  491. <DataTemplate>
  492. <Grid Height="18" Background="#F5F7FA">
  493. <Grid.ColumnDefinitions>
  494. <ColumnDefinition Width="AUTO"></ColumnDefinition>
  495. <ColumnDefinition Width="AUTO"></ColumnDefinition>
  496. <ColumnDefinition Width="AUTO"></ColumnDefinition>
  497. </Grid.ColumnDefinitions>
  498. <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="0 0 1 1" Width="110" >
  499. <controls:Slot ViewType="Bottom" WaferStatus="{Binding WaferStatus}" SlotID="{Binding SlotID}" ModuleID="{Binding ModuleID}"
  500. SourceName="{Binding SourceName}" HorizontalAlignment="Center" VerticalAlignment="Center" Margin="8,1,8,1"
  501. SlotMouseButtonDown="Slot_SlotMouseButtonDown" WaferTransferStarted="Slot_WaferTransferStarted" FontFamily="Arial" FontSize="2">
  502. </controls:Slot>
  503. </Border>
  504. <Border Grid.Column="1" BorderBrush="{DynamicResource Table_BD}" BorderThickness="0,0,1,1" Width="200" >
  505. <Border.Style>
  506. <Style>
  507. <Style.Triggers>
  508. <DataTrigger Binding="{Binding WaferStatus}" Value="0">
  509. <Setter Property="Border.Background" Value="AliceBlue"/>
  510. </DataTrigger>
  511. <DataTrigger Binding="{Binding WaferStatus}" Value="1">
  512. <Setter Property="Border.Background" Value="AliceBlue"/>
  513. </DataTrigger>
  514. </Style.Triggers>
  515. </Style>
  516. </Border.Style>
  517. <TextBlock Name="txtSeqName" Text="{Binding SequenceName}" Foreground="{DynamicResource FG_Black}" FontSize="12" FontFamily="Arial" HorizontalAlignment="Center" VerticalAlignment="Center"></TextBlock>
  518. </Border>
  519. <Border Grid.Column="2" BorderBrush="{DynamicResource Table_BD}" BorderThickness="0,0,0,1" Width="110" Padding="5,1" >
  520. <Button Width="60" Height="14" Command="{Binding Path=DataContext.SetSequenceCommand, RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=ListBox}}" CommandParameter="{Binding}" IsEnabled="{Binding ButtonIsEnableLP1}">
  521. <Button.Style>
  522. <Style TargetType="{x:Type Button}" BasedOn="{StaticResource ResourceKey={x:Type Button}}">
  523. <Setter Property="Button.Content" Value="Remove"/>
  524. <Setter Property="FontSize" Value="10" />
  525. <Style.Triggers>
  526. <DataTrigger Binding="{Binding ElementName=txtSeqName, Path=Text}" Value="{x:Static sys:String.Empty}">
  527. <Setter Property="Button.Content" Value="Set"/>
  528. </DataTrigger>
  529. <DataTrigger Binding="{Binding WaferStatus}" Value="0">
  530. <Setter Property="Button.IsEnabled" Value="False"/>
  531. </DataTrigger>
  532. </Style.Triggers>
  533. </Style>
  534. </Button.Style>
  535. </Button>
  536. </Border>
  537. </Grid>
  538. </DataTemplate>
  539. </ListBox.ItemTemplate>
  540. </ListBox>
  541. </Grid>
  542. <Grid Grid.Column="3" HorizontalAlignment="Center" unity:GridOptions.ShowBorder="True" unity:GridOptions.LineBrush="Black" Background="{DynamicResource Table_BG_Content}" Width="AUTO" >
  543. <Grid.RowDefinitions>
  544. <RowDefinition Height="AUTO"></RowDefinition>
  545. <RowDefinition Height="33"></RowDefinition>
  546. <RowDefinition Height="33"></RowDefinition>
  547. <RowDefinition Height="33"></RowDefinition>
  548. <RowDefinition Height="33"></RowDefinition>
  549. <RowDefinition Height="33"></RowDefinition>
  550. <RowDefinition Height="33"></RowDefinition>
  551. <RowDefinition Height="33"></RowDefinition>
  552. <RowDefinition Height="33"></RowDefinition>
  553. <RowDefinition Height="33"></RowDefinition>
  554. <RowDefinition Height ="1*"></RowDefinition>
  555. </Grid.RowDefinitions>
  556. <Label Content="LP3" Background="{DynamicResource Table_BG_Title}" BorderBrush="{DynamicResource Table_BD}" BorderThickness="1,1,1,1" Grid.Row="0" HorizontalContentAlignment="Center" VerticalContentAlignment="Center"/>
  557. <StackPanel Grid.Row="1" Orientation="Horizontal">
  558. <TextBlock Margin="5,0,0,0" Text="Lot ID:" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="15" FontFamily="Arial" VerticalAlignment="Center" Width="80"></TextBlock>
  559. <TextBox Margin="5,3,0,3" FontSize="15" Text="{Binding LP3WaferAssociation.LotId}" Width="242" VerticalContentAlignment="Center" HorizontalContentAlignment="Center" RenderTransformOrigin="0.319,0.594" IsEnabled="{Binding ButtonIsEnableLP3}"/>
  560. </StackPanel>
  561. <StackPanel Grid.Row="2" Orientation="Horizontal">
  562. <TextBlock Margin="5,0,10,0" Text="Sequence Type:" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="15" FontFamily="Arial" VerticalAlignment="Center" Width="111"></TextBlock>
  563. <CheckBox Margin="5" Content="Engineering" VerticalAlignment="Center" IsChecked="{Binding LP3RecipeMode,Converter={StaticResource BoolToBool}}" IsEnabled="{Binding ButtonIsEnableLP3}">
  564. <i:Interaction.Triggers>
  565. <i:EventTrigger EventName="Checked">
  566. <i:InvokeCommandAction Command="{Binding SeqTypeChangeCommand}" CommandParameter="{Binding LP3WaferAssociation}"/>
  567. </i:EventTrigger>
  568. <i:EventTrigger EventName="Unchecked">
  569. <i:InvokeCommandAction Command="{Binding SeqTypeChangeCommand}" CommandParameter="{Binding LP3WaferAssociation}"/>
  570. </i:EventTrigger>
  571. </i:Interaction.Triggers>
  572. </CheckBox>
  573. <CheckBox Margin="5" Content="Production" VerticalAlignment="Center" IsChecked="{Binding LP3RecipeMode}" IsEnabled="{Binding ButtonIsEnableLP3}">
  574. <i:Interaction.Triggers>
  575. <i:EventTrigger EventName="Checked">
  576. <i:InvokeCommandAction Command="{Binding SeqTypeChangeCommand}" CommandParameter="{Binding LP3WaferAssociation}"/>
  577. </i:EventTrigger>
  578. <i:EventTrigger EventName="Unchecked">
  579. <i:InvokeCommandAction Command="{Binding SeqTypeChangeCommand}" CommandParameter="{Binding LP3WaferAssociation}"/>
  580. </i:EventTrigger>
  581. </i:Interaction.Triggers>
  582. </CheckBox>
  583. </StackPanel>
  584. <StackPanel Grid.Row="3" Orientation="Horizontal">
  585. <TextBlock Margin="5,0,0,0" Text="Sequence:" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="15" FontFamily="Arial" VerticalAlignment="Center" Width="80"></TextBlock>
  586. <ComboBox Margin="5,3,0,3" Width="242" SelectedItem="{Binding LP3SequenceName}" ItemsSource="{Binding SequenceSelectedItemsSource3}" IsEnabled="{Binding ButtonIsEnableLP3}">
  587. <i:Interaction.Triggers>
  588. <i:EventTrigger EventName="SelectionChanged">
  589. <i:InvokeCommandAction Command="{Binding SelectionChangedCommand}" CommandParameter="{Binding LP3WaferAssociation.ModuleData.ModuleID}"/>
  590. </i:EventTrigger>
  591. </i:Interaction.Triggers>
  592. </ComboBox>
  593. </StackPanel>
  594. <Grid Grid.Row="4" >
  595. <Grid.ColumnDefinitions>
  596. <ColumnDefinition/>
  597. <ColumnDefinition/>
  598. </Grid.ColumnDefinitions>
  599. <StackPanel Orientation="Horizontal" >
  600. <TextBlock Text="Cycle Set:" Margin="5,0,0,0" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="14" FontFamily="Arial" VerticalAlignment="Center" Width="65"></TextBlock>
  601. <CheckBox Margin="5" x:Name="IsEnableCycleCheckBox3" Content="IsEnable" VerticalAlignment="Center" Padding="3 0 0 0" IsEnabled="{Binding ButtonIsEnableLP3}" IsChecked="{Binding LP3WaferAssociation.IsEnableCycle}"/>
  602. </StackPanel>
  603. <StackPanel Orientation="Horizontal" Grid.Column="1">
  604. <TextBlock Text="Cycle Num:" Margin="5,0,0,0" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="14" FontFamily="Arial" VerticalAlignment="Center" Width="80"></TextBlock>
  605. <TextBox x:Name="CycleNumTextbox3" Margin="5,0,0,0" Width="72" VerticalAlignment="Center" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" Height="20" BorderThickness="1" Text="{Binding LP3WaferAssociation.CycleNumber}" >
  606. <TextBox.IsEnabled>
  607. <MultiBinding Converter="{StaticResource mutiBoolToBool}">
  608. <Binding Path="ButtonIsEnableLP3" />
  609. <Binding ElementName="IsEnableCycleCheckBox3" Path="IsChecked"/>
  610. </MultiBinding>
  611. </TextBox.IsEnabled>
  612. </TextBox>
  613. </StackPanel>
  614. </Grid>
  615. <StackPanel Grid.Row="5" Orientation="Horizontal">
  616. <TextBlock Text="Cycle Info:" Margin="5,0,0,0" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="14" FontFamily="Arial" VerticalAlignment="Center" Width="80"></TextBlock>
  617. <TextBlock FontSize="12" FontFamily="Arial" VerticalAlignment="Center">
  618. <TextBlock.Text>
  619. <MultiBinding StringFormat="{}{0}/{1} Wafer Count: {2}" >
  620. <Binding Path="RtDataValues[LP3.CycleSetPoint]"></Binding>
  621. <Binding Path="RtDataValues[LP3.CycledCount]"></Binding>
  622. <Binding Path="RtDataValues[LP3.CycledWafer]"></Binding>
  623. </MultiBinding>
  624. </TextBlock.Text>
  625. </TextBlock>
  626. </StackPanel>
  627. <StackPanel Grid.Row="6" Orientation="Horizontal" HorizontalAlignment="Center">
  628. <Button Content="Select All" Width="94" Height="33" Margin="10,2,10,2" Command="{Binding SelectAllCommand}" CommandParameter="{Binding LP3WaferAssociation}"/>
  629. <Button Content="DeSelect All" Width="94" Height="33" Margin="-5,2,10,2" Command="{Binding UnSelectAllCommand}" CommandParameter="{Binding LP3WaferAssociation}"/>
  630. </StackPanel>
  631. <Grid Grid.Row="7" >
  632. <Grid.ColumnDefinitions>
  633. <ColumnDefinition/>
  634. <ColumnDefinition/>
  635. </Grid.ColumnDefinitions>
  636. <StackPanel Orientation="Horizontal" >
  637. <TextBlock Margin="5,0,0,0" Text="Name:" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="15" FontFamily="Arial" VerticalAlignment="Center" Width="52"></TextBlock>
  638. <TextBox Margin="0,3,0,3" FontSize="15" Text="{Binding LP3WaferAssociation.JobID}" Width="101" VerticalContentAlignment="Center" HorizontalContentAlignment="Center" RenderTransformOrigin="0.319,0.594" IsEnabled="{Binding ButtonIsEnableLP3}"/>
  639. </StackPanel>
  640. <StackPanel Orientation="Horizontal" Grid.Column="1">
  641. <TextBlock Margin="5,0,0,0" Text="Status:" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="15" FontFamily="Arial" VerticalAlignment="Center" Width="52"></TextBlock>
  642. <TextBox Margin="0,3,0,3" FontSize="15" IsEnabled="False" Text="{Binding LP3WaferAssociation.JobStatus}" VerticalContentAlignment="Center" HorizontalContentAlignment="Center" Width="115" RenderTransformOrigin="0.319,0.594"/>
  643. </StackPanel>
  644. </Grid>
  645. <StackPanel Grid.Row="8" Orientation="Horizontal" HorizontalAlignment="Center">
  646. <Button IsEnabled="{Binding IsLP3CanCreatedJob}" Content="Create Job" Width="94" Height="33" Margin="10,2,10,2" Command="{Binding CreateJobCommand}" CommandParameter="{Binding LP3WaferAssociation}"/>
  647. </StackPanel>
  648. <StackPanel Grid.Row="9" Orientation="Horizontal" HorizontalAlignment="Center">
  649. <Button IsEnabled="{Binding IsLP3AutoStoped}" Content="Start" Width="64" Height="33" Margin="10,2,10,2" Command="{Binding StartCommand}" CommandParameter="{Binding LP3WaferAssociation}"/>
  650. <Button IsEnabled="{Binding IsLP3AutoStarted}" Content="Stop" Width="64" Height="33" Margin="10,2,10,2" Command="{Binding StopCommand}" CommandParameter="{Binding LP3WaferAssociation}"/>
  651. </StackPanel>
  652. <ListBox Grid.Row="10" ItemsSource="{Binding LP3WaferAssociation.ModuleData.WaferManager.Wafers}" Name="list3" IsEnabled="{Binding IsLP3Unable}">
  653. <ListBox.Resources>
  654. <Style TargetType="ListBoxItem" BasedOn="{StaticResource ResourceKey={x:Type ListBoxItem}}">
  655. <Setter Property="Rectangle.StrokeThickness" Value="1"/>
  656. </Style>
  657. </ListBox.Resources>
  658. <ListBox.ItemTemplate>
  659. <DataTemplate>
  660. <Grid Height="18" Background="#F5F7FA">
  661. <Grid.ColumnDefinitions>
  662. <ColumnDefinition Width="AUTO"></ColumnDefinition>
  663. <ColumnDefinition Width="AUTO"></ColumnDefinition>
  664. <ColumnDefinition Width="AUTO"></ColumnDefinition>
  665. </Grid.ColumnDefinitions>
  666. <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="0 0 1 1" Width="110" >
  667. <controls:Slot ViewType="Bottom" WaferStatus="{Binding WaferStatus}" SlotID="{Binding SlotID}" ModuleID="{Binding ModuleID}"
  668. SourceName="{Binding SourceName}" HorizontalAlignment="Center" VerticalAlignment="Center" Margin="8,1,8,1"
  669. SlotMouseButtonDown="Slot_SlotMouseButtonDown" WaferTransferStarted="Slot_WaferTransferStarted" FontFamily="Arial" FontSize="2">
  670. </controls:Slot>
  671. </Border>
  672. <Border Grid.Column="1" BorderBrush="{DynamicResource Table_BD}" BorderThickness="0,0,1,1" Width="200" >
  673. <Border.Style>
  674. <Style>
  675. <Style.Triggers>
  676. <DataTrigger Binding="{Binding WaferStatus}" Value="0">
  677. <Setter Property="Border.Background" Value="AliceBlue"/>
  678. </DataTrigger>
  679. <DataTrigger Binding="{Binding WaferStatus}" Value="1">
  680. <Setter Property="Border.Background" Value="AliceBlue"/>
  681. </DataTrigger>
  682. </Style.Triggers>
  683. </Style>
  684. </Border.Style>
  685. <TextBlock Name="txtSeqName" Text="{Binding SequenceName}" Foreground="{DynamicResource FG_Black}" FontSize="12" FontFamily="Arial" HorizontalAlignment="Center" VerticalAlignment="Center"></TextBlock>
  686. </Border>
  687. <Border Grid.Column="2" BorderBrush="{DynamicResource Table_BD}" BorderThickness="0,0,0,1" Width="110" Padding="5,1" >
  688. <Button Width="60" Height="14" Command="{Binding Path=DataContext.SetSequenceCommand, RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=ListBox}}" CommandParameter="{Binding}" IsEnabled="{Binding ButtonIsEnableLP1}">
  689. <Button.Style>
  690. <Style TargetType="{x:Type Button}" BasedOn="{StaticResource ResourceKey={x:Type Button}}">
  691. <Setter Property="Button.Content" Value="Remove"/>
  692. <Setter Property="FontSize" Value="10" />
  693. <Style.Triggers>
  694. <DataTrigger Binding="{Binding ElementName=txtSeqName, Path=Text}" Value="{x:Static sys:String.Empty}">
  695. <Setter Property="Button.Content" Value="Set"/>
  696. </DataTrigger>
  697. <DataTrigger Binding="{Binding WaferStatus}" Value="0">
  698. <Setter Property="Button.IsEnabled" Value="False"/>
  699. </DataTrigger>
  700. </Style.Triggers>
  701. </Style>
  702. </Button.Style>
  703. </Button>
  704. </Border>
  705. </Grid>
  706. </DataTemplate>
  707. </ListBox.ItemTemplate>
  708. </ListBox>
  709. </Grid>
  710. </Grid>
  711. </Canvas>
  712. <TextBox IsReadOnly="True" BorderThickness="0" Text="LP1" FontSize="20" Width="40" Height="28" Background="Transparent" HorizontalContentAlignment="Center" HorizontalAlignment="Left" Canvas.Left="50" Canvas.Top="130" VerticalAlignment="Top"/>
  713. <TextBox IsReadOnly="True" BorderThickness="0" Text="LP2" FontSize="20" Width="40" Height="28" Background="Transparent" HorizontalContentAlignment="Center" Canvas.Left="50" Canvas.Top="266" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  714. <TextBox IsReadOnly="True" BorderThickness="0" Text="LP3" FontSize="20" Width="40" Height="28" Background="Transparent" HorizontalContentAlignment="Center" Canvas.Left="50" Canvas.Top="398" HorizontalAlignment="Center" VerticalAlignment="Top"/>
  715. </Canvas>
  716. </UserControl>