summaryrefslogtreecommitdiffstats
path: root/win
diff options
context:
space:
mode:
authorsr55 <[email protected]>2015-01-23 17:39:01 +0000
committersr55 <[email protected]>2015-01-23 17:39:01 +0000
commit89cecd0032ad92c997bdda39b8c614ed1711fb11 (patch)
tree3f54ed88323c27ba98f6c41ebbb82d2da69d97b4 /win
parentbc2ae04da874138f3a3dada19221363ef8619881 (diff)
WinGui: Remove the Simple advanced options tab.
All advanced options for non-x264 encoders must now be done on the VideoTab. The x264 advanced tab can still be enabled where necessary. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6803 b64f7644-9d1e-0410-96f1-a4d463321fa5
Diffstat (limited to 'win')
-rw-r--r--win/CS/HandBrakeWPF/HandBrakeWPF.csproj9
-rw-r--r--win/CS/HandBrakeWPF/Properties/Resources.Designer.cs11
-rw-r--r--win/CS/HandBrakeWPF/Properties/Resources.resx5
-rw-r--r--win/CS/HandBrakeWPF/Startup/CastleBootstrapper.cs1
-rw-r--r--win/CS/HandBrakeWPF/ViewModels/AdvancedViewModel.cs43
-rw-r--r--win/CS/HandBrakeWPF/ViewModels/EncoderOptionsViewModel.cs159
-rw-r--r--win/CS/HandBrakeWPF/ViewModels/Interfaces/IEncoderOptionsViewModel.cs32
-rw-r--r--win/CS/HandBrakeWPF/Views/AdvancedView.xaml6
-rw-r--r--win/CS/HandBrakeWPF/Views/EncoderOptionsView.xaml28
-rw-r--r--win/CS/HandBrakeWPF/Views/EncoderOptionsView.xaml.cs27
-rw-r--r--win/CS/HandBrakeWPF/Views/VideoView.xaml24
11 files changed, 33 insertions, 312 deletions
diff --git a/win/CS/HandBrakeWPF/HandBrakeWPF.csproj b/win/CS/HandBrakeWPF/HandBrakeWPF.csproj
index d42ef184b..d8739f472 100644
--- a/win/CS/HandBrakeWPF/HandBrakeWPF.csproj
+++ b/win/CS/HandBrakeWPF/HandBrakeWPF.csproj
@@ -234,9 +234,7 @@
<Compile Include="Services\UpdateService.cs" />
<Compile Include="Services\PrePostActionService.cs" />
<Compile Include="ViewModels\AdvancedViewModel.cs" />
- <Compile Include="ViewModels\EncoderOptionsViewModel.cs" />
<Compile Include="ViewModels\InstantViewModel.cs" />
- <Compile Include="ViewModels\Interfaces\IEncoderOptionsViewModel.cs" />
<Compile Include="ViewModels\Interfaces\IInstantViewModel.cs" />
<Compile Include="ViewModels\Interfaces\IX264ViewModel.cs" />
<Compile Include="ViewModels\Interfaces\IQueueSelectionViewModel.cs" />
@@ -244,9 +242,6 @@
<Compile Include="Views\AdvancedView.xaml.cs">
<DependentUpon>AdvancedView.xaml</DependentUpon>
</Compile>
- <Compile Include="Views\EncoderOptionsView.xaml.cs">
- <DependentUpon>EncoderOptionsView.xaml</DependentUpon>
- </Compile>
<Compile Include="Views\InstantView.xaml.cs">
<DependentUpon>InstantView.xaml</DependentUpon>
</Compile>
@@ -425,10 +420,6 @@
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
- <Page Include="Views\EncoderOptionsView.xaml">
- <Generator>MSBuild:Compile</Generator>
- <SubType>Designer</SubType>
- </Page>
<Page Include="Views\InstantView.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
diff --git a/win/CS/HandBrakeWPF/Properties/Resources.Designer.cs b/win/CS/HandBrakeWPF/Properties/Resources.Designer.cs
index b098b2075..1bcbbbae1 100644
--- a/win/CS/HandBrakeWPF/Properties/Resources.Designer.cs
+++ b/win/CS/HandBrakeWPF/Properties/Resources.Designer.cs
@@ -237,6 +237,17 @@ namespace HandBrakeWPF.Properties {
}
/// <summary>
+ /// Looks up a localized string similar to There is no options pane available for this encoder.
+ ///
+ ///Please use the &apos;Extra Options&apos; box on the &apos;Video&apos; tab to input any additional encoder parameters you may need..
+ /// </summary>
+ public static string Advanced_NoOptionsPaneAvailable {
+ get {
+ return ResourceManager.GetString("Advanced_NoOptionsPaneAvailable", resourceCulture);
+ }
+ }
+
+ /// <summary>
/// Looks up a localized string similar to The x264 Preset / Tune / Profile and Level options are currently in use on the Video Tab.
///
///To enable this tab, check the &quot;Use Advanced Tab instead&quot; option on the Video Tab.
diff --git a/win/CS/HandBrakeWPF/Properties/Resources.resx b/win/CS/HandBrakeWPF/Properties/Resources.resx
index 54cb3ab98..aa554ffa9 100644
--- a/win/CS/HandBrakeWPF/Properties/Resources.resx
+++ b/win/CS/HandBrakeWPF/Properties/Resources.resx
@@ -544,4 +544,9 @@ Not both at the same time!</value>
<value>The preset may be corrupted or from an older version of HandBrake which is not supported.
Presets from older versions must be re-created in the current version.</value>
</data>
+ <data name="Advanced_NoOptionsPaneAvailable" xml:space="preserve">
+ <value>There is no options pane available for this encoder.
+
+Please use the 'Extra Options' box on the 'Video' tab to input any additional encoder parameters you may need.</value>
+ </data>
</root> \ No newline at end of file
diff --git a/win/CS/HandBrakeWPF/Startup/CastleBootstrapper.cs b/win/CS/HandBrakeWPF/Startup/CastleBootstrapper.cs
index 8ece8c41a..a812e4f08 100644
--- a/win/CS/HandBrakeWPF/Startup/CastleBootstrapper.cs
+++ b/win/CS/HandBrakeWPF/Startup/CastleBootstrapper.cs
@@ -93,7 +93,6 @@ namespace HandBrakeWPF.Startup
this.windsorContainer.Register(Component.For<IAudioViewModel>().ImplementedBy<AudioViewModel>().LifeStyle.Is(LifestyleType.Singleton));
this.windsorContainer.Register(Component.For<IX264ViewModel>().ImplementedBy<X264ViewModel>().LifeStyle.Is(LifestyleType.Singleton));
this.windsorContainer.Register(Component.For<IAdvancedViewModel>().ImplementedBy<AdvancedViewModel>().LifeStyle.Is(LifestyleType.Singleton));
- this.windsorContainer.Register(Component.For<IEncoderOptionsViewModel>().ImplementedBy<EncoderOptionsViewModel>().LifeStyle.Is(LifestyleType.Singleton));
this.windsorContainer.Register(Component.For<IPictureSettingsViewModel>().ImplementedBy<PictureSettingsViewModel>().LifeStyle.Is(LifestyleType.Singleton));
this.windsorContainer.Register(Component.For<IChaptersViewModel>().ImplementedBy<ChaptersViewModel>().LifeStyle.Is(LifestyleType.Singleton));
this.windsorContainer.Register(Component.For<ISubtitlesViewModel>().ImplementedBy<SubtitlesViewModel>().LifeStyle.Is(LifestyleType.Singleton));
diff --git a/win/CS/HandBrakeWPF/ViewModels/AdvancedViewModel.cs b/win/CS/HandBrakeWPF/ViewModels/AdvancedViewModel.cs
index e01a38210..18606bfa0 100644
--- a/win/CS/HandBrakeWPF/ViewModels/AdvancedViewModel.cs
+++ b/win/CS/HandBrakeWPF/ViewModels/AdvancedViewModel.cs
@@ -24,11 +24,6 @@ namespace HandBrakeWPF.ViewModels
#region Constants and Fields
/// <summary>
- /// Backing field for displaying x264 options
- /// </summary>
- private bool? displayX264Options;
-
- /// <summary>
/// The show x 264 panel.
/// </summary>
private bool showX264Panel;
@@ -43,11 +38,6 @@ namespace HandBrakeWPF.ViewModels
public IX264ViewModel X264ViewModel { get; set; }
/// <summary>
- /// Gets or sets the encoder options view model.
- /// </summary>
- public IEncoderOptionsViewModel EncoderOptionsViewModel { get; set; }
-
- /// <summary>
/// Gets or sets a value indicating whether show x 264 panel.
/// </summary>
public bool ShowX264Panel
@@ -63,22 +53,6 @@ namespace HandBrakeWPF.ViewModels
}
}
- /// <summary>
- /// Gets or sets a value indicating whether DisplayX264Options.
- /// </summary>
- public bool? ShowSimplePanel
- {
- get
- {
- return this.displayX264Options;
- }
- set
- {
- this.displayX264Options = value;
- this.NotifyOfPropertyChange(() => this.ShowSimplePanel);
- }
- }
-
#endregion
#region Implemented Interfaces
@@ -91,19 +65,8 @@ namespace HandBrakeWPF.ViewModels
/// </param>
public void SetEncoder(VideoEncoder encoder)
{
- this.EncoderOptionsViewModel.SetEncoder(encoder);
this.X264ViewModel.SetEncoder(encoder);
-
- if (encoder == VideoEncoder.X264)
- {
- this.ShowX264Panel = true;
- this.ShowSimplePanel = false;
- }
- else
- {
- this.ShowX264Panel = false;
- this.ShowSimplePanel = true;
- }
+ this.ShowX264Panel = encoder == VideoEncoder.X264;
}
/// <summary>
@@ -111,7 +74,6 @@ namespace HandBrakeWPF.ViewModels
/// </summary>
public void Clear()
{
- this.EncoderOptionsViewModel.Clear();
this.X264ViewModel.Clear();
}
@@ -126,7 +88,6 @@ namespace HandBrakeWPF.ViewModels
/// </param>
public void SetPreset(Preset preset, EncodeTask task)
{
- this.EncoderOptionsViewModel.SetPreset(preset, task);
this.X264ViewModel.SetPreset(preset, task);
}
@@ -138,7 +99,6 @@ namespace HandBrakeWPF.ViewModels
/// </param>
public void UpdateTask(EncodeTask task)
{
- this.EncoderOptionsViewModel.UpdateTask(task);
this.X264ViewModel.UpdateTask(task);
this.SetEncoder(task.VideoEncoder);
@@ -161,7 +121,6 @@ namespace HandBrakeWPF.ViewModels
/// </param>
public void SetSource(Source source, Title title, Preset preset, EncodeTask task)
{
- this.EncoderOptionsViewModel.SetSource(source, title, preset, task);
this.X264ViewModel.SetSource(source, title, preset, task);
}
diff --git a/win/CS/HandBrakeWPF/ViewModels/EncoderOptionsViewModel.cs b/win/CS/HandBrakeWPF/ViewModels/EncoderOptionsViewModel.cs
deleted file mode 100644
index ae9cc386f..000000000
--- a/win/CS/HandBrakeWPF/ViewModels/EncoderOptionsViewModel.cs
+++ /dev/null
@@ -1,159 +0,0 @@
-// --------------------------------------------------------------------------------------------------------------------
-// <copyright file="EncoderOptionsViewModel.cs" company="HandBrake Project (http://handbrake.fr)">
-// This file is part of the HandBrake source code - It may be used under the terms of the GNU General Public License.
-// </copyright>
-// <summary>
-// The Simple Encoder options screen
-// </summary>
-// --------------------------------------------------------------------------------------------------------------------
-
-namespace HandBrakeWPF.ViewModels
-{
- using System.Collections.Generic;
-
- using HandBrake.ApplicationServices.Services.Encode.Model;
- using HandBrake.ApplicationServices.Services.Scan.Model;
- using HandBrake.Interop.Model.Encoding;
-
- using HandBrakeWPF.Services.Presets.Model;
- using HandBrakeWPF.ViewModels.Interfaces;
-
- /// <summary>
- /// The Simple Encoder options screen
- /// </summary>
- public class EncoderOptionsViewModel : ViewModelBase, IEncoderOptionsViewModel
- {
- /// <summary>
- /// The cached options.
- /// </summary>
- private readonly Dictionary<VideoEncoder, string> cachedOptions = new Dictionary<VideoEncoder, string>();
-
- /// <summary>
- /// Initializes a new instance of the <see cref="EncoderOptionsViewModel"/> class.
- /// </summary>
- public EncoderOptionsViewModel()
- {
- this.Task = new EncodeTask();
- }
-
- /// <summary>
- /// Gets or sets the task.
- /// </summary>
- public EncodeTask Task { get; set; }
-
- /// <summary>
- /// Gets or sets the preset.
- /// </summary>
- public Preset Preset { get; set; }
-
- /// <summary>
- /// Gets or sets the current video encoder.
- /// </summary>
- public VideoEncoder CurrentVideoEncoder { get; set; }
-
- /// <summary>
- /// Gets or sets the options string.
- /// </summary>
- public string AdvancedOptionsString
- {
- get
- {
- return this.Task.AdvancedEncoderOptions;
- }
- set
- {
- this.Task.AdvancedEncoderOptions = value;
- this.NotifyOfPropertyChange(() => this.AdvancedOptionsString);
- }
- }
-
- /// <summary>
- /// The set source.
- /// </summary>
- /// <param name="source">
- /// The source.
- /// </param>
- /// <param name="selectedTitle">
- /// The selected title.
- /// </param>
- /// <param name="currentPreset">
- /// The current preset.
- /// </param>
- /// <param name="task">
- /// The task.
- /// </param>
- public void SetSource(Source source, Title selectedTitle, Preset currentPreset, EncodeTask task)
- {
- this.Task = task;
- this.Preset = currentPreset;
- this.NotifyOfPropertyChange(() => this.AdvancedOptionsString);
- }
-
- /// <summary>
- /// The set preset.
- /// </summary>
- /// <param name="preset">
- /// The preset.
- /// </param>
- /// <param name="task">
- /// The task.
- /// </param>
- public void SetPreset(Preset preset, EncodeTask task)
- {
- this.Task = task;
- this.Preset = preset;
- this.AdvancedOptionsString = preset.Task.AdvancedEncoderOptions;
- }
-
- /// <summary>
- /// The update task.
- /// </summary>
- /// <param name="task">
- /// The task.
- /// </param>
- public void UpdateTask(EncodeTask task)
- {
- this.Task = task;
- this.NotifyOfPropertyChange(() => this.AdvancedOptionsString);
- }
-
- /// <summary>
- /// The set encoder.
- /// </summary>
- /// <param name="encoder">
- /// The encoder.
- /// </param>
- public void SetEncoder(VideoEncoder encoder)
- {
- // Cache the existing string so it can be reused if the user changes the encoder back.
- if (!string.IsNullOrEmpty(this.AdvancedOptionsString))
- {
- this.cachedOptions[CurrentVideoEncoder] = this.AdvancedOptionsString;
- }
-
- this.CurrentVideoEncoder = encoder;
-
- // Set the option from the cached version if we have one.
- string advacnedOptionsString;
- if (cachedOptions.TryGetValue(encoder, out advacnedOptionsString)
- && !string.IsNullOrEmpty(advacnedOptionsString))
- {
- this.AdvancedOptionsString = advacnedOptionsString;
- }
- else
- {
- this.AdvancedOptionsString = this.Preset != null && this.Preset.Task != null
- && !string.IsNullOrEmpty(this.Preset.Task.AdvancedEncoderOptions)
- ? this.Preset.Task.AdvancedEncoderOptions
- : string.Empty;
- }
- }
-
- /// <summary>
- /// The clear.
- /// </summary>
- public void Clear()
- {
- }
- }
-}
diff --git a/win/CS/HandBrakeWPF/ViewModels/Interfaces/IEncoderOptionsViewModel.cs b/win/CS/HandBrakeWPF/ViewModels/Interfaces/IEncoderOptionsViewModel.cs
deleted file mode 100644
index 10f1270d4..000000000
--- a/win/CS/HandBrakeWPF/ViewModels/Interfaces/IEncoderOptionsViewModel.cs
+++ /dev/null
@@ -1,32 +0,0 @@
-// --------------------------------------------------------------------------------------------------------------------
-// <copyright file="IEncoderOptionsViewModel.cs" company="HandBrake Project (http://handbrake.fr)">
-// This file is part of the HandBrake source code - It may be used under the terms of the GNU General Public License.
-// </copyright>
-// <summary>
-// The Simple Encoder Options Tab
-// </summary>
-// --------------------------------------------------------------------------------------------------------------------
-
-namespace HandBrakeWPF.ViewModels.Interfaces
-{
- using HandBrake.Interop.Model.Encoding;
-
- /// <summary>
- /// The Simple Encoder Options Tab
- /// </summary>
- public interface IEncoderOptionsViewModel : ITabInterface
- {
- /// <summary>
- /// Set the currently selected encoder.
- /// </summary>
- /// <param name="encoder">
- /// The Video Encoder.
- /// </param>
- void SetEncoder(VideoEncoder encoder);
-
- /// <summary>
- /// Clear out the settings.
- /// </summary>
- void Clear();
- }
-}
diff --git a/win/CS/HandBrakeWPF/Views/AdvancedView.xaml b/win/CS/HandBrakeWPF/Views/AdvancedView.xaml
index 99d05b099..a4fa3ca27 100644
--- a/win/CS/HandBrakeWPF/Views/AdvancedView.xaml
+++ b/win/CS/HandBrakeWPF/Views/AdvancedView.xaml
@@ -4,6 +4,7 @@
xmlns:Converters="clr-namespace:HandBrakeWPF.Converters"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
+ xmlns:Properties="clr-namespace:HandBrakeWPF.Properties"
x:Name="advancedView"
mc:Ignorable="d"
>
@@ -21,8 +22,9 @@
<ContentControl x:Name="X264ViewModel"
Visibility="{Binding ShowX264Panel, Converter={StaticResource BooleanVisibilityConverter}}" />
- <ContentControl x:Name="EncoderOptionsViewModel"
- Visibility="{Binding ShowSimplePanel, Converter={StaticResource BooleanVisibilityConverter}}" />
+ <TextBlock Text="{x:Static Properties:Resources.Advanced_NoOptionsPaneAvailable}" Grid.Row="0"
+ TextWrapping="Wrap" Width="480" Margin="0, 100, 0, 0" FontSize="12"
+ Visibility="{Binding ShowX264Panel, Converter={StaticResource BooleanVisibilityConverter}, ConverterParameter=true}" />
</Grid>
diff --git a/win/CS/HandBrakeWPF/Views/EncoderOptionsView.xaml b/win/CS/HandBrakeWPF/Views/EncoderOptionsView.xaml
deleted file mode 100644
index c4e64d6a8..000000000
--- a/win/CS/HandBrakeWPF/Views/EncoderOptionsView.xaml
+++ /dev/null
@@ -1,28 +0,0 @@
-<UserControl x:Class="HandBrakeWPF.Views.EncoderOptionsView"
- xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
- xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
- xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
- xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
- x:Name="x264View"
- mc:Ignorable="d"
- >
- <Grid>
- <Grid.RowDefinitions>
- <RowDefinition Height="Auto" />
- <RowDefinition Height="100" />
- </Grid.RowDefinitions>
-
- <TextBlock Margin="10,5,10,0" Grid.Row="0"
- VerticalAlignment="Center"
- FontWeight="Bold"
- Text="Advanced Query"
- />
- <TextBox Grid.Row="1"
- Margin="10,5,10,5"
- HorizontalAlignment="Stretch"
- VerticalAlignment="Stretch"
- Text="{Binding AdvancedOptionsString, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
- TextWrapping="Wrap"
- />
- </Grid>
-</UserControl> \ No newline at end of file
diff --git a/win/CS/HandBrakeWPF/Views/EncoderOptionsView.xaml.cs b/win/CS/HandBrakeWPF/Views/EncoderOptionsView.xaml.cs
deleted file mode 100644
index 003d8274e..000000000
--- a/win/CS/HandBrakeWPF/Views/EncoderOptionsView.xaml.cs
+++ /dev/null
@@ -1,27 +0,0 @@
-// --------------------------------------------------------------------------------------------------------------------
-// <copyright file="EncoderOptionsView.xaml.cs" company="HandBrake Project (http://handbrake.fr)">
-// This file is part of the HandBrake source code - It may be used under the terms of the GNU General Public License.
-// </copyright>
-// <summary>
-// Interaction logic for EncoderOptionsView.xaml
-// </summary>
-// --------------------------------------------------------------------------------------------------------------------
-
-namespace HandBrakeWPF.Views
-{
- using System.Windows.Controls;
-
- /// <summary>
- /// Interaction logic for AdvancedView.xaml
- /// </summary>
- public partial class EncoderOptionsView : UserControl
- {
- /// <summary>
- /// Initializes a new instance of the <see cref="EncoderOptionsView"/> class.
- /// </summary>
- public EncoderOptionsView()
- {
- InitializeComponent();
- }
- }
-}
diff --git a/win/CS/HandBrakeWPF/Views/VideoView.xaml b/win/CS/HandBrakeWPF/Views/VideoView.xaml
index 99a589aa4..6aca9a1d4 100644
--- a/win/CS/HandBrakeWPF/Views/VideoView.xaml
+++ b/win/CS/HandBrakeWPF/Views/VideoView.xaml
@@ -119,19 +119,19 @@
</StackPanel>
<!-- H264 settings -->
- <Grid Grid.Row="1" Grid.ColumnSpan="2" Margin="0,10,0,0" Visibility="{Binding DisplayOptimiseOptions, Converter={StaticResource boolToVisConverter}}">
+ <Grid Grid.Row="1" Grid.ColumnSpan="2" Margin="0,10,0,0">
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
- <TextBlock Text="Optimise Video:" Margin="0,0,0,8" Grid.Row="0" Grid.ColumnSpan="2" FontWeight="Bold" VerticalAlignment="Center" />
+ <TextBlock Text="Optimise Video:" Margin="0,0,0,0" Grid.Row="0" Grid.ColumnSpan="2" FontWeight="Bold" VerticalAlignment="Center" />
- <CheckBox Content="Use Advanced Tab instead" Grid.Row="1" IsChecked="{Binding UseAdvancedTab}"
+ <CheckBox Content="Use Advanced Tab instead" Grid.Row="1" IsChecked="{Binding UseAdvancedTab}" Margin="0,5,0,0"
Visibility="{Binding ShowAdvancedTab, Converter={StaticResource boolToVisConverter}, ConverterParameter=false}" />
- <Grid Grid.Row="2" Margin="0,5,0,0" IsEnabled="{Binding UseAdvancedTab, Converter={StaticResource inverseConverter}}">
+ <Grid Grid.Row="2" Margin="0,8,0,0" IsEnabled="{Binding UseAdvancedTab, Converter={StaticResource inverseConverter}}">
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
@@ -151,8 +151,8 @@
<!-- Row 1 -->
- <TextBlock Text="Encoder Preset:" Grid.Row="1" Grid.Column="0" VerticalAlignment="Center" />
- <StackPanel Grid.Row="1" Grid.Column="1" Grid.ColumnSpan="3" Orientation="Horizontal" >
+ <TextBlock Text="Encoder Preset:" Grid.Row="1" Grid.Column="0" VerticalAlignment="Center" Visibility="{Binding DisplayOptimiseOptions, Converter={StaticResource boolToVisConverter}}" />
+ <StackPanel Grid.Row="1" Grid.Column="1" Grid.ColumnSpan="3" Orientation="Horizontal" Visibility="{Binding DisplayOptimiseOptions, Converter={StaticResource boolToVisConverter}}">
<Slider Minimum="0" Maximum="{Binding VideoPresetMaxValue}" Width="150" Value="{Binding VideoPresetValue, Mode=Default, UpdateSourceTrigger=PropertyChanged}"
IsSnapToTickEnabled="True" TickFrequency="1" TickPlacement="BottomRight" ToolTip="{x:Static Properties:Resources.Video_EncoderPreset}"
Style="{StaticResource LongToolTipHolder}" />
@@ -170,19 +170,19 @@
<!-- Row 2-->
- <TextBlock Text="H.264 Profile:" Grid.Row="3" Grid.Column="0" Margin="0,10,0,0" VerticalAlignment="Center" />
- <ComboBox Width="100" Grid.Row="3" Grid.Column="1" Margin="5,10,5,0" Height="22" VerticalAlignment="Center"
+ <TextBlock Text="H.264 Profile:" Grid.Row="3" Grid.Column="0" Margin="0,10,0,0" VerticalAlignment="Center" Visibility="{Binding DisplayOptimiseOptions, Converter={StaticResource boolToVisConverter}}"/>
+ <ComboBox Width="100" Grid.Row="3" Grid.Column="1" Margin="5,10,5,0" Height="22" VerticalAlignment="Center" Visibility="{Binding DisplayOptimiseOptions, Converter={StaticResource boolToVisConverter}}"
ItemsSource="{Binding VideoProfiles}" DisplayMemberPath="DisplayName" SelectedItem="{Binding VideoProfile}"
Style="{StaticResource LongToolTipHolder}" ToolTip="{x:Static Properties:Resources.Video_EncoderProfile}" />
- <TextBlock Text="H.264 Level:" Grid.Row="3" Grid.Column="2" Margin="10,10,0,0" VerticalAlignment="Center" />
- <ComboBox Width="100" Grid.Row="3" Grid.Column="3" Margin="5,10,5,0" Height="22" VerticalAlignment="Center"
+ <TextBlock Text="H.264 Level:" Grid.Row="3" Grid.Column="2" Margin="10,10,0,0" VerticalAlignment="Center" Visibility="{Binding DisplayOptimiseOptions, Converter={StaticResource boolToVisConverter}}" />
+ <ComboBox Width="100" Grid.Row="3" Grid.Column="3" Margin="5,10,5,0" Height="22" VerticalAlignment="Center" Visibility="{Binding DisplayOptimiseOptions, Converter={StaticResource boolToVisConverter}}"
ItemsSource="{Binding VideoLevels}" DisplayMemberPath="DisplayName" SelectedItem="{Binding VideoLevel}"
Style="{StaticResource LongToolTipHolder}" ToolTip="{x:Static Properties:Resources.Video_EncoderLevel}"/>
<!-- 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, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
+ <TextBlock Text="Extra Options:" Grid.Row="4" Grid.Column="0" Margin="0,5,0,0" VerticalAlignment="Center" HorizontalAlignment="Left" />
+ <TextBox Text="{Binding ExtraArguments, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" MinWidth="200"
Height="30" MaxLines="2" Grid.Row="4" Grid.Column="1" Grid.ColumnSpan="3" Margin="5,10,0,0" VerticalAlignment="Center"
ToolTip="{Binding FullOptionsTooltip}" Style="{StaticResource LongToolTipHolder}" >
<TextBox.ContextMenu>