Files
Shrlalgo.RvKits/WPFluent/Services/ThemeService.cs
2025-04-24 20:56:44 +08:00

45 lines
1.0 KiB
C#

using WPFluent.Appearance;
namespace WPFluent;
/// <summary>
/// Lets you set the app theme.
/// </summary>
public partial class ThemeService : IThemeService
{
/// <inheritdoc/>
public virtual ApplicationTheme GetTheme() => ApplicationThemeManager.GetAppTheme();
/// <inheritdoc/>
public bool SetAccent(Color accentColor)
{
ApplicationAccentColorManager.Apply(accentColor);
return true;
}
/// <inheritdoc/>
public bool SetAccent(SolidColorBrush accentSolidBrush)
{
Color color = accentSolidBrush.Color;
color.A = (byte)Math.Round(accentSolidBrush.Opacity * byte.MaxValue);
ApplicationAccentColorManager.Apply(color);
return true;
}
/// <inheritdoc/>
public virtual bool SetTheme(ApplicationTheme applicationTheme)
{
if (ApplicationThemeManager.GetAppTheme() == applicationTheme)
{
return false;
}
ApplicationThemeManager.Apply(applicationTheme);
return true;
}
}