summaryrefslogtreecommitdiffstats
path: root/win/CS/HandBrakeWPF/Converters
diff options
context:
space:
mode:
authorsr55 <[email protected]>2015-05-26 20:30:10 +0000
committersr55 <[email protected]>2015-05-26 20:30:10 +0000
commit3ca17e6454929d52b65a6e712cb6a99d9e26c2de (patch)
tree52a4d8aafeffb787f6f17881a900687e61f88de7 /win/CS/HandBrakeWPF/Converters
parent6f6f447ca0b5453964d9f6c94cffed4a81e8d184 (diff)
WinGui: Adding new dropdown to the Configure Audio Options. The new "Track Setting Default Behaviour" allows the choice of what settings are used for automatically added tracks.
1. All Preset tracks are cloned for each of the added languages tracks. 2. The first preset track is cloned for each of the added languages tracks. 3. Default 160kbit DPL2 AAC audio track for each of the added languages tracks. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@7228 b64f7644-9d1e-0410-96f1-a4d463321fa5
Diffstat (limited to 'win/CS/HandBrakeWPF/Converters')
-rw-r--r--win/CS/HandBrakeWPF/Converters/Audio/AudioTrackDefaultBehaviourConverter.cs91
1 files changed, 91 insertions, 0 deletions
diff --git a/win/CS/HandBrakeWPF/Converters/Audio/AudioTrackDefaultBehaviourConverter.cs b/win/CS/HandBrakeWPF/Converters/Audio/AudioTrackDefaultBehaviourConverter.cs
new file mode 100644
index 000000000..2c779bbce
--- /dev/null
+++ b/win/CS/HandBrakeWPF/Converters/Audio/AudioTrackDefaultBehaviourConverter.cs
@@ -0,0 +1,91 @@
+// --------------------------------------------------------------------------------------------------------------------
+// <copyright file="AudioTrackDefaultBehaviourConverter.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>
+// Audio Track Default Behaviour Converter
+// </summary>
+// --------------------------------------------------------------------------------------------------------------------
+
+namespace HandBrakeWPF.Converters.Audio
+{
+ using System;
+ using System.ComponentModel;
+ using System.Globalization;
+ using System.Linq;
+ using System.Windows.Data;
+
+ using HandBrake.ApplicationServices.Utilities;
+
+ using HandBrakeWPF.Model.Audio;
+
+ /// <summary>
+ /// Audio Behaviour Converter
+ /// </summary>
+ public class AudioTrackDefaultBehaviourConverter : IValueConverter
+ {
+ /// <summary>
+ /// The convert.
+ /// </summary>
+ /// <param name="value">
+ /// The value.
+ /// </param>
+ /// <param name="targetType">
+ /// The target type.
+ /// </param>
+ /// <param name="parameter">
+ /// The parameter.
+ /// </param>
+ /// <param name="culture">
+ /// The culture.
+ /// </param>
+ /// <returns>
+ /// The <see cref="object"/>.
+ /// </returns>
+ public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
+ {
+ if (value != null && value.GetType() == typeof(BindingList<AudioTrackDefaultsMode>))
+ {
+ return
+ new BindingList<string>(
+ EnumHelper<AudioTrackDefaultsMode>.GetEnumDisplayValues(typeof(AudioTrackDefaultsMode)).ToList());
+ }
+
+ if (value != null && value.GetType() == typeof(AudioTrackDefaultsMode))
+ {
+ return EnumHelper<AudioTrackDefaultsMode>.GetDisplay((AudioTrackDefaultsMode)value);
+ }
+
+ return null;
+ }
+
+ /// <summary>
+ /// The convert back.
+ /// </summary>
+ /// <param name="value">
+ /// The value.
+ /// </param>
+ /// <param name="targetType">
+ /// The target type.
+ /// </param>
+ /// <param name="parameter">
+ /// The parameter.
+ /// </param>
+ /// <param name="culture">
+ /// The culture.
+ /// </param>
+ /// <returns>
+ /// The <see cref="object"/>.
+ /// </returns>
+ public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
+ {
+ string name = value as string;
+ if (!string.IsNullOrEmpty(name))
+ {
+ return EnumHelper<AudioTrackDefaultsMode>.GetValue(name);
+ }
+
+ return null;
+ }
+ }
+}