summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--win/CS/HandBrakeWPF/Properties/Resources.Designer.cs479
-rw-r--r--win/CS/HandBrakeWPF/Properties/Resources.resx161
-rw-r--r--win/CS/HandBrakeWPF/ViewModels/AddPresetViewModel.cs10
-rw-r--r--win/CS/HandBrakeWPF/ViewModels/AudioDefaultsViewModel.cs237
-rw-r--r--win/CS/HandBrakeWPF/ViewModels/AudioViewModel.cs5
-rw-r--r--win/CS/HandBrakeWPF/ViewModels/ChaptersViewModel.cs5
-rw-r--r--win/CS/HandBrakeWPF/ViewModels/CountdownAlertViewModel.cs3
-rw-r--r--win/CS/HandBrakeWPF/ViewModels/ErrorViewModel.cs11
-rw-r--r--win/CS/HandBrakeWPF/ViewModels/LogViewModel.cs28
-rw-r--r--win/CS/HandBrakeWPF/ViewModels/OptionsViewModel.cs11
-rw-r--r--win/CS/HandBrakeWPF/ViewModels/PictureSettingsViewModel.cs3
-rw-r--r--win/CS/HandBrakeWPF/ViewModels/QueueSelectionViewModel.cs3
-rw-r--r--win/CS/HandBrakeWPF/ViewModels/QueueViewModel.cs50
-rw-r--r--win/CS/HandBrakeWPF/ViewModels/ShellViewModel.cs2
-rw-r--r--win/CS/HandBrakeWPF/ViewModels/StaticPreviewViewModel.cs12
-rw-r--r--win/CS/HandBrakeWPF/ViewModels/SubtitlesViewModel.cs5
16 files changed, 718 insertions, 307 deletions
diff --git a/win/CS/HandBrakeWPF/Properties/Resources.Designer.cs b/win/CS/HandBrakeWPF/Properties/Resources.Designer.cs
index 1cfcd6914..71227771f 100644
--- a/win/CS/HandBrakeWPF/Properties/Resources.Designer.cs
+++ b/win/CS/HandBrakeWPF/Properties/Resources.Designer.cs
@@ -95,6 +95,51 @@ namespace HandBrakeWPF.Properties {
}
/// <summary>
+ /// Looks up a localized string similar to The Custom Width or Height fields must be filled in for the &apos;Custom&apos; option..
+ /// </summary>
+ public static string AddPresetViewModel_CustomWidthHeightFieldsRequired {
+ get {
+ return ResourceManager.GetString("AddPresetViewModel_CustomWidthHeightFieldsRequired", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to A Preset must have a Name. Please fill out the Preset Name field..
+ /// </summary>
+ public static string AddPresetViewModel_PresetMustProvideName {
+ get {
+ return ResourceManager.GetString("AddPresetViewModel_PresetMustProvideName", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to A Preset with this name already exists. Would you like to overwrite it?.
+ /// </summary>
+ public static string AddPresetViewModel_PresetWithSameNameOverwriteWarning {
+ get {
+ return ResourceManager.GetString("AddPresetViewModel_PresetWithSameNameOverwriteWarning", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Unable to add preset.
+ /// </summary>
+ public static string AddPresetViewModel_UnableToAddPreset {
+ get {
+ return ResourceManager.GetString("AddPresetViewModel_UnableToAddPreset", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to You must first scan a source to use the &apos;Source Maximum&apos; Option..
+ /// </summary>
+ public static string AddPresetViewModel_YouMustFirstScanSource {
+ get {
+ return ResourceManager.GetString("AddPresetViewModel_YouMustFirstScanSource", resourceCulture);
+ }
+ }
+
+ /// <summary>
/// Looks up a localized string similar to x264 has a variety of algorithms to decide when to use B-frames and how many to use.
///
///Fast mode takes roughly the same amount of time no matter how many B-frames you specify. However, while fast, its decisions are often suboptimal.
@@ -358,6 +403,78 @@ namespace HandBrakeWPF.Properties {
}
/// <summary>
+ /// Looks up a localized string similar to Audio Defaults.
+ /// </summary>
+ public static string AudioViewModel_AudioDefaults {
+ get {
+ return ResourceManager.GetString("AudioViewModel_AudioDefaults", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Audio Tracks.
+ /// </summary>
+ public static string AudioViewModel_AudioTracks {
+ get {
+ return ResourceManager.GetString("AudioViewModel_AudioTracks", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Configure Defaults.
+ /// </summary>
+ public static string AudioViewModel_ConfigureDefaults {
+ get {
+ return ResourceManager.GetString("AudioViewModel_ConfigureDefaults", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Switch Back To Tracks.
+ /// </summary>
+ public static string AudioViewModel_SwitchBackToTracks {
+ get {
+ return ResourceManager.GetString("AudioViewModel_SwitchBackToTracks", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Chapter marker names will NOT be saved in your encode..
+ /// </summary>
+ public static string ChaptersViewModel_UnableToExportChaptersMsg {
+ get {
+ return ResourceManager.GetString("ChaptersViewModel_UnableToExportChaptersMsg", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Unable to save Chapter Makrers file! .
+ /// </summary>
+ public static string ChaptersViewModel_UnableToExportChaptersWarning {
+ get {
+ return ResourceManager.GetString("ChaptersViewModel_UnableToExportChaptersWarning", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Confirm.
+ /// </summary>
+ public static string Confirm {
+ get {
+ return ResourceManager.GetString("Confirm", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to The following action &apos;{0}&apos; will occur in {1} seconds..
+ /// </summary>
+ public static string CountdownAlertViewModel_NoticeMessage {
+ get {
+ return ResourceManager.GetString("CountdownAlertViewModel_NoticeMessage", resourceCulture);
+ }
+ }
+
+ /// <summary>
/// Looks up a localized string similar to Error.
/// </summary>
public static string Error {
@@ -367,6 +484,33 @@ namespace HandBrakeWPF.Properties {
}
/// <summary>
+ /// Looks up a localized string similar to If the problem presists, please try restarting HandBrake..
+ /// </summary>
+ public static string ErrorViewModel_IfTheProblemPersists {
+ get {
+ return ResourceManager.GetString("ErrorViewModel_IfTheProblemPersists", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to There is no further information available about this error..
+ /// </summary>
+ public static string ErrorViewModel_NoFurtherInformation {
+ get {
+ return ResourceManager.GetString("ErrorViewModel_NoFurtherInformation", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to An Unknown Error has occured..
+ /// </summary>
+ public static string ErrorViewModel_UnknownError {
+ get {
+ return ResourceManager.GetString("ErrorViewModel_UnknownError", resourceCulture);
+ }
+ }
+
+ /// <summary>
/// Looks up a localized string similar to HandBrake.
/// </summary>
public static string HandBrake_Title {
@@ -840,6 +984,60 @@ namespace HandBrakeWPF.Properties {
}
/// <summary>
+ /// Looks up a localized string similar to Your system supports the 64bit version of HandBrake! This offers performance and stability improvements over this 32bit version..
+ /// </summary>
+ public static string OptionsViewModel_64bitAvailable {
+ get {
+ return ResourceManager.GetString("OptionsViewModel_64bitAvailable", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to A New Update is Available!.
+ /// </summary>
+ public static string OptionsViewModel_NewUpdate {
+ get {
+ return ResourceManager.GetString("OptionsViewModel_NewUpdate", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to There are no new updates at this time..
+ /// </summary>
+ public static string OptionsViewModel_NoNewUpdates {
+ get {
+ return ResourceManager.GetString("OptionsViewModel_NoNewUpdates", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Update Downloaded.
+ /// </summary>
+ public static string OptionsViewModel_UpdateDownloaded {
+ get {
+ return ResourceManager.GetString("OptionsViewModel_UpdateDownloaded", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Update Failed. You can try downloading the update from https://handbrake.fr.
+ /// </summary>
+ public static string OptionsViewModel_UpdateFailed {
+ get {
+ return ResourceManager.GetString("OptionsViewModel_UpdateFailed", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Update Service Unavailable. You can try downloading the update from https://handbrake.fr.
+ /// </summary>
+ public static string OptionsViewModel_UpdateServiceUnavailable {
+ get {
+ return ResourceManager.GetString("OptionsViewModel_UpdateServiceUnavailable", resourceCulture);
+ }
+ }
+
+ /// <summary>
/// Looks up a localized string similar to Overwrite?.
/// </summary>
public static string Overwrite {
@@ -858,6 +1056,15 @@ namespace HandBrakeWPF.Properties {
}
/// <summary>
+ /// Looks up a localized string similar to Storage: {0}x{1}, Display: {2}x{3}.
+ /// </summary>
+ public static string PictureSettingsViewModel_StorageDisplayLabel {
+ get {
+ return ResourceManager.GetString("PictureSettingsViewModel_StorageDisplayLabel", resourceCulture);
+ }
+ }
+
+ /// <summary>
/// Looks up a localized string similar to Preset Version.
/// </summary>
public static string Preset_OldVersion_Header {
@@ -960,6 +1167,178 @@ namespace HandBrakeWPF.Properties {
}
/// <summary>
+ /// Looks up a localized string similar to Add to Queue.
+ /// </summary>
+ public static string QueueSelectionViewModel_AddToQueue {
+ get {
+ return ResourceManager.GetString("QueueSelectionViewModel_AddToQueue", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Are you sure you wish to clear the queue?.
+ /// </summary>
+ public static string QueueViewModel_ClearQueueConfrimation {
+ get {
+ return ResourceManager.GetString("QueueViewModel_ClearQueueConfrimation", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Are you sure you want to delete the selected jobs?.
+ /// </summary>
+ public static string QueueViewModel_DelSelectedJobConfirmation {
+ get {
+ return ResourceManager.GetString("QueueViewModel_DelSelectedJobConfirmation", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Are you sure you wish to edit this job? It will be removed from the queue and sent to the main window..
+ /// </summary>
+ public static string QueueViewModel_EditConfrimation {
+ get {
+ return ResourceManager.GetString("QueueViewModel_EditConfrimation", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to This encode is currently in progress. If you delete it, the encode will be stopped. Are you sure you wish to proceed?.
+ /// </summary>
+ public static string QueueViewModel_JobCurrentlyRunningWarning {
+ get {
+ return ResourceManager.GetString("QueueViewModel_JobCurrentlyRunningWarning", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to {0} jobs pending.
+ /// </summary>
+ public static string QueueViewModel_JobsPending {
+ get {
+ return ResourceManager.GetString("QueueViewModel_JobsPending", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Last Queued Job Finished.
+ /// </summary>
+ public static string QueueViewModel_LastJobFinished {
+ get {
+ return ResourceManager.GetString("QueueViewModel_LastJobFinished", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to No encodes pending.
+ /// </summary>
+ public static string QueueViewModel_NoEncodesPending {
+ get {
+ return ResourceManager.GetString("QueueViewModel_NoEncodesPending", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to There are no jobs currently encoding.
+ /// </summary>
+ public static string QueueViewModel_NoJobsPending {
+ get {
+ return ResourceManager.GetString("QueueViewModel_NoJobsPending", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to There are no pending jobs..
+ /// </summary>
+ public static string QueueViewModel_NoPendingJobs {
+ get {
+ return ResourceManager.GetString("QueueViewModel_NoPendingJobs", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Queue.
+ /// </summary>
+ public static string QueueViewModel_Queue {
+ get {
+ return ResourceManager.GetString("QueueViewModel_Queue", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Queue Completed.
+ /// </summary>
+ public static string QueueViewModel_QueueCompleted {
+ get {
+ return ResourceManager.GetString("QueueViewModel_QueueCompleted", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Queue Not Running.
+ /// </summary>
+ public static string QueueViewModel_QueueNotRunning {
+ get {
+ return ResourceManager.GetString("QueueViewModel_QueueNotRunning", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to The Queue has been paused. The currently running job will run to completion and no further jobs will start..
+ /// </summary>
+ public static string QueueViewModel_QueuePauseNotice {
+ get {
+ return ResourceManager.GetString("QueueViewModel_QueuePauseNotice", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Queue Paused.
+ /// </summary>
+ public static string QueueViewModel_QueuePending {
+ get {
+ return ResourceManager.GetString("QueueViewModel_QueuePending", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Queue Ready.
+ /// </summary>
+ public static string QueueViewModel_QueueReady {
+ get {
+ return ResourceManager.GetString("QueueViewModel_QueueReady", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Queue Started.
+ /// </summary>
+ public static string QueueViewModel_QueueStarted {
+ get {
+ return ResourceManager.GetString("QueueViewModel_QueueStarted", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Encoding: Pass {0} of {1}, {2:00.00}%, FPS: {3:000.0}, Avg FPS: {4:000.0}, Time Remaining: {5}, Elapsed: {6:hh\:mm\:ss}.
+ /// </summary>
+ public static string QueueViewModel_QueueStatusDisplay {
+ get {
+ return ResourceManager.GetString("QueueViewModel_QueueStatusDisplay", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to An Encode is currently running. Exiting HandBrake will stop this encode.
+ ///Are you sure you wish to exit HandBrake?.
+ /// </summary>
+ public static string ShellViewModel_CanClose {
+ get {
+ return ResourceManager.GetString("ShellViewModel_CanClose", resourceCulture);
+ }
+ }
+
+ /// <summary>
/// Looks up a localized string similar to Ready.
/// </summary>
public static string State_Ready {
@@ -969,6 +1348,61 @@ namespace HandBrakeWPF.Properties {
}
/// <summary>
+ /// Looks up a localized string similar to Unable to delete previous preview file. You may need to restart the application..
+ /// </summary>
+ public static string StaticPreview_UnableToDeletePreview {
+ get {
+ return ResourceManager.GetString("StaticPreview_UnableToDeletePreview", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Handbrake is already encoding a video! Only one file can be encoded at any one time..
+ /// </summary>
+ public static string StaticPreviewViewModel_AlreadyEncoding {
+ get {
+ return ResourceManager.GetString("StaticPreviewViewModel_AlreadyEncoding", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to You must first scan a source and setup your encode before creating a preview..
+ /// </summary>
+ public static string StaticPreviewViewModel_ScanFirst {
+ get {
+ return ResourceManager.GetString("StaticPreviewViewModel_ScanFirst", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Picture Preview.
+ /// </summary>
+ public static string StaticPreviewViewModel_Title {
+ get {
+ return ResourceManager.GetString("StaticPreviewViewModel_Title", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Unable to detect VLC Player.
+ ///Please make sure VLC is installed and the directory specified in HandBrake&apos;s options is correct. (See: &quot;Tools Menu &gt; Options &gt; Picture Tab&quot;).
+ /// </summary>
+ public static string StaticPreviewViewModel_UnableToFindVLC {
+ get {
+ return ResourceManager.GetString("StaticPreviewViewModel_UnableToFindVLC", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Unable to find the preview file. Either the file was deleted or the encode failed. Check the activity log for details..
+ /// </summary>
+ public static string StaticPreviewViewModel_UnableToPlayFile {
+ get {
+ return ResourceManager.GetString("StaticPreviewViewModel_UnableToPlayFile", 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.
///First Track - The first track will be burned in.
@@ -981,6 +1415,51 @@ namespace HandBrakeWPF.Properties {
}
/// <summary>
+ /// Looks up a localized string similar to Configure Defaults.
+ /// </summary>
+ public static string SubtitlesViewModel_ConfigureDefaults {
+ get {
+ return ResourceManager.GetString("SubtitlesViewModel_ConfigureDefaults", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Subtitle Defaults.
+ /// </summary>
+ public static string SubtitlesViewModel_SubDefaults {
+ get {
+ return ResourceManager.GetString("SubtitlesViewModel_SubDefaults", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Subtitle Tracks.
+ /// </summary>
+ public static string SubtitlesViewModel_SubTracks {
+ get {
+ return ResourceManager.GetString("SubtitlesViewModel_SubTracks", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Switch Back To Tracks.
+ /// </summary>
+ public static string SubtitlesViewModel_SwitchToTracks {
+ get {
+ return ResourceManager.GetString("SubtitlesViewModel_SwitchToTracks", resourceCulture);
+ }
+ }
+
+ /// <summary>
+ /// Looks up a localized string similar to Unknown Error.
+ /// </summary>
+ public static string UnknownError {
+ get {
+ return ResourceManager.GetString("UnknownError", resourceCulture);
+ }
+ }
+
+ /// <summary>
/// Looks up a localized string similar to Updated.
/// </summary>
public static string Updated {
diff --git a/win/CS/HandBrakeWPF/Properties/Resources.resx b/win/CS/HandBrakeWPF/Properties/Resources.resx
index 175695ae1..22ad582b7 100644
--- a/win/CS/HandBrakeWPF/Properties/Resources.resx
+++ b/win/CS/HandBrakeWPF/Properties/Resources.resx
@@ -587,4 +587,165 @@ The Activity log may have further information.</value>
<data name="MainViewModel_EncodeStatusChanged_StatusLabel" xml:space="preserve">
<value>{0:00.00}% FPS: {1:000.0} Avg FPS: {2:000.0} Time Remaining: {3} Elapsed: {4:hh\:mm\:ss}</value>
</data>
+ <data name="AddPresetViewModel_PresetMustProvideName" xml:space="preserve">
+ <value>A Preset must have a Name. Please fill out the Preset Name field.</value>
+ </data>
+ <data name="AddPresetViewModel_PresetWithSameNameOverwriteWarning" xml:space="preserve">
+ <value>A Preset with this name already exists. Would you like to overwrite it?</value>
+ </data>
+ <data name="AddPresetViewModel_YouMustFirstScanSource" xml:space="preserve">
+ <value>You must first scan a source to use the 'Source Maximum' Option.</value>
+ </data>
+ <data name="AddPresetViewModel_CustomWidthHeightFieldsRequired" xml:space="preserve">
+ <value>The Custom Width or Height fields must be filled in for the 'Custom' option.</value>
+ </data>
+ <data name="AddPresetViewModel_UnableToAddPreset" xml:space="preserve">
+ <value>Unable to add preset</value>
+ </data>
+ <data name="UnknownError" xml:space="preserve">
+ <value>Unknown Error</value>
+ </data>
+ <data name="AudioViewModel_AudioDefaults" xml:space="preserve">
+ <value>Audio Defaults</value>
+ </data>
+ <data name="AudioViewModel_AudioTracks" xml:space="preserve">
+ <value>Audio Tracks</value>
+ </data>
+ <data name="AudioViewModel_ConfigureDefaults" xml:space="preserve">
+ <value>Configure Defaults</value>
+ </data>
+ <data name="AudioViewModel_SwitchBackToTracks" xml:space="preserve">
+ <value>Switch Back To Tracks</value>
+ </data>
+ <data name="ChaptersViewModel_UnableToExportChaptersWarning" xml:space="preserve">
+ <value>Unable to save Chapter Makrers file! </value>
+ </data>
+ <data name="ChaptersViewModel_UnableToExportChaptersMsg" xml:space="preserve">
+ <value>Chapter marker names will NOT be saved in your encode.</value>
+ </data>
+ <data name="CountdownAlertViewModel_NoticeMessage" xml:space="preserve">
+ <value>The following action '{0}' will occur in {1} seconds.</value>
+ </data>
+ <data name="ErrorViewModel_IfTheProblemPersists" xml:space="preserve">
+ <value>If the problem presists, please try restarting HandBrake.</value>
+ </data>
+ <data name="ErrorViewModel_NoFurtherInformation" xml:space="preserve">
+ <value>There is no further information available about this error.</value>
+ </data>
+ <data name="ErrorViewModel_UnknownError" xml:space="preserve">
+ <value>An Unknown Error has occured.</value>
+ </data>
+ <data name="OptionsViewModel_NewUpdate" xml:space="preserve">
+ <value>A New Update is Available!</value>
+ </data>
+ <data name="OptionsViewModel_64bitAvailable" xml:space="preserve">
+ <value>Your system supports the 64bit version of HandBrake! This offers performance and stability improvements over this 32bit version.</value>
+ </data>
+ <data name="OptionsViewModel_NoNewUpdates" xml:space="preserve">
+ <value>There are no new updates at this time.</value>
+ </data>
+ <data name="OptionsViewModel_UpdateDownloaded" xml:space="preserve">
+ <value>Update Downloaded</value>
+ </data>
+ <data name="OptionsViewModel_UpdateServiceUnavailable" xml:space="preserve">
+ <value>Update Service Unavailable. You can try downloading the update from https://handbrake.fr</value>
+ </data>
+ <data name="OptionsViewModel_UpdateFailed" xml:space="preserve">
+ <value>Update Failed. You can try downloading the update from https://handbrake.fr</value>
+ </data>
+ <data name="PictureSettingsViewModel_StorageDisplayLabel" xml:space="preserve">
+ <value>Storage: {0}x{1}, Display: {2}x{3}</value>
+ </data>
+ <data name="QueueSelectionViewModel_AddToQueue" xml:space="preserve">
+ <value>Add to Queue</value>
+ </data>
+ <data name="QueueViewModel_NoEncodesPending" xml:space="preserve">
+ <value>No encodes pending</value>
+ </data>
+ <data name="QueueViewModel_NoJobsPending" xml:space="preserve">
+ <value>There are no jobs currently encoding</value>
+ </data>
+ <data name="QueueViewModel_Queue" xml:space="preserve">
+ <value>Queue</value>
+ </data>
+ <data name="QueueViewModel_ClearQueueConfrimation" xml:space="preserve">
+ <value>Are you sure you wish to clear the queue?</value>
+ </data>
+ <data name="Confirm" xml:space="preserve">
+ <value>Confirm</value>
+ </data>
+ <data name="QueueViewModel_JobsPending" xml:space="preserve">
+ <value>{0} jobs pending</value>
+ </data>
+ <data name="QueueViewModel_QueuePending" xml:space="preserve">
+ <value>Queue Paused</value>
+ </data>
+ <data name="QueueViewModel_QueuePauseNotice" xml:space="preserve">
+ <value>The Queue has been paused. The currently running job will run to completion and no further jobs will start.</value>
+ </data>
+ <data name="QueueViewModel_DelSelectedJobConfirmation" xml:space="preserve">
+ <value>Are you sure you want to delete the selected jobs?</value>
+ </data>
+ <data name="QueueViewModel_JobCurrentlyRunningWarning" xml:space="preserve">
+ <value>This encode is currently in progress. If you delete it, the encode will be stopped. Are you sure you wish to proceed?</value>
+ </data>
+ <data name="QueueViewModel_NoPendingJobs" xml:space="preserve">
+ <value>There are no pending jobs.</value>
+ </data>
+ <data name="QueueViewModel_EditConfrimation" xml:space="preserve">
+ <value>Are you sure you wish to edit this job? It will be removed from the queue and sent to the main window.</value>
+ </data>
+ <data name="QueueViewModel_QueueReady" xml:space="preserve">
+ <value>Queue Ready</value>
+ </data>
+ <data name="QueueViewModel_QueueNotRunning" xml:space="preserve">
+ <value>Queue Not Running</value>
+ </data>
+ <data name="QueueViewModel_QueueCompleted" xml:space="preserve">
+ <value>Queue Completed</value>
+ </data>
+ <data name="QueueViewModel_LastJobFinished" xml:space="preserve">
+ <value>Last Queued Job Finished</value>
+ </data>
+ <data name="QueueViewModel_QueueStarted" xml:space="preserve">
+ <value>Queue Started</value>
+ </data>
+ <data name="QueueViewModel_QueueStatusDisplay" xml:space="preserve">
+ <value>Encoding: Pass {0} of {1}, {2:00.00}%, FPS: {3:000.0}, Avg FPS: {4:000.0}, Time Remaining: {5}, Elapsed: {6:hh\:mm\:ss}</value>
+ </data>
+ <data name="ShellViewModel_CanClose" xml:space="preserve">
+ <value>An Encode is currently running. Exiting HandBrake will stop this encode.
+Are you sure you wish to exit HandBrake?</value>
+ </data>
+ <data name="StaticPreviewViewModel_Title" xml:space="preserve">
+ <value>Picture Preview</value>
+ </data>
+ <data name="StaticPreview_UnableToDeletePreview" xml:space="preserve">
+ <value>Unable to delete previous preview file. You may need to restart the application.</value>
+ </data>
+ <data name="StaticPreviewViewModel_ScanFirst" xml:space="preserve">
+ <value>You must first scan a source and setup your encode before creating a preview.</value>
+ </data>
+ <data name="StaticPreviewViewModel_UnableToFindVLC" xml:space="preserve">
+ <value>Unable to detect VLC Player.
+Please make sure VLC is installed and the directory specified in HandBrake's options is correct. (See: "Tools Menu &gt; Options &gt; Picture Tab")</value>
+ </data>
+ <data name="StaticPreviewViewModel_UnableToPlayFile" xml:space="preserve">
+ <value>Unable to find the preview file. Either the file was deleted or the encode failed. Check the activity log for details.</value>
+ </data>
+ <data name="StaticPreviewViewModel_AlreadyEncoding" xml:space="preserve">
+ <value>Handbrake is already encoding a video! Only one file can be encoded at any one time.</value>
+ </data>
+ <data name="SubtitlesViewModel_SubDefaults" xml:space="preserve">
+ <value>Subtitle Defaults</value>
+ </data>
+ <data name="SubtitlesViewModel_SubTracks" xml:space="preserve">
+ <value>Subtitle Tracks</value>
+ </data>
+ <data name="SubtitlesViewModel_SwitchToTracks" xml:space="preserve">
+ <value>Switch Back To Tracks</value>
+ </data>
+ <data name="SubtitlesViewModel_ConfigureDefaults" xml:space="preserve">
+ <value>Configure Defaults</value>
+ </data>
</root> \ No newline at end of file
diff --git a/win/CS/HandBrakeWPF/ViewModels/AddPresetViewModel.cs b/win/CS/HandBrakeWPF/ViewModels/AddPresetViewModel.cs
index 189472949..4a3b42dc5 100644
--- a/win/CS/HandBrakeWPF/ViewModels/AddPresetViewModel.cs
+++ b/win/CS/HandBrakeWPF/ViewModels/AddPresetViewModel.cs
@@ -173,13 +173,13 @@ namespace HandBrakeWPF.ViewModels
{
if (string.IsNullOrEmpty(this.Preset.Name))
{
- this.errorService.ShowMessageBox("A Preset must have a Name. Please fill out the Preset Name field.", Resources.Error, MessageBoxButton.OK, MessageBoxImage.Error);
+ this.errorService.ShowMessageBox(Resources.AddPresetViewModel_PresetMustProvideName, Resources.Error, MessageBoxButton.OK, MessageBoxImage.Error);
return;
}
if (this.presetService.CheckIfPresetExists(this.Preset.Name))
{
- MessageBoxResult result = this.errorService.ShowMessageBox("A Preset with this name already exists. Would you like to overwrite it?", Resources.Error, MessageBoxButton.YesNo, MessageBoxImage.Error);
+ MessageBoxResult result = this.errorService.ShowMessageBox(Resources.AddPresetViewModel_PresetWithSameNameOverwriteWarning, Resources.Error, MessageBoxButton.YesNo, MessageBoxImage.Error);
if (result == MessageBoxResult.No)
{
return;
@@ -188,13 +188,13 @@ namespace HandBrakeWPF.ViewModels
if (this.SelectedPictureSettingMode == PresetPictureSettingsMode.SourceMaximum && this.selectedTitle == null)
{
- this.errorService.ShowMessageBox("You must first scan a source to use the 'Source Maximum' Option.", Resources.Error, MessageBoxButton.OK, MessageBoxImage.Error);
+ this.errorService.ShowMessageBox(Resources.AddPresetViewModel_YouMustFirstScanSource, Resources.Error, MessageBoxButton.OK, MessageBoxImage.Error);
return;
}
if (this.CustomWidth == null && this.CustomHeight == null && this.SelectedPictureSettingMode == PresetPictureSettingsMode.Custom)
{
- this.errorService.ShowMessageBox("The Custom Width or Height fields must be filled in for the 'Custom' option.", Resources.Error, MessageBoxButton.OK, MessageBoxImage.Error);
+ this.errorService.ShowMessageBox(Resources.AddPresetViewModel_CustomWidthHeightFieldsRequired, Resources.Error, MessageBoxButton.OK, MessageBoxImage.Error);
return;
}
@@ -226,7 +226,7 @@ namespace HandBrakeWPF.ViewModels
bool added = this.presetService.Add(this.Preset);
if (!added)
{
- this.errorService.ShowMessageBox("Unable to add preset", "Unknown Error", MessageBoxButton.OK,
+ this.errorService.ShowMessageBox(Resources.AddPresetViewModel_UnableToAddPreset, Resources.UnknownError, MessageBoxButton.OK,
MessageBoxImage.Error);
}
else
diff --git a/win/CS/HandBrakeWPF/ViewModels/AudioDefaultsViewModel.cs b/win/CS/HandBrakeWPF/ViewModels/AudioDefaultsViewModel.cs
deleted file mode 100644
index 18fee1926..000000000
--- a/win/CS/HandBrakeWPF/ViewModels/AudioDefaultsViewModel.cs
+++ /dev/null
@@ -1,237 +0,0 @@
-// --------------------------------------------------------------------------------------------------------------------
-// <copyright file="AudioDefaultsViewModel.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 Audio Defaults View Model
-// </summary>
-// --------------------------------------------------------------------------------------------------------------------
-
-namespace HandBrakeWPF.ViewModels
-{
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Linq;
-
- using Caliburn.Micro;
-
- using HandBrake.ApplicationServices.Interop.Model.Encoding;
- using HandBrake.ApplicationServices.Utilities;
-
- using HandBrakeWPF.Commands;
- using HandBrakeWPF.Model.Audio;
- using HandBrakeWPF.Services.Interfaces;
- using HandBrakeWPF.Services.Presets.Model;
- using HandBrakeWPF.ViewModels.Interfaces;
-
- /// <summary>
- /// The Audio View Model
- /// </summary>
- public class AudioDefaultsViewModel : ViewModelBase, IAudioDefaultsViewModel
- {
- /// <summary>
- /// The available languages.
- /// </summary>
- private BindingList<string> availableLanguages;
-
- /// <summary>
- /// The audio behaviours.
- /// </summary>
- private AudioBehaviours audioBehaviours;
-
- #region Constructors and Destructors
-
- /// <summary>
- /// Initializes a new instance of the <see cref="AudioDefaultsViewModel"/> class.
- /// </summary>
- /// <param name="windowManager">
- /// The window manager.
- /// </param>
- /// <param name="userSettingService">
- /// The user Setting Service.
- /// </param>
- public AudioDefaultsViewModel(IWindowManager windowManager, IUserSettingService userSettingService)
- {
- this.AudioEncoders = EnumHelper<AudioEncoder>.GetEnumList();
-
- this.AudioBehaviours = new AudioBehaviours();
- this.SelectedAvailableToMove = new BindingList<string>();
- this.SelectedLangaugesToMove = new BindingList<string>();
- this.AvailableLanguages = new BindingList<string>();
- this.SetupLanguages(null);
- }
-
- #endregion
-
- #region Properties
-
- /// <summary>
- /// Gets or sets the audio behaviours.
- /// </summary>
- public AudioBehaviours AudioBehaviours
- {
- get
- {
- return this.audioBehaviours;
- }
- set
- {
- if (Equals(value, this.audioBehaviours))
- {
- return;
- }
- this.audioBehaviours = value;
- this.NotifyOfPropertyChange(() => this.AudioBehaviours);
- }
- }
-
- /// <summary>
- /// Gets the audio behaviour modes.
- /// </summary>
- public BindingList<AudioBehaviourModes> AudioBehaviourModeList
- {
- get
- {
- return new BindingList<AudioBehaviourModes>(EnumHelper<AudioBehaviourModes>.GetEnumList().ToList());
- }
- }
-
- /// <summary>
- /// Gets or sets AudioEncoders.
- /// </summary>
- public IEnumerable<AudioEncoder> AudioEncoders { get; set; }
-
-
- /// <summary>
- /// Gets or sets AvailableLanguages.
- /// </summary>
- public BindingList<string> AvailableLanguages
- {
- get
- {
- return this.availableLanguages;
- }
-
- set
- {
- this.availableLanguages = value;
- this.NotifyOfPropertyChange("AvailableLanguages");
- }
- }
-
- /// <summary>
- /// Gets or sets SelectedLangauges.
- /// </summary>
- public BindingList<string> SelectedAvailableToMove { get; set; }
-
- /// <summary>
- /// Gets or sets SelectedLangauges.
- /// </summary>
- public BindingList<string> SelectedLangaugesToMove { get; set; }
-
- #endregion
-
- #region Public Methods
-
- /// <summary>
- /// Audio List Move Left
- /// </summary>
- public void LanguageMoveRight()
- {
- if (this.SelectedAvailableToMove.Count > 0)
- {
- List<string> copiedList = SelectedAvailableToMove.ToList();
- foreach (string item in copiedList)
- {
- this.AvailableLanguages.Remove(item);
- this.AudioBehaviours.SelectedLangauges.Add(item);
- }
-
- this.AvailableLanguages = new BindingList<string>(this.AvailableLanguages.OrderBy(o => o).ToList());
- }
- }
-
- /// <summary>
- /// Audio List Move Right
- /// </summary>
- public void LanguageMoveLeft()
- {
- if (this.SelectedLangaugesToMove.Count > 0)
- {
- List<string> copiedList = SelectedLangaugesToMove.ToList();
- foreach (string item in copiedList)
- {
- this.AudioBehaviours.SelectedLangauges.Remove(item);
- this.AvailableLanguages.Add(item);
- }
- }
-
- this.AvailableLanguages = new BindingList<string>(this.AvailableLanguages.OrderBy(o => o).ToList());
- }
-
- /// <summary>
- /// Audio List Clear all selected languages
- /// </summary>
- public void LanguageClearAll()
- {
- foreach (string item in this.AudioBehaviours.SelectedLangauges)
- {
- this.AvailableLanguages.Add(item);
- }
- this.AvailableLanguages = new BindingList<string>(this.AvailableLanguages.OrderBy(o => o).ToList());
-
- this.AudioBehaviours.SelectedLangauges.Clear();
- }
-
- /// <summary>
- /// The close.
- /// </summary>
- public void Close()
- {
- CloseOverlayPanelCommand command = new CloseOverlayPanelCommand();
- command.Execute(null);
- }
-
- #endregion
-
- #region Methods
-
- /// <summary>
- /// The setup languages.
- /// </summary>
- /// <param name="preset">
- /// The preset.
- /// </param>
- private void SetupLanguages(Preset preset)
- {
- // Step 1, Set the behaviour mode
- this.AudioBehaviours.SelectedBehaviour = AudioBehaviourModes.None;
- this.AudioBehaviours.SelectedLangauges.Clear();
-
- // Step 2, Get all the languages
- IDictionary<string, string> langList = LanguageUtilities.MapLanguages();
- langList = (from entry in langList orderby entry.Key ascending select entry).ToDictionary(pair => pair.Key, pair => pair.Value);
-
- // Step 3, Setup Available Languages
- this.AvailableLanguages.Clear();
- foreach (string item in langList.Keys)
- {
- this.AvailableLanguages.Add(item);
- }
-
- // Step 4, Set the Selected Languages
- if (preset != null && preset.AudioTrackBehaviours != null)
- {
- this.AudioBehaviours.SelectedBehaviour = preset.AudioTrackBehaviours.SelectedBehaviour;
-
- foreach (string selectedItem in preset.AudioTrackBehaviours.SelectedLangauges)
- {
- this.AvailableLanguages.Remove(selectedItem);
- this.AudioBehaviours.SelectedLangauges.Add(selectedItem);
- }
- }
- }
-
- #endregion
- }
-} \ No newline at end of file
diff --git a/win/CS/HandBrakeWPF/ViewModels/AudioViewModel.cs b/win/CS/HandBrakeWPF/ViewModels/AudioViewModel.cs
index 3424b4c09..75adf94be 100644
--- a/win/CS/HandBrakeWPF/ViewModels/AudioViewModel.cs
+++ b/win/CS/HandBrakeWPF/ViewModels/AudioViewModel.cs
@@ -23,6 +23,7 @@ namespace HandBrakeWPF.ViewModels
using HandBrake.ApplicationServices.Utilities;
using HandBrakeWPF.Model.Audio;
+ using HandBrakeWPF.Properties;
using HandBrakeWPF.Services.Interfaces;
using HandBrakeWPF.Services.Presets.Model;
using HandBrakeWPF.ViewModels.Interfaces;
@@ -199,7 +200,7 @@ namespace HandBrakeWPF.ViewModels
{
get
{
- return this.ShowAudioDefaultsPanel ? "Audio Defaults" : "Audio Tracks";
+ return this.ShowAudioDefaultsPanel ? Resources.AudioViewModel_AudioDefaults : Resources.AudioViewModel_AudioTracks;
}
}
@@ -210,7 +211,7 @@ namespace HandBrakeWPF.ViewModels
{
get
{
- return this.ShowAudioDefaultsPanel ? "Switch Back To Tracks" : "Configure Defaults";
+ return this.ShowAudioDefaultsPanel ? Resources.AudioViewModel_SwitchBackToTracks : Resources.AudioViewModel_ConfigureDefaults;
}
}
diff --git a/win/CS/HandBrakeWPF/ViewModels/ChaptersViewModel.cs b/win/CS/HandBrakeWPF/ViewModels/ChaptersViewModel.cs
index 881d3db6e..cca7b2334 100644
--- a/win/CS/HandBrakeWPF/ViewModels/ChaptersViewModel.cs
+++ b/win/CS/HandBrakeWPF/ViewModels/ChaptersViewModel.cs
@@ -21,6 +21,7 @@ namespace HandBrakeWPF.ViewModels
using HandBrake.ApplicationServices.Services.Encode.Model.Models;
using HandBrake.ApplicationServices.Services.Scan.Model;
+ using HandBrakeWPF.Properties;
using HandBrakeWPF.Services.Interfaces;
using HandBrakeWPF.Services.Presets.Model;
using HandBrakeWPF.ViewModels.Interfaces;
@@ -140,8 +141,8 @@ namespace HandBrakeWPF.ViewModels
catch (Exception exc)
{
throw new GeneralApplicationException(
- "Unable to save Chapter Makrers file! ",
- "Chapter marker names will NOT be saved in your encode.",
+ Resources.ChaptersViewModel_UnableToExportChaptersWarning,
+ Resources.ChaptersViewModel_UnableToExportChaptersMsg,
exc);
}
}
diff --git a/win/CS/HandBrakeWPF/ViewModels/CountdownAlertViewModel.cs b/win/CS/HandBrakeWPF/ViewModels/CountdownAlertViewModel.cs
index 0f92c18b8..703f9a5af 100644
--- a/win/CS/HandBrakeWPF/ViewModels/CountdownAlertViewModel.cs
+++ b/win/CS/HandBrakeWPF/ViewModels/CountdownAlertViewModel.cs
@@ -12,6 +12,7 @@ namespace HandBrakeWPF.ViewModels
using System;
using System.Windows.Threading;
+ using HandBrakeWPF.Properties;
using HandBrakeWPF.ViewModels.Interfaces;
/// <summary>
@@ -73,7 +74,7 @@ namespace HandBrakeWPF.ViewModels
{
get
{
- return string.Format("The following action '{0}' will occur in {1} seconds.", action, CountdownTime - this.Ticks);
+ return string.Format(Resources.CountdownAlertViewModel_NoticeMessage, action, CountdownTime - this.Ticks);
}
}
diff --git a/win/CS/HandBrakeWPF/ViewModels/ErrorViewModel.cs b/win/CS/HandBrakeWPF/ViewModels/ErrorViewModel.cs
index 78e4867ea..be57cd804 100644
--- a/win/CS/HandBrakeWPF/ViewModels/ErrorViewModel.cs
+++ b/win/CS/HandBrakeWPF/ViewModels/ErrorViewModel.cs
@@ -12,6 +12,7 @@ namespace HandBrakeWPF.ViewModels
using System;
using System.Windows;
+ using HandBrakeWPF.Properties;
using HandBrakeWPF.ViewModels.Interfaces;
/// <summary>
@@ -45,9 +46,9 @@ namespace HandBrakeWPF.ViewModels
/// </summary>
public ErrorViewModel()
{
- this.Title = "Error";
- this.ErrorMessage = "An Unknown Error has occured.";
- this.Details = "There is no further information available about this error.";
+ this.Title = Resources.Error;
+ this.ErrorMessage = Resources.ErrorViewModel_UnknownError;
+ this.Details = Resources.ErrorViewModel_NoFurtherInformation;
}
#endregion
@@ -61,7 +62,7 @@ namespace HandBrakeWPF.ViewModels
{
get
{
- return string.IsNullOrEmpty(this.details) ? "There is no further information available about this error." : this.details;
+ return string.IsNullOrEmpty(this.details) ? Resources.ErrorViewModel_NoFurtherInformation : this.details;
}
set
@@ -95,7 +96,7 @@ namespace HandBrakeWPF.ViewModels
{
get
{
- return string.IsNullOrEmpty(this.solution) ? "If the problem presists, please try restarting HandBrake." : this.solution;
+ return string.IsNullOrEmpty(this.solution) ? Resources.ErrorViewModel_IfTheProblemPersists : this.solution;
}
set
diff --git a/win/CS/HandBrakeWPF/ViewModels/LogViewModel.cs b/win/CS/HandBrakeWPF/ViewModels/LogViewModel.cs
index d369728a7..99ab912a6 100644
--- a/win/CS/HandBrakeWPF/ViewModels/LogViewModel.cs
+++ b/win/CS/HandBrakeWPF/ViewModels/LogViewModel.cs
@@ -129,13 +129,13 @@ namespace HandBrakeWPF.ViewModels
protected override void OnActivate()
{
this.scanService.ScanCompleted += ScanServiceScanCompleted;
- this.encodeService.EncodeCompleted += EncodeServiceEncodeCompleted;
- this.encodeService.EncodeStatusChanged += this.EncodeServiceEncodeStatusChanged;
- this.scanService.ScanStatusChanged += this.ScanServiceScanStatusChanged;
- this.scanService.ScanStarted += this.scanService_ScanStared;
- this.encodeService.EncodeStarted += this.encodeService_EncodeStarted;
- base.OnActivate();
-
+ this.encodeService.EncodeCompleted += EncodeServiceEncodeCompleted;
+ this.encodeService.EncodeStatusChanged += this.EncodeServiceEncodeStatusChanged;
+ this.scanService.ScanStatusChanged += this.ScanServiceScanStatusChanged;
+ this.scanService.ScanStarted += this.scanService_ScanStared;
+ this.encodeService.EncodeStarted += this.encodeService_EncodeStarted;
+ base.OnActivate();
+
this.NotifyOfPropertyChange(() => this.ScanLog);
this.NotifyOfPropertyChange(() => this.EncodeLog);
}
@@ -182,13 +182,13 @@ namespace HandBrakeWPF.ViewModels
protected override void OnDeactivate(bool close)
{
this.scanService.ScanCompleted -= ScanServiceScanCompleted;
- this.encodeService.EncodeCompleted -= EncodeServiceEncodeCompleted;
- this.encodeService.EncodeStatusChanged -= this.EncodeServiceEncodeStatusChanged;
- this.scanService.ScanStatusChanged -= this.ScanServiceScanStatusChanged;
- this.scanService.ScanStarted -= this.scanService_ScanStared;
- this.encodeService.EncodeStarted -= this.encodeService_EncodeStarted;
-
- base.OnDeactivate(close);
+ this.encodeService.EncodeCompleted -= EncodeServiceEncodeCompleted;
+ this.encodeService.EncodeStatusChanged -= this.EncodeServiceEncodeStatusChanged;
+ this.scanService.ScanStatusChanged -= this.ScanServiceScanStatusChanged;
+ this.scanService.ScanStarted -= this.scanService_ScanStared;
+ this.encodeService.EncodeStarted -= this.encodeService_EncodeStarted;
+
+ base.OnDeactivate(close);
}
/// <summary>
diff --git a/win/CS/HandBrakeWPF/ViewModels/OptionsViewModel.cs b/win/CS/HandBrakeWPF/ViewModels/OptionsViewModel.cs
index be12f2010..b233dc449 100644
--- a/win/CS/HandBrakeWPF/ViewModels/OptionsViewModel.cs
+++ b/win/CS/HandBrakeWPF/ViewModels/OptionsViewModel.cs
@@ -23,6 +23,7 @@ namespace HandBrakeWPF.ViewModels
using HandBrake.ApplicationServices.Utilities;
using HandBrakeWPF.Model;
+ using HandBrakeWPF.Properties;
using HandBrakeWPF.Services.Interfaces;
using HandBrakeWPF.ViewModels.Interfaces;
@@ -1528,17 +1529,17 @@ namespace HandBrakeWPF.ViewModels
this.updateInfo = info;
if (info.NewVersionAvailable)
{
- this.UpdateMessage = "A New Update is Available!";
+ this.UpdateMessage = Resources.OptionsViewModel_NewUpdate;
this.UpdateAvailable = true;
}
else if (Environment.Is64BitOperatingSystem && !System.Environment.Is64BitProcess)
{
- this.UpdateMessage = "Your system supports the 64bit version of HandBrake! This offers performance and stability improvements over this 32bit version.";
+ this.UpdateMessage = Resources.OptionsViewModel_64bitAvailable;
this.UpdateAvailable = true;
}
else
{
- this.UpdateMessage = "There are no new updates at this time.";
+ this.UpdateMessage = Resources.OptionsViewModel_NoNewUpdates;
this.UpdateAvailable = false;
}
}
@@ -1554,7 +1555,7 @@ namespace HandBrakeWPF.ViewModels
if (info.TotalBytes == 0 || info.BytesRead == 0)
{
this.UpdateAvailable = false;
- this.UpdateMessage = info.WasSuccessful ? "Update Downloaded" : "Update Service Unavailable. You can try downloading the update from https://handbrake.fr";
+ this.UpdateMessage = info.WasSuccessful ? Resources.OptionsViewModel_UpdateDownloaded : Resources.OptionsViewModel_UpdateServiceUnavailable;
return;
}
@@ -1575,7 +1576,7 @@ namespace HandBrakeWPF.ViewModels
private void DownloadComplete(DownloadStatus info)
{
this.UpdateAvailable = false;
- this.UpdateMessage = info.WasSuccessful ? "Update Downloaded" : "Update Failed. You can try downloading the update from https://handbrake.fr";
+ this.UpdateMessage = info.WasSuccessful ? Resources.OptionsViewModel_UpdateDownloaded : Resources.OptionsViewModel_UpdateFailed;
Process.Start(Path.Combine(Path.GetTempPath(), "handbrake-setup.exe"));
Execute.OnUIThread(() => Application.Current.Shutdown());
diff --git a/win/CS/HandBrakeWPF/ViewModels/PictureSettingsViewModel.cs b/win/CS/HandBrakeWPF/ViewModels/PictureSettingsViewModel.cs
index 1dd0ad93c..90fd2b3ff 100644
--- a/win/CS/HandBrakeWPF/ViewModels/PictureSettingsViewModel.cs
+++ b/win/CS/HandBrakeWPF/ViewModels/PictureSettingsViewModel.cs
@@ -19,6 +19,7 @@ namespace HandBrakeWPF.ViewModels
using HandBrake.ApplicationServices.Interop.Model.Encoding;
using HandBrakeWPF.Helpers;
+ using HandBrakeWPF.Properties;
using HandBrakeWPF.Services.Presets.Model;
using HandBrakeWPF.Utilities;
using HandBrakeWPF.ViewModels.Interfaces;
@@ -932,7 +933,7 @@ namespace HandBrakeWPF.ViewModels
double dispWidth = Math.Round((result.OutputWidth * result.OutputParWidth / result.OutputParHeight), 0);
this.DisplaySize = this.sourceResolution == null || this.sourceResolution.IsEmpty
? string.Empty
- : string.Format("Storage: {0}x{1}, Display: {2}x{3}", result.OutputWidth, result.OutputHeight, dispWidth, result.OutputHeight);
+ : string.Format(Resources.PictureSettingsViewModel_StorageDisplayLabel, result.OutputWidth, result.OutputHeight, dispWidth, result.OutputHeight);
// Step 4, Force an update on all the UI elements.
this.NotifyOfPropertyChange(() => this.Width);
diff --git a/win/CS/HandBrakeWPF/ViewModels/QueueSelectionViewModel.cs b/win/CS/HandBrakeWPF/ViewModels/QueueSelectionViewModel.cs
index c175056a4..0c99ceeae 100644
--- a/win/CS/HandBrakeWPF/ViewModels/QueueSelectionViewModel.cs
+++ b/win/CS/HandBrakeWPF/ViewModels/QueueSelectionViewModel.cs
@@ -17,6 +17,7 @@ namespace HandBrakeWPF.ViewModels
using HandBrake.ApplicationServices.Services.Scan.Model;
using HandBrakeWPF.Model;
+ using HandBrakeWPF.Properties;
using HandBrakeWPF.Services.Interfaces;
using HandBrakeWPF.ViewModels.Interfaces;
@@ -54,7 +55,7 @@ namespace HandBrakeWPF.ViewModels
public QueueSelectionViewModel(IErrorService errorService)
{
this.errorService = errorService;
- this.Title = "Add to Queue";
+ this.Title = Resources.QueueSelectionViewModel_AddToQueue;
this.TitleList = new BindingList<SelectionTitle>();
this.OrderedByTitle = true;
}
diff --git a/win/CS/HandBrakeWPF/ViewModels/QueueViewModel.cs b/win/CS/HandBrakeWPF/ViewModels/QueueViewModel.cs
index a5d33aa42..305b1c466 100644
--- a/win/CS/HandBrakeWPF/ViewModels/QueueViewModel.cs
+++ b/win/CS/HandBrakeWPF/ViewModels/QueueViewModel.cs
@@ -93,9 +93,9 @@ namespace HandBrakeWPF.ViewModels
this.userSettingService = userSettingService;
this.queueProcessor = queueProcessor;
this.errorService = errorService;
- this.Title = "Queue";
- this.JobsPending = "No encodes pending";
- this.JobStatus = "There are no jobs currently encoding";
+ this.Title = Resources.QueueViewModel_Queue;
+ this.JobsPending = Resources.QueueViewModel_NoEncodesPending;
+ this.JobStatus = Resources.QueueViewModel_NoJobsPending;
this.SelectedItems = new BindingList<QueueTask>();
}
@@ -208,7 +208,7 @@ namespace HandBrakeWPF.ViewModels
public void Clear()
{
MessageBoxResult result = this.errorService.ShowMessageBox(
- "Are you sure you wish to clear the queue?", "Confirm", MessageBoxButton.YesNo, MessageBoxImage.Warning);
+ Resources.QueueViewModel_ClearQueueConfrimation, Resources.Confirm, MessageBoxButton.YesNo, MessageBoxImage.Warning);
if (result == MessageBoxResult.Yes)
{
this.queueProcessor.Clear();
@@ -238,7 +238,7 @@ namespace HandBrakeWPF.ViewModels
{
// Setup the window to the correct state.
this.IsEncoding = this.queueProcessor.EncodeService.IsEncoding;
- this.JobsPending = string.Format("{0} jobs pending", this.queueProcessor.Count);
+ this.JobsPending = string.Format(Resources.QueueViewModel_JobsPending, this.queueProcessor.Count);
base.OnLoad();
}
@@ -250,11 +250,11 @@ namespace HandBrakeWPF.ViewModels
{
this.queueProcessor.Pause();
- this.JobStatus = "Queue Paused";
- this.JobsPending = string.Format("{0} jobs pending", this.queueProcessor.Count);
+ this.JobStatus = Resources.QueueViewModel_QueuePending;
+ this.JobsPending = string.Format(Resources.QueueViewModel_JobsPending, this.queueProcessor.Count);
this.IsEncoding = false;
- MessageBox.Show("The Queue has been paused. The currently running job will run to completion and no further jobs will start.", "Queue",
+ MessageBox.Show(Resources.QueueViewModel_QueuePauseNotice, Resources.QueueViewModel_Queue,
MessageBoxButton.OK, MessageBoxImage.Information);
}
@@ -265,7 +265,7 @@ namespace HandBrakeWPF.ViewModels
{
MessageBoxResult result =
this.errorService.ShowMessageBox(
- "Are you sure you want to delete the selected jobs?",
+ Resources.QueueViewModel_DelSelectedJobConfirmation,
Resources.Question,
MessageBoxButton.YesNo,
MessageBoxImage.Question);
@@ -300,7 +300,7 @@ namespace HandBrakeWPF.ViewModels
{
MessageBoxResult result =
this.errorService.ShowMessageBox(
- "This encode is currently in progress. If you delete it, the encode will be stopped. Are you sure you wish to proceed?",
+ Resources.QueueViewModel_JobCurrentlyRunningWarning,
Resources.Warning,
MessageBoxButton.YesNo,
MessageBoxImage.Question);
@@ -327,7 +327,7 @@ namespace HandBrakeWPF.ViewModels
{
task.Status = QueueItemStatus.Waiting;
this.queueProcessor.BackupQueue(null);
- this.JobsPending = string.Format("{0} jobs pending", this.queueProcessor.Count);
+ this.JobsPending = string.Format(Resources.QueueViewModel_JobsPending, this.queueProcessor.Count);
}
/// <summary>
@@ -338,12 +338,12 @@ namespace HandBrakeWPF.ViewModels
if (this.queueProcessor.Count == 0)
{
this.errorService.ShowMessageBox(
- "There are no pending jobs.", Resources.Error, MessageBoxButton.OK, MessageBoxImage.Error);
+ Resources.QueueViewModel_NoPendingJobs, Resources.Error, MessageBoxButton.OK, MessageBoxImage.Error);
return;
}
- this.JobStatus = "Queue Started";
- this.JobsPending = string.Format("{0} jobs pending", this.queueProcessor.Count);
+ this.JobStatus = Resources.QueueViewModel_QueueStarted;
+ this.JobsPending = string.Format(Resources.QueueViewModel_JobsPending, this.queueProcessor.Count);
this.IsEncoding = true;
this.queueProcessor.Start(UserSettingService.GetUserSetting<bool>(UserSettingConstants.ClearCompletedFromQueue));
@@ -388,7 +388,7 @@ namespace HandBrakeWPF.ViewModels
public void EditJob(QueueTask task)
{
MessageBoxResult result = this.errorService.ShowMessageBox(
- "Are you sure you wish to edit this job? It will be removed from the queue and sent to the main window.",
+ Resources.QueueViewModel_EditConfrimation,
"Modify Job?",
MessageBoxButton.YesNo,
MessageBoxImage.Question);
@@ -425,8 +425,8 @@ namespace HandBrakeWPF.ViewModels
this.queueProcessor.EncodeService.EncodeCompleted += EncodeService_EncodeCompleted;
this.queueProcessor.JobProcessingStarted += this.QueueProcessorJobProcessingStarted;
- this.JobsPending = string.Format("{0} jobs pending", this.queueProcessor.Count);
- this.JobStatus = "Queue Ready";
+ this.JobsPending = string.Format(Resources.QueueViewModel_JobsPending, this.queueProcessor.Count);
+ this.JobStatus = Resources.QueueViewModel_QueueReady;
base.OnActivate();
}
@@ -463,7 +463,7 @@ namespace HandBrakeWPF.ViewModels
{
this.JobStatus =
string.Format(
- "Encoding: Pass {0} of {1}, {2:00.00}%, FPS: {3:000.0}, Avg FPS: {4:000.0}, Time Remaining: {5}, Elapsed: {6:hh\\:mm\\:ss}",
+ Resources.QueueViewModel_QueueStatusDisplay,
e.Task,
e.TaskCount,
e.PercentComplete,
@@ -485,11 +485,11 @@ namespace HandBrakeWPF.ViewModels
/// </param>
private void QueueManager_QueueChanged(object sender, EventArgs e)
{
- this.JobsPending = string.Format("{0} jobs pending", this.queueProcessor.Count);
+ this.JobsPending = string.Format(Resources.QueueViewModel_JobsPending, this.queueProcessor.Count);
if (!queueProcessor.IsProcessing)
{
- this.JobStatus = "Queue Not Running";
+ this.JobStatus = Resources.QueueViewModel_QueueNotRunning;
}
}
@@ -504,8 +504,8 @@ namespace HandBrakeWPF.ViewModels
/// </param>
private void queueProcessor_QueueCompleted(object sender, EventArgs e)
{
- this.JobStatus = "Queue Completed";
- this.JobsPending = string.Format("{0} jobs pending", this.queueProcessor.Count);
+ this.JobStatus = Resources.QueueViewModel_QueueCompleted;
+ this.JobsPending = string.Format(Resources.QueueViewModel_JobsPending, this.queueProcessor.Count);
this.IsEncoding = false;
}
@@ -522,7 +522,7 @@ namespace HandBrakeWPF.ViewModels
{
if (!this.queueProcessor.IsProcessing)
{
- this.JobStatus = "Last Queued Job Finished";
+ this.JobStatus = Resources.QueueViewModel_LastJobFinished;
}
}
@@ -537,8 +537,8 @@ namespace HandBrakeWPF.ViewModels
/// </param>
private void QueueProcessorJobProcessingStarted(object sender, QueueProgressEventArgs e)
{
- this.JobStatus = "Queue Started";
- this.JobsPending = string.Format("{0} jobs pending", this.queueProcessor.Count);
+ this.JobStatus = Resources.QueueViewModel_QueueStarted;
+ this.JobsPending = string.Format(Resources.QueueViewModel_JobsPending, this.queueProcessor.Count);
this.IsEncoding = true;
}
diff --git a/win/CS/HandBrakeWPF/ViewModels/ShellViewModel.cs b/win/CS/HandBrakeWPF/ViewModels/ShellViewModel.cs
index 11a9d8715..f21345f97 100644
--- a/win/CS/HandBrakeWPF/ViewModels/ShellViewModel.cs
+++ b/win/CS/HandBrakeWPF/ViewModels/ShellViewModel.cs
@@ -236,7 +236,7 @@ namespace HandBrakeWPF.ViewModels
{
MessageBoxResult result =
errorService.ShowMessageBox(
- "An Encode is currently running. Exiting HandBrake will stop this encode.\nAre you sure you wish to exit HandBrake?",
+ Resources.ShellViewModel_CanClose,
Resources.Warning,
MessageBoxButton.YesNo,
MessageBoxImage.Warning);
diff --git a/win/CS/HandBrakeWPF/ViewModels/StaticPreviewViewModel.cs b/win/CS/HandBrakeWPF/ViewModels/StaticPreviewViewModel.cs
index 768c127d6..6aa7a3050 100644
--- a/win/CS/HandBrakeWPF/ViewModels/StaticPreviewViewModel.cs
+++ b/win/CS/HandBrakeWPF/ViewModels/StaticPreviewViewModel.cs
@@ -411,7 +411,7 @@ namespace HandBrakeWPF.ViewModels
{
this.Task = task;
this.UpdatePreviewFrame();
- this.DisplayName = "Picture Preview";
+ this.DisplayName = Resources.StaticPreviewViewModel_Title;
this.Title = Resources.Preview;
this.ScannedSource = scannedSource;
}
@@ -517,13 +517,13 @@ namespace HandBrakeWPF.ViewModels
catch (Exception)
{
this.IsEncoding = false;
- this.errorService.ShowMessageBox("Unable to delete previous preview file. You may need to restart the application.",
+ this.errorService.ShowMessageBox(Resources.StaticPreview_UnableToDeletePreview,
Resources.Error, MessageBoxButton.OK, MessageBoxImage.Error);
}
if (this.Task == null || string.IsNullOrEmpty(Task.Source))
{
- this.errorService.ShowMessageBox("You must first scan a source and setup your encode before creating a preview.",
+ this.errorService.ShowMessageBox(Resources.StaticPreviewViewModel_ScanFirst,
Resources.Error, MessageBoxButton.OK, MessageBoxImage.Error);
return;
}
@@ -604,7 +604,7 @@ namespace HandBrakeWPF.ViewModels
}
else
{
- this.errorService.ShowMessageBox("Unable to detect VLC Player. \nPlease make sure VLC is installed and the directory specified in HandBrake's options is correct. (See: \"Tools Menu > Options > Picture Tab\")",
+ this.errorService.ShowMessageBox(Resources.StaticPreviewViewModel_UnableToFindVLC,
Resources.Error, MessageBoxButton.OK, MessageBoxImage.Warning);
}
}
@@ -618,7 +618,7 @@ namespace HandBrakeWPF.ViewModels
}
else
{
- this.errorService.ShowMessageBox("Unable to find the preview file. Either the file was deleted or the encode failed. Check the activity log for details.",
+ this.errorService.ShowMessageBox(Resources.StaticPreviewViewModel_UnableToPlayFile,
Resources.Error, MessageBoxButton.OK, MessageBoxImage.Warning);
}
}
@@ -635,7 +635,7 @@ namespace HandBrakeWPF.ViewModels
// Make sure we are not already encoding and if we are then display an error.
if (encodeService.IsEncoding)
{
- this.errorService.ShowMessageBox("Handbrake is already encoding a video! Only one file can be encoded at any one time.",
+ this.errorService.ShowMessageBox(Resources.StaticPreviewViewModel_AlreadyEncoding,
Resources.Error, MessageBoxButton.OK, MessageBoxImage.Error);
return;
}
diff --git a/win/CS/HandBrakeWPF/ViewModels/SubtitlesViewModel.cs b/win/CS/HandBrakeWPF/ViewModels/SubtitlesViewModel.cs
index 14c6a9899..751619c97 100644
--- a/win/CS/HandBrakeWPF/ViewModels/SubtitlesViewModel.cs
+++ b/win/CS/HandBrakeWPF/ViewModels/SubtitlesViewModel.cs
@@ -20,6 +20,7 @@ namespace HandBrakeWPF.ViewModels
using HandBrake.ApplicationServices.Utilities;
using HandBrakeWPF.Model.Subtitles;
+ using HandBrakeWPF.Properties;
using HandBrakeWPF.Services.Presets.Model;
using HandBrakeWPF.ViewModels.Interfaces;
@@ -146,7 +147,7 @@ namespace HandBrakeWPF.ViewModels
{
get
{
- return this.ShowDefaultsPanel ? "Subtitle Defaults" : "Subtitle Tracks";
+ return this.ShowDefaultsPanel ? Resources.SubtitlesViewModel_SubDefaults : Resources.SubtitlesViewModel_SubTracks;
}
}
@@ -157,7 +158,7 @@ namespace HandBrakeWPF.ViewModels
{
get
{
- return this.ShowDefaultsPanel ? "Switch Back To Tracks" : "Configure Defaults";
+ return this.ShowDefaultsPanel ? Resources.SubtitlesViewModel_SwitchToTracks : Resources.SubtitlesViewModel_ConfigureDefaults;
}
}