Commit 035fa7e8 by liulongfei

1. 窗口聚焦效果调整

2. Tally信号表现调整
parent 894b93d7
...@@ -123,4 +123,26 @@ ...@@ -123,4 +123,26 @@
</Style.Triggers> </Style.Triggers>
</Style> </Style>
<Style TargetType="RadioButton" x:Key="RadioButton_NdiView_Active_Border">
<Setter Property="FocusVisualStyle" Value="{x:Null}"></Setter>
<Setter Property="Foreground" Value="White"></Setter>
<Setter Property="BorderBrush" Value="White"></Setter>
<Setter Property="BorderThickness" Value="2"></Setter>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="RadioButton">
<Border x:Name="bd" BorderThickness="{TemplateBinding BorderThickness}" Background="Transparent"
BorderBrush="Transparent">
<ContentPresenter HorizontalAlignment="Stretch" VerticalAlignment="Stretch"></ContentPresenter>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsChecked" Value="True">
<Setter TargetName="bd" Property="BorderBrush" Value="{Binding Path=BorderBrush, RelativeSource={RelativeSource AncestorLevel=1,Mode=FindAncestor,AncestorType=RadioButton}}"></Setter>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</ResourceDictionary> </ResourceDictionary>
\ No newline at end of file
...@@ -113,11 +113,16 @@ ...@@ -113,11 +113,16 @@
<!-- 标题 --> <!-- 标题 -->
<Grid HorizontalAlignment="Center" VerticalAlignment="Center" Grid.Column="1"> <Grid HorizontalAlignment="Center" VerticalAlignment="Center" Grid.Column="1">
<RadioButton Content="{Binding Path=DisplayName,Mode=OneWay}" Foreground="White" FontSize="20" FontWeight="Black" <!-- 信号1 -->
HorizontalAlignment="Center" <Rectangle HorizontalAlignment="Stretch" VerticalAlignment="Stretch"
Width="200" Height="30" GroupName="NDIView_Title_Group" Visibility="{Binding Path=TallyPartViewModel.Tally1.PinValue,Converter={StaticResource Bool2VisibilityConverter}}"
IsChecked="{Binding Path=IsActive,Mode=TwoWay}" Fill="{Binding Path=TallyPartViewModel.Color1,Converter={StaticResource TallyColor2RadialGradientBrushConverter}}"></Rectangle>
Style="{StaticResource RadioButton_NdiView_Title}"></RadioButton>
<TextBlock Text="{Binding Path=DisplayName,Mode=OneWay}"
ToolTip="{Binding Path=DisplayName,Mode=OneWay}"
Margin="60,5,60,5" Foreground="White" FontSize="18"
TextWrapping="NoWrap" TextTrimming="CharacterEllipsis"
MaxWidth="400"></TextBlock>
</Grid> </Grid>
<!-- 算法 --> <!-- 算法 -->
<Grid Grid.RowSpan="2" Margin="0,20,0,0" <Grid Grid.RowSpan="2" Margin="0,20,0,0"
...@@ -177,74 +182,36 @@ ...@@ -177,74 +182,36 @@
</Button> </Button>
</Grid> </Grid>
<!-- 视频区域 --> <!-- 视频区域 -->
<Border BorderBrush="Transparent" BorderThickness="0" Grid.Row="1" Grid.Column="1"> <Grid Background="Transparent" Grid.Row="1" Grid.Column="1">
<fcommon:VideoControl x:Name="video"></fcommon:VideoControl> <RadioButton Style="{StaticResource RadioButton_NdiView_Active_Border}"
</Border> BorderBrush="White" GroupName="NIDView_IsActive"
IsChecked="{Binding Path=IsActive,Mode=TwoWay}">
<!-- Tally --> <fcommon:VideoControl x:Name="video"></fcommon:VideoControl>
<StackPanel Grid.Row="0" Grid.Column="1" HorizontalAlignment="Right" VerticalAlignment="Bottom" Margin="0,0,0,5" Orientation="Horizontal"> </RadioButton>
<!-- 信号2 --> </Grid>
<Ellipse Width="32" Height="32" Margin="0,0,15,0"
Visibility="{Binding Path=TallyPartViewModel.Tally2.PinValue,Converter={StaticResource Bool2VisibilityConverter}}"
Fill="{Binding Path=TallyPartViewModel.Color2,Converter={StaticResource TallyColor2RadialGradientBrushConverter}}"></Ellipse>
<!-- 信号1 -->
<Ellipse Width="32" Height="32" Margin="0,0,0,0"
Visibility="{Binding Path=TallyPartViewModel.Tally1.PinValue,Converter={StaticResource Bool2VisibilityConverter}}"
Fill="{Binding Path=TallyPartViewModel.Color1,Converter={StaticResource TallyColor2RadialGradientBrushConverter}}"></Ellipse>
</StackPanel>
<!-- 功能区 -->
<Grid Grid.Row="1" Grid.Column="2">
<Grid.RowDefinitions>
<RowDefinition Height="*"></RowDefinition>
<RowDefinition Height="*"></RowDefinition>
</Grid.RowDefinitions>
<!-- 功能区 -->
<StackPanel Orientation="Vertical" VerticalAlignment="Top">
<Border ToolTip="设置" Background="Transparent">
<Button Height="32" Width="32" HorizontalAlignment="Center"
IsEnabled="{Binding Path=ViewStatus,Converter={StaticResource NDIViewStatus2IsEnabledConverter_SettingButton}}"
Style="{StaticResource Button_Setting_Open}"
Command="{Binding Path=SettingCommand,Mode=OneWay}"
CommandParameter="{Binding ElementName=uc,Path=NDIKey,Mode=OneWay}"></Button>
</Border>
<Rectangle Height="2" Fill="#AAFFFFFF" Width="30" Margin="0,10,0,0"></Rectangle> <!-- 顶部 功能区 -->
<Grid Grid.Column="1">
<StackPanel HorizontalAlignment="Right" VerticalAlignment="Bottom" Orientation="Horizontal">
<!-- 显示边线 --> <!-- 手动模式显示中轴线 -->
<Border ToolTip="显示边线" Background="Transparent" Margin="0,10,0,0"> <Border ToolTip="手动模式显示中轴线" Background="Transparent" Margin="0,0,10,0">
<CheckBox Style="{StaticResource CheckBox_IsBorderShow}" Width="32" Height="32" <CheckBox Style="{StaticResource CheckBox_IsShowCenterAxis}" Width="32" Height="32"
IsEnabled="{Binding Path=ViewStatus,Converter={StaticResource NDIViewStatus2IsEnabledConverter}}" ToolTip="手动模式显示中轴线"
IsChecked="{Binding Path=AlgorithmConfig.IsShowBorder,Mode=TwoWay}"> IsChecked="{Binding Path=AlgorithmConfig.IsShowCenterAxis,Mode=TwoWay}">
<behaviors:Interaction.Triggers>
<behaviors:EventTrigger EventName="Checked">
<behaviors:InvokeCommandAction Command="{Binding IsBorderShowChangedCommand}" />
</behaviors:EventTrigger>
<behaviors:EventTrigger EventName="Unchecked">
<behaviors:InvokeCommandAction Command="{Binding IsBorderShowChangedCommand}" />
</behaviors:EventTrigger>
</behaviors:Interaction.Triggers>
</CheckBox>
</Border>
<!-- 启用边线过滤 -->
<Border ToolTip="启用边线过滤" Background="Transparent" Margin="0,10,0,0">
<CheckBox Style="{StaticResource CheckBox_IsBorderEnabled}" Width="32" Height="32"
IsEnabled="{Binding Path=ViewStatus,Converter={StaticResource NDIViewStatus2IsEnabledConverter}}"
IsChecked="{Binding Path=AlgorithmConfig.IsBorderEnabled,Mode=TwoWay}">
<behaviors:Interaction.Triggers> <behaviors:Interaction.Triggers>
<behaviors:EventTrigger EventName="Checked"> <behaviors:EventTrigger EventName="Checked">
<behaviors:InvokeCommandAction Command="{Binding IsBorderEnabledChangedCommand}" /> <behaviors:InvokeCommandAction Command="{Binding SaveAlgorithmConfigCommand}" />
</behaviors:EventTrigger> </behaviors:EventTrigger>
<behaviors:EventTrigger EventName="Unchecked"> <behaviors:EventTrigger EventName="Unchecked">
<behaviors:InvokeCommandAction Command="{Binding IsBorderEnabledChangedCommand}" /> <behaviors:InvokeCommandAction Command="{Binding SaveAlgorithmConfigCommand}" />
</behaviors:EventTrigger> </behaviors:EventTrigger>
</behaviors:Interaction.Triggers> </behaviors:Interaction.Triggers>
</CheckBox> </CheckBox>
</Border> </Border>
<!-- 启用面积百分比校准 ## 仅单人机位可用 --> <!-- 启用面积百分比校准 ## 仅单人机位可用 -->
<Border ToolTip="启用面积百分比校准" Background="Transparent" Margin="0,10,0,0"> <Border ToolTip="启用面积百分比校准" Background="Transparent" Margin="0,0,10,0">
<CheckBox Style="{StaticResource CheckBox_IsAreaCorrectionEnabled}" Width="32" Height="32" <CheckBox Style="{StaticResource CheckBox_IsAreaCorrectionEnabled}" Width="32" Height="32"
IsChecked="{Binding Path=AlgorithmConfig.IsAreaCorrectionEnabled,Mode=TwoWay}"> IsChecked="{Binding Path=AlgorithmConfig.IsAreaCorrectionEnabled,Mode=TwoWay}">
<CheckBox.IsEnabled> <CheckBox.IsEnabled>
...@@ -265,21 +232,57 @@ ...@@ -265,21 +232,57 @@
</CheckBox> </CheckBox>
</Border> </Border>
<!-- 手动模式显示中轴线 --> <!-- 启用边线过滤 -->
<Border ToolTip="手动模式显示中轴线" Background="Transparent" Margin="0,10,0,0"> <Border ToolTip="启用边线过滤" Background="Transparent" Margin="0,0,10,0">
<CheckBox Style="{StaticResource CheckBox_IsShowCenterAxis}" Width="32" Height="32" <CheckBox Style="{StaticResource CheckBox_IsBorderEnabled}" Width="32" Height="32"
ToolTip="手动模式显示中轴线" IsEnabled="{Binding Path=ViewStatus,Converter={StaticResource NDIViewStatus2IsEnabledConverter}}"
IsChecked="{Binding Path=AlgorithmConfig.IsShowCenterAxis,Mode=TwoWay}"> IsChecked="{Binding Path=AlgorithmConfig.IsBorderEnabled,Mode=TwoWay}">
<behaviors:Interaction.Triggers> <behaviors:Interaction.Triggers>
<behaviors:EventTrigger EventName="Checked"> <behaviors:EventTrigger EventName="Checked">
<behaviors:InvokeCommandAction Command="{Binding SaveAlgorithmConfigCommand}" /> <behaviors:InvokeCommandAction Command="{Binding IsBorderEnabledChangedCommand}" />
</behaviors:EventTrigger> </behaviors:EventTrigger>
<behaviors:EventTrigger EventName="Unchecked"> <behaviors:EventTrigger EventName="Unchecked">
<behaviors:InvokeCommandAction Command="{Binding SaveAlgorithmConfigCommand}" /> <behaviors:InvokeCommandAction Command="{Binding IsBorderEnabledChangedCommand}" />
</behaviors:EventTrigger>
</behaviors:Interaction.Triggers>
</CheckBox>
</Border>
<!-- 显示边线 -->
<Border ToolTip="显示边线" Background="Transparent" Margin="0,0,0,0">
<CheckBox Style="{StaticResource CheckBox_IsBorderShow}" Width="32" Height="32"
IsEnabled="{Binding Path=ViewStatus,Converter={StaticResource NDIViewStatus2IsEnabledConverter}}"
IsChecked="{Binding Path=AlgorithmConfig.IsShowBorder,Mode=TwoWay}">
<behaviors:Interaction.Triggers>
<behaviors:EventTrigger EventName="Checked">
<behaviors:InvokeCommandAction Command="{Binding IsBorderShowChangedCommand}" />
</behaviors:EventTrigger>
<behaviors:EventTrigger EventName="Unchecked">
<behaviors:InvokeCommandAction Command="{Binding IsBorderShowChangedCommand}" />
</behaviors:EventTrigger> </behaviors:EventTrigger>
</behaviors:Interaction.Triggers> </behaviors:Interaction.Triggers>
</CheckBox> </CheckBox>
</Border> </Border>
</StackPanel>
</Grid>
<!-- 右侧 功能区 -->
<Grid Grid.Row="1" Grid.Column="2">
<Grid.RowDefinitions>
<RowDefinition Height="*"></RowDefinition>
<RowDefinition Height="*"></RowDefinition>
</Grid.RowDefinitions>
<!-- 功能区 -->
<StackPanel Orientation="Vertical" VerticalAlignment="Top">
<Border ToolTip="设置" Background="Transparent">
<Button Height="32" Width="32" HorizontalAlignment="Center"
IsEnabled="{Binding Path=ViewStatus,Converter={StaticResource NDIViewStatus2IsEnabledConverter_SettingButton}}"
Style="{StaticResource Button_Setting_Open}"
Command="{Binding Path=SettingCommand,Mode=OneWay}"
CommandParameter="{Binding ElementName=uc,Path=NDIKey,Mode=OneWay}"></Button>
</Border>
</StackPanel> </StackPanel>
<!-- AI功能区 --> <!-- AI功能区 -->
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment