Files
ShrlAlgoToolkit/WPFluent/Services/IThemeService.cs
2025-04-24 20:56:44 +08:00

38 lines
1.1 KiB
C#

using WPFluent.Appearance;
namespace WPFluent;
/// <summary>
/// Represents a contract with a service that provides tools for manipulating the theme.
/// </summary>
public interface IThemeService
{
/// <summary>
/// Gets current application theme.
/// </summary>
/// <returns>Currently set application theme.</returns>
ApplicationTheme GetTheme();
/// <summary>
/// Sets current application accent.
/// </summary>
/// <returns><see langword="true"/> if the operation succeeds. <see langword="false"/> otherwise.</returns>
bool SetAccent(Color accentColor);
/// <summary>
/// Sets current application accent.
/// </summary>
/// <returns><see langword="true"/> if the operation succeeds. <see langword="false"/> otherwise.</returns>
bool SetAccent(SolidColorBrush accentSolidBrush);
/// <summary>
/// Sets current application theme.
/// </summary>
/// <param name="applicationTheme">Theme type to set.</param>
/// <returns><see langword="true"/> if the operation succeeds. <see langword="false"/> otherwise.</returns>
bool SetTheme(ApplicationTheme applicationTheme);
}