Skip to content

Commit

Permalink
Added tooltips, fixed threads control not disabling when converting
Browse files Browse the repository at this point in the history
  • Loading branch information
Mantas-2155X committed Oct 23, 2022
1 parent acca833 commit 78f3a34
Show file tree
Hide file tree
Showing 5 changed files with 50 additions and 22 deletions.
4 changes: 2 additions & 2 deletions HardSubberGUI/HardSubberGUI.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@
<TrimMode>copyused</TrimMode>
<BuiltInComInteropSupport>true</BuiltInComInteropSupport>
<PackageVersion>1.0.1</PackageVersion>
<AssemblyVersion>1.0.2.0</AssemblyVersion>
<FileVersion>1.0.2.0</FileVersion>
<AssemblyVersion>1.0.3.0</AssemblyVersion>
<FileVersion>1.0.3.0</FileVersion>
</PropertyGroup>
<ItemGroup>
<AvaloniaResource Include="Assets\**" />
Expand Down
1 change: 1 addition & 0 deletions HardSubberGUI/Tools.cs
Original file line number Diff line number Diff line change
Expand Up @@ -268,6 +268,7 @@ public static void ToggleControls(MainWindow window, bool value)
window.InputFileControl.IsEnabled = value;
window.OutputDirectoryControl.IsEnabled = value;
window.ExitAfterwardsControl.IsEnabled = value;
window.ThreadsControl.IsEnabled = value;
}

