/// Gets or sets a value indicating whether is open.\r
/// </summary>\r
bool IsOpen { get; set; }\r
+\r
+ void PreviousPreview();\r
+ void NextPreview();\r
}\r
}\r
event EventHandler<OutputFormatChangedEventArgs> OutputFormatChanged;
void SetContainer(OutputFormat container);
void UpdateDisplayedInfo();
+
+ void PreviousPreview();
+ void NextPreview();
}
}
\ No newline at end of file
/// </summary>\r
public bool IsOpen { get; set; }\r
\r
+ public void NextPreview()\r
+ {\r
+ int maxPreview = this.userSettingService.GetUserSetting<int>(UserSettingConstants.PreviewScanCount);\r
+ if ((this.SelectedPreviewImage + 1) == maxPreview)\r
+ {\r
+ return;\r
+ }\r
+\r
+ this.SelectedPreviewImage = this.SelectedPreviewImage + 1;\r
+ }\r
+\r
+ public void PreviousPreview()\r
+ {\r
+ if (this.SelectedPreviewImage < 1)\r
+ {\r
+ return;\r
+ }\r
+\r
+ this.SelectedPreviewImage = this.SelectedPreviewImage - 1;\r
+ }\r
+\r
/// <summary>\r
/// The update preview frame.\r
/// </summary>\r
this.encodeService.Start(((QueueTask)state).Task, ((QueueTask)state).Configuration);\r
this.userSettingService.SetUserSetting(UserSettingConstants.LastPreviewDuration, this.Duration);\r
}\r
+\r
#endregion\r
\r
#region Event Handlers\r
public void NextPreview()
{
int maxPreview = this.userSettingService.GetUserSetting<int>(UserSettingConstants.PreviewScanCount);
+ if (this.selectedPreview == maxPreview)
+ {
+ return;
+ }
+
this.selectedPreview = this.selectedPreview + 1;
this.UpdatePreviewFrame();
this.PreviewInfo = string.Format(ResourcesUI.SummaryView_PreviewInfo, this.selectedPreview, maxPreview);
public void PreviousPreview()
{
int maxPreview = this.userSettingService.GetUserSetting<int>(UserSettingConstants.PreviewScanCount);
+ if (this.selectedPreview <= 1)
+ {
+ return;
+ }
+
this.selectedPreview = this.selectedPreview - 1;
this.UpdatePreviewFrame();
this.PreviewInfo = string.Format(ResourcesUI.SummaryView_PreviewInfo, this.selectedPreview, maxPreview);
<TextBlock Text="No Preview Available" VerticalAlignment="Center" Padding="60,60,60,60" FontWeight="Bold" FontSize="25" Foreground="DarkGray" />\r
</StackPanel>\r
\r
- <Image Source="{Binding PreviewImage}" MaxWidth="{Binding Width}" MaxHeight="{Binding Height}" />\r
+ <Image Source="{Binding PreviewImage}" MaxWidth="{Binding Width}" MaxHeight="{Binding Height}" MouseWheel="PreviewImage_OnMouseWheel" />\r
\r
\r
<Border BorderBrush="WhiteSmoke" BorderThickness="1,1,1,1" CornerRadius="8,8,8,8" Padding="8"\r
<ProgressBar MinHeight="5" Maximum="100" Minimum="0" Value="{Binding PercentageValue}" Grid.Column="0" Grid.ColumnSpan="2" />\r
<TextBlock Margin="5,0,0,0" Text="{Binding Percentage}" Grid.Column="2" HorizontalAlignment="Right" Foreground="White" />\r
</Grid>\r
-\r
-\r
-\r
-\r
</Grid>\r
\r
</Border>\r
namespace HandBrakeWPF.Views\r
{\r
using System.Windows;\r
+ using System.Windows.Input;\r
+\r
+ using HandBrakeWPF.ViewModels.Interfaces;\r
\r
/// <summary>\r
/// Interaction logic for StaticPreviewView.xaml\r
{\r
InitializeComponent();\r
}\r
+\r
+ private void PreviewImage_OnMouseWheel(object sender, MouseWheelEventArgs e)\r
+ {\r
+ if (e.Delta > 1)\r
+ {\r
+ ((IStaticPreviewViewModel)this.DataContext).NextPreview();\r
+ }\r
+ else\r
+ {\r
+ ((IStaticPreviewViewModel)this.DataContext).PreviousPreview();\r
+ }\r
+ }\r
}\r
}\r
</Grid.ColumnDefinitions>
<Image Source="{Binding PreviewImage}" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Margin="0,5,10,0" x:Name="previewImage" Panel.ZIndex="0" Grid.ColumnSpan="2"
- MaxWidth="{Binding MaxWidth}" MaxHeight="{Binding MaxHeight}" />
+ MaxWidth="{Binding MaxWidth}" MaxHeight="{Binding MaxHeight}" MouseWheel="PreviewImage_OnMouseWheel" />
<Border Grid.Row="1" Grid.ColumnSpan="2" VerticalAlignment="Bottom" HorizontalAlignment="Center" Background="Transparent" Margin="0,5,0,5">
<TextBlock Text="{Binding PreviewInfo}" TextAlignment="Center" Visibility="{Binding IsPreviewInfoVisible, Converter={StaticResource boolToVisConverter}}" />
<ColumnDefinition Width="42" />
<ColumnDefinition Width="42" />
</Grid.ColumnDefinitions>
+
<Border BorderThickness="1,1,1,1" CornerRadius="4,0,0,4" VerticalAlignment="Center" HorizontalAlignment="Left" Grid.Column="0" cal:Message.Attach="[Event MouseDown] = [Action PreviousPreview]"
Visibility="{Binding IsPreviousPreviewControlVisible,Converter={StaticResource boolToVisConverter}}"
Background="Black" Opacity="0.5" Margin="0,0,0,0" >
namespace HandBrakeWPF.Views
{
using System.Windows.Controls;
+ using System.Windows.Input;
+
+ using HandBrakeWPF.ViewModels.Interfaces;
/// <summary>
/// Interaction logic for SummaryView.xaml
{
this.InitializeComponent();
}
+
+ private void PreviewImage_OnMouseWheel(object sender, MouseWheelEventArgs e)
+ {
+ if (e.Delta > 1)
+ {
+ ((ISummaryViewModel)this.DataContext).NextPreview();
+ }
+ else
+ {
+ ((ISummaryViewModel)this.DataContext).PreviousPreview();
+ }
+ }
}
}