HzOverviewView.xaml 61 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674
  1. <UserControl x:Class="Aitex.Triton160.UI.Views.Hz.HzOverviewView"
  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:core="clr-namespace:Aitex.Core.UI.Control;assembly=Core"
  7. xmlns:cvt="clr-namespace:Aitex.Core.UI.Converters;assembly=Core"
  8. xmlns:converters="clr-namespace:Aitex.Triton160.UI.Converter"
  9. xmlns:deviceControl="clr-namespace:Aitex.Core.UI.DeviceControl;assembly=Core"
  10. xmlns:views="clr-namespace:Aitex.Triton160.UI.Views"
  11. mc:Ignorable="d"
  12. Height="800" Width="1920" Background="#669ACC">
  13. <UserControl.Resources>
  14. <cvt:bool2VisibilityConverter x:Key="bool2VisibilityConvert"/>
  15. <converters:RFIsOnToColorConverter x:Key="RFIsOnToColorConverter"/>
  16. <Style TargetType="{x:Type ListBox}" x:Key="MenuListStyle">
  17. <!--<Setter Property="BorderBrush" Value="Black"/>-->
  18. <Setter Property="Template">
  19. <Setter.Value>
  20. <ControlTemplate>
  21. <Border>
  22. <ItemsPresenter></ItemsPresenter>
  23. </Border>
  24. </ControlTemplate>
  25. </Setter.Value>
  26. </Setter>
  27. </Style>
  28. <Style TargetType="{x:Type ListBoxItem}">
  29. <Setter Property="Template">
  30. <Setter.Value>
  31. <ControlTemplate TargetType="ListBoxItem">
  32. <Border Background="{TemplateBinding Background}" Margin="5,0,0,4">
  33. <ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
  34. VerticalAlignment="Top"
  35. TextBlock.Foreground="Black"
  36. TextBlock.TextAlignment="Center"
  37. />
  38. </Border>
  39. </ControlTemplate>
  40. </Setter.Value>
  41. </Setter>
  42. </Style>
  43. </UserControl.Resources>
  44. <Grid x:Name="grid">
  45. <Grid.Resources>
  46. <BorderGapMaskConverter x:Key="BorderGapMaskConverter"/>
  47. <Style TargetType="{x:Type GroupBox}">
  48. <Setter Property="BorderBrush" Value="#D5DFE5" />
  49. <Setter Property="BorderThickness" Value="1" />
  50. <Setter Property="Template">
  51. <Setter.Value>
  52. <ControlTemplate TargetType="{x:Type GroupBox}">
  53. <Grid SnapsToDevicePixels="true">
  54. <Grid.ColumnDefinitions>
  55. <ColumnDefinition Width="6" />
  56. <ColumnDefinition Width="Auto" />
  57. <ColumnDefinition Width="*" />
  58. <ColumnDefinition Width="6" />
  59. </Grid.ColumnDefinitions>
  60. <Grid.RowDefinitions>
  61. <RowDefinition Height="Auto" />
  62. <RowDefinition Height="Auto" />
  63. <RowDefinition Height="*" />
  64. <RowDefinition Height="6" />
  65. </Grid.RowDefinitions>
  66. <Border CornerRadius="4" Grid.Row="1" Grid.RowSpan="3" Grid.Column="0" Grid.ColumnSpan="4" BorderThickness="{TemplateBinding BorderThickness}" BorderBrush="Transparent" Background="{TemplateBinding Background}" />
  67. <Border Name="Header" Padding="3,1,3,0" Grid.Row="0" Grid.RowSpan="2" Grid.Column="1">
  68. <ContentPresenter ContentSource="Header" RecognizesAccessKey="true" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
  69. </Border>
  70. <ContentPresenter Grid.Row="2" Grid.Column="1" Grid.ColumnSpan="2" Margin="{TemplateBinding Padding}" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" />
  71. <Border Grid.Row="1" Grid.RowSpan="3" Grid.ColumnSpan="4" BorderThickness="{TemplateBinding BorderThickness}" BorderBrush="{TemplateBinding BorderBrush}" CornerRadius="3">
  72. <Border.OpacityMask>
  73. <MultiBinding Converter="{StaticResource BorderGapMaskConverter}" ConverterParameter="7">
  74. <Binding ElementName="Header" Path="ActualWidth" />
  75. <Binding Path="ActualWidth" RelativeSource="{RelativeSource Self}" />
  76. <Binding Path="ActualHeight" RelativeSource="{RelativeSource Self}" />
  77. </MultiBinding>
  78. </Border.OpacityMask>
  79. </Border>
  80. </Grid>
  81. </ControlTemplate>
  82. </Setter.Value>
  83. </Setter>
  84. </Style>
  85. </Grid.Resources>
  86. <Grid.ColumnDefinitions>
  87. <ColumnDefinition Width="890*" />
  88. <ColumnDefinition Width="420" />
  89. <ColumnDefinition Width="1"/>
  90. <ColumnDefinition Width="300"/>
  91. </Grid.ColumnDefinitions>
  92. <Canvas x:Name="canvasGraphicDevice" IsEnabled="{Binding EnableDeviceControl}" Grid.Column="0" Margin="10,0,0,0" >
  93. <!--<Button Canvas.Left="830" Canvas.Top="675" Visibility="{Binding Path=EnableWaterFlowAlarm, Converter={StaticResource bool2VisibilityConvert}}" Content="{DynamicResource ResetWaterFlowAlarm}" Margin="0,10,0,5" Command="{Binding InvokeCommand}" CommandParameter="ResetWaterFlowAlarm" FontSize="17" Width="190"/>
  94. <Button Canvas.Left="830" Canvas.Top="685" Visibility="{Binding Path=DisenableWaterFlowAlarm, Converter={StaticResource bool2VisibilityConvert}}" Content="{DynamicResource SetWaterFlowAlarm}" Margin="0" Command="{Binding InvokeCommand}" CommandParameter="SetWaterFlowAlarm" FontSize="17" Width="190" />-->
  95. <Grid Canvas.Left="430" Canvas.Top="5" Margin="0" >
  96. <Grid.RowDefinitions>
  97. <RowDefinition Height="35"/>
  98. <RowDefinition Height="{Binding LotBarcodeHeight}" />
  99. <RowDefinition Height="{Binding DataLogHeight}" />
  100. <RowDefinition Height="35"/>
  101. </Grid.RowDefinitions>
  102. <Grid.ColumnDefinitions>
  103. <ColumnDefinition Width="*" />
  104. <ColumnDefinition Width="150" />
  105. <ColumnDefinition Width="230" />
  106. <ColumnDefinition Width="*" />
  107. </Grid.ColumnDefinitions>
  108. <!--<Rectangle Grid.Row="0" Grid.Column="1" Fill="#376092" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  109. <TextBlock Grid.Row="0" Grid.Column="1" FontSize="17" Text="{DynamicResource GlobalLableLot}" Foreground="White" />
  110. <Rectangle Grid.Row="0" Grid.Column="2" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  111. <deviceControl:AITBarcodeTextBox BarcodeInputChangedCommand="{Binding LotBarcodeInputChangedCommand}" Grid.Row="0" Grid.Column="2" FontSize="17" Foreground="White" BarcodeLength="{Binding LotBarcodeLength}" MaxScanCount="{Binding LotBarcodeMaxCount}" BarcodeText="{Binding LotBarcodeInputText, Mode=TwoWay}" IsEnabled="{Binding IsEnableLotScan}" />
  112. <Rectangle Grid.Row="1" Grid.Column="1" Fill="#376092" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  113. <TextBlock Grid.Row="1" Grid.Column="1" FontSize="17" Text="{DynamicResource GlobalLableLotId}" Foreground="White" />
  114. <Rectangle Grid.Row="1" Grid.Column="2" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  115. <TextBlock Grid.Row="1" Grid.Column="2" FontSize="13" Text="{Binding LotName}" Foreground="White" />
  116. <Rectangle Grid.Row="2" Grid.Column="1" Fill="#376092" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  117. <TextBlock Grid.Row="2" Grid.Column="1" FontSize="17" Text="{DynamicResource GlobalLableTotalCycle}" Foreground="White" />
  118. <Rectangle Grid.Row="2" Grid.Column="2" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  119. <TextBlock Grid.Row="2" Grid.Column="2" FontSize="13" Text="{Binding TotalCycle}" Foreground="White" />-->
  120. <Rectangle Grid.Row="0" Grid.Column="1" Fill="#376092" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  121. <TextBlock Grid.Row="0" Grid.Column="1" FontSize="17" Text="{DynamicResource GlobalOperator}" Foreground="White" />
  122. <Rectangle Grid.Row="0" Grid.Column="2" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  123. <deviceControl:AITBarcodeTextBox BarcodeInputChangedCommand="{Binding OperatorInputChangedCommand}" Grid.Row="0" Grid.Column="2" FontSize="17" Foreground="White" BarcodeText="{Binding OperatorInputText, Mode=TwoWay}" IsEnabled="{Binding IsEnableLotScan}" >
  124. </deviceControl:AITBarcodeTextBox>
  125. <Rectangle Grid.Row="1" Grid.Column="1" Fill="#376092" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  126. <TextBlock Grid.Row="1" Grid.Column="1" FontSize="17" Text="{DynamicResource GlobalLableLot}" Foreground="White" />
  127. <Rectangle Grid.Row="1" Grid.Column="2" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  128. <deviceControl:AITBarcodeTextBox Name="BarcodeTextBox" BarcodeInputChangedCommand="{Binding LotBarcodeInputChangedCommand}" Grid.Row="1" Grid.Column="2" FontSize="17" Foreground="White" BarcodeLength="{Binding LotBarcodeLength}" MaxScanCount="{Binding LotBarcodeMaxCount}" BarcodeText="{Binding LotBarcodeInputText, Mode=TwoWay}" IsEnabled="{Binding IsEnableLotScan}" >
  129. </deviceControl:AITBarcodeTextBox>
  130. <Button Name="GetRecipeButton" Grid.Row="0" Height="93" Width="120" Grid.Column="3" IsEnabled="{Binding IsEnableLotScan,UpdateSourceTrigger=PropertyChanged}" Margin="5" Content="{DynamicResource GlobalLableButtonGetRecipe}" Command="{Binding GetRecipeByMESCommand}" FontSize="20" Grid.RowSpan="4" />
  131. <Rectangle Grid.Row="2" Grid.Column="1" Fill="#376092" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  132. <TextBlock Grid.Row="2" Grid.Column="1" FontSize="17" Text="{DynamicResource GlobalLableLotId}" Foreground="White" />
  133. <Rectangle Grid.Row="2" Grid.Column="2" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  134. <TextBlock Grid.Row="2" Grid.Column="2" FontSize="13" Text="{Binding LotName}" Foreground="White" />
  135. <Rectangle Grid.Row="3" Grid.Column="1" Fill="#376092" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  136. <TextBlock Grid.Row="3" Grid.Column="1" FontSize="17" Text="{DynamicResource GlobalLableTotalCycle}" Foreground="White" />
  137. <Rectangle Grid.Row="3" Grid.Column="2" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  138. <TextBlock Grid.Row="3" Grid.Column="2" FontSize="13" Text="{Binding TotalCycle}" Foreground="White" />
  139. </Grid>
  140. <Rectangle Width="6" Height="35" Canvas.Left="707" Canvas.Top="224" Fill="Gray" />
  141. <Image Width="771" Height="596" Source="/Triton160UI;component/Resources/overviewbakHZv2.png" Canvas.Left="48" Canvas.Top="161" />
  142. <Image Width="290" Height="190" Visibility="{Binding RfPowerOnChamberVisibility}" Source="/Triton160UI;component/Resources/chamberplasmaon.png" Canvas.Left="528" Canvas.Top="247" />
  143. <!--<Image Width="771" Height="596" Source="/Triton160UI;component/Resources/overviewbak_heater.png" Canvas.Left="47" Canvas.Top="161" />-->
  144. <TextBlock Canvas.Left="48" Canvas.Top="180" Text="N2" />
  145. <!--<TextBlock Canvas.Left="268" Canvas.Top="200" Text="{Binding GP1Mfc.DisplayName}" />
  146. <TextBlock Canvas.Left="332" Canvas.Top="200" Text="{Binding GP2Mfc.DisplayName}" />-->
  147. <TextBlock Visibility="Hidden" Canvas.Left="539" Canvas.Top="137" Text="{DynamicResource GlobalLableInlet}" />
  148. <TextBlock Visibility="Hidden" Canvas.Left="599" Canvas.Top="137" Text="{DynamicResource GlobalLableOutlet}" />
  149. <TextBlock Canvas.Left="760" Canvas.Top="138" Text="{DynamicResource GlobalLableVent}" />
  150. <!--<TextBlock Canvas.Left="572" Canvas.Top="271" Text="{Binding Barcode6}" FontSize="15" Width="207" TextAlignment="Center" />
  151. <TextBlock Canvas.Left="572" Canvas.Top="294" Text="{Binding Barcode5}" FontSize="15" Width="207" TextAlignment="Center" />
  152. <TextBlock Canvas.Left="572" Canvas.Top="319" Text="{Binding Barcode4}" FontSize="15" Width="207" TextAlignment="Center" />
  153. <TextBlock Canvas.Left="572" Canvas.Top="340" Text="{Binding Barcode3}" FontSize="15" Width="207" TextAlignment="Center" />
  154. <TextBlock Canvas.Left="572" Canvas.Top="362" Text="{Binding Barcode2}" FontSize="15" Width="207" TextAlignment="Center" />
  155. <TextBlock Canvas.Left="572" Canvas.Top="383" Text="{Binding Barcode1}" FontSize="15" Width="207" TextAlignment="Center" />-->
  156. <ScrollViewer Canvas.Left="560" Canvas.Top="270" VerticalScrollBarVisibility="Auto" Height="150">
  157. <ListBox FontSize="16" ItemsSource="{Binding Barcodes}" Width="250" HorizontalAlignment="Left" VerticalAlignment="Top" Style="{StaticResource MenuListStyle}"/>
  158. </ScrollViewer>
  159. <views:GasPanelView Command="{Binding DeviceOperationCommand}" Canvas.Left="125" Canvas.Top="181"
  160. Gas1MFC="{Binding GP1Mfc}" Gas1Visible="{Binding GP1Visible}" Gas1Valve="{Binding GP1Valve}"
  161. Gas2MFC="{Binding GP2Mfc}" Gas2Visible="{Binding GP2Visible}" Gas2Valve="{Binding GP2Valve}"
  162. Gas3MFC="{Binding GP3Mfc}" Gas3Visible="{Binding GP3Visible}" Gas3Valve="{Binding GP3Valve}"
  163. Gas4MFC="{Binding GP4Mfc}" Gas4Visible="{Binding GP4Visible}" Gas4Valve="{Binding GP4Valve}"
  164. Gas5MFC="{Binding GP5Mfc}" Gas5Visible="{Binding GP5Visible}" Gas5Valve="{Binding GP5Valve}"/>
  165. <!-- Flow Pipe Lines-->
  166. <!--<core:FlowPipeV2 Width="162" Height="8" IsFlowing="{Binding GP1Valve.Feedback}" Canvas.Left="284" Canvas.Top="221">
  167. <core:FlowPipeV2.RenderTransform>
  168. <RotateTransform Angle="90"></RotateTransform>
  169. </core:FlowPipeV2.RenderTransform>
  170. </core:FlowPipeV2>-->
  171. <core:FlowPipeV2 Width="265" Height="8" IsFlowing="{Binding GP1Valve.Feedback}" Visibility="{Binding Path=GP1Valve.Feedback, Converter={StaticResource bool2VisibilityConvert}}" Canvas.Left="158" Canvas.Top="380">
  172. </core:FlowPipeV2>
  173. <!--<core:FlowPipeV2 Width="162" Height="8" IsFlowing="{Binding GP2Valve.Feedback}" Canvas.Left="348" Canvas.Top="221">
  174. <core:FlowPipeV2.RenderTransform>
  175. <RotateTransform Angle="90"></RotateTransform>
  176. </core:FlowPipeV2.RenderTransform>
  177. </core:FlowPipeV2>-->
  178. <core:FlowPipeV2 Width="210" Height="8" IsFlowing="{Binding GP2Valve.Feedback}" Visibility="{Binding Path=GP2Valve.Feedback, Converter={StaticResource bool2VisibilityConvert}}" Canvas.Left="214" Canvas.Top="380">
  179. </core:FlowPipeV2>
  180. <core:FlowPipeV2 Width="145" Height="8" IsFlowing="{Binding GP3Valve.Feedback}" Visibility="{Binding Path=GP3Valve.Feedback, Converter={StaticResource bool2VisibilityConvert}}" Canvas.Left="279" Canvas.Top="380">
  181. </core:FlowPipeV2>
  182. <core:FlowPipeV2 Width="82" Height="8" IsFlowing="{Binding GP4Valve.Feedback}" Visibility="{Binding Path=GP4Valve.Feedback, Converter={StaticResource bool2VisibilityConvert}}" Canvas.Left="342" Canvas.Top="380">
  183. </core:FlowPipeV2>
  184. <!--<core:FlowPipeV2 Width="162" Height="8" IsFlowing="{Binding GP3Valve.Feedback}" Canvas.Left="282" Canvas.Top="221">
  185. <core:FlowPipeV2.RenderTransform>
  186. <RotateTransform Angle="90"></RotateTransform>
  187. </core:FlowPipeV2.RenderTransform>
  188. </core:FlowPipeV2>-->
  189. <!--<core:FlowPipeV2 Width="145" Height="8" IsFlowing="{Binding GP3Valve.Feedback}" Visibility="{Binding Path=GP3Valve.Feedback, Converter={StaticResource bool2VisibilityConvert}}" Canvas.Left="276" Canvas.Top="380">
  190. </core:FlowPipeV2>-->
  191. <!--<core:FlowPipeV2 Width="162" Height="8" IsFlowing="{Binding GP4Valve.Feedback}" Canvas.Left="346" Canvas.Top="221">
  192. <core:FlowPipeV2.RenderTransform>
  193. <RotateTransform Angle="90"></RotateTransform>
  194. </core:FlowPipeV2.RenderTransform>
  195. </core:FlowPipeV2>-->
  196. <!--<core:FlowPipeV2 Width="85" Height="8" IsFlowing="{Binding GP4Valve.Feedback}" Visibility="{Binding Path=GP4Valve.Feedback, Converter={StaticResource bool2VisibilityConvert}}" Canvas.Left="340" Canvas.Top="380">
  197. </core:FlowPipeV2>
  198. <core:FlowPipeV2 Width="22" Height="8" IsFlowing="{Binding GP5Valve.Feedback}" Visibility="{Binding Path=GP5Valve.Feedback, Converter={StaticResource bool2VisibilityConvert}}" Canvas.Left="402" Canvas.Top="380">
  199. </core:FlowPipeV2>-->
  200. <core:FlowPipeV2 Width="112" Height="8" Canvas.Left="423" Canvas.Top="379" Visibility="{Binding Path=GasFinalValve.Feedback, Converter={StaticResource bool2VisibilityConvert}}" >
  201. <core:FlowPipeV2.IsFlowing>
  202. <MultiBinding>
  203. <MultiBinding.Converter>
  204. <cvt:FlowConverterFirstFalseMultiBinding></cvt:FlowConverterFirstFalseMultiBinding>
  205. </MultiBinding.Converter>
  206. <MultiBinding.Bindings>
  207. <Binding Path="GasFinalValve.Feedback"></Binding>
  208. <Binding Path="GP1Valve.Feedback"></Binding>
  209. <Binding Path="GP2Valve.Feedback"></Binding>
  210. <Binding Path="GP3Valve.Feedback"></Binding>
  211. <Binding Path="GP4Valve.Feedback"></Binding>
  212. <Binding Path="GP5Valve.Feedback"></Binding>
  213. <Binding Path="ChamberPurgeValve.Feedback"></Binding>
  214. </MultiBinding.Bindings>
  215. </MultiBinding>
  216. </core:FlowPipeV2.IsFlowing>
  217. </core:FlowPipeV2>
  218. <core:FlowPipeV2 Width="95" Height="8" IsFlowing="{Binding VentValve.Feedback}" Canvas.Left="781" Canvas.Top="161">
  219. <core:FlowPipeV2.RenderTransform>
  220. <RotateTransform Angle="90"></RotateTransform>
  221. </core:FlowPipeV2.RenderTransform>
  222. </core:FlowPipeV2>
  223. <core:FlowPipeV2 Width="68" Height="12" Canvas.Left="556" Canvas.Top="493">
  224. <core:FlowPipeV2.RenderTransform>
  225. <RotateTransform Angle="270"></RotateTransform>
  226. </core:FlowPipeV2.RenderTransform>
  227. </core:FlowPipeV2>
  228. <core:FlowPipeV2 Width="374" Height="8" IsFlowing="{Binding ChamberPurgeValve.Feedback}" Visibility="{Binding Path=ChamberPurgeValve.Feedback, Converter={StaticResource bool2VisibilityConvert}}" Canvas.Left="50" Canvas.Top="380">
  229. </core:FlowPipeV2>
  230. <core:FlowPipeV2 Width="170" Height="13" IsFlowing="{Binding ChamberPurgeValve.Feedback}" Canvas.Left="65" Canvas.Top="217">
  231. <core:FlowPipeV2.RenderTransform>
  232. <RotateTransform Angle="90"/>
  233. </core:FlowPipeV2.RenderTransform>
  234. </core:FlowPipeV2>
  235. <core:FlowPipeV2 Width="257" Height="13" IsFlowing="{Binding ChamberPumpingOpenValve.Feedback}" Visibility="{Binding Path=ChamberPumpingOpenValve.Feedback, Converter={StaticResource bool2VisibilityConvert}}" Canvas.Left="767" Canvas.Top="428">
  236. <core:FlowPipeV2.RenderTransform>
  237. <RotateTransform Angle="90"/>
  238. </core:FlowPipeV2.RenderTransform>
  239. </core:FlowPipeV2>
  240. <!-- Gas Valves-->
  241. <!--<deviceControl:AITGasValve Canvas.Left="326" Canvas.Top="305" ValveOpenOrientation="Vertical" DeviceData="{Binding GP2Valve}" Command="{Binding DeviceOperationCommand}" />
  242. <deviceControl:AITGasValve Canvas.Left="264" Canvas.Top="305" ValveOpenOrientation="Vertical" DeviceData="{Binding GP1Valve}" Command="{Binding DeviceOperationCommand}" />-->
  243. <deviceControl:AITGasValve Canvas.Left="420" Canvas.Top="368" ValveOpenOrientation="Horizontal" DeviceData="{Binding GasFinalValve}" Command="{Binding DeviceOperationCommand}" />
  244. <deviceControl:AITGasValve Canvas.Left="93" Canvas.Top="368" ValveOpenOrientation="Horizontal" DeviceData="{Binding ChamberPurgeValve}" Command="{Binding DeviceOperationCommand}" />
  245. <deviceControl:AITGasValve Canvas.Left="761" Canvas.Top="194" ValveOpenOrientation="Vertical" DeviceData="{Binding VentValve}" Command="{Binding DeviceOperationCommand}" />
  246. <deviceControl:AITGasValve Canvas.Left="746" Canvas.Top="489" ValveOpenOrientation="Vertical" DeviceData="{Binding ChamberPumpingOpenValve}" DeviceData2="{Binding ChamberPumpingCloseValve}" Command="{Binding DeviceOperationCommand}" />
  247. <deviceControl:AITThrottleValve Visibility="{Binding TvVisible}" Canvas.Left="743" Canvas.Top="553" DeviceData="{Binding Tv}" Command="{Binding DeviceOperationCommand}" />
  248. <Label Background="{Binding TvTextBackground}" Visibility="{Binding TvVisible}" Foreground="White" FontFamily="Verdana" FontSize="9" HorizontalContentAlignment="Center" Padding="10,5" Canvas.Left="785" Canvas.Top="561" BorderThickness="1" Content="{Binding TvText}" />
  249. <deviceControl:AITBoostPump Canvas.Left="733" Canvas.Top="654" DeviceData="{Binding BoostPump}" Visibility="{Binding BoostPumpVisibility}" Command="{Binding DeviceOperationCommand}"></deviceControl:AITBoostPump>
  250. <deviceControl:AITPump Canvas.Left="554" Canvas.Top="682" DeviceData="{Binding Pump}"></deviceControl:AITPump>
  251. <deviceControl:AITRfGenerator Canvas.Left="664" Canvas.Top="214" DeviceData="{Binding Rf}" Command="{Binding DeviceOperationCommand}" />
  252. <core:PressureSwitchBig Canvas.Left="552" Canvas.Top="442" ></core:PressureSwitchBig>
  253. <deviceControl:AITPressureMeter DeviceData="{Binding ChamberPressure}" Height="30" Width="54" Canvas.Left="536" Canvas.Top="472" />
  254. <Grid Width="350" Canvas.Left="20" Canvas.Top="22">
  255. <Grid.RowDefinitions>
  256. <RowDefinition Height="25" />
  257. <RowDefinition Height="30" />
  258. <RowDefinition Height="30" />
  259. <RowDefinition Height="5" />
  260. </Grid.RowDefinitions>
  261. <TextBlock Grid.Row="0" Margin="3" Padding="5,3" HorizontalAlignment="Center" VerticalAlignment="Center" Text="{Binding Path=ChamberStatus}" Background="{Binding ChamberStatusBkColor}" Foreground="{Binding ChamberStatusForeColor}" />
  262. <Rectangle Grid.Row="0" StrokeThickness="1" Stroke="Black" StrokeDashArray="1,2" VerticalAlignment="Bottom" />
  263. <StackPanel Orientation="Horizontal" Grid.Row="1" VerticalAlignment="Center" HorizontalAlignment="Center">
  264. <TextBlock Text="{DynamicResource GlobalLableChamberDoor}" Padding="0,0,12,0"/>
  265. <Ellipse HorizontalAlignment="Left" Stroke="Gray" StrokeThickness="2" Width="15" Height="15"
  266. Fill="{Binding ChamberDoorColor, Mode=OneWay}" Style="{x:Null}"/>
  267. <TextBlock Text="{DynamicResource GlobalLablePumpDoor}" Padding="10,0,12,0" Visibility="{Binding IsHaveSensorPumpDoor}"/>
  268. <Ellipse HorizontalAlignment="Left" Stroke="Gray" StrokeThickness="2" Width="15" Height="15"
  269. Fill="{Binding PumpDoorColor, Mode=OneWay}" Style="{x:Null}" Visibility="{Binding IsHaveSensorPumpDoor}"/>
  270. </StackPanel>
  271. <!--<StackPanel Orientation="Horizontal" Grid.Row="2" VerticalAlignment="Center" HorizontalAlignment="Center">-->
  272. <!--<TextBlock Text="Precursor Door:" Padding="0,0,12,0"/>
  273. <Ellipse HorizontalAlignment="Left" Stroke="Gray" StrokeThickness="2" Width="15" Height="15"
  274. Fill="{Binding PrecursorDoorColor, Mode=OneWay}" Style="{x:Null}"/>-->
  275. <!--<TextBlock Text="{DynamicResource GlobalLableBackpanelDoor}" Padding="10,0,12,0"/>
  276. <Ellipse HorizontalAlignment="Left" Stroke="Gray" StrokeThickness="2" Width="15" Height="15"
  277. Fill="{Binding BackpanelDoorColor, Mode=OneWay}" Style="{x:Null}"/>
  278. </StackPanel>-->
  279. <Rectangle Grid.Row="1" StrokeThickness="1" Stroke="Black" StrokeDashArray="1,2" VerticalAlignment="Bottom" />
  280. <!--<Rectangle Grid.Row="2" StrokeThickness="1" Stroke="Black" StrokeDashArray="1,2" VerticalAlignment="Bottom" />-->
  281. </Grid>
  282. </Canvas>
  283. <!--Image Grid.Column="0" Panel.ZIndex="5" Source="/Triton160;component/Resources/overviewMain.png" /-->
  284. <GroupBox Visibility="{Binding VisibleLoadUnload}" Header="{DynamicResource GlobalLableLoadUnload}" Margin="146,449,767,220" FontSize="19">
  285. <StackPanel>
  286. <Button Content="{DynamicResource GlobalLableButtonLoad}" Command="{Binding InvokeCommand}" CommandParameter="CarrierLoad" IsEnabled="{Binding IsEnableLoad}" Width="150" FontSize="17" />
  287. <Button Content="{DynamicResource GlobalLableButtonUnload}" Command="{Binding InvokeCommand}" CommandParameter="CarrierUnload" IsEnabled="{Binding IsEnableUnload}" Width="150" FontSize="17" />
  288. </StackPanel>
  289. </GroupBox>
  290. <Grid Grid.Column="1" Width="390">
  291. <Grid.RowDefinitions>
  292. <RowDefinition Height="5" />
  293. <RowDefinition Height="125" />
  294. <RowDefinition Height="40" />
  295. <RowDefinition Height="*" />
  296. </Grid.RowDefinitions>
  297. <Grid Grid.Row="1" Margin="5,5,5,0">
  298. <Grid.RowDefinitions>
  299. <RowDefinition Height="{Binding RecipeBarcodeHeight}" />
  300. <RowDefinition Height="35" />
  301. <RowDefinition Height="35"/>
  302. </Grid.RowDefinitions>
  303. <Grid Grid.Row="0" >
  304. <Grid.RowDefinitions>
  305. <RowDefinition Height="35" />
  306. </Grid.RowDefinitions>
  307. <Grid.ColumnDefinitions>
  308. <ColumnDefinition Width="130" />
  309. <ColumnDefinition Width="250" />
  310. </Grid.ColumnDefinitions>
  311. <Rectangle Grid.Row="0" Grid.Column="0" Fill="#376092" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  312. <TextBlock Grid.Row="0" Grid.Column="0" FontSize="17" Text="{DynamicResource GlobalLableButtonRecipe}" Foreground="White" />
  313. <Rectangle Grid.Row="0" Grid.Column="1" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  314. <deviceControl:AITBarcodeTextBox Grid.Row="0" Grid.Column="1" FontSize="17" Foreground="White" BarcodeLength="{Binding RecipeBarcodeLength}" BarcodeText="{Binding RecipeBarcodeInputText, Mode=TwoWay}" IsEnabled="{Binding IsEnableRecipeScan}" BarcodeInputChangedCommand="{Binding RecipeBarcodeInputChangedCommand}" MaxScanCount="1" />
  315. </Grid>
  316. <StackPanel Grid.Row="1" Orientation="Horizontal">
  317. <Button Content="{DynamicResource GlobalLableButtonSelectRecipe}" IsEnabled="{Binding EnableManualSelectRecipe}" Command="{Binding Path=RecipeSelectCommand}" Width="130" Margin="0,0,0,0" Height="35" FontSize="17" />
  318. <Label Background="#95B3D7" Width="250" Height="35" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" FontSize="17" Content="{Binding SelectedRecipeName}" Foreground="White" />
  319. </StackPanel>
  320. <StackPanel Grid.Row="2" Orientation="Horizontal" VerticalAlignment="Bottom">
  321. <Button Content="{DynamicResource GlobalLableButtonStart}" IsEnabled="{Binding IsEnableStartRecipe}" Command="{Binding Path=RecipeRunCommand}" Width="110" Height="30" FontSize="17" Margin="15,2,0,2" />
  322. <Button Content="{DynamicResource GlobalLableButtonNextStep}" IsEnabled="{Binding IsEnableNextStep}" Command="{Binding Path=RecipeSkipToNextCommand}" Margin="13,2,0,2" Width="110" Height="30" FontSize="17" />
  323. <Button Content="{DynamicResource GlobalLableButtonStop}" IsEnabled="{Binding IsEnableStopRecipe}" Command="{Binding Path=RecipeAbortCommand}" Margin="13,2,0,2" Width="110" Height="30" FontSize="17" />
  324. </StackPanel>
  325. </Grid>
  326. <Grid Grid.Row="2" Margin="5,5,5,5">
  327. <Grid.ColumnDefinitions>
  328. <ColumnDefinition Width="*" />
  329. <ColumnDefinition Width="150" />
  330. <ColumnDefinition Width="210" />
  331. <ColumnDefinition Width="*" />
  332. </Grid.ColumnDefinitions>
  333. <Rectangle Grid.Row="0" Grid.Column="1" Fill="#376092" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  334. <TextBlock Grid.Row="0" Grid.Column="1" FontSize="17" Text="{DynamicResource GlobalLableProcessStatus}" Foreground="White" />
  335. <Rectangle Grid.Row="0" Grid.Column="2" Fill="{Binding RecipeStatusBackground}" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  336. <TextBlock Grid.Row="0" Grid.Column="2" FontSize="13" Text="{Binding ProcessStatus}" Foreground="White" />
  337. </Grid>
  338. <Grid Grid.Row="3" x:Name="gridMonitorTable">
  339. <Grid.RowDefinitions>
  340. <RowDefinition Height="40" Tag="0"/>
  341. <RowDefinition Height="26" Tag="1"/>
  342. <RowDefinition Height="26" Tag="2"/>
  343. <RowDefinition Height="26" Tag="3"/>
  344. <RowDefinition Height="26" Tag="4" />
  345. <RowDefinition Height="{Binding Path=TvHeight}" Tag="5"/>
  346. <RowDefinition Height="{Binding Path=TvHeight}" Tag="6"/>
  347. <RowDefinition Height="{Binding Path=TvHeight}" Tag="7"/>
  348. <RowDefinition Height="{Binding Path=BoostPumpHeight}" Tag="8" />
  349. <RowDefinition Height="26" Tag="9" />
  350. <RowDefinition Height="26" Tag="10" />
  351. <RowDefinition Height="26" Tag="11"/>
  352. <RowDefinition Height="26" Tag="12"/>
  353. <RowDefinition Height="{Binding Path=RFPulsingHeight}" Tag="13"/>
  354. <RowDefinition Height="{Binding Path=RFPulsingHeight}" Tag="14"/>
  355. <RowDefinition Height="26" Tag="15,match mode" />
  356. <RowDefinition Height="26" Tag="16,c1" />
  357. <RowDefinition Height="26" Tag="17,c2" />
  358. <RowDefinition Height="{Binding Path=GP1Height}" Tag="18" />
  359. <RowDefinition Height="{Binding Path=GP2Height}" Tag="19"/>
  360. <RowDefinition Height="{Binding Path=GP3Height}" Tag="20"/>
  361. <RowDefinition Height="{Binding Path=GP4Height}" Tag="21"/>
  362. <RowDefinition Height="{Binding Path=GP5Height}" Tag="22"/>
  363. <RowDefinition Height="0" />
  364. <RowDefinition Height="0" />
  365. </Grid.RowDefinitions>
  366. <Grid.ColumnDefinitions>
  367. <ColumnDefinition Width="*" />
  368. <ColumnDefinition Width="180" />
  369. <ColumnDefinition Width="90" />
  370. <ColumnDefinition Width="90" />
  371. <ColumnDefinition Width="*" />
  372. </Grid.ColumnDefinitions>
  373. <Rectangle Grid.Row="0" Grid.Column="1" Fill="#376092" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  374. <TextBlock Grid.Row="0" Grid.Column="1" FontSize="17" Text="{DynamicResource GlobalLableParameters}" Foreground="White" />
  375. <Rectangle Grid.Row="0" Grid.Column="2" Fill="#376092" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  376. <TextBlock Grid.Row="0" Grid.Column="2" FontSize="13" Text="{DynamicResource GlobalLableFeedback}" Foreground="White" />
  377. <Rectangle Grid.Row="0" Grid.Column="3" Fill="#376092" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  378. <TextBlock Grid.Row="0" Grid.Column="3" FontSize="13" Text="{DynamicResource GlobalLableSetPoint}" Foreground="White" />
  379. <Rectangle Grid.Row="1" Grid.Column="1" Fill="#376092" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  380. <TextBlock Grid.Row="1" Grid.Column="1" FontSize="13" Text="{DynamicResource GlobalLableProcessTime}" Foreground="White" Margin="44,0,44,4" VerticalAlignment="Bottom" />
  381. <Rectangle Grid.Row="1" Grid.Column="2" Grid.ColumnSpan="2" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  382. <TextBlock Grid.Row="1" Grid.Column="2" Grid.ColumnSpan="2" TextAlignment="Center" FontSize="13" Width="88" Height="20" Margin="3" Padding="0,0,0,0" Text="{Binding Path=RecipeProcessTime}" />
  383. <!--<Rectangle Grid.Row="1" Grid.Column="3" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>-->
  384. <!--TextBox Grid.Row="1" Grid.Column="3" TextAlignment="Center" FontSize="13" Width="88" Height="20" Margin="3" Padding="0,0,0,0" Text="0.0" /-->
  385. <Rectangle Grid.Row="2" Grid.Column="1" Fill="#376092" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  386. <TextBlock Grid.Row="2" Grid.Column="1" FontSize="13" Text="{DynamicResource GlobalLableStepNo}" Foreground="White" />
  387. <Rectangle Grid.Row="2" Grid.Column="2" Grid.ColumnSpan="2" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  388. <TextBlock Grid.Row="2" Grid.Column="2" Grid.ColumnSpan="2" TextAlignment="Center" FontSize="13" Width="88" Height="20" Margin="3" Padding="0,0,0,0" Text="{Binding Path=RecipeStepNoDisplay}" />
  389. <!--Rectangle Grid.Row="2" Grid.Column="3" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></-->
  390. <!--TextBox PreviewTextInput="OnPreviewTextInput" IsEnabled="{Binding Path=IsManualMode}" Grid.Row="2" Grid.Column="3" TextAlignment="Center" FontSize="13" Width="88" Height="20" Margin="3" Padding="0,0,0,0" Text="0.0" /-->
  391. <Rectangle Grid.Row="3" Grid.Column="1" Fill="#376092" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  392. <TextBlock Grid.Row="3" Grid.Column="1" FontSize="13" Text="{DynamicResource GlobalLableStepTime}" Foreground="White" />
  393. <Rectangle Grid.Row="3" Grid.Column="2" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  394. <TextBlock Grid.Row="3" Grid.Column="2" TextAlignment="Center" FontSize="13" Width="88" Height="20" Margin="3" Padding="0,0,0,0" Text="{Binding Path=RecipeStepTimeElapsed}" />
  395. <Rectangle Grid.Row="3" Grid.Column="3" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1" />
  396. <TextBlock Grid.Row="3" Grid.Column="3" FontSize="13" Text="{Binding Path=RecipeStepTimeSetPoint}" Foreground="White" />
  397. <Rectangle Grid.Row="4" Grid.Column="1" Fill="#376092" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  398. <TextBlock Grid.Row="4" Grid.Column="1" FontSize="13" Text="{DynamicResource GlobalLableChamberPressure}" Foreground="White" />
  399. <Rectangle Grid.Row="4" Grid.Column="2" Grid.ColumnSpan="2" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  400. <TextBlock Grid.Row="4" Grid.Column="2" Grid.ColumnSpan="2" TextAlignment="Center" FontSize="13" Width="88" Height="20" Margin="3" Padding="0,0,0,0" Text="{Binding Path=ChamberPressure.Display}" />
  401. <Rectangle Grid.Row="5" Grid.Column="1" Fill="#376092" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  402. <TextBlock Grid.Row="5" Grid.Column="1" FontSize="13" Text="{DynamicResource GlobalLableTvMode}" Foreground="White" />
  403. <Rectangle Grid.Row="5" Grid.Column="2" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  404. <TextBlock Grid.Row="5" Grid.Column="2" TextAlignment="Center" FontSize="13" Width="88" Height="20" Margin="3" Padding="0,0,0,0" Text="{Binding Path=Tv.TextMode}" />
  405. <ComboBox Text="{Binding Path=ThrottleValveModeSetPoint}" IsEditable="False" IsEnabled="{Binding Path=IsManualMode}" Grid.Row="5" Grid.Column="3" FontSize="13" >
  406. <ComboBoxItem>Position</ComboBoxItem>
  407. <ComboBoxItem>Pressure</ComboBoxItem>
  408. </ComboBox>
  409. <Rectangle Grid.Row="6" Grid.Column="1" Fill="#376092" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  410. <TextBlock Grid.Row="6" Grid.Column="1" FontSize="13" Text="{DynamicResource GlobalLableTvPosition}" Foreground="White" />
  411. <Rectangle Grid.Row="6" Grid.Column="2" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  412. <TextBlock Grid.Row="6" Grid.Column="2" TextAlignment="Center" FontSize="13" Width="88" Height="20" Margin="3" Padding="0,0,0,0" Text="{Binding Path=Tv.PositionFeedback, StringFormat={}{0:F0}}" />
  413. <Rectangle Grid.Row="6" Grid.Column="3" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  414. <TextBox Grid.Row="6" Grid.Column="3" PreviewTextInput="OnPreviewTextInput" IsEnabled="{Binding Path=IsManualMode}" TextAlignment="Center" FontSize="13" Width="88" Height="20" Margin="3" Padding="0,0,0,0" Text="{Binding Path=ThrottleValvePositionSetPoint}" />
  415. <Rectangle Grid.Row="7" Grid.Column="1" Fill="#376092" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  416. <TextBlock Grid.Row="7" Grid.Column="1" FontSize="13" Text="{DynamicResource GlobalLableTvPressure}" Foreground="White" />
  417. <Rectangle Grid.Row="7" Grid.Column="2" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  418. <TextBlock Grid.Row="7" Grid.Column="2" TextAlignment="Center" FontSize="13" Width="88" Height="20" Margin="3" Padding="0,0,0,0" Text="{Binding Path=ChamberPressure.Display}" />
  419. <Rectangle Grid.Row="7" Grid.Column="3" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  420. <TextBox Grid.Row="7" Grid.Column="3" PreviewTextInput="OnPreviewTextInput" IsEnabled="{Binding Path=IsManualMode}" TextAlignment="Center" FontSize="13" Width="88" Height="20" Margin="3" Padding="0,0,0,0" Text="{Binding Path=ThrottleValvePressureSetPoint}" />
  421. <Rectangle Grid.Row="8" Grid.Column="1" Fill="#376092" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  422. <TextBlock Grid.Row="8" Grid.Column="1" FontSize="13" Text="{DynamicResource GlobalLableBoostPressure}" Foreground="White" />
  423. <Rectangle Grid.Row="8" Grid.Column="2" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  424. <TextBlock Grid.Row="8" Grid.Column="2" TextAlignment="Center" FontSize="13" Width="88" Height="20" Margin="3" Padding="0,0,0,0" Text="{Binding Path=BoostPump.PressureSetPointDisplay}" />
  425. <Rectangle Grid.Row="8" Grid.Column="3" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  426. <TextBox Grid.Row="8" Grid.Column="3" PreviewTextInput="OnPreviewTextInput" IsEnabled="{Binding Path=IsManualMode}" TextAlignment="Center" FontSize="13" Width="88" Height="20" Margin="3" Padding="0,0,0,0" Text="{Binding Path=BoostPumpPressureSetPoint}" />
  427. <Rectangle Grid.Row="9" Grid.Column="1" Fill="#376092" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  428. <TextBlock Grid.Row="9" Grid.Column="1" FontSize="13" Text="{DynamicResource GlobalLableRFTime}" Foreground="White" />
  429. <Rectangle Grid.Row="9" Grid.Column="2" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  430. <TextBlock Grid.Row="9" Grid.Column="2" TextAlignment="Center" FontSize="13" Width="88" Height="20" Margin="3" Padding="0,0,0,0" Text="{Binding Path=Rf.PowerOnElapsedTime}" />
  431. <Rectangle Grid.Row="9" Grid.Column="3" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  432. <TextBox Grid.Row="9" Grid.Column="3" PreviewTextInput="OnPreviewTextInput" IsEnabled="{Binding Path=IsManualMode}" TextAlignment="Center" FontSize="13" Width="88" Height="20" Margin="3" Padding="0,0,0,0" Text="{Binding Path=RfTimeSetPoint}" />
  433. <Rectangle Grid.Row="10" Grid.Column="1" Fill="#376092" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  434. <TextBlock Grid.Row="10" Grid.Column="1" FontSize="13" Text="{DynamicResource GlobalLableRFMode}" Foreground="White" />
  435. <Rectangle Grid.Row="10" Grid.Column="2" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  436. <TextBlock Grid.Row="10" Grid.Column="2" TextAlignment="Center" FontSize="13" Width="88" Height="20" Margin="3" Padding="0,0,0,0" Text="{Binding Path=Rf.TextWorkMode}" />
  437. <Rectangle Grid.Row="10" Grid.Column="3" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  438. <ComboBox Grid.Row="10" Grid.Column="3" SelectedValue="{Binding Path=RfModeSetPoint}" IsEnabled="{Binding Path=IsRFModeSelectable}" FontSize="13" ItemsSource="{Binding RFModeItems}" />
  439. <Rectangle Grid.Row="11" Grid.Column="1" Fill="#376092" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  440. <TextBlock Grid.Row="11" Grid.Column="1" FontSize="13" Text="{DynamicResource GlobalLableRFPower}" Foreground="White" />
  441. <Rectangle Grid.Row="11" Grid.Column="2" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  442. <TextBlock Grid.Row="11" Grid.Column="2" TextAlignment="Center" FontSize="13" Width="88" Height="20" Margin="3" Padding="0,0,0,0" Text="{Binding Path=Rf.ForwardPower, StringFormat={}{0:F1}}" />
  443. <Rectangle Grid.Row="11" Grid.Column="3" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  444. <TextBox Grid.Row="11" Grid.Column="3" TextChanged="InputTextBoxPower_TextChanged" PreviewTextInput="OnPreviewTextInput" IsEnabled="{Binding Path=IsManualMode}" TextAlignment="Center" FontSize="13" Width="88" Height="20" Margin="3" Padding="0,0,0,0" Text="{Binding Path=RfPowerSetPoint}" />
  445. <Rectangle Grid.Row="12" Grid.Column="1" Fill="#376092" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  446. <TextBlock Grid.Row="12" Grid.Column="1" FontSize="13" Text="{DynamicResource GlobalLableReflectPower}" Foreground="White" />
  447. <Rectangle Grid.Row="12" Grid.Column="2" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  448. <TextBlock Grid.Row="12" Grid.Column="2" TextAlignment="Center" FontSize="13" Width="88" Height="20" Margin="3" Padding="0,0,0,0" Text="{Binding Path=Rf.ReflectPower, StringFormat={}{0:F1}}" />
  449. <Rectangle Grid.Row="12" Grid.Column="3" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  450. <!--TextBox Grid.Row="9" Grid.Column="3" TextAlignment="Center" FontSize="13" Width="88" Height="20" Margin="3" Padding="0,0,0,0" Text="0.0" /-->
  451. <Rectangle Grid.Row="13" Grid.Column="1" Fill="#376092" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  452. <TextBlock Grid.Row="13" Grid.Column="1" FontSize="13" Text="{DynamicResource GlobalLablePulsingFrequency}" Foreground="White" />
  453. <Rectangle Grid.Row="13" Grid.Column="2" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  454. <TextBlock Grid.Row="13" Grid.Column="2" TextAlignment="Center" FontSize="13" Width="88" Height="20" Margin="3" Padding="0,0,0,0" Text="{Binding Path=Rf.FrequencySetPoint, StringFormat={}{0:F1}}" />
  455. <Rectangle Grid.Row="13" Grid.Column="3" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  456. <TextBox Grid.Row="13" Grid.Column="3" PreviewTextInput="OnPreviewTextInput" IsEnabled="{Binding Path=IsManualMode}" TextAlignment="Center" FontSize="13" Width="88" Height="20" Margin="3" Padding="0,0,0,0" Text="{Binding Path=RfFrequencySetPoint}" />
  457. <Rectangle Grid.Row="14" Grid.Column="1" Fill="#376092" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  458. <TextBlock Grid.Row="14" Grid.Column="1" FontSize="13" Text="{DynamicResource GlobalLablePulsingDC}" Foreground="White" />
  459. <Rectangle Grid.Row="14" Grid.Column="2" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  460. <TextBlock Grid.Row="14" Grid.Column="2" TextAlignment="Center" FontSize="13" Width="88" Height="20" Margin="3" Padding="0,0,0,0" Text="{Binding Path=Rf.DutySetPoint, StringFormat={}{0:F1}}" />
  461. <Rectangle Grid.Row="14" Grid.Column="3" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  462. <TextBox Grid.Row="14" Grid.Column="3" PreviewTextInput="OnPreviewTextInput" IsEnabled="{Binding Path=IsManualMode}" TextAlignment="Center" FontSize="13" Width="88" Height="20" Margin="3" Padding="0,0,0,0" Text="{Binding Path=RfDutySetPoint}" />
  463. <Rectangle Grid.Row="15" Grid.Column="1" Fill="#376092" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  464. <TextBlock Grid.Row="15" Grid.Column="1" FontSize="13" Text="{DynamicResource GlobalLableMatchProcessMode}" Foreground="White" />
  465. <Rectangle Grid.Row="15" Grid.Column="2" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  466. <TextBlock Grid.Row="15" Grid.Column="2" TextAlignment="Center" FontSize="13" Width="88" Height="20" Margin="3" Padding="0,0,0,0" Text="{Binding Path=Rf.TritonMatchProcessModeDisplay}" />
  467. <Rectangle Grid.Row="15" Grid.Column="3" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  468. <ComboBox Grid.Row="15" Grid.Column="3" Text="{Binding Path=RfMatchProcessModeSetPoint}" IsEditable="False" IsEnabled="{Binding Path=IsManualMode}" FontSize="13" >
  469. <ComboBoxItem>Preset</ComboBoxItem>
  470. <ComboBoxItem>Hold</ComboBoxItem>
  471. </ComboBox>
  472. <Rectangle Grid.Row="16" Grid.Column="1" Fill="#376092" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  473. <TextBlock Grid.Row="16" Grid.Column="1" FontSize="13" Text="{DynamicResource GlobalLableMatchPositionC1}" Foreground="White" />
  474. <Rectangle Grid.Row="16" Grid.Column="2" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  475. <TextBlock Grid.Row="16" Grid.Column="2" TextAlignment="Center" FontSize="13" Width="88" Height="20" Margin="3" Padding="0,0,0,0" Text="{Binding Path=Rf.MatchPositionC1, StringFormat={}{0:F1}}" />
  476. <Rectangle Grid.Row="16" Grid.Column="3" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  477. <TextBox Grid.Row="16" Grid.Column="3" PreviewTextInput="OnPreviewTextInput" IsEnabled="{Binding Path=IsMatchPositionInputEnabled}" TextAlignment="Center" FontSize="13" Width="88" Height="20" Margin="3" Padding="0,0,0,0" Text="{Binding Path=RfMatchPositionC1SetPoint}" />
  478. <Rectangle Grid.Row="17" Grid.Column="1" Fill="#376092" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  479. <TextBlock Grid.Row="17" Grid.Column="1" FontSize="13" Text="{DynamicResource GlobalLableMatchPositionC2}" Foreground="White" />
  480. <Rectangle Grid.Row="17" Grid.Column="2" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  481. <TextBlock Grid.Row="17" Grid.Column="2" TextAlignment="Center" FontSize="13" Width="88" Height="20" Margin="3" Padding="0,0,0,0" Text="{Binding Path=Rf.MatchPositionC2, StringFormat={}{0:F1}}" />
  482. <Rectangle Grid.Row="17" Grid.Column="3" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  483. <TextBox Grid.Row="17" Grid.Column="3" PreviewTextInput="OnPreviewTextInput" IsEnabled="{Binding Path=IsMatchPositionInputEnabled}" TextAlignment="Center" FontSize="13" Width="88" Height="20" Margin="3" Padding="0,0,0,0" Text="{Binding Path=RfMatchPositionC2SetPoint}" />
  484. <Rectangle Grid.Row="18" Grid.Column="1" Fill="#376092" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  485. <TextBlock Grid.Row="18" Grid.Column="1" FontSize="13" Text="{Binding Path=GP1Mfc.DisplayName, StringFormat={}MFC1({0})Flow(sccm)}" Foreground="White" />
  486. <Rectangle Grid.Row="18" Grid.Column="2" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  487. <TextBlock Grid.Row="18" Grid.Column="2" TextAlignment="Center" FontSize="13" Width="88" Height="20" Margin="3" Padding="0,0,0,0" Text="{Binding Path=GP1Mfc.FeedBack, StringFormat={}{0:F1}}" />
  488. <Rectangle Grid.Row="18" Grid.Column="3" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  489. <TextBox Grid.Row="18" Grid.Column="3" PreviewTextInput="OnPreviewTextInput" IsEnabled="{Binding Path=IsManualMode}" TextAlignment="Center" FontSize="13" Width="88" Height="20" Margin="3" Padding="0,0,0,0" Text="{Binding Path=Mfc1SetPoint}" />
  490. <Rectangle Grid.Row="19" Grid.Column="1" Fill="#376092" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  491. <TextBlock Grid.Row="19" Grid.Column="1" FontSize="13" Text="{Binding Path=GP2Mfc.DisplayName, StringFormat={}MFC2({0})Flow(sccm)}" Foreground="White" />
  492. <Rectangle Grid.Row="19" Grid.Column="2" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  493. <TextBlock Grid.Row="19" Grid.Column="2" TextAlignment="Center" FontSize="13" Width="88" Height="20" Margin="3" Padding="0,0,0,0" Text="{Binding Path=GP2Mfc.FeedBack, StringFormat={}{0:F1}}" />
  494. <Rectangle Grid.Row="19" Grid.Column="3" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  495. <TextBox Grid.Row="19" Grid.Column="3" PreviewTextInput="OnPreviewTextInput" IsEnabled="{Binding Path=IsManualMode}" TextAlignment="Center" FontSize="13" Width="88" Height="20" Margin="3" Padding="0,0,0,0" Text="{Binding Path=Mfc2SetPoint}" />
  496. <Rectangle Grid.Row="20" Grid.Column="1" Fill="#376092" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  497. <TextBlock Grid.Row="20" Grid.Column="1" FontSize="13" Text="{Binding Path=GP3Mfc.DisplayName, StringFormat={}MFC3({0})Flow(sccm)}" Foreground="White" />
  498. <Rectangle Grid.Row="20" Grid.Column="2" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  499. <TextBlock Grid.Row="20" Grid.Column="2" TextAlignment="Center" FontSize="13" Width="88" Height="20" Margin="3" Padding="0,0,0,0" Text="{Binding Path=GP3Mfc.FeedBack, StringFormat={}{0:F1}}" />
  500. <Rectangle Grid.Row="20" Grid.Column="3" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  501. <TextBox Grid.Row="20" Grid.Column="3" PreviewTextInput="OnPreviewTextInput" IsEnabled="{Binding Path=IsManualMode}" TextAlignment="Center" FontSize="13" Width="88" Height="20" Margin="3" Padding="0,0,0,0" Text="{Binding Path=Mfc3SetPoint}" />
  502. <Rectangle Grid.Row="21" Grid.Column="1" Fill="#376092" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  503. <TextBlock Grid.Row="21" Grid.Column="1" FontSize="13" Text="{Binding Path=GP4Mfc.DisplayName, StringFormat={}MFC4({0})Flow(sccm)}" Foreground="White" />
  504. <Rectangle Grid.Row="21" Grid.Column="2" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  505. <TextBlock Grid.Row="21" Grid.Column="2" TextAlignment="Center" FontSize="13" Width="88" Height="20" Margin="3" Padding="0,0,0,0" Text="{Binding Path=GP4Mfc.FeedBack, StringFormat={}{0:F1}}" />
  506. <Rectangle Grid.Row="21" Grid.Column="3" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  507. <TextBox Grid.Row="21" Grid.Column="3" PreviewTextInput="OnPreviewTextInput" IsEnabled="{Binding Path=IsManualMode}" TextAlignment="Center" FontSize="13" Width="88" Height="20" Margin="3" Padding="0,0,0,0" Text="{Binding Path=Mfc4SetPoint}" />
  508. <Rectangle Grid.Row="22" Grid.Column="1" Fill="#376092" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  509. <TextBlock Grid.Row="22" Grid.Column="1" FontSize="13" Text="{Binding Path=GP5Mfc.DisplayName, StringFormat={}MFC5({0})Flow(sccm)}" Foreground="White" />
  510. <Rectangle Grid.Row="22" Grid.Column="2" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  511. <TextBlock Grid.Row="22" Grid.Column="2" TextAlignment="Center" FontSize="13" Width="88" Height="20" Margin="3" Padding="0,0,0,0" Text="{Binding Path=GP5Mfc.FeedBack, StringFormat={}{0:F1}}" />
  512. <Rectangle Grid.Row="22" Grid.Column="3" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  513. <TextBox Grid.Row="22" Grid.Column="3" PreviewTextInput="OnPreviewTextInput" IsEnabled="{Binding Path=IsManualMode}" TextAlignment="Center" FontSize="13" Width="88" Height="20" Margin="3" Padding="0,0,0,0" Text="{Binding Path=Mfc5SetPoint}" />
  514. </Grid>
  515. </Grid>
  516. <Border Grid.Column="2" Width="1" Background="Black"/>
  517. <StackPanel Grid.Column="3" Height="auto">
  518. <Label Name="workareaHeader" FontSize="25" HorizontalAlignment="Center" VerticalContentAlignment="Center" Content="{DynamicResource GlobalLableOperation}" Height="60"/>
  519. <Border Background="Black" Height="1"/>
  520. <GroupBox Header="{DynamicResource GlobalLableWorkingMode}" Margin="10" FontSize="19">
  521. <StackPanel>
  522. <Button Content="{DynamicResource GlobalLableButtonManual}" Command="{Binding InvokeCommand}" CommandParameter="SetManualMode" IsEnabled="{Binding IsAutoMode}" Width="150" FontSize="17" />
  523. <Button Content="{DynamicResource GlobalLableButtonAuto}" IsEnabled="{Binding IsManualMode}" Command="{Binding InvokeCommand}" CommandParameter="SetAutoMode" Width="150" FontSize="17" />
  524. </StackPanel>
  525. </GroupBox>
  526. <GroupBox x:Name="groupManualOperation" Header="{DynamicResource GlobalLableManualOperation}" Margin="10" FontSize="19">
  527. <StackPanel Orientation="Vertical">
  528. <GroupBox Margin="5" Padding="0,5">
  529. <StackPanel Orientation="Vertical">
  530. <Grid Height="100" >
  531. <Grid.RowDefinitions>
  532. <RowDefinition Height="30"/>
  533. <RowDefinition />
  534. <RowDefinition />
  535. </Grid.RowDefinitions>
  536. <Grid.ColumnDefinitions>
  537. <ColumnDefinition Width="170" />
  538. <ColumnDefinition Width="70"/>
  539. </Grid.ColumnDefinitions>
  540. <Rectangle Grid.Row="0" Grid.Column="0" Fill="#376092" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  541. <TextBlock Grid.Row="0" Grid.Column="0" FontSize="13" Text="{DynamicResource GlobalLableBasePressure}" Foreground="White" />
  542. <Rectangle Grid.Row="1" Grid.Column="0" Fill="#376092" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  543. <TextBlock Grid.Row="1" Grid.Column="0" FontSize="13" Text="{DynamicResource GlobalLablePumpDownLimit}" Foreground="White" />
  544. <Rectangle Grid.Row="2" Grid.Column="0" Fill="#376092" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  545. <TextBlock Grid.Row="2" Grid.Column="0" FontSize="13" Text="{DynamicResource GlobalLablePumpTime}" Foreground="White" />
  546. <Rectangle Grid.Row="0" Grid.Column="1" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  547. <!--TextBox IsEnabled="{Binding Path=IsManualMode}" Grid.Row="0" Grid.Column="1" TextAlignment="Center" FontSize="13" Width="58" Height="25" Margin="3" Padding="0,2,0,0" Text="{Binding Path=BasePressure}" /-->
  548. <TextBox x:Name="txtBasePressure" PreviewTextInput="OnPreviewTextInput" IsEnabled="{Binding Path=IsManualMode}" Grid.Row="0" Grid.Column="1" TextAlignment="Center" FontSize="13" Width="58" Height="25" Margin="3" Padding="0,2,0,0" Text="{Binding Path=BasePressureSetPoint}" >
  549. </TextBox>
  550. <Rectangle Grid.Row="1" Grid.Column="1" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  551. <TextBox x:Name="txtPumpLimit" PreviewTextInput="OnPreviewTextInput" IsEnabled="{Binding Path=IsManualMode}" Grid.Row="1" Grid.Column="1" TextAlignment="Center" FontSize="13" Width="58" Height="25" Margin="3" Padding="0,2,0,0" Text="{Binding Path=PumpLimitSetPoint}" />
  552. <Rectangle Grid.Row="2" Grid.Column="1" Fill="#95B3D7" Margin="0" Stroke="White" StrokeThickness="1"></Rectangle>
  553. <!--TextBox IsEnabled="{Binding Path=IsManualMode}" Grid.Row="2" Grid.Column="1" TextAlignment="Center" FontSize="13" Width="58" Height="25" Margin="3" Padding="0,2,0,0" Text="0.0" /-->
  554. <TextBlock Grid.Row="2" Grid.Column="1" TextAlignment="Center" FontSize="13" Width="58" Height="20" Margin="3" Padding="0,0,0,0" Text="{Binding Path=PumpTime}" />
  555. </Grid>
  556. <Button IsEnabled="{Binding Path=IsManualMode}" Background="{Binding Path=PumpButtonBackground}" Content="{DynamicResource GlobalLableButtonPump}" Margin="0,10,0,5" Command="{Binding InvokeCommand}" CommandParameter="Pump" FontSize="17" />
  557. </StackPanel>
  558. </GroupBox>
  559. <GroupBox Margin="5" Padding="5">
  560. <StackPanel Orientation="Vertical">
  561. <Button IsEnabled="{Binding Path=IsManualMode}" Background="{Binding Path=GasFlowButtonBackground}" Content="{DynamicResource GlobalLableButtonGas}" Margin="0,5,0,10" Command="{Binding InvokeCommand}" CommandParameter="GasFlow" FontSize="17" />
  562. <Button IsEnabled="{Binding Path=IsManualMode}" Background="{Binding Path=RfPowerButtonBackground}" Content="{DynamicResource GlobalLableButtonRF}" Margin="0,0,0,10" Command="{Binding InvokeCommand}" CommandParameter="RfPower" FontSize="17" />
  563. <Button IsEnabled="{Binding Path=IsManualMode}" Background="{Binding Path=CyclePurgeButtonBackground}" Content="{DynamicResource GlobalLableButtonPurge}" Margin="0,0,0,5" Command="{Binding InvokeCommand}" CommandParameter="CyclePurge" FontSize="17" />
  564. </StackPanel>
  565. </GroupBox>
  566. <GroupBox Margin="5" Padding="5">
  567. <Button IsEnabled="{Binding Path=IsManualMode}" Background="{Binding Path=VentButtonBackground}" Content="{DynamicResource GlobalLableButtonVent}" Margin="0,5,0,0" Command="{Binding InvokeCommand}" CommandParameter="Vent" FontSize="17" />
  568. </GroupBox>
  569. </StackPanel>
  570. </GroupBox>
  571. </StackPanel>
  572. </Grid>
  573. </UserControl>