56 lines
1.7 KiB
C#
56 lines
1.7 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 system theme.
|
|
/// </summary>
|
|
/// <returns>Currently set Windows theme using system enumeration.</returns>
|
|
SystemTheme GetNativeSystemTheme();
|
|
|
|
/// <summary>
|
|
/// Gets current system theme.
|
|
/// </summary>
|
|
/// <returns>Currently set Windows theme.</returns>
|
|
ApplicationTheme GetSystemTheme();
|
|
|
|
/// <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 currently used Windows OS accent.
|
|
/// </summary>
|
|
/// <returns><see langword="true"/> if the operation succeeds. <see langword="false"/> otherwise.</returns>
|
|
bool SetSystemAccent();
|
|
|
|
/// <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);
|
|
}
|