45 lines
1.5 KiB
C#
45 lines
1.5 KiB
C#
using Microsoft.Win32;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using Telerik.WinControls;
|
|
|
|
namespace PJ64Savestater
|
|
{
|
|
internal static class VisualThemeHelper
|
|
{
|
|
private const string THEMENAME_FLUENT = "Fluent";
|
|
private const string THEMENAME_FLUENTDARK = "FluentDark";
|
|
|
|
public static void SetVisualTheme()
|
|
{
|
|
RadThemeComponentBase? setTheme = null;
|
|
|
|
var curVers = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\Windows NT\CurrentVersion", false);
|
|
if (Convert.ToString(curVers?.GetValue("ProductName", "-"))?.StartsWith("Windows 1") ?? false)
|
|
{
|
|
var keyPersonalize = Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Themes\Personalize", false);
|
|
int useapptheme = Convert.ToInt32(keyPersonalize?.GetValue("AppsUseLightTheme", 1));
|
|
|
|
switch (useapptheme)
|
|
{
|
|
case 0:
|
|
setTheme = new Telerik.WinControls.Themes.FluentDarkTheme();
|
|
break;
|
|
case 1:
|
|
setTheme = new Telerik.WinControls.Themes.FluentTheme();
|
|
break;
|
|
}
|
|
}
|
|
|
|
if (setTheme is null)
|
|
setTheme = new Telerik.WinControls.Themes.FluentTheme();
|
|
|
|
// Set theme
|
|
ThemeResolutionService.ApplicationThemeName = setTheme.ThemeName;
|
|
}
|
|
}
|
|
}
|