ChannelMultiEdit.xaml 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229
  1. <UserControl x:Class="MinicsUI.Views.Dialogs.ChannelMultiEdit"
  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:MinicsUI.Views.Dialogs"
  7. xmlns:convert="clr-namespace:HistoryView.Converters"
  8. mc:Ignorable="d"
  9. d:DesignHeight="450" d:DesignWidth="800">
  10. <UserControl.Resources>
  11. <convert:ActiveTuneSetToVis x:Key="ActiveTuneSet"/>
  12. </UserControl.Resources>
  13. <Grid Margin="8" MinHeight="480">
  14. <Grid Panel.ZIndex="1" Background="#70FFFFFF" Visibility="{Binding HintVis}">
  15. <Border Background="{StaticResource BackgroundColor}" VerticalAlignment="Center" HorizontalAlignment="Center">
  16. <TextBlock FontSize="32" Margin="4" VerticalAlignment="Center" HorizontalAlignment="Center" Text="{Binding Hint}"/>
  17. </Border>
  18. </Grid>
  19. <Grid Width="auto" Height="auto">
  20. <Grid.ColumnDefinitions>
  21. <ColumnDefinition Width="auto"/>
  22. <ColumnDefinition Width="8"/>
  23. <ColumnDefinition Width="auto"/>
  24. </Grid.ColumnDefinitions>
  25. <GroupBox Header="Channel Selector">
  26. <Grid>
  27. <Grid.RowDefinitions>
  28. <RowDefinition Height="auto"/>
  29. <RowDefinition Height="1"/>
  30. <RowDefinition Height="auto"/>
  31. </Grid.RowDefinitions>
  32. <Grid Margin="2">
  33. <Grid.ColumnDefinitions>
  34. <ColumnDefinition Width="160"/>
  35. <ColumnDefinition Width="4"/>
  36. <ColumnDefinition Width="48"/>
  37. <ColumnDefinition Width="4"/>
  38. <ColumnDefinition Width="60"/>
  39. <ColumnDefinition Width="4"/>
  40. <ColumnDefinition Width="48"/>
  41. <ColumnDefinition Width="4"/>
  42. <ColumnDefinition Width="48"/>
  43. <ColumnDefinition Width="80"/>
  44. <ColumnDefinition Width="42"/>
  45. <ColumnDefinition Width="4"/>
  46. <ColumnDefinition Width="42"/>
  47. <ColumnDefinition Width="4"/>
  48. <ColumnDefinition Width="42"/>
  49. </Grid.ColumnDefinitions>
  50. <TextBlock Text="Channel" HorizontalAlignment="Center"/>
  51. <TextBlock Grid.Column="2" VerticalAlignment="Center" HorizontalAlignment="Center" Text="Inhibit" ></TextBlock>
  52. <TextBlock Grid.Column="4" VerticalAlignment="Center" HorizontalAlignment="Center" Text="AT" ></TextBlock>
  53. <TextBlock Grid.Column="6" VerticalAlignment="Center" HorizontalAlignment="Center" Text="Mode" ></TextBlock>
  54. <TextBlock Grid.Column="8" VerticalAlignment="Center" HorizontalAlignment="Center" Text="TC" ></TextBlock>
  55. <TextBlock Grid.Column="10" VerticalAlignment="Center" HorizontalAlignment="Center" Text="P" ></TextBlock>
  56. <TextBlock Grid.Column="12" VerticalAlignment="Center" HorizontalAlignment="Center" Text="I" ></TextBlock>
  57. <TextBlock Grid.Column="14" VerticalAlignment="Center" HorizontalAlignment="Center" Text="D" ></TextBlock>
  58. </Grid>
  59. <Border Grid.Row="1" BorderThickness="0,0,0,1" Margin="8,0" BorderBrush="{StaticResource DarkBorderColor}" VerticalAlignment="Center"/>
  60. <ItemsControl Grid.Row="2" ItemsSource="{Binding Selecters}">
  61. <ItemsControl.ItemTemplate>
  62. <DataTemplate>
  63. <Grid Margin="4,3">
  64. <Grid.ColumnDefinitions>
  65. <ColumnDefinition Width="auto"/>
  66. <ColumnDefinition Width="4"/>
  67. <ColumnDefinition Width="48"/>
  68. <ColumnDefinition Width="4"/>
  69. <ColumnDefinition Width="60"/>
  70. <ColumnDefinition Width="4"/>
  71. <ColumnDefinition Width="48"/>
  72. <ColumnDefinition Width="4"/>
  73. <ColumnDefinition Width="58"/>
  74. <ColumnDefinition Width="4"/>
  75. <ColumnDefinition Width="auto"/>
  76. </Grid.ColumnDefinitions>
  77. <CheckBox Style="{StaticResource FunctionCheckBox}" IsChecked="{Binding IsSelected}" Height="28">
  78. <Grid VerticalAlignment="Center" HorizontalAlignment="Left" Width="152" Margin="4,0">
  79. <Grid.ColumnDefinitions>
  80. <ColumnDefinition Width="13"/>
  81. <ColumnDefinition Width="6"/>
  82. <ColumnDefinition/>
  83. </Grid.ColumnDefinitions>
  84. <TextBlock Text="{Binding Channel.ChannelIndex}" Foreground="White" HorizontalAlignment="Center"/>
  85. <TextBlock Grid.Column="2" Text="{Binding Channel.Name}" Foreground="White" HorizontalAlignment="Center"/>
  86. </Grid>
  87. </CheckBox>
  88. <TextBlock Grid.Column="2" VerticalAlignment="Center" HorizontalAlignment="Center" Text="{Binding Channel.Inhibit}"/>
  89. <TextBlock Grid.Column="4" VerticalAlignment="Center" HorizontalAlignment="Center" Text="{Binding Channel.AutoTuneStatus}"/>
  90. <TextBlock Grid.Column="6" VerticalAlignment="Center" HorizontalAlignment="Center" Text="{Binding Channel.ChannelMode}"/>
  91. <TextBlock Grid.Column="8" VerticalAlignment="Center" HorizontalAlignment="Center" Text="{Binding Channel.SensorBreakAlarm}"/>
  92. <Grid Grid.Column="10">
  93. <StackPanel>
  94. <Grid>
  95. <Grid.ColumnDefinitions>
  96. <ColumnDefinition Width="72"/>
  97. <ColumnDefinition Width="4"/>
  98. <ColumnDefinition Width="42"/>
  99. <ColumnDefinition Width="4"/>
  100. <ColumnDefinition Width="42"/>
  101. <ColumnDefinition Width="4"/>
  102. <ColumnDefinition Width="42"/>
  103. </Grid.ColumnDefinitions>
  104. <Border BorderThickness="1" Grid.ColumnSpan="7" Visibility="{Binding Channel.ActiveTuneSet, Converter={StaticResource ActiveTuneSet}, ConverterParameter=AutoTune}" Background="{StaticResource LightWarningColor}" BorderBrush="{StaticResource WarningColor}"/>
  105. <TextBlock Grid.Column="0" VerticalAlignment="Center" HorizontalAlignment="Center" Text="AutoTune:"/>
  106. <TextBlock Grid.Column="2" VerticalAlignment="Center" HorizontalAlignment="Center" Text="{Binding Channel.AutoTune_P, StringFormat=0.0}"/>
  107. <TextBlock Grid.Column="4" VerticalAlignment="Center" HorizontalAlignment="Center" Text="{Binding Channel.AutoTune_I, StringFormat=0.0}"/>
  108. <TextBlock Grid.Column="6" VerticalAlignment="Center" HorizontalAlignment="Center" Text="{Binding Channel.AutoTune_D, StringFormat=0.0}"/>
  109. </Grid>
  110. <Grid>
  111. <Grid.ColumnDefinitions>
  112. <ColumnDefinition Width="72"/>
  113. <ColumnDefinition Width="4"/>
  114. <ColumnDefinition Width="42"/>
  115. <ColumnDefinition Width="4"/>
  116. <ColumnDefinition Width="42"/>
  117. <ColumnDefinition Width="4"/>
  118. <ColumnDefinition Width="42"/>
  119. </Grid.ColumnDefinitions>
  120. <Border BorderThickness="1" Grid.ColumnSpan="7" Visibility="{Binding Channel.ActiveTuneSet, Converter={StaticResource ActiveTuneSet}, ConverterParameter=Running}" Background="{StaticResource LightNormalColor}" BorderBrush="{StaticResource NormalColor}"/>
  121. <TextBlock Grid.Column="0" VerticalAlignment="Center" HorizontalAlignment="Center" Text="Running :"/>
  122. <TextBlock Grid.Column="2" VerticalAlignment="Center" HorizontalAlignment="Center" Text="{Binding Channel.Running_P, StringFormat=0.0}"/>
  123. <TextBlock Grid.Column="4" VerticalAlignment="Center" HorizontalAlignment="Center" Text="{Binding Channel.Running_I, StringFormat=0.0}"/>
  124. <TextBlock Grid.Column="6" VerticalAlignment="Center" HorizontalAlignment="Center" Text="{Binding Channel.Running_D, StringFormat=0.0}"/>
  125. </Grid>
  126. </StackPanel>
  127. </Grid>
  128. </Grid>
  129. </DataTemplate>
  130. </ItemsControl.ItemTemplate>
  131. <ItemsControl.ItemsPanel>
  132. <ItemsPanelTemplate>
  133. <UniformGrid Columns="1"/>
  134. </ItemsPanelTemplate>
  135. </ItemsControl.ItemsPanel>
  136. </ItemsControl>
  137. </Grid>
  138. </GroupBox>
  139. <Grid Grid.Column="2">
  140. <Grid.RowDefinitions>
  141. <RowDefinition Height="auto"/>
  142. <RowDefinition Height="32"/>
  143. <RowDefinition Height="auto"/>
  144. <RowDefinition Height="16"/>
  145. <RowDefinition Height="auto"/>
  146. <RowDefinition Height="16"/>
  147. <RowDefinition Height="auto"/>
  148. <RowDefinition Height="*"/>
  149. <RowDefinition Height="auto"/>
  150. <RowDefinition Height="8"/>
  151. </Grid.RowDefinitions>
  152. <GroupBox Grid.Row="0" Header="Selector">
  153. <Grid Margin="4">
  154. <Grid.ColumnDefinitions>
  155. <ColumnDefinition Width="*"/>
  156. <ColumnDefinition Width="8"/>
  157. <ColumnDefinition Width="*"/>
  158. </Grid.ColumnDefinitions>
  159. <Button Grid.Column="0" Style="{StaticResource FunctionButton}" MinWidth="120" Command="{Binding SelectCommand}" CommandParameter="All" Content="{DynamicResource SelectAll}"></Button>
  160. <Button Grid.Column="2" Style="{StaticResource FunctionButton}" MinWidth="120" Command="{Binding SelectCommand}" CommandParameter="None" Background="{StaticResource EmergencyColor}" Content="{DynamicResource SelectNone}" Height="32"/>
  161. </Grid>
  162. </GroupBox>
  163. <GroupBox Grid.Row="2" Header="Auto Tune">
  164. <Grid Margin="4">
  165. <Grid.ColumnDefinitions>
  166. <ColumnDefinition Width="auto"/>
  167. <ColumnDefinition Width="8"/>
  168. <ColumnDefinition Width="auto"/>
  169. </Grid.ColumnDefinitions>
  170. <Grid.RowDefinitions>
  171. <RowDefinition Height="auto"/>
  172. <RowDefinition Height="16"/>
  173. <RowDefinition Height="auto"/>
  174. </Grid.RowDefinitions>
  175. <Button Grid.Column="0" Style="{StaticResource FunctionButton}" MinWidth="120" Command="{Binding AutoTuneCommand}">Start AutoTune</Button>
  176. <Button Grid.Column="2" Style="{StaticResource FunctionButton}" MinWidth="120" Command="{Binding AbortAutoTuneCommand}" Background="{StaticResource WarningColor}" Height="32">Abort AutoTune</Button>
  177. <Button Grid.Row="2" Grid.ColumnSpan="3" Height="32" Style="{StaticResource FunctionButton}" MinWidth="120" Command="{Binding ApplyATPIDCommand}" CommandParameter="Apply">Apply AutoTune PID</Button>
  178. </Grid>
  179. </GroupBox>
  180. <GroupBox Grid.Row="4" Header="Channel Enable">
  181. <Grid Margin="4">
  182. <Grid.ColumnDefinitions>
  183. <ColumnDefinition Width="auto"/>
  184. <ColumnDefinition Width="8"/>
  185. <ColumnDefinition Width="auto"/>
  186. </Grid.ColumnDefinitions>
  187. <Button Grid.Column="0" Style="{StaticResource FunctionButton}" MinWidth="120" Command="{Binding ControlModeCommand}" CommandParameter="Enable">Enable Channel</Button>
  188. <Button Grid.Column="2" Style="{StaticResource FunctionButton}" MinWidth="120" Command="{Binding ControlModeCommand}" CommandParameter="Disable" Background="{StaticResource EmergencyColor}" Height="32">Disable Channel</Button>
  189. </Grid>
  190. </GroupBox>
  191. <GroupBox Grid.Row="6" Header="Channel Mode">
  192. <Grid Margin="4">
  193. <Grid.ColumnDefinitions>
  194. <ColumnDefinition Width="auto"/>
  195. <ColumnDefinition Width="8"/>
  196. <ColumnDefinition Width="auto"/>
  197. </Grid.ColumnDefinitions>
  198. <Button Grid.Column="0" Style="{StaticResource FunctionButton}" MinWidth="120" Command="{Binding ChannelModeSwitchCommand}" CommandParameter="Control">
  199. <StackPanel Orientation="Horizontal">
  200. <Image Source="{StaticResource Icon_Setting}" Height="18"></Image>
  201. <TextBlock VerticalAlignment="Center" Margin="4,0,0,0">Control</TextBlock>
  202. </StackPanel>
  203. </Button>
  204. <Button Grid.Column="2" Style="{StaticResource FunctionButton}" MinWidth="120" Command="{Binding ChannelModeSwitchCommand}" CommandParameter="Monitor" Background="{StaticResource NiceGreen}" Height="32">
  205. <StackPanel Orientation="Horizontal">
  206. <Image Source="{StaticResource Monitorable}" Height="18"></Image>
  207. <TextBlock VerticalAlignment="Center" Margin="4,0,0,0">Monitor</TextBlock>
  208. </StackPanel>
  209. </Button>
  210. </Grid>
  211. </GroupBox>
  212. <Button Grid.Row="8" Style="{StaticResource FunctionButton}" Background="{StaticResource DisableColor}" Content="{DynamicResource Exit}" Command="{Binding ExitCommand}" MinWidth="120" Height="32"/>
  213. </Grid>
  214. </Grid>
  215. </Grid>
  216. </UserControl>