summaryrefslogtreecommitdiffstats
path: root/win/CS/HandBrakeWPF
diff options
context:
space:
mode:
authorsr55 <[email protected]>2012-12-29 14:25:17 +0000
committersr55 <[email protected]>2012-12-29 14:25:17 +0000
commit3bb7333006c2ace5e3aaabfc80c5a00dcd92350e (patch)
treee135a842cb4a14b5acf5315c46105ca98fda7cb4 /win/CS/HandBrakeWPF
parenta27835f8854129a45b8e9f3c28614966848ff9dd (diff)
WinGui: Add the plist keys and fix numerous bugs in the x264 preset/tune/profile/level code.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5115 b64f7644-9d1e-0410-96f1-a4d463321fa5
Diffstat (limited to 'win/CS/HandBrakeWPF')
-rw-r--r--win/CS/HandBrakeWPF/ViewModels/VideoViewModel.cs20
-rw-r--r--win/CS/HandBrakeWPF/Views/VideoView.xaml3
2 files changed, 18 insertions, 5 deletions
diff --git a/win/CS/HandBrakeWPF/ViewModels/VideoViewModel.cs b/win/CS/HandBrakeWPF/ViewModels/VideoViewModel.cs
index c4acd7fa8..b0b46b760 100644
--- a/win/CS/HandBrakeWPF/ViewModels/VideoViewModel.cs
+++ b/win/CS/HandBrakeWPF/ViewModels/VideoViewModel.cs
@@ -388,6 +388,9 @@ namespace HandBrakeWPF.ViewModels
// Update the Quality Slider. Make sure the bounds are up to date with the users settings.
this.SetQualitySliderBounds();
+
+ // Hide the x264 controls when not needed.
+ this.DisplayX264Options = value == VideoEncoder.X264;
}
}
@@ -419,13 +422,13 @@ namespace HandBrakeWPF.ViewModels
{
get
{
- return this.extraArguments;
+ return this.Task.ExtraAdvancedArguments;
}
set
{
- if (!object.Equals(this.extraArguments, value))
+ if (!object.Equals(this.Task.AdvancedEncoderOptions, value))
{
- this.extraArguments = value;
+ this.Task.ExtraAdvancedArguments = value;
this.NotifyOfPropertyChange(() => this.ExtraArguments);
}
}
@@ -705,7 +708,9 @@ namespace HandBrakeWPF.ViewModels
: (int)x264Preset.Medium;
this.H264Profile = preset.Task.VideoEncoder == VideoEncoder.X264 ? preset.Task.H264Profile : x264Profile.None;
this.X264Tune = preset.Task.VideoEncoder == VideoEncoder.X264 ? preset.Task.X264Tune : x264Tune.None;
- this.H264Level = preset.Task.H264Level;
+ this.H264Level = preset.Task.VideoEncoder == VideoEncoder.X264 ? preset.Task.H264Level : "Auto";
+ this.FastDecode = preset.Task.VideoEncoder == VideoEncoder.X264 && preset.Task.FastDecode;
+ this.ExtraArguments = preset.Task.ExtraAdvancedArguments;
}
}
@@ -729,6 +734,13 @@ namespace HandBrakeWPF.ViewModels
this.NotifyOfPropertyChange(() => this.Task.VideoBitrate);
this.NotifyOfPropertyChange(() => this.Task.TwoPass);
this.NotifyOfPropertyChange(() => this.Task.TurboFirstPass);
+
+ this.NotifyOfPropertyChange(() => this.X264Tune);
+ this.NotifyOfPropertyChange(() => this.X264Preset);
+ this.NotifyOfPropertyChange(() => this.H264Level);
+ this.NotifyOfPropertyChange(() => this.H264Profile);
+ this.NotifyOfPropertyChange(() => this.FastDecode);
+ this.NotifyOfPropertyChange(() => this.ExtraArguments);
}
/// <summary>
diff --git a/win/CS/HandBrakeWPF/Views/VideoView.xaml b/win/CS/HandBrakeWPF/Views/VideoView.xaml
index ffc027786..78186238d 100644
--- a/win/CS/HandBrakeWPF/Views/VideoView.xaml
+++ b/win/CS/HandBrakeWPF/Views/VideoView.xaml
@@ -157,7 +157,8 @@
<!-- Row 3 -->
<TextBlock Text="Extra Options:" Grid.Row="4" Grid.Column="0" Margin="0,10,0,0" VerticalAlignment="Center" HorizontalAlignment="Left" />
- <TextBox Text="{Binding ExtraArguments}" Height="30" MaxLines="2" Grid.Row="4" Grid.Column="1" Grid.ColumnSpan="3" Margin="5,10,0,0" VerticalAlignment="Center"
+ <TextBox Text="{Binding ExtraArguments, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
+ Height="30" MaxLines="2" Grid.Row="4" Grid.Column="1" Grid.ColumnSpan="3" Margin="5,10,0,0" VerticalAlignment="Center"
ToolTip="{Binding FullOptionsTooltip}"/>