]> granicus.if.org Git - handbrake/commitdiff
WinGui: Make the error checking more aggressive when adding to queue. Add support...
authorsr55 <sr55.hb@outlook.com>
Wed, 9 May 2018 17:02:58 +0000 (18:02 +0100)
committersr55 <sr55.hb@outlook.com>
Wed, 9 May 2018 17:02:58 +0000 (18:02 +0100)
win/CS/HandBrakeWPF/Properties/Resources.Designer.cs
win/CS/HandBrakeWPF/Properties/Resources.resx
win/CS/HandBrakeWPF/ViewModels/MainViewModel.cs

index adc43621cb8b683ea0aaf5233d4500946eada2f1..a22cf482b78fa7389662b371328cc56211acbe01 100644 (file)
@@ -669,7 +669,7 @@ namespace HandBrakeWPF.Properties {
         /// <summary>\r
         ///   Looks up a localized string similar to Warning: If you wish to have subtitles added to each item you are about to queue, please verify that you have the subtitle defaults setup correctly on the subtitles tab.\r
         ///    \r
-        ///    Do you wish to continue?.\r
+        ///Do you wish to continue?.\r
         /// </summary>\r
         public static string Main_AutoAdd_AudioAndSubWarning {\r
             get {\r
@@ -686,6 +686,15 @@ namespace HandBrakeWPF.Properties {
             }\r
         }\r
         \r
+        /// <summary>\r
+        ///   Looks up a localized string similar to Unable to add the last job to the queue. Do you wish to proceed trying to add the rest?.\r
+        /// </summary>\r
+        public static string Main_ContinueAddingToQueue {\r
+            get {\r
+                return ResourceManager.GetString("Main_ContinueAddingToQueue", resourceCulture);\r
+            }\r
+        }\r
+        \r
         /// <summary>\r
         ///   Looks up a localized string similar to The current file already exists, do you wish to overwrite it?.\r
         /// </summary>\r
@@ -905,6 +914,16 @@ namespace HandBrakeWPF.Properties {
             }\r
         }\r
         \r
+        /// <summary>\r
+        ///   Looks up a localized string similar to The file &apos;{0}&apos; already exists!\r
+        ///Would you like to overwrite it?.\r
+        /// </summary>\r
+        public static string Main_QueueOverwritePrompt {\r
+            get {\r
+                return ResourceManager.GetString("Main_QueueOverwritePrompt", resourceCulture);\r
+            }\r
+        }\r
+        \r
         /// <summary>\r
         ///   Looks up a localized string similar to Queue Paused.\r
         /// </summary>\r
index 830154c53096cb137e26e4cc9ff1506989812de2..84d46f2b923dab2664c478b8b53628a08b2e7efb 100644 (file)
@@ -327,7 +327,7 @@ In order to use the QuickSync encoder, you must:
   <data name="Main_AutoAdd_AudioAndSubWarning" xml:space="preserve">\r
     <value>Warning: If you wish to have subtitles added to each item you are about to queue, please verify that you have the subtitle defaults setup correctly on the subtitles tab.\r
     \r
-    Do you wish to continue?</value>\r
+Do you wish to continue?</value>\r
   </data>\r
   <data name="Main_TurnOnAutoFileNaming" xml:space="preserve">\r
     <value>You must turn on automatic file naming AND set a default path in preferences before you can add to the queue.</value>\r
@@ -878,4 +878,11 @@ Time Remaining: {5},  Elapsed: {6:d\:hh\:mm\:ss}</value>
   <data name="OsVersionWarning" xml:space="preserve">\r
     <value>HandBrake requires Windows 7 or later to run. Version 0.9.9 (XP) and 0.10.5 (Vista) was the last version to support these versions.</value>\r
   </data>\r
+  <data name="Main_ContinueAddingToQueue" xml:space="preserve">\r
+    <value>Unable to add the last job to the queue. Do you wish to proceed trying to add the rest?</value>\r
+  </data>\r
+  <data name="Main_QueueOverwritePrompt" xml:space="preserve">\r
+    <value>The file '{0}' already exists!\r
+Would you like to overwrite it?</value>\r
+  </data>\r
 </root>
\ No newline at end of file
index 8b1eb22e6cd385ad6e597dfff76cb2997d282cff..082e662fc715715474a920111c80a931f01e7e13 100644 (file)
@@ -791,6 +791,7 @@ namespace HandBrakeWPF.ViewModels
                             this.Destination = AutoNameHelper.AutoName(this.CurrentTask, this.SourceName, this.selectedPreset);\r
                         }\r
                     }\r
+\r
                     this.NotifyOfPropertyChange(() => this.CurrentTask);\r
 \r
                     this.Duration = this.DurationCalculation();\r
@@ -1490,6 +1491,15 @@ namespace HandBrakeWPF.ViewModels
                 return false;\r
             }\r
 \r
+            if (File.Exists(this.CurrentTask.Destination))\r
+            {\r
+                MessageBoxResult result = this.errorService.ShowMessageBox(string.Format(Resources.Main_QueueOverwritePrompt, Path.GetFileName(this.CurrentTask.Destination)), Resources.Question, MessageBoxButton.YesNo, MessageBoxImage.Question);\r
+                if (result == MessageBoxResult.No)\r
+                {\r
+                    return false;\r
+                }           \r
+            }\r
+\r
             if (!DirectoryUtilities.IsWritable(Path.GetDirectoryName(this.CurrentTask.Destination), true, this.errorService))\r
             {\r
                 this.errorService.ShowMessageBox(Resources.Main_NoPermissionsOrMissingDirectory, Resources.Error, MessageBoxButton.OK, MessageBoxImage.Error);\r
@@ -1556,9 +1566,10 @@ namespace HandBrakeWPF.ViewModels
 \r
             if (this.CurrentTask != null && this.CurrentTask.SubtitleTracks != null && this.CurrentTask.SubtitleTracks.Count > 0)\r
             {\r
-                if (this.SubtitleViewModel.SubtitleBehaviours == null || this.SubtitleViewModel.SubtitleBehaviours.SelectedBehaviour == SubtitleBehaviourModes.None)\r
+                if ((this.SubtitleViewModel.SubtitleBehaviours == null || this.SubtitleViewModel.SubtitleBehaviours.SelectedBehaviour == SubtitleBehaviourModes.None)\r
+                    && !(this.CurrentTask.SubtitleTracks.Count == 1 && this.CurrentTask.SubtitleTracks.First().SubtitleType == SubtitleType.ForeignAudioSearch))\r
                 {\r
-                    System.Windows.MessageBoxResult result = this.errorService.ShowMessageBox(\r
+                    MessageBoxResult result = this.errorService.ShowMessageBox(\r
                         Resources.Main_AutoAdd_AudioAndSubWarning,\r
                         Resources.Warning,\r
                         MessageBoxButton.YesNo,\r
@@ -1574,7 +1585,15 @@ namespace HandBrakeWPF.ViewModels
             foreach (Title title in this.ScannedSource.Titles)\r
             {\r
                 this.SelectedTitle = title;\r
-                this.AddToQueue();\r
+                if (!this.AddToQueue())\r
+                {\r
+                   MessageBoxResult result = this.errorService.ShowMessageBox(Resources.Main_ContinueAddingToQueue, Resources.Question, MessageBoxButton.YesNo, MessageBoxImage.Question);\r
+\r
+                    if (result == MessageBoxResult.No)\r
+                    {\r
+                        break;\r
+                    }\r
+                }\r
             }\r
         }\r
 \r