public static List<string>? ProcessFiles(MainWindow window)
Expand Down
27 changes: 27 additions & 0 deletions HardSubberGUI/ViewModels/MainWindowViewModel.cs
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,33 @@ public class MainWindowViewModel : ViewModelBase
{
public static string Version => "v" + Assembly.GetEntryAssembly()!.GetName().Version;
public static int AvailableThreads => Environment.ProcessorCount;

#region Tooltips

public static string ExitTooltip => "Close HardSubberGUI";
public static string CancelTooltip => "Cancel video conversion";
public static string CovertTooltip => "Start video conversion";

public static string PickFileTooltip => "Pick video file to convert";
public static string PickDirectoryInputTooltip => "Pick directory containing videos to convert";
public static string PickDirectoryOutputTooltip => "Pick directory where converted videos will be placed\nIf not specified: /output";

public static string SubtitleIndexTooltip => "Subtitle index to apply";
public static string AudioIndexTooltip => "Audio index to apply";
public static string QualityTooltip => "Quality used for conversion\nRange: 0-51 (more-less)\nRecommended: 22-26";
public static string ResolutionTooltip => "Resize video\nIf zero: do not resize";
public static string ThreadsTooltip => "Limit CPU threads used for conversion";

public static string ColorspaceTooltip => "Reset the videos colorspace\nCan fix not loading in cytu.be";
public static string HardwareAccelerationTooltip => "Use GPU to accelerate conversion";
public static string SimultaneousTooltip => "Convert multiple videos at once\nOnly available if converting a directory\nWorker count: threads / 4";
public static string ExitAfterwardsTooltip => "Close HardSubberGUI after conversion is finished";
public static string MetadataTitleTooltip => "Set the videos metadata title to filename\nFixes 'Raw Video' title in cytu.be";
public static string FastStartTooltip => "Optimize for web playback\nCan fix not loading in cytu.be";
public static string ApplySubsTooltip => "Apply subtitles, audio and resizing";
public static string AACTooltip => "Convert audio codec to AAC\nCan fix not loading in cytu.be";

#endregion

#region Buttons

Expand Down
40 changes: 20 additions & 20 deletions HardSubberGUI/Views/MainWindow.axaml
Original file line number Diff line number Diff line change
Expand Up @@ -20,13 +20,13 @@
<!--Bottom Panel-->
<Panel DockPanel.Dock="Bottom" Height="30" Background="{Binding MainPanelColor}">
<StackPanel HorizontalAlignment="Left" Orientation="Horizontal" Spacing="5">
<Button Name="ExitControl" Width="50" HorizontalContentAlignment="Center" Content="{Binding Exit}" Click="Exit_OnClick"/>
<Button Name="ExitControl" Width="50" HorizontalContentAlignment="Center" Content="{Binding Exit}" Click="Exit_OnClick" ToolTip.Tip="{Binding ExitTooltip}"/>
<Label HorizontalContentAlignment="Center" VerticalContentAlignment="Center" Foreground="{Binding SecondaryTextColor}" Content="{Binding Version}"/>
</StackPanel>

<StackPanel HorizontalAlignment="Right" Orientation="Horizontal" Spacing="5">
<Button Name="CancelControl" IsEnabled="False" Width="125" HorizontalContentAlignment="Center" Content="{Binding Cancel}" Click="Cancel_OnClick"/>
<Button Name="ConvertControl" Width="125" HorizontalContentAlignment="Center" Content="{Binding ConvertVideos}" Click="Convert_OnClick"/>
<Button Name="CancelControl" IsEnabled="False" Width="125" HorizontalContentAlignment="Center" Content="{Binding Cancel}" Click="Cancel_OnClick" ToolTip.Tip="{Binding CancelTooltip}"/>
<Button Name="ConvertControl" Width="125" HorizontalContentAlignment="Center" Content="{Binding ConvertVideos}" Click="Convert_OnClick" ToolTip.Tip="{Binding CovertTooltip}"/>
</StackPanel>
</Panel>

Expand All @@ -37,52 +37,52 @@
<Panel DockPanel.Dock="Top" Height="34" Margin="0, 0, 0, 5">
<Label HorizontalAlignment="Left" Width="100" HorizontalContentAlignment="Left" VerticalContentAlignment="Center" Content="{Binding Input}"/>
<TextBox Name="InputControl" Margin="100, 0, 195, 0"/>
<Button Name="InputDirectoryControl" HorizontalAlignment="Right" Width="110" HorizontalContentAlignment="Left" Content="{Binding PickDirectory}" Click="InputDirectory_OnClick"/>
<Button Name="InputFileControl" HorizontalAlignment="Right" Margin="0, 0, 115, 0" Width="75" HorizontalContentAlignment="Left" Content="{Binding PickFile}" Click="InputFile_OnClick"/>
<Button Name="InputDirectoryControl" HorizontalAlignment="Right" Width="110" HorizontalContentAlignment="Left" Content="{Binding PickDirectory}" Click="InputDirectory_OnClick" ToolTip.Tip="{Binding PickDirectoryInputTooltip}"/>
<Button Name="InputFileControl" HorizontalAlignment="Right" Margin="0, 0, 115, 0" Width="75" HorizontalContentAlignment="Left" Content="{Binding PickFile}" Click="InputFile_OnClick" ToolTip.Tip="{Binding PickFileTooltip}"/>
</Panel>

<!--Output File Picker Panel-->
<Panel DockPanel.Dock="Top" Height="34" Margin="0, 0, 0, 25">
<Label HorizontalAlignment="Left" Width="100" HorizontalContentAlignment="Left" VerticalContentAlignment="Center" Content="{Binding Output}"/>
<TextBox Name="OutputControl" Margin="100, 0, 115, 0"/>
<Button Name="OutputDirectoryControl" HorizontalAlignment="Right" Width="110" HorizontalContentAlignment="Left" Content="{Binding PickDirectory}" Click="Output_OnClick"/>
<Button Name="OutputDirectoryControl" HorizontalAlignment="Right" Width="110" HorizontalContentAlignment="Left" Content="{Binding PickDirectory}" Click="Output_OnClick" ToolTip.Tip="{Binding PickDirectoryOutputTooltip}"/>
</Panel>

<!--Hardsub Options Panel-->
<Panel DockPanel.Dock="Left" Width="250">
<StackPanel>
<Label Content="{Binding SubtitleIndex}"/>
<NumericUpDown Name="SubtitleIndexControl" FormatString="F0" Value="0" Minimum="0" Margin="0, 0, 0, 10"/>
<NumericUpDown Name="SubtitleIndexControl" FormatString="F0" Value="0" Minimum="0" Margin="0, 0, 0, 10" ToolTip.Tip="{Binding SubtitleIndexTooltip}"/>

<Label Content="{Binding AudioIndex}"/>
<NumericUpDown Name="AudioIndexControl" FormatString="F0" Value="0" Minimum="0" Margin="0, 0, 0, 10"/>
<NumericUpDown Name="AudioIndexControl" FormatString="F0" Value="0" Minimum="0" Margin="0, 0, 0, 10" ToolTip.Tip="{Binding AudioIndexTooltip}"/>

<Label Content="{Binding Quality}"/>
<NumericUpDown Name="QualityControl" FormatString="F0" Minimum="0" Maximum="51" Value="22" Margin="0, 0, 0, 10"/>
<NumericUpDown Name="QualityControl" FormatString="F0" Minimum="0" Maximum="51" Value="24" Margin="0, 0, 0, 10" ToolTip.Tip="{Binding QualityTooltip}"/>

<Label Content="{Binding ResolutionOverride}"/>
<StackPanel Orientation="Horizontal" Spacing="5" Margin="0, 0, 0, 10">
<NumericUpDown Name="ResolutionOverrideWidthControl" Value="0" FormatString="F0" Minimum="0" AllowSpin="False" ShowButtonSpinner="False" Width="122.5"/>
<NumericUpDown Name="ResolutionOverrideHeightControl" Value="0" FormatString="F0" Minimum="0" AllowSpin="False" ShowButtonSpinner="False" Width="122.5"/>
<NumericUpDown Name="ResolutionOverrideWidthControl" Value="0" FormatString="F0" Minimum="0" AllowSpin="False" ShowButtonSpinner="False" Width="122.5" ToolTip.Tip="{Binding ResolutionTooltip}"/>
<NumericUpDown Name="ResolutionOverrideHeightControl" Value="0" FormatString="F0" Minimum="0" AllowSpin="False" ShowButtonSpinner="False" Width="122.5" ToolTip.Tip="{Binding ResolutionTooltip}"/>
</StackPanel>

<Label Content="{Binding Threads}"/>
<NumericUpDown Name="ThreadsControl" FormatString="F0" Minimum="0" Maximum="{Binding AvailableThreads}" Value="0" Margin="0, 0, 0, 10"/>
<NumericUpDown Name="ThreadsControl" FormatString="F0" Minimum="1" Maximum="{Binding AvailableThreads}" Value="{Binding AvailableThreads}" Margin="0, 0, 0, 10" ToolTip.Tip="{Binding ThreadsTooltip}"/>
</StackPanel>
</Panel>

<!--Other Options Panel-->
<Panel DockPanel.Dock="Right" Margin="30, 5, 0, 0">
<Grid RowDefinitions="Auto, Auto, Auto, Auto, Auto" ColumnDefinitions="Auto, Auto">
<ToggleSwitch Name="ColorspaceControl" Margin="0, 0, 20, 15" IsChecked="True" Content="{Binding Colorspace}" Grid.Row="0" Grid.Column="0"/>
<ToggleSwitch Name="HardwareAccelerationControl" IsEnabled = "False" Margin="0, 0, 20, 15" Content="{Binding HardwareAcceleration}" Grid.Row="1" Grid.Column="0"/>
<ToggleSwitch Name="SimultaneousControl" Margin="0, 0, 20, 15" Content="{Binding Simultaneous}" Grid.Row="2" Grid.Column="0"/>
<ToggleSwitch Name="ExitAfterwardsControl" Margin="0, 0, 20, 15" Content="{Binding ExitAfterwards}" Grid.Row="3" Grid.Column="0"/>
<ToggleSwitch Name="ColorspaceControl" Margin="0, 0, 20, 15" IsChecked="True" Content="{Binding Colorspace}" Grid.Row="0" Grid.Column="0" ToolTip.Tip="{Binding ColorspaceTooltip}"/>
<ToggleSwitch Name="HardwareAccelerationControl" IsEnabled = "False" Margin="0, 0, 20, 15" Content="{Binding HardwareAcceleration}" Grid.Row="1" Grid.Column="0" ToolTip.Tip="{Binding HardwareAccelerationTooltip}"/>
<ToggleSwitch Name="SimultaneousControl" Margin="0, 0, 20, 15" Content="{Binding Simultaneous}" Grid.Row="2" Grid.Column="0" ToolTip.Tip="{Binding SimultaneousTooltip}"/>
<ToggleSwitch Name="ExitAfterwardsControl" Margin="0, 0, 20, 15" Content="{Binding ExitAfterwards}" Grid.Row="3" Grid.Column="0" ToolTip.Tip="{Binding ExitAfterwardsTooltip}"/>

<ToggleSwitch Name="MetadataTitleControl" Margin="0, 0, 0, 15" IsChecked="True" Content="{Binding MetadataTitle}" Grid.Row="0" Grid.Column="1"/>
<ToggleSwitch Name="FastStartControl" Margin="0, 0, 0, 15" IsChecked="True" Content="{Binding FastStart}" Grid.Row="1" Grid.Column="1"/>
<ToggleSwitch Name="ApplySubsControl" Margin="0, 0, 0, 15" IsChecked="True" Content="{Binding Subs}" Grid.Row="2" Grid.Column="1"/>
<ToggleSwitch Name="AACControl" Margin="0, 0, 0, 15" IsChecked="True" Content="{Binding AAC}" Grid.Row="3" Grid.Column="1"/>
<ToggleSwitch Name="MetadataTitleControl" Margin="0, 0, 0, 15" IsChecked="True" Content="{Binding MetadataTitle}" Grid.Row="0" Grid.Column="1" ToolTip.Tip="{Binding MetadataTitleTooltip}"/>
<ToggleSwitch Name="FastStartControl" Margin="0, 0, 0, 15" IsChecked="True" Content="{Binding FastStart}" Grid.Row="1" Grid.Column="1" ToolTip.Tip="{Binding FastStartTooltip}"/>
<ToggleSwitch Name="ApplySubsControl" Margin="0, 0, 0, 15" IsChecked="True" Content="{Binding Subs}" Grid.Row="2" Grid.Column="1" ToolTip.Tip="{Binding ApplySubsTooltip}"/>
<ToggleSwitch Name="AACControl" Margin="0, 0, 0, 15" IsChecked="True" Content="{Binding AAC}" Grid.Row="3" Grid.Column="1" ToolTip.Tip="{Binding AACTooltip}"/>
</Grid>
</Panel>
</DockPanel>
Expand Down
Binary file modified image.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit 78f3a34

Please sign in to comment.