// --------------------------------------------------------------------------------------------------------------------
-// <copyright file="DisplayName.cs" company="HandBrake Project (http://handbrake.fr)">
+// <copyright file="DisplayName.cs" company="HandBrake Project (https://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>
--- /dev/null
+// --------------------------------------------------------------------------------------------------------------------
+// <copyright file="Mp4BehaviourConverter.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>
+// Process Priority Converter
+// </summary>
+// --------------------------------------------------------------------------------------------------------------------
+
+namespace HandBrakeWPF.Converters.Options
+{
+ using System;
+ using System.ComponentModel;
+ using System.Globalization;
+ using System.Linq;
+ using System.Windows.Data;
+
+ using HandBrakeWPF.Model.Options;
+ using HandBrakeWPF.Utilities;
+
+ public class Mp4BehaviourConverter : ResourceConverterBase<Mp4Behaviour>, IValueConverter
+ {
+ }
+}
--- /dev/null
+// --------------------------------------------------------------------------------------------------------------------
+// <copyright file="ProcessPriorityConverter.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>
+// Process Priority Converter
+// </summary>
+// --------------------------------------------------------------------------------------------------------------------
+
+namespace HandBrakeWPF.Converters.Options
+{
+ using System;
+ using System.ComponentModel;
+ using System.Globalization;
+ using System.Linq;
+ using System.Windows.Data;
+
+ using HandBrakeWPF.Model.Options;
+ using HandBrakeWPF.Utilities;
+
+ public class ProcessPriorityConverter : ResourceConverterBase<ProcessPriority>, IValueConverter
+ {
+ }
+}
--- /dev/null
+// --------------------------------------------------------------------------------------------------------------------
+// <copyright file="UpdateCheckConverter.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>
+// Defines the UpdateCheckConverter type.
+// </summary>
+// --------------------------------------------------------------------------------------------------------------------
+
+namespace HandBrakeWPF.Converters.Options
+{
+ using System.Windows.Data;
+
+ using HandBrakeWPF.Model.Options;
+
+ public class UpdateCheckConverter : ResourceConverterBase<UpdateCheck>, IValueConverter
+ {
+ }
+}
--- /dev/null
+// --------------------------------------------------------------------------------------------------------------------
+// <copyright file="ResourceConverterBase.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>
+// Defines the ResourceConverterBase type.
+// </summary>
+// --------------------------------------------------------------------------------------------------------------------
+
+namespace HandBrakeWPF.Converters
+{
+ using System;
+ using System.Collections.Generic;
+ using System.ComponentModel;
+ using System.Globalization;
+ using System.Linq;
+ using System.Text;
+ using System.Threading.Tasks;
+
+ using HandBrakeWPF.Model.Options;
+ using HandBrakeWPF.Utilities;
+
+ public class ResourceConverterBase<T>
+ {
+ /// <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<T>))
+ {
+ return
+ new BindingList<string>(
+ EnumHelper<T>.GetEnumDisplayValues(typeof(T)).ToList());
+ }
+
+ if (value != null && value.GetType() == typeof(T))
+ {
+ return EnumHelper<T>.GetDisplay((T)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<T>.GetValue(name);
+ }
+
+ return null;
+ }
+ }
+}
<Compile Include="Converters\LongToIntConverter.cs" />\r
<Compile Include="Converters\Options\FileSizeConverter.cs" />\r
<Compile Include="Converters\Options\LogLevelConverter.cs" />\r
+ <Compile Include="Converters\Options\Mp4BehaviourConverter.cs" />\r
+ <Compile Include="Converters\Options\UpdateCheckConverter.cs" />\r
+ <Compile Include="Converters\ResourceConverterBase.cs" />\r
+ <Compile Include="Model\Options\Mp4Behaviour.cs" />\r
+ <Compile Include="Converters\Options\ProcessPriorityConverter.cs" />\r
<Compile Include="Converters\OptionTabConverter.cs" />\r
<Compile Include="Converters\PresetsMenuConverter.cs" />\r
<Compile Include="Converters\Queue\InlineQueueConverter.cs" />\r
<Compile Include="Model\Filters\FilterTune.cs" />\r
<Compile Include="Model\Filters\FilterPreset.cs" />\r
<Compile Include="Model\InterfaceLanguage.cs" />\r
+ <Compile Include="Model\Options\ProcessPriority.cs" />\r
+ <Compile Include="Model\Options\UpdateCheck.cs" />\r
<Compile Include="Model\Options\WhenDone.cs" />\r
<Compile Include="Model\Picture\PresetPictureSettingsMode.cs" />\r
<Compile Include="Model\Subtitles\SubtitleBurnInBehaviourModes.cs" />\r
<Compile Include="Model\Subtitles\SubtitleBehaviourModes.cs" />\r
<Compile Include="Model\Subtitles\SubtitleBehaviours.cs" />\r
<Compile Include="Properties\Resources.Designer.cs">\r
- <AutoGen>True</AutoGen>\r
<DesignTime>True</DesignTime>\r
+ <AutoGen>True</AutoGen>\r
<DependentUpon>Resources.resx</DependentUpon>\r
</Compile>\r
<Compile Include="Properties\ResourcesTooltips.Designer.cs">\r
*/\r
if (task.OutputFormat == OutputFormat.Mp4)\r
{\r
- switch (userSettingService.GetUserSetting<int>(UserSettingConstants.UseM4v))\r
+ switch ((Mp4Behaviour)userSettingService.GetUserSetting<int>(UserSettingConstants.UseM4v))\r
{\r
- case 0: // Automatic\r
+ case Mp4Behaviour.Auto: // Automatic\r
destinationFilename += task.IncludeChapterMarkers || MP4Helper.RequiresM4v(task) ? ".m4v" : ".mp4";\r
break;\r
- case 1: // Always MP4\r
+ case Mp4Behaviour.MP4: // Always MP4\r
destinationFilename += ".mp4";\r
break;\r
- case 2: // Always M4V\r
+ case Mp4Behaviour.M4V: // Always M4V\r
destinationFilename += ".m4v";\r
break;\r
}\r
{\r
using HandBrake.Interop.Attributes;\r
\r
+ using HandBrakeWPF.Properties;\r
+\r
/// <summary>\r
/// The audio behaviours.\r
/// </summary>\r
public enum AudioBehaviourModes\r
{\r
- [DisplayName("No Audio")]\r
+ [DisplayName(typeof(Resources), "AudioBehaviourModes_None")]\r
[ShortName("none")]\r
None = 0,\r
\r
- [DisplayName("First Matching Selected Language")]\r
+ [DisplayName(typeof(Resources), "AudioBehaviourModes_FirstMatch")]\r
[ShortName("first")]\r
FirstMatch,\r
\r
- [DisplayName("All Matching Selected Languages")]\r
+ [DisplayName(typeof(Resources), "AudioBehaviourModes_AllMatching")]\r
[ShortName("all")]\r
AllMatching,\r
}\r
{\r
using HandBrake.Interop.Attributes;\r
\r
+ using HandBrakeWPF.Properties;\r
+\r
/// <summary>\r
/// The audio behaviours.\r
/// </summary>\r
public enum AudioTrackDefaultsMode\r
{\r
- [DisplayName("Use First Track as template")]\r
+ [DisplayName(typeof(Resources), "AudioBehaviourModes_FirstTrack")]\r
FirstTrack = 0,\r
\r
- [DisplayName("Use All Tracks as templates")]\r
+ [DisplayName(typeof(Resources), "AudioBehaviourModes_AllTracks")]\r
AllTracks,\r
}\r
}\r
--- /dev/null
+// --------------------------------------------------------------------------------------------------------------------
+// <copyright file="Mp4Behaviour.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>
+// Defines the Mp4Behaviour type.
+// </summary>
+// --------------------------------------------------------------------------------------------------------------------
+
+namespace HandBrakeWPF.Model.Options
+{
+ using HandBrake.Interop.Attributes;
+
+ using HandBrakeWPF.Properties;
+
+ public enum Mp4Behaviour
+ {
+ [DisplayName(typeof(Resources), "Mp4Behaviour_Auto")]
+ Auto = 0,
+
+ [DisplayName(typeof(Resources), "Mp4Behaviour_UseMp4")]
+ MP4,
+
+ [DisplayName(typeof(Resources), "Mp4Behaviour_UseM4v")]
+ M4V,
+ }
+}
+
--- /dev/null
+// --------------------------------------------------------------------------------------------------------------------
+// <copyright file="ProcessPriority.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>
+// Defines the ProcessPriority type.
+// </summary>
+// --------------------------------------------------------------------------------------------------------------------
+
+namespace HandBrakeWPF.Model.Options
+{
+ using HandBrake.Interop.Attributes;
+
+ using HandBrakeWPF.Properties;
+
+ public enum ProcessPriority
+ {
+ [DisplayName(typeof(Resources), "ProcessPriority_High")]
+ High = 0,
+
+ [DisplayName(typeof(Resources), "ProcessPriority_AboveNormal")]
+ AboveNormal,
+
+ [DisplayName(typeof(Resources), "ProcessPriority_Normal")]
+ Normal,
+
+ [DisplayName(typeof(Resources), "ProcessPriority_BelowNormal")]
+ BelowNormal,
+
+ [DisplayName(typeof(Resources), "ProcessPriority_Low")]
+ Low
+ }
+}
\ No newline at end of file
--- /dev/null
+// --------------------------------------------------------------------------------------------------------------------
+// <copyright file="UpdateCheck.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>
+// Defines the UpdateCheck type.
+// </summary>
+// --------------------------------------------------------------------------------------------------------------------
+
+namespace HandBrakeWPF.Model.Options
+{
+ using HandBrake.Interop.Attributes;
+
+ using HandBrakeWPF.Properties;
+
+ public enum UpdateCheck
+ {
+ [DisplayName(typeof(Resources), "UpdateCheck_Monthly")]
+ Monthly = 0,
+
+ [DisplayName(typeof(Resources), "UpdateCheck_Weekly")]
+ Weekly,
+ }
+}
{\r
using HandBrake.Interop.Attributes;\r
\r
+ using HandBrakeWPF.Properties;\r
+\r
/// <summary>\r
/// A enum representing each tab on the options screen.\r
/// </summary>\r
public enum OptionsTab\r
{\r
- [DisplayName("General")]\r
+ [DisplayName(typeof(Resources), "Options_General")]\r
General = 0,\r
\r
- [DisplayName("Output Files")]\r
+ [DisplayName(typeof(Resources), "Options_OutputFiles")]\r
OutputFiles,\r
\r
- [DisplayName("When Done")]\r
+ [DisplayName(typeof(Resources), "Options_WhenDone")]\r
WhenDone,\r
\r
- [DisplayName("Video")]\r
+ [DisplayName(typeof(Resources), "Options_Video")]\r
Video,\r
\r
- [DisplayName("Advanced")]\r
+ [DisplayName(typeof(Resources), "Options_Advanced")]\r
Advanced,\r
\r
- [DisplayName("Updates")]\r
+ [DisplayName(typeof(Resources), "Options_Updates")]\r
Updates,\r
\r
- [DisplayName("About HandBrake")]\r
+ [DisplayName(typeof(Resources), "Options_About")]\r
About,\r
}\r
}\r
{\r
using HandBrake.Interop.Attributes;\r
\r
+ using HandBrakeWPF.Properties;\r
+\r
/// <summary>\r
/// Picture Settings Mode when adding presets\r
/// </summary>\r
public enum PresetPictureSettingsMode\r
{\r
- [DisplayName("None")]\r
+ [DisplayName(typeof(Resources), "PresetPictureSettingsMode_None")]\r
None = 0,\r
- [DisplayName("Custom")]\r
+\r
+ [DisplayName(typeof(Resources), "PresetPictureSettingsMode_Custom")]\r
Custom = 1,\r
- [DisplayName("Always use Source Resolution")]\r
+\r
+ [DisplayName(typeof(Resources), "PresetPictureSettingsMode_SourceMaximum")]\r
SourceMaximum = 2,\r
}\r
}
\ No newline at end of file
{\r
using HandBrake.Interop.Attributes;\r
\r
+ using HandBrakeWPF.Properties;\r
+\r
/// <summary>\r
/// The subtitle behaviours modes.\r
/// </summary>\r
public enum SubtitleBehaviourModes\r
{\r
- [DisplayName("None")]\r
+ [DisplayName(typeof(Resources), "SubtitleBehaviourModes_None")]\r
[ShortName("none")]\r
None = 0,\r
\r
- [DisplayName("First Matching Selected Language")]\r
+ [DisplayName(typeof(Resources), "SubtitleBehaviourModes_FirstMatching")]\r
[ShortName("first")]\r
FirstMatch,\r
\r
- [DisplayName("All Matching Selected Languages")]\r
+ [DisplayName(typeof(Resources), "SubtitleBehaviourModes_AllMatching")]\r
[ShortName("all")]\r
AllMatching,\r
}\r
{\r
using HandBrake.Interop.Attributes;\r
\r
+ using HandBrakeWPF.Properties;\r
+\r
/// <summary>\r
/// The subtitle behaviours modes.\r
/// </summary>\r
public enum SubtitleBurnInBehaviourModes\r
{\r
- [DisplayName("None")]\r
+ [DisplayName(typeof(Resources), "SubtitleBurnInBehaviourModes_None")]\r
[ShortName("none")]\r
None = 0,\r
\r
- [DisplayName("Foreign Audio Track")]\r
+ [DisplayName(typeof(Resources), "SubtitleBurnInBehaviourModes_ForeignAudioTrack")]\r
[ShortName("foreign")]\r
ForeignAudio,\r
\r
- [DisplayName("First Track")]\r
+ [DisplayName(typeof(Resources), "SubtitleBurnInBehaviourModes_FirstTrack")]\r
[ShortName("first")]\r
FirstTrack,\r
\r
- [DisplayName("Foreign Audio Preferred, else First")]\r
+ [DisplayName(typeof(Resources), "SubtitleBurnInBehaviourModes_ForeignAudioPreferredElseFirst")]\r
[ShortName("foreign_first")]\r
ForeignAudioPreferred,\r
}\r
}
}
+ /// <summary>
+ /// Looks up a localized string similar to All Matching Selected Languages.
+ /// </summary>
+ public static string AudioBehaviourModes_AllMatching {
+ get {
+ return ResourceManager.GetString("AudioBehaviourModes_AllMatching", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Use All Tracks as templates.
+ /// </summary>
+ public static string AudioBehaviourModes_AllTracks {
+ get {
+ return ResourceManager.GetString("AudioBehaviourModes_AllTracks", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to First Matching Selected Language.
+ /// </summary>
+ public static string AudioBehaviourModes_FirstMatch {
+ get {
+ return ResourceManager.GetString("AudioBehaviourModes_FirstMatch", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Use First Track as template.
+ /// </summary>
+ public static string AudioBehaviourModes_FirstTrack {
+ get {
+ return ResourceManager.GetString("AudioBehaviourModes_FirstTrack", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to No Audio.
+ /// </summary>
+ public static string AudioBehaviourModes_None {
+ get {
+ return ResourceManager.GetString("AudioBehaviourModes_None", resourceCulture);
+ }
+ }
+
/// <summary>
/// Looks up a localized string similar to Add Track.
/// </summary>
}
}
+ /// <summary>
+ /// Looks up a localized string similar to Chapter {0}.
+ /// </summary>
+ public static string ChapterViewModel_Chapter {
+ get {
+ return ResourceManager.GetString("ChapterViewModel_Chapter", resourceCulture);
+ }
+ }
+
/// <summary>
/// Looks up a localized string similar to The system clipboard is currently unavailable..
/// </summary>
}
}
+ /// <summary>
+ /// Looks up a localized string similar to Automatic.
+ /// </summary>
+ public static string Mp4Behaviour_Auto {
+ get {
+ return ResourceManager.GetString("Mp4Behaviour_Auto", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Always use M4V.
+ /// </summary>
+ public static string Mp4Behaviour_UseM4v {
+ get {
+ return ResourceManager.GetString("Mp4Behaviour_UseM4v", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Always use MP4.
+ /// </summary>
+ public static string Mp4Behaviour_UseMp4 {
+ get {
+ return ResourceManager.GetString("Mp4Behaviour_UseMp4", resourceCulture);
+ }
+ }
+
/// <summary>
/// Looks up a localized string similar to No Additional Information.
/// </summary>
}
}
+ /// <summary>
+ /// Looks up a localized string similar to Output Files.
+ /// </summary>
+ public static string Options_OutputFiles {
+ get {
+ return ResourceManager.GetString("Options_OutputFiles", resourceCulture);
+ }
+ }
+
/// <summary>
/// Looks up a localized string similar to Path: .
/// </summary>
}
/// <summary>
- /// Looks up a localized string similar to &#60; Back.
+ /// Looks up a localized string similar to < Back.
/// </summary>
public static string OptionsView_BackButton {
get {
}
}
+ /// <summary>
+ /// Looks up a localized string similar to Chapters.
+ /// </summary>
+ public static string PointToPointMode_Chapters {
+ get {
+ return ResourceManager.GetString("PointToPointMode_Chapters", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Frames.
+ /// </summary>
+ public static string PointToPointMode_Frames {
+ get {
+ return ResourceManager.GetString("PointToPointMode_Frames", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Preview.
+ /// </summary>
+ public static string PointToPointMode_Preview {
+ get {
+ return ResourceManager.GetString("PointToPointMode_Preview", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Seconds.
+ /// </summary>
+ public static string PointToPointMode_Seconds {
+ get {
+ return ResourceManager.GetString("PointToPointMode_Seconds", resourceCulture);
+ }
+ }
+
/// <summary>
/// Looks up a localized string similar to Portable Mode: Unable to read portable.ini. There may be an error in this file. Please retry using portable.ini.template as a guide..
/// </summary>
}
}
+ /// <summary>
+ /// Looks up a localized string similar to Custom.
+ /// </summary>
+ public static string PresetPictureSettingsMode_Custom {
+ get {
+ return ResourceManager.GetString("PresetPictureSettingsMode_Custom", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to None.
+ /// </summary>
+ public static string PresetPictureSettingsMode_None {
+ get {
+ return ResourceManager.GetString("PresetPictureSettingsMode_None", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Always use Source Resolution.
+ /// </summary>
+ public static string PresetPictureSettingsMode_SourceMaximum {
+ get {
+ return ResourceManager.GetString("PresetPictureSettingsMode_SourceMaximum", resourceCulture);
+ }
+ }
+
/// <summary>
/// Looks up a localized string similar to HandBrake is unable to upgrade your presets file to a new version format.
///Your preset file will be archived and new one created. You will need to re-create your own presets..
}
}
+ /// <summary>
+ /// Looks up a localized string similar to Above Normal.
+ /// </summary>
+ public static string ProcessPriority_AboveNormal {
+ get {
+ return ResourceManager.GetString("ProcessPriority_AboveNormal", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Below Normal.
+ /// </summary>
+ public static string ProcessPriority_BelowNormal {
+ get {
+ return ResourceManager.GetString("ProcessPriority_BelowNormal", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to High.
+ /// </summary>
+ public static string ProcessPriority_High {
+ get {
+ return ResourceManager.GetString("ProcessPriority_High", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Low.
+ /// </summary>
+ public static string ProcessPriority_Low {
+ get {
+ return ResourceManager.GetString("ProcessPriority_Low", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Normal.
+ /// </summary>
+ public static string ProcessPriority_Normal {
+ get {
+ return ResourceManager.GetString("ProcessPriority_Normal", resourceCulture);
+ }
+ }
+
/// <summary>
/// Looks up a localized string similar to Question.
/// </summary>
}
}
+ /// <summary>
+ /// Looks up a localized string similar to Foreign Audio Scan.
+ /// </summary>
+ public static string Subtitle_ForeignAudioScan {
+ get {
+ return ResourceManager.GetString("Subtitle_ForeignAudioScan", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to All Matching Selected Languages.
+ /// </summary>
+ public static string SubtitleBehaviourModes_AllMatching {
+ get {
+ return ResourceManager.GetString("SubtitleBehaviourModes_AllMatching", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to First Matching Selected Language.
+ /// </summary>
+ public static string SubtitleBehaviourModes_FirstMatching {
+ get {
+ return ResourceManager.GetString("SubtitleBehaviourModes_FirstMatching", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to None.
+ /// </summary>
+ public static string SubtitleBehaviourModes_None {
+ get {
+ return ResourceManager.GetString("SubtitleBehaviourModes_None", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to First Track.
+ /// </summary>
+ public static string SubtitleBurnInBehaviourModes_FirstTrack {
+ get {
+ return ResourceManager.GetString("SubtitleBurnInBehaviourModes_FirstTrack", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Foreign Audio Preferred, else First.
+ /// </summary>
+ public static string SubtitleBurnInBehaviourModes_ForeignAudioPreferredElseFirst {
+ get {
+ return ResourceManager.GetString("SubtitleBurnInBehaviourModes_ForeignAudioPreferredElseFirst", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Foreign Audio Track.
+ /// </summary>
+ public static string SubtitleBurnInBehaviourModes_ForeignAudioTrack {
+ get {
+ return ResourceManager.GetString("SubtitleBurnInBehaviourModes_ForeignAudioTrack", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to None.
+ /// </summary>
+ public static string SubtitleBurnInBehaviourModes_None {
+ get {
+ return ResourceManager.GetString("SubtitleBurnInBehaviourModes_None", resourceCulture);
+ }
+ }
+
/// <summary>
/// Looks up a localized string similar to None - Only tracks where the container does not support the format will be burned in.
///Foreign Audio Track - The Foreign Audio track will be burned in if available.
}
}
+ /// <summary>
+ /// Looks up a localized string similar to Foreign Audio Search.
+ /// </summary>
+ public static string SubtitleViewModel_ForeignAudioSearch {
+ get {
+ return ResourceManager.GetString("SubtitleViewModel_ForeignAudioSearch", resourceCulture);
+ }
+ }
+
/// <summary>
/// Looks up a localized string similar to Additional Audio Tracks.
/// </summary>
}
}
+ /// <summary>
+ /// Looks up a localized string similar to Monthly.
+ /// </summary>
+ public static string UpdateCheck_Monthly {
+ get {
+ return ResourceManager.GetString("UpdateCheck_Monthly", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Weekly.
+ /// </summary>
+ public static string UpdateCheck_Weekly {
+ get {
+ return ResourceManager.GetString("UpdateCheck_Weekly", resourceCulture);
+ }
+ }
+
/// <summary>
/// Looks up a localized string similar to Updated.
/// </summary>
<value>Click 'Check for Updates' to check for new versions</value>\r
</data>\r
<data name="OptionsView_BackButton" xml:space="preserve">\r
- <value>&#60; Back</value>\r
+ <value>< Back</value>\r
</data>\r
<data name="QueueView_CurrentlyPaused" xml:space="preserve">\r
<value>Currently Paused</value>\r
</data>\r
+ <data name="Options_OutputFiles" xml:space="preserve">\r
+ <value>Output Files</value>\r
+ </data>\r
+ <data name="PointToPointMode_Chapters" xml:space="preserve">\r
+ <value>Chapters</value>\r
+ </data>\r
+ <data name="PointToPointMode_Frames" xml:space="preserve">\r
+ <value>Frames</value>\r
+ </data>\r
+ <data name="PointToPointMode_Preview" xml:space="preserve">\r
+ <value>Preview</value>\r
+ </data>\r
+ <data name="PointToPointMode_Seconds" xml:space="preserve">\r
+ <value>Seconds</value>\r
+ </data>\r
+ <data name="SubtitleBehaviourModes_AllMatching" xml:space="preserve">\r
+ <value>All Matching Selected Languages</value>\r
+ </data>\r
+ <data name="SubtitleBehaviourModes_FirstMatching" xml:space="preserve">\r
+ <value>First Matching Selected Language</value>\r
+ </data>\r
+ <data name="SubtitleBehaviourModes_None" xml:space="preserve">\r
+ <value>None</value>\r
+ </data>\r
+ <data name="SubtitleBurnInBehaviourModes_FirstTrack" xml:space="preserve">\r
+ <value>First Track</value>\r
+ </data>\r
+ <data name="SubtitleBurnInBehaviourModes_ForeignAudioPreferredElseFirst" xml:space="preserve">\r
+ <value>Foreign Audio Preferred, else First</value>\r
+ </data>\r
+ <data name="SubtitleBurnInBehaviourModes_ForeignAudioTrack" xml:space="preserve">\r
+ <value>Foreign Audio Track</value>\r
+ </data>\r
+ <data name="SubtitleBurnInBehaviourModes_None" xml:space="preserve">\r
+ <value>None</value>\r
+ </data>\r
+ <data name="SubtitleViewModel_ForeignAudioSearch" xml:space="preserve">\r
+ <value>Foreign Audio Search</value>\r
+ </data>\r
+ <data name="Subtitle_ForeignAudioScan" xml:space="preserve">\r
+ <value>Foreign Audio Scan</value>\r
+ </data>\r
+ <data name="AudioBehaviourModes_AllMatching" xml:space="preserve">\r
+ <value>All Matching Selected Languages</value>\r
+ </data>\r
+ <data name="AudioBehaviourModes_AllTracks" xml:space="preserve">\r
+ <value>Use All Tracks as templates</value>\r
+ </data>\r
+ <data name="AudioBehaviourModes_FirstMatch" xml:space="preserve">\r
+ <value>First Matching Selected Language</value>\r
+ </data>\r
+ <data name="AudioBehaviourModes_FirstTrack" xml:space="preserve">\r
+ <value>Use First Track as template</value>\r
+ </data>\r
+ <data name="AudioBehaviourModes_None" xml:space="preserve">\r
+ <value>No Audio</value>\r
+ </data>\r
+ <data name="ChapterViewModel_Chapter" xml:space="preserve">\r
+ <value>Chapter {0}</value>\r
+ </data>\r
+ <data name="Mp4Behaviour_Auto" xml:space="preserve">\r
+ <value>Automatic</value>\r
+ </data>\r
+ <data name="Mp4Behaviour_UseM4v" xml:space="preserve">\r
+ <value>Always use M4V</value>\r
+ </data>\r
+ <data name="Mp4Behaviour_UseMp4" xml:space="preserve">\r
+ <value>Always use MP4</value>\r
+ </data>\r
+ <data name="PresetPictureSettingsMode_Custom" xml:space="preserve">\r
+ <value>Custom</value>\r
+ </data>\r
+ <data name="PresetPictureSettingsMode_None" xml:space="preserve">\r
+ <value>None</value>\r
+ </data>\r
+ <data name="PresetPictureSettingsMode_SourceMaximum" xml:space="preserve">\r
+ <value>Always use Source Resolution</value>\r
+ </data>\r
+ <data name="ProcessPriority_AboveNormal" xml:space="preserve">\r
+ <value>Above Normal</value>\r
+ </data>\r
+ <data name="ProcessPriority_BelowNormal" xml:space="preserve">\r
+ <value>Below Normal</value>\r
+ </data>\r
+ <data name="ProcessPriority_High" xml:space="preserve">\r
+ <value>High</value>\r
+ </data>\r
+ <data name="ProcessPriority_Low" xml:space="preserve">\r
+ <value>Low</value>\r
+ </data>\r
+ <data name="ProcessPriority_Normal" xml:space="preserve">\r
+ <value>Normal</value>\r
+ </data>\r
+ <data name="UpdateCheck_Monthly" xml:space="preserve">\r
+ <value>Monthly</value>\r
+ </data>\r
+ <data name="UpdateCheck_Weekly" xml:space="preserve">\r
+ <value>Weekly</value>\r
+ </data>\r
</root>
\ No newline at end of file
{
using HandBrake.Interop.Attributes;
+ using HandBrakeWPF.Properties;
+
/// <summary>
/// Point to Point Mode
/// </summary>
public enum PointToPointMode
{
- [DisplayName("Chapters")]
+ [DisplayName(typeof(Resources), "PointToPointMode_Chapters")]
[ShortName("chapter")]
Chapters = 0,
- [DisplayName("Seconds")]
+ [DisplayName(typeof(Resources), "PointToPointMode_Seconds")]
[ShortName("time")]
Seconds,
- [DisplayName("Frames")]
+ [DisplayName(typeof(Resources), "PointToPointMode_Frames")]
[ShortName("frame")]
Frames,
- [DisplayName("Preview")]
+ [DisplayName(typeof(Resources), "PointToPointMode_Preview")]
[ShortName("preview")]
Preview,
}
using HandBrake.Interop.Utilities;
+ using HandBrakeWPF.Properties;
using HandBrakeWPF.Services.Encode.Model.Models;
using HandBrakeWPF.Utilities;
/// <returns>A string formatted as: {track #} {language}</returns>
public override string ToString()
{
- return this.SubtitleType == SubtitleType.ForeignAudioSearch ? "Foreign Audio Scan" : string.Format("{0} {1}", this.TrackNumber, this.Language);
+ return this.SubtitleType == SubtitleType.ForeignAudioSearch ? Resources.Subtitle_ForeignAudioScan : string.Format("{0} {1}", this.TrackNumber, this.Language);
}
/// <summary>
public const string PreviewScanCount = "previewScanCount";\r
public const string Verbosity = "Verbosity";\r
public const string MinScanDuration = "MinTitleScanDuration";\r
- public const string ProcessPriority = "ProcessPriority";\r
+ public const string ProcessPriorityInt = "ProcessPriorityInt";\r
public const string SaveLogToCopyDirectory = "SaveLogToCopyDirectory";\r
public const string SaveLogWithVideo = "SaveLogWithVideo";\r
public const string SaveLogCopyDirectory = "SaveLogCopyDirectory";\r
\r
foreach (Chapter chapter in this.SourceChapterList)\r
{\r
- string chapterName = string.IsNullOrEmpty(chapter.ChapterName) ? string.Format("Chapter {0}", counter) : chapter.ChapterName;\r
+ string chapterName = string.IsNullOrEmpty(chapter.ChapterName) ? string.Format(Resources.ChapterViewModel_Chapter, counter) : chapter.ChapterName;\r
var marker = new ChapterMarker(chapter.ChapterNumber, chapterName, chapter.Duration);\r
this.Chapters.Add(marker);\r
\r
this.Drives = new BindingList<SourceMenuItem>();\r
\r
// Set Process Priority\r
- switch (this.userSettingService.GetUserSetting<string>(UserSettingConstants.ProcessPriority))\r
+ switch ((ProcessPriority)this.userSettingService.GetUserSetting<int>(UserSettingConstants.ProcessPriorityInt))\r
{\r
- case "Realtime":\r
- Process.GetCurrentProcess().PriorityClass = ProcessPriorityClass.RealTime;\r
- break;\r
- case "High":\r
+ case ProcessPriority.High:\r
Process.GetCurrentProcess().PriorityClass = ProcessPriorityClass.High;\r
break;\r
- case "Above Normal":\r
+ case ProcessPriority.AboveNormal:\r
Process.GetCurrentProcess().PriorityClass = ProcessPriorityClass.AboveNormal;\r
break;\r
- case "Normal":\r
+ case ProcessPriority.Normal:\r
Process.GetCurrentProcess().PriorityClass = ProcessPriorityClass.Normal;\r
break;\r
- case "Low":\r
+ case ProcessPriority.Low:\r
Process.GetCurrentProcess().PriorityClass = ProcessPriorityClass.Idle;\r
break;\r
default:\r
private string autonameFormat;\r
private bool changeToTitleCase;\r
private bool checkForUpdates;\r
- private BindingList<string> checkForUpdatesFrequencies = new BindingList<string>();\r
- private int checkForUpdatesFrequency;\r
+ private UpdateCheck checkForUpdatesFrequency;\r
private bool clearOldOlgs;\r
private BindingList<string> constantQualityGranularity = new BindingList<string>();\r
private bool copyLogToEncodeDirectory;\r
private BindingList<int> logVerbosityOptions = new BindingList<int>();\r
private long minLength;\r
private bool minimiseToTray;\r
- private BindingList<string> mp4ExtensionOptions = new BindingList<string>();\r
private bool preventSleep;\r
private BindingList<int> previewPicturesToScan = new BindingList<int>();\r
- private BindingList<string> priorityLevelOptions = new BindingList<string>();\r
private bool removeUnderscores;\r
private string selectedGranulairty;\r
- private int selectedMp4Extension;\r
+ private Mp4Behaviour selectedMp4Extension;\r
private int selectedPreviewCount;\r
- private string selectedPriority;\r
+ private ProcessPriority selectedPriority;\r
private int selectedVerbosity;\r
private bool sendFileAfterEncode;\r
private string sendFileTo;\r
private string sendFileToPath;\r
private string vlcPath;\r
private WhenDone whenDone;\r
- private BindingList<WhenDone> whenDoneOptions = new BindingList<WhenDone>();\r
private bool clearQueueOnEncodeCompleted;\r
private OptionsTab selectedTab;\r
private string updateMessage;\r
/// <summary>\r
/// Gets or sets CheckForUpdatesFrequencies.\r
/// </summary>\r
- public BindingList<string> CheckForUpdatesFrequencies\r
+ public BindingList<UpdateCheck> CheckForUpdatesFrequencies\r
{\r
get\r
{\r
- return this.checkForUpdatesFrequencies;\r
- }\r
-\r
- set\r
- {\r
- this.checkForUpdatesFrequencies = value;\r
- this.NotifyOfPropertyChange("CheckForUpdatesFrequencies");\r
+ return new BindingList<UpdateCheck>(EnumHelper<UpdateCheck>.GetEnumList().ToList());\r
}\r
}\r
\r
/// <summary>\r
/// Gets or sets a value indicating whether CheckForUpdatesFrequency.\r
/// </summary>\r
- public int CheckForUpdatesFrequency\r
+ public UpdateCheck CheckForUpdatesFrequency\r
{\r
get\r
{\r
set\r
{\r
this.checkForUpdatesFrequency = value;\r
- this.NotifyOfPropertyChange("CheckForUpdatesFrequency");\r
+ this.NotifyOfPropertyChange(() => this.CheckForUpdatesFrequency);\r
}\r
}\r
\r
}\r
\r
/// <summary>\r
- /// Gets or sets Mp4ExtensionOptions.\r
+ /// Gets or sets a value indicating whether RemoveUnderscores.\r
/// </summary>\r
- public BindingList<string> Mp4ExtensionOptions\r
+ public bool RemoveUnderscores\r
{\r
get\r
{\r
- return this.mp4ExtensionOptions;\r
+ return this.removeUnderscores;\r
}\r
\r
set\r
{\r
- this.mp4ExtensionOptions = value;\r
- this.NotifyOfPropertyChange("Mp4ExtensionOptions");\r
+ this.removeUnderscores = value;\r
+ this.NotifyOfPropertyChange("RemoveUnderscores");\r
}\r
}\r
\r
- /// <summary>\r
- /// Gets or sets a value indicating whether RemoveUnderscores.\r
- /// </summary>\r
- public bool RemoveUnderscores\r
+ public BindingList<Mp4Behaviour> Mp4ExtensionOptions\r
{\r
get\r
{\r
- return this.removeUnderscores;\r
- }\r
-\r
- set\r
- {\r
- this.removeUnderscores = value;\r
- this.NotifyOfPropertyChange("RemoveUnderscores");\r
+ return new BindingList<Mp4Behaviour>(EnumHelper<Mp4Behaviour>.GetEnumList().ToList());\r
}\r
}\r
\r
/// <summary>\r
/// Gets or sets SelectedMp4Extension.\r
/// </summary>\r
- public int SelectedMp4Extension\r
+ public Mp4Behaviour SelectedMp4Extension\r
{\r
get\r
{\r
set\r
{\r
this.selectedMp4Extension = value;\r
- this.NotifyOfPropertyChange("SelectedMp4Extension");\r
+ this.NotifyOfPropertyChange(() => this.SelectedMp4Extension);\r
}\r
}\r
\r
}\r
}\r
\r
- /// <summary>\r
- /// Gets or sets PriorityLevelOptions.\r
- /// </summary>\r
- public BindingList<string> PriorityLevelOptions\r
+ public BindingList<ProcessPriority> PriorityLevelOptions\r
{\r
get\r
{\r
- return this.priorityLevelOptions;\r
- }\r
-\r
- set\r
- {\r
- this.priorityLevelOptions = value;\r
- this.NotifyOfPropertyChange("PriorityLevelOptions");\r
+ return new BindingList<ProcessPriority>(EnumHelper<ProcessPriority>.GetEnumList().ToList());\r
}\r
}\r
\r
/// <summary>\r
/// Gets or sets SelectedPriority.\r
/// </summary>\r
- public string SelectedPriority\r
+ public ProcessPriority SelectedPriority\r
{\r
get\r
{\r
// Set the Process Priority\r
switch (value)\r
{\r
- case "Realtime":\r
- Process.GetCurrentProcess().PriorityClass = ProcessPriorityClass.RealTime;\r
- break;\r
- case "High":\r
+ case ProcessPriority.High:\r
Process.GetCurrentProcess().PriorityClass = ProcessPriorityClass.High;\r
break;\r
- case "Above Normal":\r
+ case ProcessPriority.AboveNormal:\r
Process.GetCurrentProcess().PriorityClass = ProcessPriorityClass.AboveNormal;\r
break;\r
- case "Normal":\r
+ case ProcessPriority.Normal:\r
Process.GetCurrentProcess().PriorityClass = ProcessPriorityClass.Normal;\r
break;\r
- case "Low":\r
+ case ProcessPriority.BelowNormal:\r
+ Process.GetCurrentProcess().PriorityClass = ProcessPriorityClass.BelowNormal;\r
+ break;\r
+ case ProcessPriority.Low:\r
Process.GetCurrentProcess().PriorityClass = ProcessPriorityClass.Idle;\r
break;\r
default:\r
this.SelectedLanguage = InterfaceLanguageUtilities.FindInterfaceLanguage(culture);\r
\r
this.CheckForUpdates = this.userSettingService.GetUserSetting<bool>(UserSettingConstants.UpdateStatus);\r
-\r
- // Days between update checks\r
- this.checkForUpdatesFrequencies.Clear();\r
- this.checkForUpdatesFrequencies.Add("Weekly");\r
- this.checkForUpdatesFrequencies.Add("Monthly");\r
-\r
- this.CheckForUpdatesFrequency = this.userSettingService.GetUserSetting<int>(UserSettingConstants.DaysBetweenUpdateCheck);\r
- if (this.CheckForUpdatesFrequency > 1)\r
- {\r
- this.CheckForUpdatesFrequency = 1;\r
- }\r
-\r
+ this.CheckForUpdatesFrequency = (UpdateCheck)this.userSettingService.GetUserSetting<int>(UserSettingConstants.DaysBetweenUpdateCheck);\r
this.ShowStatusInTitleBar = this.userSettingService.GetUserSetting<bool>(UserSettingConstants.ShowStatusInTitleBar);\r
this.ShowPreviewOnSummaryTab = this.userSettingService.GetUserSetting<bool>(UserSettingConstants.ShowPreviewOnSummaryTab);\r
this.ShowAddAllToQueue = this.userSettingService.GetUserSetting<bool>(UserSettingConstants.ShowAddAllToQueue);\r
// When Done\r
// #############################\r
\r
- // On Encode Completion Action\r
- this.whenDoneOptions.Clear();\r
- this.whenDoneOptions.Add(WhenDone.DoNothing);\r
- this.whenDoneOptions.Add(WhenDone.Shutdown);\r
- this.whenDoneOptions.Add(WhenDone.Sleep);\r
- this.whenDoneOptions.Add(WhenDone.Hibernate);\r
- this.whenDoneOptions.Add(WhenDone.LockSystem);\r
- this.whenDoneOptions.Add(WhenDone.LogOff);\r
- this.whenDoneOptions.Add(WhenDone.QuickHandBrake);\r
-\r
this.WhenDone = (WhenDone)this.userSettingService.GetUserSetting<int>(UserSettingConstants.WhenCompleteAction);\r
if (this.userSettingService.GetUserSetting<bool>(UserSettingConstants.ResetWhenDoneAction))\r
{\r
this.AutonameFormat = this.IsValidAutonameFormat(anf, true) ? anf : "{source}-{title}";\r
\r
// Use iPod/iTunes friendly .m4v extension for MP4 files.\r
- this.mp4ExtensionOptions.Clear();\r
- this.mp4ExtensionOptions.Add("Automatic");\r
- this.mp4ExtensionOptions.Add("Always use MP4");\r
- this.mp4ExtensionOptions.Add("Always use M4V");\r
- this.SelectedMp4Extension = this.userSettingService.GetUserSetting<int>(UserSettingConstants.UseM4v);\r
+ this.SelectedMp4Extension = (Mp4Behaviour)this.userSettingService.GetUserSetting<int>(UserSettingConstants.UseM4v);\r
\r
// Remove Underscores\r
this.RemoveUnderscores = this.userSettingService.GetUserSetting<bool>(UserSettingConstants.AutoNameRemoveUnderscore);\r
// #############################\r
// CLI\r
// #############################\r
-\r
- // Priority level for encodes\r
- this.priorityLevelOptions.Clear();\r
- this.priorityLevelOptions.Add("High");\r
- this.priorityLevelOptions.Add("Above Normal");\r
- this.priorityLevelOptions.Add("Normal");\r
- this.priorityLevelOptions.Add("Below Normal");\r
- this.priorityLevelOptions.Add("Low");\r
- this.SelectedPriority = userSettingService.GetUserSetting<string>(UserSettingConstants.ProcessPriority);\r
+ this.SelectedPriority = (ProcessPriority)userSettingService.GetUserSetting<int>(UserSettingConstants.ProcessPriorityInt);\r
\r
this.PreventSleep = userSettingService.GetUserSetting<bool>(UserSettingConstants.PreventSleep);\r
this.PauseOnLowDiskspace = userSettingService.GetUserSetting<bool>(UserSettingConstants.PauseOnLowDiskspace);\r
this.userSettingService.SetUserSetting(UserSettingConstants.PlaySoundWhenDone, this.PlaySoundWhenDone);\r
this.userSettingService.SetUserSetting(UserSettingConstants.PlaySoundWhenQueueDone, this.PlaySoundWhenQueueDone);\r
this.userSettingService.SetUserSetting(UserSettingConstants.WhenDoneAudioFile, this.WhenDoneAudioFileFullPath);\r
- \r
\r
/* Output Files */\r
this.userSettingService.SetUserSetting(UserSettingConstants.AutoNaming, this.AutomaticallyNameFiles);\r
this.userSettingService.SetUserSetting(UserSettingConstants.EnableNvencEncoder, this.EnableNvencEncoder);\r
\r
/* System and Logging */\r
- this.userSettingService.SetUserSetting(UserSettingConstants.ProcessPriority, this.SelectedPriority);\r
+ this.userSettingService.SetUserSetting(UserSettingConstants.ProcessPriorityInt, this.SelectedPriority);\r
this.userSettingService.SetUserSetting(UserSettingConstants.PreventSleep, this.PreventSleep);\r
this.userSettingService.SetUserSetting(UserSettingConstants.PauseOnLowDiskspace, this.PauseOnLowDiskspace);\r
this.userSettingService.SetUserSetting(UserSettingConstants.PauseQueueOnLowDiskspaceLevel, this.PauseOnLowDiskspaceLevel);\r
this.Langauges = LanguageUtilities.MapLanguages().Keys;\r
this.CharacterCodes = CharCodesUtilities.GetCharacterCodes();\r
\r
- this.foreignAudioSearchTrack = new Subtitle { SubtitleType = SubtitleType.ForeignAudioSearch, Language = "Foreign Audio Search" };\r
+ this.foreignAudioSearchTrack = new Subtitle { SubtitleType = SubtitleType.ForeignAudioSearch, Language = Resources.SubtitleViewModel_ForeignAudioSearch };\r
this.SourceTracks = new List<Subtitle> { this.foreignAudioSearchTrack };\r
}\r
\r
using HandBrakeWPF.EventArgs;
using HandBrakeWPF.Factories;
using HandBrakeWPF.Helpers;
+ using HandBrakeWPF.Model.Options;
using HandBrakeWPF.Properties;
using HandBrakeWPF.Services.Encode.Model;
using HandBrakeWPF.Services.Encode.Model.Models;
// Make sure the output extension is set correctly based on the users preferences and selection.
if (newExtension == ".mp4" || newExtension == ".m4v")
{
- switch (this.userSettingService.GetUserSetting<int>(UserSettingConstants.UseM4v))
+ switch ((Mp4Behaviour)this.userSettingService.GetUserSetting<int>(UserSettingConstants.UseM4v))
{
- case 0: // Auto
+ case Mp4Behaviour.Auto: // Auto
newExtension = MP4Helper.RequiresM4v(this.Task) ? ".m4v" : ".mp4";
break;
- case 1: // MP4
+ case Mp4Behaviour.MP4: // MP4
newExtension = ".mp4";
break;
- case 2: // M4v
+ case Mp4Behaviour.M4V: // M4v
newExtension = ".m4v";
break;
}
<Options:LogLevelConverter x:Key="LogLevelConverter" />\r
<Options:FileSizeConverter x:Key="fileSizeConverter" />\r
<Converters:OptionTabConverter x:Key="optionTabConverter" />\r
- \r
+ <Options:ProcessPriorityConverter x:Key="ProcessPriorityConverter" />\r
+ <Options:Mp4BehaviourConverter x:Key="Mp4BehaviourConverter" />\r
+ <Options:UpdateCheckConverter x:Key="UpdateCheckConverter" />\r
\r
<Converters:BooleanToVisibilityConverter x:Key="boolToVisConverter" />\r
\r
\r
<StackPanel Orientation="Vertical" Margin="20,0,0,0">\r
<CheckBox Content="{x:Static Properties:Resources.Options_CheckForUpdates}" IsChecked="{Binding CheckForUpdates}" />\r
- <ComboBox Name="checkForUpdateFrequency" ItemsSource="{Binding CheckForUpdatesFrequencies}" SelectedIndex="{Binding CheckForUpdatesFrequency}" Margin="25,0,0,5" HorizontalAlignment="Left" Width="120"></ComboBox>\r
+ <ComboBox Name="checkForUpdateFrequency" ItemsSource="{Binding CheckForUpdatesFrequencies, Converter={StaticResource UpdateCheckConverter}}" SelectedItem="{Binding CheckForUpdatesFrequency, Converter={StaticResource UpdateCheckConverter}}" Margin="25,0,0,5" HorizontalAlignment="Left" Width="120"></ComboBox>\r
</StackPanel>\r
</StackPanel>\r
\r
\r
<StackPanel Orientation="Horizontal" Margin="0,15,0,0">\r
<TextBlock VerticalAlignment="Center" Text="{x:Static Properties:Resources.Options_MP4FileExtension}" />\r
- <ComboBox Name="mp4FileExtension" Width="120" ItemsSource="{Binding Mp4ExtensionOptions}" SelectedIndex="{Binding SelectedMp4Extension}" HorizontalAlignment="Left" />\r
+ <ComboBox Name="mp4FileExtension" ItemsSource="{Binding Mp4ExtensionOptions, Converter={StaticResource Mp4BehaviourConverter}}" SelectedItem="{Binding SelectedMp4Extension, Converter={StaticResource Mp4BehaviourConverter}}" Width="120" HorizontalAlignment="Left" />\r
</StackPanel>\r
\r
</StackPanel>\r
</StackPanel>\r
<StackPanel Orientation="Horizontal" Margin="0,5,0,0">\r
<TextBlock Text="{x:Static Properties:Resources.Options_PriorityLevel}" Width="250" VerticalAlignment="Center" />\r
- <ComboBox Name="processPriorityLevel" ItemsSource="{Binding PriorityLevelOptions}" SelectedItem="{Binding SelectedPriority}" Width="120" />\r
+ <ComboBox Name="processPriorityLevel" ItemsSource="{Binding PriorityLevelOptions, Converter={StaticResource ProcessPriorityConverter}}" SelectedItem="{Binding SelectedPriority, Converter={StaticResource ProcessPriorityConverter}}" Width="120" />\r
</StackPanel>\r
</StackPanel>\r
</StackPanel>\r
<!-- Column 1 -->
<Grid Grid.Column="0" MinWidth="325" MaxWidth="400" >
<Grid.ColumnDefinitions>
- <ColumnDefinition Width="75" />
+ <ColumnDefinition Width="80" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
</item>\r
<item>\r
<key>\r
- <string>ProcessPriority</string>\r
+ <string>ProcessPriorityInt</string>\r
</key>\r
<value>\r
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:string" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">Below Normal</anyType>\r
+ <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:int" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">3</anyType>\r
</value>\r
</item>\r
<item>\r
<string>daysBetweenUpdateCheck</string>\r
</key>\r
<value>\r
- <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:int" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">1</anyType>\r
+ <anyType xmlns:q1="http://www.w3.org/2001/XMLSchema" d4p1:type="q1:int" xmlns:d4p1="http://www.w3.org/2001/XMLSchema-instance">0</anyType>\r
</value>\r
</item>\r
<item>\r