TMView.xaml 35 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473
  1. <UserControl x:Class="Venus_MainPages.Views.TMView"
  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:Venus_MainPages.Views"
  7. xmlns:customControls="clr-namespace:Venus_Themes.CustomControls;assembly=Venus_Themes"
  8. xmlns:userControls="clr-namespace:Venus_Themes.UserControls;assembly=Venus_Themes"
  9. xmlns:unity="clr-namespace:Venus_MainPages.Unity"
  10. xmlns:converters="clr-namespace:Venus_Themes.Converters;assembly=Venus_Themes"
  11. xmlns:ctrls="clr-namespace:Venus_Themes.UserControls;assembly=Venus_Themes"
  12. xmlns:prism="http://prismlibrary.com/"
  13. xmlns:i="http://schemas.microsoft.com/expression/2010/interactivity"
  14. xmlns:viewModel="clr-namespace:Venus_MainPages.ViewModels"
  15. prism:ViewModelLocator.AutoWireViewModel="True"
  16. mc:Ignorable="d"
  17. d:DesignHeight="450" d:DesignWidth="1200">
  18. <UserControl.Resources>
  19. <converters:BoolToBool x:Key="BoolToBool"/>
  20. </UserControl.Resources>
  21. <Canvas>
  22. <StackPanel Canvas.Top="20" Canvas.Left="10" Width="480">
  23. <Grid>
  24. <Grid.RowDefinitions>
  25. <RowDefinition Height="30"/>
  26. <RowDefinition Height="Auto"/>
  27. <RowDefinition />
  28. </Grid.RowDefinitions>
  29. <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="1,0,1,1" Background="{DynamicResource Table_BG_FirstTitle}" Padding="5,1">
  30. <StackPanel Orientation="Horizontal" HorizontalAlignment="Left" VerticalAlignment="Center">
  31. <Path Data="M0,0 L5,0 5,5 z" Fill="White" HorizontalAlignment="Left" Grid.Row="1" RenderTransformOrigin="0.5,0.5" Stretch="Fill" Width="5" Height="5">
  32. <Path.RenderTransform>
  33. <TransformGroup>
  34. <ScaleTransform/>
  35. <SkewTransform/>
  36. <RotateTransform Angle="45"/>
  37. <TranslateTransform/>
  38. </TransformGroup>
  39. </Path.RenderTransform>
  40. </Path>
  41. <TextBlock Margin="5,0,0,0" Text="TM/LoadLock Operation" FontFamily="Arial" FontSize="14" Foreground="{DynamicResource FG_White}" HorizontalAlignment="Left" VerticalAlignment="Center"/>
  42. </StackPanel>
  43. </Border>
  44. <Border Grid.Row="1" BorderBrush="{DynamicResource Table_BD}" Background="{DynamicResource Table_BG_Content}" BorderThickness="1,0,1,0" Padding="5,1">
  45. <WrapPanel Margin="10,10,10,0" Orientation="Horizontal" HorizontalAlignment="Center">
  46. <RadioButton Content="TM" Width="80" Margin="2 0 0 10" IsChecked="True" x:Name="tmRadioButton">
  47. <i:Interaction.Triggers>
  48. <i:EventTrigger EventName="Checked">
  49. <i:InvokeCommandAction Command="{Binding ModuleCheckedCommand}" CommandParameter="TM"/>
  50. </i:EventTrigger>
  51. </i:Interaction.Triggers>
  52. </RadioButton>
  53. <RadioButton Content="LLA" Width="80" Margin="2 0 0 10" Visibility="{Binding LLAIsInstalled,Converter={StaticResource bool2VisibilityConverter}}">
  54. <i:Interaction.Triggers>
  55. <i:EventTrigger EventName="Checked">
  56. <i:InvokeCommandAction Command="{Binding ModuleCheckedCommand}" CommandParameter="LLA"/>
  57. </i:EventTrigger>
  58. </i:Interaction.Triggers>
  59. </RadioButton>
  60. <RadioButton Content="LLB" Width="80" Margin="2 0 0 10" Visibility="{Binding LLBIsInstalled,Converter={StaticResource bool2VisibilityConverter}}">
  61. <i:Interaction.Triggers>
  62. <i:EventTrigger EventName="Checked">
  63. <i:InvokeCommandAction Command="{Binding ModuleCheckedCommand}" CommandParameter="LLB"/>
  64. </i:EventTrigger>
  65. </i:Interaction.Triggers>
  66. </RadioButton>
  67. </WrapPanel>
  68. </Border>
  69. <!--<Border Grid.Row="2" BorderBrush="{DynamicResource Table_BD}" Background="{DynamicResource Table_BG_Content}" BorderThickness="1,0,1,1" >-->
  70. <Grid Grid.Row="2" unity:GridOptions.ShowBorder="True" unity:GridOptions.LineBrush="Black" unity:GridOptions.LineThickness="1" Background="{DynamicResource Table_BG_Content}">
  71. <Grid.RowDefinitions>
  72. <RowDefinition/>
  73. <RowDefinition/>
  74. <RowDefinition/>
  75. </Grid.RowDefinitions>
  76. <Grid.ColumnDefinitions>
  77. <ColumnDefinition/>
  78. <ColumnDefinition/>
  79. <ColumnDefinition/>
  80. <ColumnDefinition/>
  81. <ColumnDefinition/>
  82. </Grid.ColumnDefinitions>
  83. <TextBlock Text="Purge Count" Padding="10,7,0,5" Background="#D0D8E8"/>
  84. <TextBlock Text="All Count" Grid.Column="2" Padding="20,7,0,5" Background="#D0D8E8"/>
  85. <Button Content="Purge" Width="80" Margin="0,3,0,3" Height="24" VerticalAlignment="Center" Grid.Column="4" Command="{Binding PurgeCommand}" IsEnabled="{Binding Path=TMIsOFFline}"/>
  86. <StackPanel Grid.Row="1" Grid.ColumnSpan="5" Orientation="Horizontal" HorizontalAlignment="Center" Height="35">
  87. <Button Content="Home" Width="85" Height="25" Margin="0,0,5,0" Command="{Binding HomeCommand}" IsEnabled="{Binding Path=TMIsOFFline}"/>
  88. <Button Content="Vent" Width="80" Height="25" Margin="0 5 5 5" IsEnabled="{Binding Path=TMIsOFFline}" Command="{Binding VentCommand}"/>
  89. <Button Content="Pump" Width="80" Height="25" Margin="0 5 0 5" IsEnabled="{Binding Path=TMIsOFFline}" Command="{Binding PumpCommand}"/>
  90. <Button Content="Check Load" Width="85" Height="25" Margin="5,0,0,0" Visibility="{Binding ElementName=tmRadioButton,Path=IsChecked,Converter={StaticResource bool2VisibilityConverter}}" IsEnabled="{Binding Path=TMIsOFFline}"/>
  91. <Button Content="Abort" Width="80" Margin="5,5,5,5" Command="{Binding AbortCommand}" IsEnabled="{Binding Path=TMIsOFFline}"/>
  92. </StackPanel>
  93. <StackPanel Grid.Row="2" Grid.ColumnSpan="5" Orientation="Horizontal" HorizontalAlignment="Center" Height="35">
  94. <RadioButton Content="Online" Grid.Row="2" Grid.Column="2" Width="80" Margin="0 5 5 5" Style="{StaticResource Button_RadioButton}" IsChecked="{Binding TMIsOFFline,Converter={StaticResource BoolToBool},Mode=TwoWay}"/>
  95. <RadioButton Content="Offline" Grid.Row="2" Grid.Column="3" Width="80" Margin="5 5 0 5" Style="{StaticResource Button_RadioButton}" IsChecked="{Binding TMIsOFFline,Mode=TwoWay}"/>
  96. </StackPanel>
  97. </Grid>
  98. <!--</Border>-->
  99. </Grid>
  100. </StackPanel>
  101. <Grid Canvas.Top="20" Canvas.Right="10" Width="460">
  102. <Grid.RowDefinitions>
  103. <RowDefinition Height="30"/>
  104. <RowDefinition Height="Auto"/>
  105. </Grid.RowDefinitions>
  106. <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="1,0,1,1" Background="{DynamicResource Table_BG_FirstTitle}" Padding="5,1">
  107. <StackPanel Orientation="Horizontal" HorizontalAlignment="Left" VerticalAlignment="Center">
  108. <Path Data="M0,0 L5,0 5,5 z" Fill="White" HorizontalAlignment="Left" Grid.Row="1" RenderTransformOrigin="0.5,0.5" Stretch="Fill" Width="5" Height="5">
  109. <Path.RenderTransform>
  110. <TransformGroup>
  111. <ScaleTransform/>
  112. <SkewTransform/>
  113. <RotateTransform Angle="45"/>
  114. <TranslateTransform/>
  115. </TransformGroup>
  116. </Path.RenderTransform>
  117. </Path>
  118. <TextBlock Margin="5,0,0,0" Text="TM Robot Operation" FontFamily="Arial" FontSize="14" Foreground="{DynamicResource FG_White}" HorizontalAlignment="Left" VerticalAlignment="Center"/>
  119. </StackPanel>
  120. </Border>
  121. <!--<Border Grid.Row="1" BorderBrush="{DynamicResource Table_BD}" Background="{DynamicResource Table_BG_Content}" >-->
  122. <Grid unity:GridOptions.ShowBorder="True" unity:GridOptions.LineBrush="Black" Grid.Row="1" Background="{DynamicResource Table_BG_Content}">
  123. <Grid.RowDefinitions>
  124. <RowDefinition Height="25"/>
  125. <RowDefinition/>
  126. <RowDefinition/>
  127. <RowDefinition/>
  128. <RowDefinition/>
  129. <RowDefinition/>
  130. </Grid.RowDefinitions>
  131. <Grid.ColumnDefinitions>
  132. <ColumnDefinition/>
  133. <ColumnDefinition/>
  134. <ColumnDefinition/>
  135. <ColumnDefinition/>
  136. </Grid.ColumnDefinitions>
  137. <TextBlock Text="Module" HorizontalAlignment="Center" VerticalAlignment="Center" FontSize="14" />
  138. <TextBlock Text="Slot" Grid.Column="1" HorizontalAlignment="Center" VerticalAlignment="Center" FontSize="14"/>
  139. <TextBlock Text="Blada" Grid.Column="2" HorizontalAlignment="Center" VerticalAlignment="Center" FontSize="14"/>
  140. <TextBlock Text="Operation" Grid.Column="3" HorizontalAlignment="Center" VerticalAlignment="Center" FontSize="14"/>
  141. <ComboBox Grid.Row="1" Margin="5" SelectedItem="{Binding PickSelectedModule}" ItemsSource="{Binding TMModules}">
  142. <i:Interaction.Triggers>
  143. <i:EventTrigger EventName="SelectionChanged">
  144. <i:InvokeCommandAction Command="{Binding ModuleChangeCommand}" CommandParameter="Pick"/>
  145. </i:EventTrigger>
  146. </i:Interaction.Triggers>
  147. </ComboBox>
  148. <ComboBox Grid.Row="1" Grid.Column="1" Margin="5" ItemsSource="{Binding PickSoltItemsSource}" SelectedIndex="{Binding PickSoltSelectedIndex}"/>
  149. <ComboBox Grid.Row="1" Grid.Column="2" Margin="5" SelectedItem="{Binding PickSelectedBlade}" unity:ItemsControlHelper.EnumValuesToItemsSource="True"/>
  150. <Button Grid.Row="1" Grid.Column="3" Margin="5" Content="Pick" Height="25" Command="{Binding PickCommand}"/>
  151. <ComboBox Grid.Row="2" Margin="5" SelectedItem="{Binding PlaceSelectedModule}" ItemsSource="{Binding TMModules}">
  152. <i:Interaction.Triggers>
  153. <i:EventTrigger EventName="SelectionChanged">
  154. <i:InvokeCommandAction Command="{Binding ModuleChangeCommand}" CommandParameter="Place" />
  155. </i:EventTrigger>
  156. </i:Interaction.Triggers>
  157. </ComboBox>
  158. <ComboBox Grid.Row="2" Grid.Column="1" Margin="5" ItemsSource="{Binding PlaceSoltItemsSource}" SelectedIndex="{Binding PlaceSoltSelectedIndex}"/>
  159. <ComboBox Grid.Row="2" Grid.Column="2" Margin="5" SelectedItem="{Binding PlaceSelectedBlade}" unity:ItemsControlHelper.EnumValuesToItemsSource="True"/>
  160. <Button Grid.Row="2" Grid.Column="3" Margin="5" Content="Place" Height="25" Command="{Binding PlaceCommand}"/>
  161. <ComboBox Grid.Row="3" Margin="5" SelectedItem="{Binding ExtendSelectedModule}" ItemsSource="{Binding TMModules}">
  162. <i:Interaction.Triggers>
  163. <i:EventTrigger EventName="SelectionChanged">
  164. <i:InvokeCommandAction Command="{Binding ModuleChangeCommand}" CommandParameter="Extend" />
  165. </i:EventTrigger>
  166. </i:Interaction.Triggers>
  167. </ComboBox>
  168. <ComboBox Grid.Row="3" Grid.Column="1" Margin="5" ItemsSource="{Binding ExtendSoltItemsSource}" SelectedIndex="{Binding ExtendSoltSelectedIndex}"/>
  169. <ComboBox Grid.Row="3" Grid.Column="2" Margin="5" SelectedItem="{Binding ExtendSelectedBlade}" unity:ItemsControlHelper.EnumValuesToItemsSource="True"/>
  170. <Button Grid.Row="3" Grid.Column="3" Margin="5" Content="Extend" Height="25" Command="{Binding ExtendCommand}"/>
  171. <ComboBox Grid.Row="4" Margin="5" SelectedItem="{Binding RetractSelectedModule}" ItemsSource="{Binding TMModules}">
  172. <i:Interaction.Triggers>
  173. <i:EventTrigger EventName="SelectionChanged">
  174. <i:InvokeCommandAction Command="{Binding ModuleChangeCommand}" CommandParameter="Retract" />
  175. </i:EventTrigger>
  176. </i:Interaction.Triggers>
  177. </ComboBox>
  178. <ComboBox Grid.Row="4" Grid.Column="1" Margin="5" ItemsSource="{Binding RetractSoltItemsSource}" SelectedIndex="{Binding RetractSoltSelectedIndex}"/>
  179. <ComboBox Grid.Row="4" Grid.Column="2" Margin="5" SelectedItem="{Binding RetractSelectedBlade}" unity:ItemsControlHelper.EnumValuesToItemsSource="True"/>
  180. <Button Grid.Row="4" Grid.Column="3" Margin="5" Content="Retract" Height="25" Command="{Binding RetractCommand}"/>
  181. <ComboBox Grid.Row="5" Grid.Column="0" Margin="5" SelectedItem="{Binding WaferRobotTAction}" unity:ItemsControlHelper.EnumValuesToItemsSource="True"/>
  182. <ComboBox Grid.Row="5" Grid.Column="2" Margin="5" SelectedItem="{Binding GoToSelectedBlade}" unity:ItemsControlHelper.EnumValuesToItemsSource="True"/>
  183. <Button Grid.Row="5" Grid.Column="3" Margin="5" Height="25" Content="Goto" IsEnabled="{Binding Path=IsManualMode}" Command="{Binding GotoCommand}"/>
  184. </Grid>
  185. <!--</Border>-->
  186. </Grid>
  187. <StackPanel Canvas.Top="260" Canvas.Left="10" Width="710">
  188. <Grid>
  189. <Grid.RowDefinitions>
  190. <RowDefinition Height="30"/>
  191. <RowDefinition Height="Auto"/>
  192. <RowDefinition />
  193. </Grid.RowDefinitions>
  194. <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="1,0,1,1" Background="{DynamicResource Table_BG_FirstTitle}" Padding="5,1">
  195. <StackPanel Orientation="Horizontal" HorizontalAlignment="Left" VerticalAlignment="Center">
  196. <Path Data="M0,0 L5,0 5,5 z" Fill="White" HorizontalAlignment="Left" Grid.Row="1" RenderTransformOrigin="0.5,0.5" Stretch="Fill" Width="5" Height="5">
  197. <Path.RenderTransform>
  198. <TransformGroup>
  199. <ScaleTransform/>
  200. <SkewTransform/>
  201. <RotateTransform Angle="45"/>
  202. <TranslateTransform/>
  203. </TransformGroup>
  204. </Path.RenderTransform>
  205. </Path>
  206. <TextBlock Margin="5,0,0,0" Text="TM Cycle Configuration" FontFamily="Arial" FontSize="14" Foreground="{DynamicResource FG_White}" HorizontalAlignment="Left" VerticalAlignment="Center"/>
  207. </StackPanel>
  208. </Border>
  209. <Border Grid.Row="1" BorderBrush="{DynamicResource Table_BD}" Background="{DynamicResource Table_BG_Content}" BorderThickness="1,0,1,1" >
  210. <Grid unity:GridOptions.ShowBorder="True" unity:GridOptions.LineBrush="White" unity:GridOptions.LineThickness="1">
  211. <Grid.RowDefinitions>
  212. <RowDefinition/>
  213. <RowDefinition/>
  214. </Grid.RowDefinitions>
  215. <Grid.ColumnDefinitions>
  216. <ColumnDefinition/>
  217. <ColumnDefinition/>
  218. <ColumnDefinition/>
  219. <ColumnDefinition/>
  220. <ColumnDefinition/>
  221. <ColumnDefinition/>
  222. </Grid.ColumnDefinitions>
  223. <TextBlock Text="TM Cycle Enable" Grid.ColumnSpan="2" Padding="0,5,0,5" Background="#D0D8E8" />
  224. <CheckBox Grid.Column="2" Margin="5" Grid.ColumnSpan="4" IsChecked="{Binding CycleEnable}"/>
  225. <TextBlock Text="TM Cycle Count" Grid.Row="1" Grid.ColumnSpan="2" Padding="0,5,0,5" Background="#D0D8E8"/>
  226. <TextBlock Text="TM Cycle Count Remained" Grid.Row="1" Grid.Column="3" Grid.ColumnSpan="2" Padding="0,5,0,5" Background="#D0D8E8"/>
  227. <TextBlock Text="{Binding RtDataValues[TMCycle.CycleIndex]}" Grid.Row="1" Grid.Column="5" Padding="0,5,0,5" HorizontalAlignment="Center"/>
  228. <TextBox Grid.Row="1" Grid.Column="2" BorderThickness="0" VerticalContentAlignment="Center" Padding="36,0,0,0" Text="{Binding CycleCount}"/>
  229. </Grid>
  230. </Border>
  231. </Grid>
  232. <Grid >
  233. <Grid.RowDefinitions>
  234. <RowDefinition Height="30"/>
  235. <RowDefinition />
  236. <RowDefinition />
  237. </Grid.RowDefinitions>
  238. <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="1,0,1,1" Background="{DynamicResource Table_BG_FirstTitle}" Padding="5,1">
  239. <StackPanel Orientation="Horizontal" HorizontalAlignment="Left" VerticalAlignment="Center">
  240. <Path Data="M0,0 L5,0 5,5 z" Fill="White" HorizontalAlignment="Left" Grid.Row="1" RenderTransformOrigin="0.5,0.5" Stretch="Fill" Width="5" Height="5">
  241. <Path.RenderTransform>
  242. <TransformGroup>
  243. <ScaleTransform/>
  244. <SkewTransform/>
  245. <RotateTransform Angle="45"/>
  246. <TranslateTransform/>
  247. </TransformGroup>
  248. </Path.RenderTransform>
  249. </Path>
  250. <TextBlock Margin="5,0,0,0" Text="TM Cycle" FontFamily="Arial" FontSize="14" Foreground="{DynamicResource FG_White}" HorizontalAlignment="Left" VerticalAlignment="Center"/>
  251. </StackPanel>
  252. </Border>
  253. <Border Grid.Row="1" BorderBrush="{DynamicResource Table_BD}" Background="{DynamicResource Table_BG_Content}" BorderThickness="1,0,1,1" >
  254. <Grid >
  255. <Grid.RowDefinitions>
  256. <RowDefinition/>
  257. <RowDefinition/>
  258. <RowDefinition/>
  259. </Grid.RowDefinitions>
  260. <StackPanel Orientation="Horizontal" HorizontalAlignment="Center">
  261. <TextBlock Text="Origin: " Padding="0,8,0,0"/>
  262. <ComboBox Width="100" Margin="0,5,5,0" ItemsSource="{Binding OriginalCycle}" SelectedItem="{Binding OriginalCycleSelectedItem}"/>
  263. <TextBlock Text="To: " Padding="10,8,0,0"/>
  264. <ComboBox Width="100" Margin="0,5,5,0" ItemsSource="{Binding ToCycle}" SelectedItem="{Binding ToCycleSelectedItem}"/>
  265. </StackPanel>
  266. <StackPanel Grid.Row="1" Orientation="Horizontal" HorizontalAlignment="Center">
  267. <CheckBox Content="PMA" Margin="0,10,10,10" Visibility="{Binding PMAIsInstalled,Converter={StaticResource bool2VisibilityConverter}}" IsChecked="{Binding PMAIsCycle}"/>
  268. <CheckBox Content="PMB" Margin="0,10,10,10" Visibility="{Binding PMBIsInstalled,Converter={StaticResource bool2VisibilityConverter}}" IsChecked="{Binding PMBIsCycle}"/>
  269. <CheckBox Content="PMC" Margin="0,10,10,10" Visibility="{Binding PMCIsInstalled,Converter={StaticResource bool2VisibilityConverter}}" IsChecked="{Binding PMCIsCycle}"/>
  270. <CheckBox Content="PMD" Margin="0,10,10,10" Visibility="{Binding PMDIsInstalled,Converter={StaticResource bool2VisibilityConverter}}" IsChecked="{Binding PMDIsCycle}"/>
  271. </StackPanel>
  272. <StackPanel Orientation="Horizontal" Grid.Row="2" HorizontalAlignment="Center">
  273. <Button Content="Home" Margin="0,0,10,10" Width="80" Height="25" Command="{Binding SystemHomeCommand}"/>
  274. <Button Content="Start" Margin="0,0,10,10" Width="80" Height="25" Command="{Binding StartCycleCommand}"/>
  275. <Button Content="Stop" Margin="10,0,10,10" Width="80" Height="25" Command="{Binding StopCycleCommand}"/>
  276. <Button Content="Pause" Margin="10,0,10,10" Width="80" Height="25"/>
  277. <Button Content="Resume" Margin="10,0,0,10" Width="80" Height="25"/>
  278. </StackPanel>
  279. </Grid>
  280. </Border>
  281. </Grid>
  282. </StackPanel>
  283. <StackPanel Canvas.Top="480" Canvas.Left="10" Width="710">
  284. <Grid>
  285. <Grid.RowDefinitions>
  286. <RowDefinition Height="30"/>
  287. <RowDefinition Height="Auto"/>
  288. <RowDefinition />
  289. </Grid.RowDefinitions>
  290. <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="1,0,1,1" Background="{DynamicResource Table_BG_FirstTitle}" Padding="5,1">
  291. <StackPanel Orientation="Horizontal" HorizontalAlignment="Left" VerticalAlignment="Center">
  292. <Path Data="M0,0 L5,0 5,5 z" Fill="White" HorizontalAlignment="Left" Grid.Row="1" RenderTransformOrigin="0.5,0.5" Stretch="Fill" Width="5" Height="5">
  293. <Path.RenderTransform>
  294. <TransformGroup>
  295. <ScaleTransform/>
  296. <SkewTransform/>
  297. <RotateTransform Angle="45"/>
  298. <TranslateTransform/>
  299. </TransformGroup>
  300. </Path.RenderTransform>
  301. </Path>
  302. <TextBlock Margin="5,0,0,0" Text="TM/LoadLock Leak Check" FontFamily="Arial" FontSize="14" Foreground="{DynamicResource FG_White}" HorizontalAlignment="Left" VerticalAlignment="Center"/>
  303. </StackPanel>
  304. </Border>
  305. <Border Grid.Row="1" BorderBrush="{DynamicResource Table_BD}" Background="{DynamicResource Table_BG_Content}" BorderThickness="1,0,1,0" Padding="5,1">
  306. <WrapPanel Margin="10,10,10,0" Orientation="Horizontal" HorizontalAlignment="Center">
  307. <RadioButton Content="TM" Width="80" Margin="2 0 0 10" IsChecked="True">
  308. <i:Interaction.Triggers>
  309. <i:EventTrigger EventName="Checked">
  310. <i:InvokeCommandAction Command="{Binding ModuleCheckedCommand}" CommandParameter="TM"/>
  311. </i:EventTrigger>
  312. </i:Interaction.Triggers>
  313. </RadioButton>
  314. <RadioButton Content="LLA" Width="80" Margin="2 0 0 10" Visibility="{Binding LLAIsInstalled,Converter={StaticResource bool2VisibilityConverter}}">
  315. <i:Interaction.Triggers>
  316. <i:EventTrigger EventName="Checked">
  317. <i:InvokeCommandAction Command="{Binding ModuleCheckedCommand}" CommandParameter="LLA"/>
  318. </i:EventTrigger>
  319. </i:Interaction.Triggers>
  320. </RadioButton>
  321. <RadioButton Content="LLB" Width="80" Margin="2 0 0 10" Visibility="{Binding LLBIsInstalled,Converter={StaticResource bool2VisibilityConverter}}">
  322. <i:Interaction.Triggers>
  323. <i:EventTrigger EventName="Checked">
  324. <i:InvokeCommandAction Command="{Binding ModuleCheckedCommand}" CommandParameter="LLB"/>
  325. </i:EventTrigger>
  326. </i:Interaction.Triggers>
  327. </RadioButton>
  328. </WrapPanel>
  329. </Border>
  330. <!--<Border Grid.Row="2" BorderBrush="{DynamicResource Table_BD}" Background="{DynamicResource Table_BG_Content}" BorderThickness="1,0,1,1" >-->
  331. <Grid Grid.Row="2" unity:GridOptions.ShowBorder="True" unity:GridOptions.LineBrush="Black" Background="{DynamicResource Table_BG_Content}">
  332. <Grid.RowDefinitions>
  333. <RowDefinition/>
  334. <RowDefinition/>
  335. <!--<RowDefinition/>-->
  336. </Grid.RowDefinitions>
  337. <Grid.ColumnDefinitions>
  338. <ColumnDefinition/>
  339. <ColumnDefinition/>
  340. <ColumnDefinition/>
  341. <ColumnDefinition/>
  342. <ColumnDefinition/>
  343. <ColumnDefinition/>
  344. <ColumnDefinition/>
  345. </Grid.ColumnDefinitions>
  346. <TextBlock Text="Base Pressure" Padding="6,7,0,5" Background="#D0D8E8"/>
  347. <TextBox Grid.Column="1" BorderThickness="0" VerticalContentAlignment="Center" HorizontalContentAlignment="Center" Text="{Binding RobotAction2}"/>
  348. <TextBlock Text="Pump Time" Grid.Column="2" Padding="15,7,0,5" Background="#D0D8E8"/>
  349. <TextBox Grid.Column="3" BorderThickness="0" VerticalContentAlignment="Center" HorizontalContentAlignment="Center" Text="{Binding RobotArm}"/>
  350. <TextBlock Text="Hold Time" Grid.Column="4" Padding="15,7,0,5" Background="#D0D8E8"/>
  351. <TextBox Grid.Column="5" BorderThickness="0" VerticalContentAlignment="Center" HorizontalContentAlignment="Center" Text="{Binding RobotTarget}"/>
  352. <Button Content="Start" Width="80" Margin="0,3,0,3" Height="24" VerticalAlignment="Center" Grid.Column="6" />
  353. <DataGrid Height="200" Grid.ColumnSpan="7" Grid.Row="1" AutoGenerateColumns="False" BorderThickness="0" FontSize="12" MinRowHeight="20" VerticalAlignment="Stretch"
  354. CanUserAddRows="False" CanUserDeleteRows="False" CanUserReorderColumns="False" CanUserResizeColumns="True" CanUserResizeRows="False" CanUserSortColumns="False"
  355. SelectionMode="Single" SelectionUnit="FullRow" Background="#05000000" VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Disabled"
  356. ItemsSource="{Binding LeakCheckResultList}" SelectedItem="{Binding CurrentLeakCheckResultItem}" FontFamily="Arial,SimSun" Margin="2">
  357. <DataGrid.Columns>
  358. <DataGridTextColumn Width="120" Binding="{Binding Date, StringFormat={}{0:yyyy-MM-dd HH:mm:ss}}" CanUserSort="False" CanUserReorder="False" IsReadOnly="True" >
  359. <DataGridTextColumn.HeaderTemplate >
  360. <DataTemplate>
  361. <TextBlock Text="CheckDate" />
  362. </DataTemplate>
  363. </DataGridTextColumn.HeaderTemplate>
  364. </DataGridTextColumn>
  365. <DataGridTextColumn Width="100" Binding="{Binding StartPressure}" CanUserSort="False" CanUserReorder="False" IsReadOnly="True" >
  366. <DataGridTextColumn.HeaderTemplate >
  367. <DataTemplate>
  368. <TextBlock Text="StartPressure" />
  369. </DataTemplate>
  370. </DataGridTextColumn.HeaderTemplate>
  371. </DataGridTextColumn>
  372. <DataGridTextColumn Width="100" Binding="{Binding StopPressure}" CanUserSort="False" CanUserReorder="False" IsReadOnly="True" >
  373. <DataGridTextColumn.HeaderTemplate >
  374. <DataTemplate>
  375. <TextBlock Text="StopPressure" />
  376. </DataTemplate>
  377. </DataGridTextColumn.HeaderTemplate>
  378. </DataGridTextColumn>
  379. <DataGridTextColumn Width="100" Binding="{Binding PumpTime}" CanUserSort="False" CanUserReorder="False" IsReadOnly="True" >
  380. <DataGridTextColumn.HeaderTemplate >
  381. <DataTemplate>
  382. <TextBlock Text="Pump Time(s)" />
  383. </DataTemplate>
  384. </DataGridTextColumn.HeaderTemplate>
  385. </DataGridTextColumn>
  386. <DataGridTextColumn Width="100" Binding="{Binding LeakCheckTime}" CanUserSort="False" CanUserReorder="False" IsReadOnly="True" >
  387. <DataGridTextColumn.HeaderTemplate >
  388. <DataTemplate>
  389. <TextBlock Text="Check Time(s)" />
  390. </DataTemplate>
  391. </DataGridTextColumn.HeaderTemplate>
  392. </DataGridTextColumn>
  393. <DataGridTextColumn Width="100" Binding="{Binding LeakRate, StringFormat={}{0:F5}}" CanUserSort="False" CanUserReorder="False" IsReadOnly="True" >
  394. <DataGridTextColumn.HeaderTemplate >
  395. <DataTemplate>
  396. <TextBlock Text="LeakRate" />
  397. </DataTemplate>
  398. </DataGridTextColumn.HeaderTemplate>
  399. </DataGridTextColumn>
  400. <DataGridTextColumn Width="100" Binding="{Binding Result}" CanUserSort="False" CanUserReorder="False" IsReadOnly="True" >
  401. <DataGridTextColumn.HeaderTemplate >
  402. <DataTemplate>
  403. <TextBlock Text="Result" />
  404. </DataTemplate>
  405. </DataGridTextColumn.HeaderTemplate>
  406. </DataGridTextColumn>
  407. </DataGrid.Columns>
  408. </DataGrid>
  409. </Grid>
  410. <!--</Border>-->
  411. </Grid>
  412. </StackPanel>
  413. <Canvas Canvas.Top="200" Canvas.Left="680">
  414. <userControls:FOUPFrontView UnitData="{Binding LLAModuleInfo}" VerticalAlignment="Top" Canvas.Top="360" Canvas.Left="226" Visibility="{Binding LLAIsInstalled,Converter={StaticResource bool2VisibilityConverter}}"/>
  415. <userControls:FOUPFrontView UnitData="{Binding LLBModuleInfo}" VerticalAlignment="Top" Canvas.Top="360" Canvas.Left="446" Visibility="{Binding LLBIsInstalled,Converter={StaticResource bool2VisibilityConverter}}"/>
  416. <Viewbox Width="350" Height="600" Stretch="Fill" >
  417. <Canvas Canvas.Top="100" Width="450" Height="800">
  418. <userControls:MainTM Width="300" Height="250" Canvas.Left="380" Canvas.Top="90"/>
  419. <customControls:WaferRobotControl OriginT="PMA" Canvas.Left="410" Canvas.Top="76" Width="200" Height="300" x:Name="robot" RobotTAction="{Binding Robot1TAction}" RobotXAction="{Binding Robot1XAction}" RobotWafer="{Binding BladeAWafer}"/>
  420. <customControls:WaferRobotControl OriginT="PMD" Canvas.Left="410" Canvas.Top="76" Width="200" Height="300" x:Name="robot2" RobotTAction="{Binding Robot2TAction}" RobotXAction="{Binding Robot2XAction}" RobotWafer="{Binding BladeBWafer}"/>
  421. <userControls:LoadLockLeft Door2IsVisibility="Collapsed" Width="150" Height="150" Canvas.Top="310" Canvas.Left="358" DoorIsOpen="{Binding RtDataValues[TM.LLATSlitDoor.IsClosed],Converter={StaticResource BoolToBool}}" Visibility="{Binding LLAIsInstalled,Converter={StaticResource bool2VisibilityConverter}}" RobotWafer="{Binding LLAWafer}"/>
  422. <userControls:LoadLockRight Door2IsVisibility="Collapsed" Width="150" Height="150" Canvas.Top="309" Canvas.Left="519" DoorIsOpen="{Binding RtDataValues[TM.LLBTSlitDoor.IsClosed],Converter={StaticResource BoolToBool}}" Visibility="{Binding LLBIsInstalled,Converter={StaticResource bool2VisibilityConverter}}" RobotWafer="{Binding LLBWafer}"/>
  423. <userControls:TMChamber x:Name="PMA" Canvas.Top="302" Canvas.Left="233" Width="140" Height="140" RotateTransformValue="-90" DoorIsOpen="{Binding RtDataValues[PMA.IsSlitDoorClosed],Converter={StaticResource BoolToBool}}" RobotWafer="{Binding PMAWafer}" Visibility="{Binding PMAIsInstalled,Converter={StaticResource bool2VisibilityConverter}}"/>
  424. <userControls:TMChamber x:Name="PMB" Canvas.Top="28" Canvas.Left="315" Width="140" Height="140" RotateTransformValue="-28" DoorIsOpen="{Binding RtDataValues[PMB.IsSlitDoorClosed],Converter={StaticResource BoolToBool}}" RobotWafer="{Binding PMBWafer}" />
  425. <userControls:TMChamber x:Name="PMC" Canvas.Top="-38" Canvas.Left="588" Width="140" Height="140" RotateTransformValue="30" DoorIsOpen="{Binding RtDataValues[PMC.IsSlitDoorClosed],Converter={StaticResource BoolToBool}}" RobotWafer="{Binding PMCWafer}" />
  426. <userControls:TMChamber x:Name="PMD" Canvas.Top="160" Canvas.Left="788" Width="140" Height="140" RotateTransformValue="90" DoorIsOpen="{Binding RtDataValues[PMD.IsSlitDoorClosed],Converter={StaticResource BoolToBool}}" RobotWafer="{Binding PMDWafer}" />
  427. </Canvas>
  428. </Viewbox>
  429. </Canvas>
  430. </Canvas>
  431. </UserControl>