]> granicus.if.org Git - handbrake/commitdiff
WinGui: Disable Subtitle Burn In Checkbox for PGS + MP4 #1077
authorsr55 <sr55.hb@outlook.com>
Mon, 25 Dec 2017 16:06:19 +0000 (16:06 +0000)
committersr55 <sr55.hb@outlook.com>
Mon, 25 Dec 2017 16:06:27 +0000 (16:06 +0000)
win/CS/HandBrakeWPF/HandBrakeWPF.csproj
win/CS/HandBrakeWPF/Services/Encode/Model/Models/SubtitleTrack.cs
win/CS/HandBrakeWPF/ViewModels/SubtitlesViewModel.cs
win/CS/HandBrakeWPF/Views/SubtitlesView.xaml

index dea2d44d0cb816fe5f3376d138ed22e665ef6c47..0e2d5c5eac85d312520f9efa7c8f9884ed5c378a 100644 (file)
     <Compile Include="Converters\OptionTabConverter.cs" />\r
     <Compile Include="Converters\PresetsMenuConverter.cs" />\r
     <Compile Include="Converters\Queue\PictureSettingsDescConveter.cs" />\r
+    <Compile Include="Converters\Subtitles\CanBurnSubtitleConverter.cs" />\r
     <Compile Include="Converters\Subtitles\SubtitleBurnInBehaviourConverter.cs" />\r
     <Compile Include="Converters\Subtitles\SubtitleBehaviourConverter.cs" />\r
     <Compile Include="Converters\Video\VideoOptionsTooltipConverter.cs" />\r
index d297093108312e8be4a1294d24bf2efd7b19146d..e481907bbdd4efb78ef5b86ca050306235d428eb 100644 (file)
@@ -171,8 +171,10 @@ namespace HandBrakeWPF.Services.Encode.Model.Models
                 if (this.sourceTrack != null)
                 {
                     this.Track = this.sourceTrack.ToString();
+                    this.SubtitleType = this.sourceTrack.SubtitleType;
                 }
-
+                
+                this.NotifyOfPropertyChange(() => this.SubtitleType);
                 this.NotifyOfPropertyChange(() => this.CanBeBurned);
                 this.NotifyOfPropertyChange(() => this.CanBeForced);
 
index c05fda5e507ecc33dc92eb8c00d2b518b62304de..bc8ba1ce29b8e5259442d333d4e0243287846fb9 100644 (file)
@@ -576,7 +576,7 @@ namespace HandBrakeWPF.ViewModels
 \r
             SubtitleTrack track = new SubtitleTrack\r
                                       {\r
-                                          SubtitleType = SubtitleType.VobSub,\r
+                                          SubtitleType = source.SubtitleType,\r
                                           SourceTrack = source,\r
                                       };\r
 \r
index 2268d5aaa9a4d478250af05ecf4798529774da52..2d4d7492dda02553afff5b0deebf394f20e2dd26 100644 (file)
              xmlns:controls="clr-namespace:HandBrakeWPF.Controls"\r
              xmlns:splitButton="clr-namespace:HandBrakeWPF.Controls.SplitButton"\r
              xmlns:Properties="clr-namespace:HandBrakeWPF.Properties"\r
+             xmlns:subtitles="clr-namespace:HandBrakeWPF.Converters.Subtitles"\r
              d:DesignHeight="350"\r
              d:DesignWidth="500"\r
              mc:Ignorable="d"\r
              x:Name="subTab">\r
     <UserControl.Resources>\r
         <Converters:BooleanToVisibilityConverter x:Key="booleanToVisConverter" />\r
+        <subtitles:CanBurnSubtitleConverter x:Key="canBurnSubtitleConverter" />\r
 \r
         <Style x:Key="LongToolTip" TargetType="TextBlock">\r
             <Setter Property="Width" Value="400" />\r
 \r
         <!-- Row 2 -->\r
         <ListBox Grid.Row="2" Grid.Column="0" Grid.ColumnSpan="2"\r
-                 Margin="10,10,10,10"\r
+                 Margin="10,10,10,10" x:Name="subtitleListBox"\r
                  dd:DragDrop.DropHandler="{Binding}"\r
                  dd:DragDrop.IsDragSource="True"\r
                  dd:DragDrop.IsDropTarget="True"\r
                             <CheckBox Grid.Column="3" Margin="5,0,5,0" VerticalAlignment="Center" IsEnabled="{Binding CanBeForced}" IsChecked="{Binding Forced}" />\r
                             \r
                             <TextBlock Grid.Column="4" VerticalAlignment="Center" FontWeight="Bold" Text="Burn In" />\r
-                            <CheckBox Grid.Column="5" Margin="5,0,5,0" VerticalAlignment="Center" IsChecked="{Binding Burned}" IsEnabled="{Binding CanBeBurned}">\r
+                            <CheckBox Grid.Column="5" Margin="5,0,5,0" VerticalAlignment="Center" IsChecked="{Binding Burned}" x:Name="burnInCheckbox">\r
+                                <CheckBox.IsEnabled>\r
+                                    <MultiBinding Converter="{StaticResource canBurnSubtitleConverter}">\r
+                                        <Binding Path="CanBeBurned" />\r
+                                        <Binding Path="SubtitleType" />\r
+                                        <Binding ElementName="subtitleListBox" Path="DataContext.Task"  />\r
+                                    </MultiBinding>\r
+                                </CheckBox.IsEnabled>\r
                                 <i:Interaction.Triggers>\r
                                     <i:EventTrigger EventName="Click">\r
                                         <cal:ActionMessage MethodName="SetBurnedToFalseForAllExcept">\r