Initial commit: SpdUp Windows Gaming Booster v1.0.0
- .NET 8 WPF app with full MVVM architecture - One-click boost: CPU, RAM, GPU, network, services, timer resolution - Real-time system monitor (LibreHardwareMonitor) - Auto game detection (30+ games) - RAM optimizer with kernel-level cleanup - Network optimizer (TCP registry tweaks) - Service manager, process manager, shader cache cleaner - Desktop widget overlay - Debug log viewer - Custom dark gaming theme with trans pride colors - 84 unit tests (xUnit) - Inno Setup installer script - Landing page website
This commit is contained in:
@@ -0,0 +1,147 @@
|
||||
<UserControl x:Class="SpdUp.Views.DashboardView"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:conv="clr-namespace:SpdUp.Converters">
|
||||
|
||||
<UserControl.Resources>
|
||||
<conv:PercentToColorConverter x:Key="PctColor" />
|
||||
<conv:FloatFormatConverter x:Key="FmtFloat" />
|
||||
<conv:BoostButtonTextConverter x:Key="BoostText" />
|
||||
<conv:BoostButtonColorConverter x:Key="BoostColor" />
|
||||
</UserControl.Resources>
|
||||
|
||||
<StackPanel>
|
||||
<!-- Quick Actions -->
|
||||
<Border Style="{StaticResource Card}">
|
||||
<DockPanel>
|
||||
<TextBlock DockPanel.Dock="Top" Text="Quick Actions" FontSize="14" FontWeight="Bold"
|
||||
Foreground="{StaticResource TextPrimaryBrush}" Margin="0,0,0,12" />
|
||||
<WrapPanel>
|
||||
<Button Style="{StaticResource PrimaryButton}" Margin="0,0,10,0"
|
||||
Content="{Binding Main.IsBoosted, Converter={StaticResource BoostText}}"
|
||||
Background="{Binding Main.IsBoosted, Converter={StaticResource BoostColor}}"
|
||||
Command="{Binding Main.BoostCommand}" MinWidth="180" />
|
||||
<Button Style="{StaticResource SecondaryButton}" Content="🧹 Clean RAM"
|
||||
Command="{Binding Main.CleanRamCommand}" Margin="0,0,10,0" />
|
||||
<Button Style="{StaticResource SecondaryButton}" Content="🗑 Clean Shader Cache"
|
||||
Command="{Binding Main.CleanShaderCacheCommand}" Margin="0,0,10,0" />
|
||||
<Button Style="{StaticResource SecondaryButton}" Content="🖥 Toggle Widget"
|
||||
Command="{Binding Main.ToggleWidgetCommand}" />
|
||||
</WrapPanel>
|
||||
</DockPanel>
|
||||
</Border>
|
||||
|
||||
<!-- System Metrics -->
|
||||
<TextBlock Text="System Overview" FontSize="14" FontWeight="Bold"
|
||||
Foreground="{StaticResource TextPrimaryBrush}" Margin="0,4,0,12" />
|
||||
|
||||
<UniformGrid Columns="3" Rows="2">
|
||||
<!-- CPU -->
|
||||
<Border Style="{StaticResource Card}" Margin="0,0,8,8">
|
||||
<StackPanel>
|
||||
<TextBlock Text="CPU Usage" Style="{StaticResource MetricLabel}" />
|
||||
<TextBlock Style="{StaticResource MetricValue}"
|
||||
Foreground="{Binding Main.CpuUsage, Converter={StaticResource PctColor}}">
|
||||
<TextBlock.Text>
|
||||
<MultiBinding StringFormat="{}{0:F1}%">
|
||||
<Binding Path="Main.CpuUsage" />
|
||||
</MultiBinding>
|
||||
</TextBlock.Text>
|
||||
</TextBlock>
|
||||
<ProgressBar Height="6" Margin="0,8,0,0" Maximum="100"
|
||||
Value="{Binding Main.CpuUsage, Mode=OneWay}"
|
||||
Foreground="{Binding Main.CpuUsage, Converter={StaticResource PctColor}}"
|
||||
Background="{StaticResource BgPanelBrush}" />
|
||||
</StackPanel>
|
||||
</Border>
|
||||
|
||||
<!-- RAM -->
|
||||
<Border Style="{StaticResource Card}" Margin="4,0,4,8">
|
||||
<StackPanel>
|
||||
<TextBlock Text="RAM Usage" Style="{StaticResource MetricLabel}" />
|
||||
<TextBlock Style="{StaticResource MetricValue}"
|
||||
Foreground="{Binding Main.RamUsagePercent, Converter={StaticResource PctColor}}">
|
||||
<TextBlock.Text>
|
||||
<MultiBinding StringFormat="{}{0:F1}%">
|
||||
<Binding Path="Main.RamUsagePercent" />
|
||||
</MultiBinding>
|
||||
</TextBlock.Text>
|
||||
</TextBlock>
|
||||
<TextBlock FontSize="11" Foreground="{StaticResource TextSecondaryBrush}" Margin="0,2,0,0">
|
||||
<TextBlock.Text>
|
||||
<MultiBinding StringFormat="{}{0:F0} / {1:F0} MB">
|
||||
<Binding Path="Main.RamUsedMB" />
|
||||
<Binding Path="Main.RamTotalMB" />
|
||||
</MultiBinding>
|
||||
</TextBlock.Text>
|
||||
</TextBlock>
|
||||
<ProgressBar Height="6" Margin="0,6,0,0" Maximum="100"
|
||||
Value="{Binding Main.RamUsagePercent, Mode=OneWay}"
|
||||
Foreground="{Binding Main.RamUsagePercent, Converter={StaticResource PctColor}}"
|
||||
Background="{StaticResource BgPanelBrush}" />
|
||||
</StackPanel>
|
||||
</Border>
|
||||
|
||||
<!-- GPU -->
|
||||
<Border Style="{StaticResource Card}" Margin="8,0,0,8">
|
||||
<StackPanel>
|
||||
<TextBlock Text="GPU Usage" Style="{StaticResource MetricLabel}" />
|
||||
<TextBlock Style="{StaticResource MetricValue}"
|
||||
Foreground="{StaticResource AccentPurpleBrush}">
|
||||
<TextBlock.Text>
|
||||
<MultiBinding StringFormat="{}{0:F1}%">
|
||||
<Binding Path="Main.GpuUsage" />
|
||||
</MultiBinding>
|
||||
</TextBlock.Text>
|
||||
</TextBlock>
|
||||
<ProgressBar Height="6" Margin="0,8,0,0" Maximum="100"
|
||||
Value="{Binding Main.GpuUsage, Mode=OneWay}"
|
||||
Foreground="{StaticResource AccentPurpleBrush}"
|
||||
Background="{StaticResource BgPanelBrush}" />
|
||||
</StackPanel>
|
||||
</Border>
|
||||
|
||||
<!-- CPU Temp -->
|
||||
<Border Style="{StaticResource Card}" Margin="0,0,8,0">
|
||||
<StackPanel>
|
||||
<TextBlock Text="CPU Temperature" Style="{StaticResource MetricLabel}" />
|
||||
<TextBlock Style="{StaticResource MetricValue}" Foreground="{StaticResource AccentOrangeBrush}">
|
||||
<TextBlock.Text>
|
||||
<MultiBinding StringFormat="{}{0:F0}°C">
|
||||
<Binding Path="Main.CpuTemp" />
|
||||
</MultiBinding>
|
||||
</TextBlock.Text>
|
||||
</TextBlock>
|
||||
</StackPanel>
|
||||
</Border>
|
||||
|
||||
<!-- GPU Temp -->
|
||||
<Border Style="{StaticResource Card}" Margin="4,0,4,0">
|
||||
<StackPanel>
|
||||
<TextBlock Text="GPU Temperature" Style="{StaticResource MetricLabel}" />
|
||||
<TextBlock Style="{StaticResource MetricValue}" Foreground="{StaticResource AccentOrangeBrush}">
|
||||
<TextBlock.Text>
|
||||
<MultiBinding StringFormat="{}{0:F0}°C">
|
||||
<Binding Path="Main.GpuTemp" />
|
||||
</MultiBinding>
|
||||
</TextBlock.Text>
|
||||
</TextBlock>
|
||||
</StackPanel>
|
||||
</Border>
|
||||
|
||||
<!-- Ping -->
|
||||
<Border Style="{StaticResource Card}" Margin="8,0,0,0">
|
||||
<StackPanel>
|
||||
<TextBlock Text="Network Ping" Style="{StaticResource MetricLabel}" />
|
||||
<TextBlock Style="{StaticResource MetricValue}" Foreground="{StaticResource AccentCyanBrush}">
|
||||
<TextBlock.Text>
|
||||
<MultiBinding StringFormat="{}{0:F0} ms">
|
||||
<Binding Path="Main.PingMs" />
|
||||
</MultiBinding>
|
||||
</TextBlock.Text>
|
||||
</TextBlock>
|
||||
</StackPanel>
|
||||
</Border>
|
||||
</UniformGrid>
|
||||
</StackPanel>
|
||||
</UserControl>
|
||||
Reference in New Issue
Block a user