OperationOverView.xaml 36 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514
  1. <UserControl x:Class="Venus_MainPages.Views.OperationOverView"
  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. mc:Ignorable="d"
  8. xmlns:ctrls="clr-namespace:Venus_Themes.UserControls;assembly=Venus_Themes"
  9. xmlns:customControls="clr-namespace:Venus_Themes.CustomControls;assembly=Venus_Themes"
  10. xmlns:Attach="clr-namespace:Venus_UI.Themes.Attach;assembly=Venus_Themes"
  11. xmlns:converters="clr-namespace:Venus_Themes.Converters;assembly=Venus_Themes"
  12. xmlns:userControls="clr-namespace:Venus_Themes.UserControls;assembly=Venus_Themes"
  13. xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
  14. xmlns:prism="http://prismlibrary.com/"
  15. prism:ViewModelLocator.AutoWireViewModel="True"
  16. xmlns:deviceControl="clr-namespace:Aitex.Core.UI.DeviceControl;assembly=MECF.Framework.UI.Core"
  17. xmlns:unity="clr-namespace:Venus_MainPages.Unity"
  18. d:DesignHeight="450" d:DesignWidth="800">
  19. <i:Interaction.Triggers>
  20. <i:EventTrigger EventName="Loaded">
  21. <i:InvokeCommandAction Command="{Binding LoadCommand}"/>
  22. </i:EventTrigger>
  23. </i:Interaction.Triggers>
  24. <UserControl.Resources>
  25. <converters:BoolToVisibility x:Key="boolToVisibility"/>
  26. <converters:BoolToVisibility2 x:Key="boolToVisibility2"/>
  27. <converters:BoolToBool x:Key="BoolToBool"/>
  28. </UserControl.Resources>
  29. <Canvas>
  30. <Canvas Canvas.Left="180">
  31. <Viewbox Width="800" Height="800" Canvas.Top="100" Canvas.Left="-20" Stretch="Fill">
  32. <Canvas Width="1000" Height="1000">
  33. <userControls:MainTM Width="300" Height="250" Canvas.Left="380" Canvas.Top="90"/>
  34. <userControls:LoadLockLeft Width="150" Height="150" Canvas.Top="310" Canvas.Left="358" DoorIsOpen="{Binding RtDataValues[TM.LLATSlitDoor.IsClosed],Converter={StaticResource BoolToBool}}" Door2IsOpen="{Binding RtDataValues[TM.LLAESlitDoor.IsClosed],Converter={StaticResource BoolToBool}}" Visibility="{Binding LLAIsInstalled,Converter={StaticResource bool2VisibilityConverter}}" RobotWafer="{Binding LLAWafer}"/>
  35. <userControls:LoadLockRight Width="150" Height="150" Canvas.Top="309" Canvas.Left="519" DoorIsOpen="{Binding RtDataValues[TM.LLBTSlitDoor.IsClosed],Converter={StaticResource BoolToBool}}" Door2IsOpen="{Binding RtDataValues[TM.LLBESlitDoor.IsClosed],Converter={StaticResource BoolToBool}}" Visibility="{Binding LLBIsInstalled,Converter={StaticResource bool2VisibilityConverter}}" RobotWafer="{Binding LLBWafer}"/>
  36. <userControls:TMChamber ModuleName="PMA" 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}" PMVisibility="{Binding PMAIsInstalled,Converter={StaticResource bool2VisibilityConverter}}" IsEnabled="{Binding PMAIsInstalled}"/>
  37. <userControls:TMChamber ModuleName="PMB" 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}" PMVisibility="{Binding PMBIsInstalled,Converter={StaticResource bool2VisibilityConverter}}" IsEnabled="{Binding PMBIsInstalled}"/>
  38. <userControls:TMChamber ModuleName="PMC" 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}" PMVisibility="{Binding PMCIsInstalled,Converter={StaticResource bool2VisibilityConverter}}" IsEnabled="{Binding PMCIsInstalled}"/>
  39. <userControls:TMChamber ModuleName="PMD" 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}" />
  40. </Canvas>
  41. </Viewbox>
  42. <userControls:EFEM Width="450" Height="180" Canvas.Left="160" Canvas.Top="482" Aligner1Wafer="{Binding Aligner1Wafer}"/>
  43. <customControls:WaferRobotControl OriginT="PMA" Canvas.Left="310" Canvas.Top="453" Width="160" Height="240" RobotTAction="{Binding Robot3TAction}" RobotXAction="{Binding Robot3XAction}" RobotWafer="{Binding EFEMBladeAWafer}"/>
  44. <customControls:WaferRobotControl OriginT="PMD" Canvas.Left="310" Canvas.Top="453" Width="160" Height="240" RobotTAction="{Binding Robot4TAction}" RobotXAction="{Binding Robot4XAction}" RobotWafer="{Binding EFEMBladeBWafer}"/>
  45. <customControls:WaferRobotControl OriginT="PMA" Canvas.Left="310" Canvas.Top="160" Width="160" Height="240" RobotTAction="{Binding Robot1TAction}" RobotXAction="{Binding Robot1XAction}" RobotWafer="{Binding TMBladeAWafer}"/>
  46. <customControls:WaferRobotControl OriginT="PMD" Canvas.Left="310" Canvas.Top="160" Width="160" Height="240" RobotTAction="{Binding Robot2TAction}" RobotXAction="{Binding Robot2XAction}" RobotWafer="{Binding TMBladeBWafer}"/>
  47. </Canvas>
  48. <Grid Width="280" Height="160" Canvas.Left="30" Canvas.Top="250" unity:GridOptions.LineBrush="#afb4db" unity:GridOptions.ShowBorder="True" Background="#E9EDF4">
  49. <Grid.RowDefinitions>
  50. <RowDefinition Height="30"/>
  51. <RowDefinition/>
  52. <RowDefinition/>
  53. <RowDefinition/>
  54. <RowDefinition/>
  55. <RowDefinition/>
  56. <RowDefinition/>
  57. <RowDefinition/>
  58. </Grid.RowDefinitions>
  59. <Grid.ColumnDefinitions>
  60. <ColumnDefinition Width="3*"/>
  61. <ColumnDefinition Width="2*"/>
  62. </Grid.ColumnDefinitions>
  63. <TextBlock Grid.Row="0" Text="PMA" Foreground="White" Grid.ColumnSpan="2" FontSize="20" Padding="120,2,0,0" Background="#376092"/>
  64. <TextBlock Grid.Row="1" Text="Recipe Name" FontSize="15" Padding="10,2,0,0" Background="#D0D8E8"/>
  65. <TextBlock Grid.Row="2" Text="Step Num/All" FontSize="15" Padding="10,2,0,0" Background="#D0D8E8"/>
  66. <TextBlock Grid.Row="3" Text="Step Type" FontSize="15" Padding="10,2,0,0" Background="#D0D8E8"/>
  67. <TextBlock Grid.Row="4" Text="Step Elpased Time" FontSize="15" Padding="10,2,0,0" Background="#D0D8E8"/>
  68. <TextBlock Grid.Row="5" Text="Step Time(s)" FontSize="15" Padding="10,2,0,0" Background="#D0D8E8"/>
  69. <TextBlock Grid.Row="6" Text="Next Step" FontSize="15" Padding="10,2,0,0" Background="#D0D8E8"/>
  70. <TextBlock Grid.Row="7" Text="Cycle Num/All" FontSize="15" Padding="10,2,0,0" Background="#D0D8E8"/>
  71. <TextBlock Grid.Row="1" Grid.Column="1" Text="{Binding CurrentRecipeResult.RecipeName}" FontSize="15" Padding="10,2,0,0" Background="#E9EDF4"/>
  72. <TextBlock Grid.Row="2" Grid.Column="1" FontSize="15" Padding="10,2,0,0" Background="#E9EDF4">
  73. <TextBlock.Text>
  74. <MultiBinding StringFormat="{}{0}/{1}">
  75. <Binding Path="CurrentRecipeResult.RecipeStepNumber"></Binding>
  76. <Binding Path="CurrentRecipeResult.RecipeStepCount"></Binding>
  77. </MultiBinding>
  78. </TextBlock.Text>
  79. </TextBlock>
  80. <TextBlock Grid.Row="3" Grid.Column="1" Text="{Binding CurrentRecipeResult.RecipeStepType}" FontSize="15" Padding="10,2,0,0"/>
  81. <TextBlock Grid.Row="4" Grid.Column="1" Text="{Binding CurrentRecipeResult.RecipeStepDuringTime, StringFormat=hh\\:mm\\:ss}" FontSize="15" Padding="10,2,0,0"/>
  82. <TextBlock Grid.Row="5" Grid.Column="1" Text="{Binding CurrentRecipeResult.RecipeStepSetTime}" FontSize="15" Padding="10,2,0,0"/>
  83. <customControls:PathButton BorderThickness="0" PathData="{StaticResource Icon_Next}" Background="Transparent" DefaultFillBrush="Black" Foreground="White" Cursor="Hand" Grid.Row="6" Grid.Column="1" Command="{Binding EndStepCommand}" Margin="15,0,0,0" HorizontalAlignment="Left"/>
  84. <TextBlock Grid.Row="7" Grid.Column="1" FontSize="15" Padding="10,2,0,0" Background="#E9EDF4">
  85. <TextBlock.Text>
  86. <MultiBinding StringFormat="{}{0}/{1}">
  87. <Binding Path="CurrentRecipeResult.RecipeCurrentCounter"></Binding>
  88. <Binding Path="CurrentRecipeResult.RecipeAllCounters"></Binding>
  89. </MultiBinding>
  90. </TextBlock.Text>
  91. </TextBlock>
  92. </Grid>
  93. <Grid Width="280" Height="160" Canvas.Left="30" Canvas.Top="50" unity:GridOptions.LineBrush="#afb4db" unity:GridOptions.ShowBorder="True" Background="#E9EDF4">
  94. <Grid.RowDefinitions>
  95. <RowDefinition Height="30"/>
  96. <RowDefinition/>
  97. <RowDefinition/>
  98. <RowDefinition/>
  99. <RowDefinition/>
  100. <RowDefinition/>
  101. <RowDefinition/>
  102. <RowDefinition/>
  103. </Grid.RowDefinitions>
  104. <Grid.ColumnDefinitions>
  105. <ColumnDefinition Width="3*"/>
  106. <ColumnDefinition Width="2*"/>
  107. </Grid.ColumnDefinitions>
  108. <TextBlock Grid.Row="0" Text="PMB" Foreground="White" Grid.ColumnSpan="2" FontSize="20" Padding="120,2,0,0" Background="#376092"/>
  109. <TextBlock Grid.Row="1" Text="Recipe Name" FontSize="15" Padding="10,2,0,0" Background="#D0D8E8"/>
  110. <TextBlock Grid.Row="2" Text="Step Num/All" FontSize="15" Padding="10,2,0,0" Background="#D0D8E8"/>
  111. <TextBlock Grid.Row="3" Text="Step Type" FontSize="15" Padding="10,2,0,0" Background="#D0D8E8"/>
  112. <TextBlock Grid.Row="4" Text="Step Elpased Time" FontSize="15" Padding="10,2,0,0" Background="#D0D8E8"/>
  113. <TextBlock Grid.Row="5" Text="Step Time(s)" FontSize="15" Padding="10,2,0,0" Background="#D0D8E8"/>
  114. <TextBlock Grid.Row="6" Text="Next Step" FontSize="15" Padding="10,2,0,0" Background="#D0D8E8"/>
  115. <TextBlock Grid.Row="7" Text="Cycle Num/All" FontSize="15" Padding="10,2,0,0" Background="#D0D8E8"/>
  116. <TextBlock Grid.Row="1" Grid.Column="1" Text="{Binding CurrentRecipeResult.RecipeName}" FontSize="15" Padding="10,2,0,0" Background="#E9EDF4"/>
  117. <TextBlock Grid.Row="2" Grid.Column="1" FontSize="15" Padding="10,2,0,0" Background="#E9EDF4">
  118. <TextBlock.Text>
  119. <MultiBinding StringFormat="{}{0}/{1}">
  120. <Binding Path="CurrentRecipeResult.RecipeStepNumber"></Binding>
  121. <Binding Path="CurrentRecipeResult.RecipeStepCount"></Binding>
  122. </MultiBinding>
  123. </TextBlock.Text>
  124. </TextBlock>
  125. <TextBlock Grid.Row="3" Grid.Column="1" Text="{Binding CurrentRecipeResult.RecipeStepType}" FontSize="15" Padding="10,2,0,0"/>
  126. <TextBlock Grid.Row="4" Grid.Column="1" Text="{Binding CurrentRecipeResult.RecipeStepDuringTime, StringFormat=hh\\:mm\\:ss}" FontSize="15" Padding="10,2,0,0"/>
  127. <TextBlock Grid.Row="5" Grid.Column="1" Text="{Binding CurrentRecipeResult.RecipeStepSetTime}" FontSize="15" Padding="10,2,0,0"/>
  128. <customControls:PathButton BorderThickness="0" PathData="{StaticResource Icon_Next}" Background="Transparent" DefaultFillBrush="Black" Foreground="White" Cursor="Hand" Grid.Row="6" Grid.Column="1" Command="{Binding EndStepCommand}" Margin="15,0,0,0" HorizontalAlignment="Left"/>
  129. <TextBlock Grid.Row="7" Grid.Column="1" FontSize="15" Padding="10,2,0,0" Background="#E9EDF4">
  130. <TextBlock.Text>
  131. <MultiBinding StringFormat="{}{0}/{1}">
  132. <Binding Path="CurrentRecipeResult.RecipeCurrentCounter"></Binding>
  133. <Binding Path="CurrentRecipeResult.RecipeAllCounters"></Binding>
  134. </MultiBinding>
  135. </TextBlock.Text>
  136. </TextBlock>
  137. </Grid>
  138. <Grid Width="280" Height="160" Canvas.Left="830" Canvas.Top="50" unity:GridOptions.LineBrush="#afb4db" unity:GridOptions.ShowBorder="True" Background="#E9EDF4">
  139. <Grid.RowDefinitions>
  140. <RowDefinition Height="30"/>
  141. <RowDefinition/>
  142. <RowDefinition/>
  143. <RowDefinition/>
  144. <RowDefinition/>
  145. <RowDefinition/>
  146. <RowDefinition/>
  147. <RowDefinition/>
  148. </Grid.RowDefinitions>
  149. <Grid.ColumnDefinitions>
  150. <ColumnDefinition Width="3*"/>
  151. <ColumnDefinition Width="2*"/>
  152. </Grid.ColumnDefinitions>
  153. <TextBlock Grid.Row="0" Text="PMC" Foreground="White" Grid.ColumnSpan="2" FontSize="20" Padding="120,2,0,0" Background="#376092"/>
  154. <TextBlock Grid.Row="1" Text="Recipe Name" FontSize="15" Padding="10,2,0,0" Background="#D0D8E8"/>
  155. <TextBlock Grid.Row="2" Text="Step Num/All" FontSize="15" Padding="10,2,0,0" Background="#D0D8E8"/>
  156. <TextBlock Grid.Row="3" Text="Step Type" FontSize="15" Padding="10,2,0,0" Background="#D0D8E8"/>
  157. <TextBlock Grid.Row="4" Text="Step Elpased Time" FontSize="15" Padding="10,2,0,0" Background="#D0D8E8"/>
  158. <TextBlock Grid.Row="5" Text="Step Time(s)" FontSize="15" Padding="10,2,0,0" Background="#D0D8E8"/>
  159. <TextBlock Grid.Row="6" Text="Next Step" FontSize="15" Padding="10,2,0,0" Background="#D0D8E8"/>
  160. <TextBlock Grid.Row="7" Text="Cycle Num/All" FontSize="15" Padding="10,2,0,0" Background="#D0D8E8"/>
  161. <TextBlock Grid.Row="1" Grid.Column="1" Text="{Binding CurrentRecipeResult.RecipeName}" FontSize="15" Padding="10,2,0,0" Background="#E9EDF4"/>
  162. <TextBlock Grid.Row="2" Grid.Column="1" FontSize="15" Padding="10,2,0,0" Background="#E9EDF4">
  163. <TextBlock.Text>
  164. <MultiBinding StringFormat="{}{0}/{1}">
  165. <Binding Path="CurrentRecipeResult.RecipeStepNumber"></Binding>
  166. <Binding Path="CurrentRecipeResult.RecipeStepCount"></Binding>
  167. </MultiBinding>
  168. </TextBlock.Text>
  169. </TextBlock>
  170. <TextBlock Grid.Row="3" Grid.Column="1" Text="{Binding CurrentRecipeResult.RecipeStepType}" FontSize="15" Padding="10,2,0,0"/>
  171. <TextBlock Grid.Row="4" Grid.Column="1" Text="{Binding CurrentRecipeResult.RecipeStepDuringTime, StringFormat=hh\\:mm\\:ss}" FontSize="15" Padding="10,2,0,0"/>
  172. <TextBlock Grid.Row="5" Grid.Column="1" Text="{Binding CurrentRecipeResult.RecipeStepSetTime}" FontSize="15" Padding="10,2,0,0"/>
  173. <customControls:PathButton BorderThickness="0" PathData="{StaticResource Icon_Next}" Background="Transparent" DefaultFillBrush="Black" Foreground="White" Cursor="Hand" Grid.Row="6" Grid.Column="1" Command="{Binding EndStepCommand}" Margin="15,0,0,0" HorizontalAlignment="Left"/>
  174. <TextBlock Grid.Row="7" Grid.Column="1" FontSize="15" Padding="10,2,0,0" Background="#E9EDF4">
  175. <TextBlock.Text>
  176. <MultiBinding StringFormat="{}{0}/{1}">
  177. <Binding Path="CurrentRecipeResult.RecipeCurrentCounter"></Binding>
  178. <Binding Path="CurrentRecipeResult.RecipeAllCounters"></Binding>
  179. </MultiBinding>
  180. </TextBlock.Text>
  181. </TextBlock>
  182. </Grid>
  183. <Grid Width="280" Height="160" Canvas.Left="830" Canvas.Top="250" unity:GridOptions.LineBrush="#afb4db" unity:GridOptions.ShowBorder="True" Background="#E9EDF4">
  184. <Grid.RowDefinitions>
  185. <RowDefinition Height="30"/>
  186. <RowDefinition/>
  187. <RowDefinition/>
  188. <RowDefinition/>
  189. <RowDefinition/>
  190. <RowDefinition/>
  191. <RowDefinition/>
  192. <RowDefinition/>
  193. </Grid.RowDefinitions>
  194. <Grid.ColumnDefinitions>
  195. <ColumnDefinition Width="3*"/>
  196. <ColumnDefinition Width="2*"/>
  197. </Grid.ColumnDefinitions>
  198. <TextBlock Grid.Row="0" Text="PMD" Foreground="White" Grid.ColumnSpan="2" FontSize="20" Padding="120,2,0,0" Background="#376092"/>
  199. <TextBlock Grid.Row="1" Text="Recipe Name" FontSize="15" Padding="10,2,0,0" Background="#D0D8E8"/>
  200. <TextBlock Grid.Row="2" Text="Step Num/All" FontSize="15" Padding="10,2,0,0" Background="#D0D8E8"/>
  201. <TextBlock Grid.Row="3" Text="Step Type" FontSize="15" Padding="10,2,0,0" Background="#D0D8E8"/>
  202. <TextBlock Grid.Row="4" Text="Step Elpased Time" FontSize="15" Padding="10,2,0,0" Background="#D0D8E8"/>
  203. <TextBlock Grid.Row="5" Text="Step Time(s)" FontSize="15" Padding="10,2,0,0" Background="#D0D8E8"/>
  204. <TextBlock Grid.Row="6" Text="Next Step" FontSize="15" Padding="10,2,0,0" Background="#D0D8E8"/>
  205. <TextBlock Grid.Row="7" Text="Cycle Num/All" FontSize="15" Padding="10,2,0,0" Background="#D0D8E8"/>
  206. <TextBlock Grid.Row="1" Grid.Column="1" Text="{Binding CurrentRecipeResult.RecipeName}" FontSize="15" Padding="10,2,0,0" Background="#E9EDF4"/>
  207. <TextBlock Grid.Row="2" Grid.Column="1" FontSize="15" Padding="10,2,0,0" Background="#E9EDF4">
  208. <TextBlock.Text>
  209. <MultiBinding StringFormat="{}{0}/{1}">
  210. <Binding Path="CurrentRecipeResult.RecipeStepNumber"></Binding>
  211. <Binding Path="CurrentRecipeResult.RecipeStepCount"></Binding>
  212. </MultiBinding>
  213. </TextBlock.Text>
  214. </TextBlock>
  215. <TextBlock Grid.Row="3" Grid.Column="1" Text="{Binding CurrentRecipeResult.RecipeStepType}" FontSize="15" Padding="10,2,0,0"/>
  216. <TextBlock Grid.Row="4" Grid.Column="1" Text="{Binding CurrentRecipeResult.RecipeStepDuringTime, StringFormat=hh\\:mm\\:ss}" FontSize="15" Padding="10,2,0,0"/>
  217. <TextBlock Grid.Row="5" Grid.Column="1" Text="{Binding CurrentRecipeResult.RecipeStepSetTime}" FontSize="15" Padding="10,2,0,0"/>
  218. <customControls:PathButton BorderThickness="0" PathData="{StaticResource Icon_Next}" Background="Transparent" DefaultFillBrush="Black" Foreground="White" Cursor="Hand" Grid.Row="6" Grid.Column="1" Command="{Binding EndStepCommand}" Margin="15,0,0,0" HorizontalAlignment="Left"/>
  219. <TextBlock Grid.Row="7" Grid.Column="1" FontSize="15" Padding="10,2,0,0" Background="#E9EDF4">
  220. <TextBlock.Text>
  221. <MultiBinding StringFormat="{}{0}/{1}">
  222. <Binding Path="CurrentRecipeResult.RecipeCurrentCounter"></Binding>
  223. <Binding Path="CurrentRecipeResult.RecipeAllCounters"></Binding>
  224. </MultiBinding>
  225. </TextBlock.Text>
  226. </TextBlock>
  227. </Grid>
  228. <userControls:EFEMFrontView UnitData="{Binding EFEMModuleInfo}" Title="Efem Robot" Canvas.Top="460" Canvas.Left="140"/>
  229. <userControls:EFEMFrontView UnitData="{Binding TMModuleInfo}" Title="TM Robot" Canvas.Top="460" Canvas.Left="820"/>
  230. <Canvas Canvas.Left="300" Canvas.Top="-40">
  231. <RadioButton Content="Carrier" Name="CarrierRadioButton" Canvas.Left="900" Canvas.Top="106" Width="60" Height="33" Style="{StaticResource Button_RadioButton}" IsChecked="True" />
  232. <RadioButton Content="LP1" Name="JobRadioButton1" Canvas.Left="961" Canvas.Top="106" Width="60" Height="33" Style="{StaticResource Button_RadioButton}" IsChecked="False" />
  233. <RadioButton Content="LP2" Name="JobRadioButton2" Canvas.Left="1022" Canvas.Top="106" Width="60" Height="33" Style="{StaticResource Button_RadioButton}" IsChecked="False" />
  234. <RadioButton Content="LP3" Name="JobRadioButton3" Canvas.Left="1083" Canvas.Top="106" Width="60" Height="33" Style="{StaticResource Button_RadioButton}" IsChecked="False" />
  235. <TabPanel Canvas.Left="900" Canvas.Top="140" Visibility="{Binding ElementName=CarrierRadioButton,Path=IsChecked,Converter={StaticResource boolToVisibility2}}">
  236. <StackPanel Orientation="Horizontal" >
  237. <StackPanel>
  238. <TextBox Background="{DynamicResource Table_BG_Title}" Text="LP1" Width="Auto" Height="30" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" IsReadOnly="True"/>
  239. <ctrls:FOUPFrontView UnitData="{Binding LP1ModuleInfo}" ShowTitle="False" />
  240. <TextBlock HorizontalAlignment="Center" Margin="0,5,0,0" FontSize="15">
  241. <TextBlock.Text>
  242. <MultiBinding StringFormat="{}Wafer Count:{0}">
  243. <Binding Path="LP1WaferCount"></Binding>
  244. </MultiBinding>
  245. </TextBlock.Text>
  246. </TextBlock>
  247. <StackPanel Orientation="Horizontal">
  248. <customControls:PathButton Content="Load" HorizontalAlignment="Center" Margin="0,5,0,0" Width="80" Height="30" Command="{Binding LoadWaferCommand}" CommandParameter="LP1"/>
  249. <customControls:PathButton Content="UnLoad" HorizontalAlignment="Center" Margin="0,5,0,0" Width="80" Height="30" Command="{Binding UnLoadWaferCommand}" CommandParameter="LP1"/>
  250. </StackPanel>
  251. </StackPanel>
  252. <StackPanel>
  253. <TextBox Background="{DynamicResource Table_BG_Title}" Text="LP2" Width="Auto" Height="30" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" IsReadOnly="True"/>
  254. <ctrls:FOUPFrontView UnitData="{Binding LP2ModuleInfo}" ShowTitle="False" />
  255. <TextBlock HorizontalAlignment="Center" Margin="0,5,0,0" FontSize="15">
  256. <TextBlock.Text>
  257. <MultiBinding StringFormat="{}Wafer Count:{0}">
  258. <Binding Path="LP2WaferCount"></Binding>
  259. </MultiBinding>
  260. </TextBlock.Text>
  261. </TextBlock>
  262. <StackPanel Orientation="Horizontal">
  263. <customControls:PathButton Content="Load" HorizontalAlignment="Center" Margin="0,5,0,0" Width="80" Height="30" Command="{Binding LoadWaferCommand}" CommandParameter="LP2"/>
  264. <customControls:PathButton Content="UnLoad" HorizontalAlignment="Center" Margin="0,5,0,0" Width="80" Height="30" Command="{Binding UnLoadWaferCommand}" CommandParameter="LP2"/>
  265. </StackPanel>
  266. </StackPanel>
  267. <StackPanel>
  268. <TextBox Background="{DynamicResource Table_BG_Title}" Text="LP3" Width="Auto" Height="30" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" IsReadOnly="True"/>
  269. <ctrls:FOUPFrontView UnitData="{Binding LP3ModuleInfo}" ShowTitle="False"/>
  270. <TextBlock HorizontalAlignment="Center" Margin="0,5,0,0" FontSize="15">
  271. <TextBlock.Text>
  272. <MultiBinding StringFormat="{}Wafer Count:{0}">
  273. <Binding Path="LP3WaferCount"></Binding>
  274. </MultiBinding>
  275. </TextBlock.Text>
  276. </TextBlock>
  277. <StackPanel Orientation="Horizontal">
  278. <customControls:PathButton Content="Load" HorizontalAlignment="Center" Margin="0,5,0,0" Width="80" Height="30" Command="{Binding LoadWaferCommand}" CommandParameter="LP3"/>
  279. <customControls:PathButton Content="UnLoad" HorizontalAlignment="Center" Margin="0,5,0,0" Width="80" Height="30" Command="{Binding UnLoadWaferCommand}" CommandParameter="LP3"/>
  280. </StackPanel>
  281. </StackPanel>
  282. </StackPanel>
  283. </TabPanel>
  284. <TabPanel Canvas.Left="900" Canvas.Top="140" Visibility="{Binding ElementName=JobRadioButton1,Path=IsChecked,Converter={StaticResource boolToVisibility2}}" >
  285. <local:WaferAssociationUnit WAInfo="{Binding LP1WaferAssociation}" />
  286. </TabPanel>
  287. <TabPanel Canvas.Left="900" Canvas.Top="140" Visibility="{Binding ElementName=JobRadioButton2,Path=IsChecked,Converter={StaticResource boolToVisibility2}}" >
  288. <local:WaferAssociationUnit WAInfo="{Binding LP2WaferAssociation}"/>
  289. </TabPanel>
  290. <TabPanel Canvas.Left="900" Canvas.Top="140" Visibility="{Binding ElementName=JobRadioButton3,Path=IsChecked,Converter={StaticResource boolToVisibility2}}" >
  291. <local:WaferAssociationUnit WAInfo="{Binding LP1WaferAssociation}"/>
  292. </TabPanel>
  293. </Canvas>
  294. <Grid Canvas.Left="1700" Canvas.Top="140" Width="200" Background="White" Margin="10,-1,0,-1">
  295. <Grid.RowDefinitions>
  296. <RowDefinition Height="30"/>
  297. <RowDefinition Height="Auto"/>
  298. <RowDefinition Height="30"/>
  299. <RowDefinition Height="Auto" />
  300. <RowDefinition Height="30"/>
  301. <RowDefinition />
  302. </Grid.RowDefinitions>
  303. <Border Grid.Row="0" BorderBrush="{DynamicResource MainFrame_BD}" BorderThickness="1" Background="{DynamicResource MainFrame_BG_Title}" Padding="5,1">
  304. <StackPanel Orientation="Horizontal" HorizontalAlignment="Left" VerticalAlignment="Center">
  305. <Path Data="M0,0 L5,0 5,5 z" Fill="Black" HorizontalAlignment="Left" Grid.Row="1" RenderTransformOrigin="0.5,0.5" Stretch="Fill" Width="5" Height="5">
  306. <Path.RenderTransform>
  307. <TransformGroup>
  308. <ScaleTransform/>
  309. <SkewTransform/>
  310. <RotateTransform Angle="45"/>
  311. <TranslateTransform/>
  312. </TransformGroup>
  313. </Path.RenderTransform>
  314. </Path>
  315. <TextBlock Margin="5,0,0,0" Text="Wafer Status" FontFamily="Arial" FontSize="14" Foreground="{DynamicResource FG_Black}" HorizontalAlignment="Left" VerticalAlignment="Center"/>
  316. </StackPanel>
  317. </Border>
  318. <Border Grid.Row="1" BorderBrush="{DynamicResource MainFrame_BD}" BorderThickness="1,0,1,1" Padding="5,1">
  319. <StackPanel HorizontalAlignment="Center" VerticalAlignment="Top" Margin="0,5">
  320. <Grid Width="180" Height="20" HorizontalAlignment="Left">
  321. <Grid.ColumnDefinitions>
  322. <ColumnDefinition Width="40"/>
  323. <ColumnDefinition />
  324. </Grid.ColumnDefinitions>
  325. <Rectangle Fill="Gold" Stroke="Black" StrokeThickness="1"/>
  326. <TextBlock Text="Idle / Unselected" Grid.Column="1" Margin="10,0,0,0" Foreground="{DynamicResource FG_Black}" FontSize="14" FontFamily="Arial" VerticalAlignment="Center"/>
  327. </Grid>
  328. <Grid Width="180" Height="20" Margin="0,5,0,0" HorizontalAlignment="Left">
  329. <Grid.ColumnDefinitions>
  330. <ColumnDefinition Width="40"/>
  331. <ColumnDefinition Width="6*" />
  332. <ColumnDefinition Width="29*"/>
  333. </Grid.ColumnDefinitions>
  334. <Rectangle Fill="Blue" Stroke="Black" StrokeThickness="1"/>
  335. <TextBlock Text="Idle / Job Selected" Grid.Column="1" Margin="10,2,0,1" Foreground="{DynamicResource FG_Black}" FontSize="14" FontFamily="Arial" VerticalAlignment="Center" Grid.ColumnSpan="2"/>
  336. </Grid>
  337. <Grid Width="180" Height="20" Margin="0,5,0,0" HorizontalAlignment="Left">
  338. <Grid.ColumnDefinitions>
  339. <ColumnDefinition Width="40"/>
  340. <ColumnDefinition />
  341. </Grid.ColumnDefinitions>
  342. <Rectangle Fill="Cyan" Stroke="Black" StrokeThickness="1"/>
  343. <TextBlock Text="In Process" Grid.Column="1" Margin="10,0,0,0" Foreground="{DynamicResource FG_Black}" FontSize="14" FontFamily="Arial" VerticalAlignment="Center"/>
  344. </Grid>
  345. <Grid Width="180" Height="20" Margin="0,5,0,0" HorizontalAlignment="Left">
  346. <Grid.ColumnDefinitions>
  347. <ColumnDefinition Width="40"/>
  348. <ColumnDefinition />
  349. </Grid.ColumnDefinitions>
  350. <Rectangle Fill="LimeGreen" Stroke="Black" StrokeThickness="1"/>
  351. <TextBlock Text="Process Complete" Grid.Column="1" Margin="10,0,0,0" Foreground="{DynamicResource FG_Black}" FontSize="14" FontFamily="Arial" VerticalAlignment="Center"/>
  352. </Grid>
  353. <Grid Width="180" Height="20" Margin="0,5,0,0" HorizontalAlignment="Left">
  354. <Grid.ColumnDefinitions>
  355. <ColumnDefinition Width="40"/>
  356. <ColumnDefinition />
  357. </Grid.ColumnDefinitions>
  358. <Rectangle Fill="Red" Stroke="Black" StrokeThickness="1"/>
  359. <TextBlock Text="Error" Grid.Column="1" Margin="10,0,0,0" Foreground="{DynamicResource FG_Black}" FontSize="14" FontFamily="Arial" VerticalAlignment="Center"/>
  360. </Grid>
  361. </StackPanel>
  362. </Border>
  363. <Border Grid.Row="2" BorderBrush="{DynamicResource MainFrame_BD}" BorderThickness="1,0,1,1" Background="{DynamicResource MainFrame_BG_Title}" Padding="5,1">
  364. </Border>
  365. <Border Grid.Row="3" BorderBrush="{DynamicResource MainFrame_BD}" BorderThickness="1,0,1,1" Padding="5,1">
  366. <StackPanel HorizontalAlignment="Center" VerticalAlignment="Top" Margin="0,8">
  367. <Grid>
  368. <Grid.ColumnDefinitions>
  369. <ColumnDefinition Width="0"/>
  370. <ColumnDefinition />
  371. </Grid.ColumnDefinitions>
  372. <deviceControl:AITSensor Margin="-30,0,5,0" GreenColor="True" LightOnValue="{Binding IsRtInitialized}"></deviceControl:AITSensor>
  373. <Button Grid.Column="1" Content="Init" Width="120" Height="25" Command="{Binding HomeAllCommand}">
  374. </Button>
  375. </Grid>
  376. <Grid Margin="0,8,0,0">
  377. <Grid.ColumnDefinitions>
  378. <ColumnDefinition Width="0"/>
  379. <ColumnDefinition />
  380. </Grid.ColumnDefinitions>
  381. <Button Grid.Column="1" Content="Abort" Width="120" Height="25" Command="{Binding AbortAllCommand}">
  382. </Button>
  383. </Grid>
  384. <Grid Margin="0,8,0,0">
  385. <Grid.ColumnDefinitions>
  386. <ColumnDefinition Width="0"/>
  387. <ColumnDefinition />
  388. </Grid.ColumnDefinitions>
  389. <Button Grid.Column="1" Content="All Abort" Width="120" Height="25" IsEnabled="{Binding IsPauseAllEnable}" Command="{Binding PauseAllJobCommand}">
  390. </Button>
  391. </Grid>
  392. <Grid Margin="0,8,0,0" Visibility="Collapsed">
  393. <Grid.ColumnDefinitions>
  394. <ColumnDefinition Width="0"/>
  395. <ColumnDefinition />
  396. </Grid.ColumnDefinitions>
  397. <Button Grid.Column="1" Content="晶圆返回" Width="120" Height="25" Command="{Binding ReturnAllWaferCommand}">
  398. </Button>
  399. </Grid>
  400. </StackPanel>
  401. </Border>
  402. <Border Grid.Row="4" BorderBrush="{DynamicResource MainFrame_BD}" BorderThickness="1,0,1,1" Background="{DynamicResource MainFrame_BG_Title}" Padding="5,1">
  403. </Border>
  404. <Border Grid.Row="5" BorderBrush="{DynamicResource MainFrame_BD}" BorderThickness="1,0,1,1" Padding="5,1">
  405. <StackPanel HorizontalAlignment="Center" VerticalAlignment="Top" Margin="0,5">
  406. <Button IsEnabled="{Binding RtDataValues[System.IsAutoMode]}" Margin ="5" Content="Auto" Width="80" Height="25" Command="{Binding EnableAutoCommand}">
  407. </Button>
  408. <Button IsEnabled="{Binding RtDataValues[System.IsAutoMode],Converter={StaticResource BoolToBool}}" Margin ="5" Content="Manusl" Width="80" Height="25" Command="{Binding EnableManualCommand}">
  409. </Button>
  410. <Grid x:Name="Cycle_Info" Visibility="{Binding IsCycleInfoVisibility}" Margin="0,10,0,0">
  411. <Grid.ColumnDefinitions>
  412. <ColumnDefinition Width="110"/>
  413. <ColumnDefinition Width="70"/>
  414. </Grid.ColumnDefinitions>
  415. <Grid.RowDefinitions>
  416. <RowDefinition Height="25"/>
  417. <RowDefinition Height="24"/>
  418. <RowDefinition Height="24"/>
  419. </Grid.RowDefinitions>
  420. <TextBlock Grid.ColumnSpan="2" Text="Cycle Information" FontFamily="Arial" FontSize="14" Foreground="{DynamicResource FG_Black}" HorizontalAlignment="Center" VerticalAlignment="Center" Margin="0,0,0,3"/>
  421. <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="1" Background="{DynamicResource Table_BG_Title}" Grid.Row="1" Padding="5,1">
  422. <TextBlock Text="Wafer Count" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="14" FontFamily="Arial" VerticalAlignment="Center"/>
  423. </Border>
  424. <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="0,1,1,1" Background="{DynamicResource Table_BG_Content}" Grid.Row="1" Grid.Column="1" Padding="5,1">
  425. <TextBlock Text="{Binding CycledWafer}" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="14" FontFamily="Arial" VerticalAlignment="Center"/>
  426. </Border>
  427. <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="1,0,1,1" Background="{DynamicResource Table_BG_Title}" Grid.Row="2" Padding="5,1">
  428. <TextBlock Text="Cycle Count" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="14" FontFamily="Arial" VerticalAlignment="Center"/>
  429. </Border>
  430. <Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="0,0,1,1" Background="{DynamicResource Table_BG_Content}" Grid.Row="2" Grid.Column="1" Padding="5,1">
  431. <TextBlock Text="{Binding CycleCountDisplay}" TextWrapping="Wrap" Foreground="{DynamicResource FG_Black}" FontSize="14" FontFamily="Arial" VerticalAlignment="Center"/>
  432. </Border>
  433. </Grid>
  434. <TextBlock Grid.ColumnSpan="2" Text="ATM Mode ON" FontFamily="Arial" FontSize="14" Foreground="{DynamicResource FG_Black}" HorizontalAlignment="Center" VerticalAlignment="Center" Margin="0,20,0,0" Visibility="{Binding IsATMInfoVisibility}"/>
  435. </StackPanel>
  436. </Border>
  437. </Grid>
  438. </Canvas>
  439. </UserControl>