summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorsr55 <[email protected]>2018-09-27 21:10:38 +0100
committersr55 <[email protected]>2018-09-27 21:10:38 +0100
commit66cb599bc09da22a5a1b878b68cd11104d2d0398 (patch)
tree6e3777f307e10ea24eb78da2ad7a5128e40054e1
parentc2eb8041db54caf010c142f885732763c51db3fd (diff)
WinGui: Queue -> Retry Failed context menu option. Bring over some improvements from the experimental design onto the legacy queue design that's still default.
-rw-r--r--win/CS/HandBrakeWPF/Properties/ResourcesUI.Designer.cs9
-rw-r--r--win/CS/HandBrakeWPF/Properties/ResourcesUI.resx3
-rw-r--r--win/CS/HandBrakeWPF/ViewModels/QueueViewModel.cs12
-rw-r--r--win/CS/HandBrakeWPF/Views/Queue/QueueTwoContent.xaml2
-rw-r--r--win/CS/HandBrakeWPF/Views/QueueView.xaml54
5 files changed, 58 insertions, 22 deletions
diff --git a/win/CS/HandBrakeWPF/Properties/ResourcesUI.Designer.cs b/win/CS/HandBrakeWPF/Properties/ResourcesUI.Designer.cs
index c4c264908..43a64912a 100644
--- a/win/CS/HandBrakeWPF/Properties/ResourcesUI.Designer.cs
+++ b/win/CS/HandBrakeWPF/Properties/ResourcesUI.Designer.cs
@@ -2268,6 +2268,15 @@ namespace HandBrakeWPF.Properties {
}
/// <summary>
+ /// Looks up a localized string similar to Retry Failed.
+ /// </summary>
+ public static string QueueView_ResetFailed {
+ get {
+ return ResourceManager.GetString("QueueView_ResetFailed", resourceCulture);
+ }
+ }
+
+ /// <summary>
/// Looks up a localized string similar to Retry Selected Jobs.
/// </summary>
public static string QueueView_ResetSelectedJobs {
diff --git a/win/CS/HandBrakeWPF/Properties/ResourcesUI.resx b/win/CS/HandBrakeWPF/Properties/ResourcesUI.resx
index fb2bc3da7..914d9525e 100644
--- a/win/CS/HandBrakeWPF/Properties/ResourcesUI.resx
+++ b/win/CS/HandBrakeWPF/Properties/ResourcesUI.resx
@@ -1094,4 +1094,7 @@ This will not affect your current settings in the Subtitle tab.</value>
<data name="QueueView_Summary" xml:space="preserve">
<value>Summary</value>
</data>
+ <data name="QueueView_ResetFailed" xml:space="preserve">
+ <value>Retry Failed</value>
+ </data>
</root> \ No newline at end of file
diff --git a/win/CS/HandBrakeWPF/ViewModels/QueueViewModel.cs b/win/CS/HandBrakeWPF/ViewModels/QueueViewModel.cs
index dbe93bc75..aedd89b27 100644
--- a/win/CS/HandBrakeWPF/ViewModels/QueueViewModel.cs
+++ b/win/CS/HandBrakeWPF/ViewModels/QueueViewModel.cs
@@ -573,6 +573,18 @@ namespace HandBrakeWPF.ViewModels
}
}
+ public void ResetFailed()
+ {
+ foreach (var task in this.QueueTasks)
+ {
+ if (task.Status == QueueItemStatus.Error)
+ {
+ this.RetryJob(task);
+ }
+ }
+ }
+
+
#endregion
#region Methods
diff --git a/win/CS/HandBrakeWPF/Views/Queue/QueueTwoContent.xaml b/win/CS/HandBrakeWPF/Views/Queue/QueueTwoContent.xaml
index f14470c50..787d59835 100644
--- a/win/CS/HandBrakeWPF/Views/Queue/QueueTwoContent.xaml
+++ b/win/CS/HandBrakeWPF/Views/Queue/QueueTwoContent.xaml
@@ -140,7 +140,6 @@
SelectionMode="Extended"
ScrollViewer.HorizontalScrollBarVisibility="Disabled" >
-
<i:Interaction.Triggers>
<commands:InputBindingTrigger>
<commands:InputBindingTrigger.InputBinding>
@@ -155,6 +154,7 @@
<MenuItem cal:Message.Attach="[Event Click] = [Action StartQueue]" Header="{x:Static Properties:ResourcesUI.QueueView_Start}" />
<MenuItem cal:Message.Attach="[Event Click] = [Action PauseQueue]" Header="{x:Static Properties:ResourcesUI.QueueView_Pause}" />
<Separator />
+ <MenuItem cal:Message.Attach="[Event Click] = [Action ResetFailed]" Header="{x:Static Properties:ResourcesUI.QueueView_ResetFailed}" />
<MenuItem cal:Message.Attach="[Event Click] = [Action ResetSelectedJobs]" Header="{x:Static Properties:ResourcesUI.QueueView_ResetSelectedJobs}" />
<MenuItem cal:Message.Attach="[Event Click] = [Action ResetAllJobs]" Header="{x:Static Properties:ResourcesUI.QueueView_ResetAllJobs}" />
<Separator />
diff --git a/win/CS/HandBrakeWPF/Views/QueueView.xaml b/win/CS/HandBrakeWPF/Views/QueueView.xaml
index 305a7b9f4..5fd2383ec 100644
--- a/win/CS/HandBrakeWPF/Views/QueueView.xaml
+++ b/win/CS/HandBrakeWPF/Views/QueueView.xaml
@@ -16,10 +16,10 @@
xmlns:queue="clr-namespace:HandBrakeWPF.Converters.Queue"
xmlns:queue1="clr-namespace:HandBrakeWPF.Views.Queue"
Title="{Binding Title}"
- Width="850"
+ Width="750"
Height="500"
MinWidth="450"
- MinHeight="260"
+ MinHeight="300"
WindowStartupLocation="CenterScreen"
TextOptions.TextFormattingMode="Display"
mc:Ignorable="d">
@@ -179,7 +179,7 @@
<TextBlock Text="{Binding JobStatus}" TextWrapping="WrapWithOverflow" TextTrimming="CharacterEllipsis"/>
</StackPanel>
- <ListBox Grid.Row="2" Tag="{Binding}"
+ <ListBox Grid.Row="2" Tag="{Binding}" x:Name="queueJobs"
Margin="10,20,10,10"
dd:DragDrop.DropHandler="{Binding}"
dd:DragDrop.IsDragSource="True"
@@ -187,7 +187,8 @@
ItemsSource="{Binding QueueTasks, Mode=OneWay}"
helpers:ListBoxHelper.SelectedItems="{Binding SelectedItems}"
SelectedItem="{Binding SelectedTask}"
- SelectionMode="Extended">
+ SelectionMode="Extended"
+ ScrollViewer.HorizontalScrollBarVisibility="Disabled">
<i:Interaction.Triggers>
<commands:InputBindingTrigger>
@@ -203,6 +204,10 @@
<MenuItem cal:Message.Attach="[Event Click] = [Action StartQueue]" Header="{x:Static Properties:ResourcesUI.QueueView_Start}" />
<MenuItem cal:Message.Attach="[Event Click] = [Action PauseQueue]" Header="{x:Static Properties:ResourcesUI.QueueView_Pause}" />
<Separator />
+ <MenuItem cal:Message.Attach="[Event Click] = [Action ResetFailed]" Header="{x:Static Properties:ResourcesUI.QueueView_ResetFailed}" />
+ <MenuItem cal:Message.Attach="[Event Click] = [Action ResetSelectedJobs]" Header="{x:Static Properties:ResourcesUI.QueueView_ResetSelectedJobs}" />
+ <MenuItem cal:Message.Attach="[Event Click] = [Action ResetAllJobs]" Header="{x:Static Properties:ResourcesUI.QueueView_ResetAllJobs}" />
+ <Separator />
<MenuItem cal:Message.Attach="[Event Click] = [Action ClearCompleted]" Header="{x:Static Properties:ResourcesUI.QueueView_ClearCompleted}" />
<MenuItem cal:Message.Attach="[Event Click] = [Action Clear]" Header="{x:Static Properties:ResourcesUI.QueueView_ClearAll}" />
<MenuItem cal:Message.Attach="[Event Click] = [Action RemoveSelectedJobs]" Header="{x:Static Properties:ResourcesUI.QueueView_ClearSelected}" />
@@ -324,33 +329,40 @@
</Image>
<!-- Settings -->
- <StackPanel Grid.Column="1"
- Margin="0,5,0,5"
- HorizontalAlignment="Stretch">
- <StackPanel Orientation="Horizontal">
+ <Grid Grid.Column="1" Margin="0,3,15,3">
+ <Grid.RowDefinitions>
+ <RowDefinition Height="Auto" />
+ <RowDefinition Height="Auto" />
+ <RowDefinition Height="Auto" />
+ <RowDefinition Height="Auto" />
+ </Grid.RowDefinitions>
+
+ <Grid.ColumnDefinitions>
+ <ColumnDefinition Width="Auto" />
+ <ColumnDefinition Width="*" />
+ </Grid.ColumnDefinitions>
+
+ <StackPanel Orientation="Horizontal" Grid.Row="0" Grid.ColumnSpan="2">
<TextBlock FontWeight="Bold" Text="Title: " />
<TextBlock Text="{Binding Task.Title}" />
- <TextBlock Margin="10,0,0,0"
- FontWeight="Bold"
- Text="{Binding Task.PointToPointMode}" />
+ <TextBlock Text="{Binding Task.PointToPointMode}" Margin="10,0,0,0" FontWeight="Bold" />
<TextBlock Text=": " />
<TextBlock Text="{Binding Task.StartPoint}" />
<TextBlock Margin="5,0,5,0" Text="to" />
<TextBlock Text="{Binding Task.EndPoint}" />
</StackPanel>
- <!-- TODO Support Drive Label Name -->
- <StackPanel Orientation="Horizontal">
- <TextBlock FontWeight="Bold" Text="{x:Static Properties:ResourcesUI.QueueView_Source}" />
- <TextBlock Text="{Binding Task.Source, Converter={StaticResource filePathToFilenameConverter}}" />
- </StackPanel>
- <StackPanel Orientation="Horizontal">
- <TextBlock FontWeight="Bold" Text="{x:Static Properties:ResourcesUI.QueueView_Destination}" />
- <TextBlock Text="{Binding Task.Destination, Converter={StaticResource filePathToFilenameConverter}}" />
- </StackPanel>
- </StackPanel>
+ <TextBlock FontWeight="Bold" Text="{x:Static Properties:ResourcesUI.QueueView_Source}" Grid.Row="1" />
+ <TextBlock Text="{Binding Task.Source, Converter={StaticResource filePathToFilenameConverter}}" Margin="2,0,0,0" Grid.Row="1" Grid.Column="1"/>
+ <TextBlock FontWeight="Bold" Text="{x:Static Properties:ResourcesUI.QueueView_Destination}" Grid.Row="2" />
+ <TextBlock Text="{Binding Task.Destination, Converter={StaticResource filePathToFilenameConverter}}" Margin="2,0,0,0" TextTrimming="CharacterEllipsis" Grid.Row="2" Grid.Column="1" />
+
+ <ProgressBar Minimum="0" Height="4" Maximum="100" Name="pbStatus" Margin="0,2,5,0" Grid.Row="3" Grid.ColumnSpan="2"
+ Value="{Binding DataContext.ProgressValue, ElementName=queueJobs}" IsIndeterminate="{Binding DataContext.IntermediateProgress, ElementName=queueJobs}"
+ Visibility="{Binding ShowEncodeProgress, Converter={StaticResource boolToVisConverter}}" />
+ </Grid>
<!-- Delete -->
<Grid Grid.Column="2"