Added VDF Generator

This commit is contained in:
2026-05-31 11:06:50 +02:00
parent ec7031d9fd
commit ab391186f2
13 changed files with 720 additions and 17 deletions

View File

@@ -25,9 +25,7 @@
<!-- status bar -->
</Grid.RowDefinitions>
<!-- ═══════════════════════════════════════════════════════════
HEADER
════════════════════════════════════════════════════════════════ -->
<Border Grid.Row="0" Background="{StaticResource BgMidBrush}"
BorderBrush="{StaticResource BorderBrush}" BorderThickness="0,0,0,1">
<Grid Margin="28,18,28,18">
@@ -65,9 +63,6 @@
</Grid>
</Border>
<!-- ═══════════════════════════════════════════════════════════
TAB BAR
════════════════════════════════════════════════════════════════ -->
<Border Grid.Row="1" Background="{StaticResource BgMidBrush}"
BorderBrush="{StaticResource BorderBrush}" BorderThickness="0,0,0,1">
<TabControl x:Name="MainTabs" Style="{StaticResource DarkTabControl}"
@@ -80,17 +75,16 @@
x:Name="TabResign"/>
<TabItem Header="🔓 Decrypt / Inspect" Style="{StaticResource DarkTabItem}"
x:Name="TabDecrypt"/>
<TabItem Header="📦 VDF Generator" Style="{StaticResource DarkTabItem}"
x:Name="TabVdf"/>
<TabItem Header="📋 Log" Style="{StaticResource DarkTabItem}"
x:Name="TabLog"/>
</TabControl>
</Border>
<!-- ═══════════════════════════════════════════════════════════
CONTENT PANELS
════════════════════════════════════════════════════════════════ -->
<Grid Grid.Row="2">
<!-- ── RESIGN PANEL ──────────────────────────────────────── -->
<!-- RESIGN PANEL -->
<ScrollViewer x:Name="PanelResign" VerticalScrollBarVisibility="Auto"
HorizontalScrollBarVisibility="Disabled">
<StackPanel Margin="32,28,32,28">
@@ -182,7 +176,7 @@
</StackPanel>
</ScrollViewer>
<!-- ── DECRYPT PANEL ─────────────────────────────────────── -->
<!-- DECRYPT PANEL -->
<ScrollViewer x:Name="PanelDecrypt" Visibility="Collapsed"
VerticalScrollBarVisibility="Auto"
HorizontalScrollBarVisibility="Disabled">
@@ -236,7 +230,7 @@
</StackPanel>
</ScrollViewer>
<!-- ── LOG PANEL ─────────────────────────────────────────── -->
<!-- LOG PANEL -->
<Grid x:Name="PanelLog" Visibility="Collapsed" Margin="32,28,32,28">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
@@ -265,11 +259,62 @@
HorizontalAlignment="Right" Margin="0,10,0,0"
Click="ClearLog_Click"/>
</Grid>
<!-- VDF GENERATOR PANEL -->
<ScrollViewer x:Name="PanelVdf" Visibility="Collapsed"
VerticalScrollBarVisibility="Auto"
HorizontalScrollBarVisibility="Disabled">
<StackPanel Margin="32,28,32,28">
<!-- Remote Folder -->
<TextBlock Text="REMOTE FOLDER" Style="{StaticResource FieldLabel}"/>
<Grid Margin="0,0,0,18">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<TextBox x:Name="TxtVdfRemoteFolder" Style="{StaticResource DarkTextBox}"
IsReadOnly="True" Grid.Column="0"
Text="Click Browse to select the 'remote' folder…"
Foreground="{StaticResource TextMutedBrush}"/>
<Button Grid.Column="1" Content="Browse…"
Style="{StaticResource OutlineButton}"
Margin="10,0,0,0" Click="BrowseVdfRemoteFolder_Click"/>
</Grid>
<!-- Description -->
<TextBlock Foreground="{StaticResource TextMutedBrush}" FontSize="11"
Margin="0,0,0,24">
Select the <Run FontFamily="Consolas">remote</Run> folder from your Steam save directory
(e.g., <Run FontFamily="Consolas">…\userdata\&lt;AccountId&gt;\3768760\remote</Run>)
to generate the <Run FontFamily="Consolas">remotecache.vdf</Run> file.
</TextBlock>
<!-- Action Button -->
<Button x:Name="BtnGenerateVdf" Content="📦 Generate VDF"
Style="{StaticResource GoldButton}"
HorizontalAlignment="Stretch" Height="48"
Click="BtnGenerateVdf_Click"/>
<!-- Progress -->
<ProgressBar x:Name="VdfProgress" Height="4" Margin="0,14,0,0"
Background="#0D1E30" Foreground="{StaticResource AccentGoldBrush}"
BorderThickness="0" Visibility="Collapsed" IsIndeterminate="True"/>
<!-- Inline result banner -->
<Border x:Name="VdfResultBanner" Visibility="Collapsed"
CornerRadius="8" Padding="16,12" Margin="0,14,0,0">
<StackPanel>
<TextBlock x:Name="VdfResultText"
Foreground="White" FontSize="13"
TextWrapping="Wrap"/>
</StackPanel>
</Border>
</StackPanel>
</ScrollViewer>
</Grid>
<!-- ═══════════════════════════════════════════════════════════
STATUS BAR
════════════════════════════════════════════════════════════════ -->
<!-- STATUS BAR -->
<Border Grid.Row="3" Background="{StaticResource BgMidBrush}"
BorderBrush="{StaticResource BorderBrush}" BorderThickness="0,1,0,0"
Padding="28,8">