namespace Yw.WpfUI.Hydro
|
{
|
/// <summary>
|
/// 抽象覆盖颜色辅助类
|
/// </summary>
|
internal class LogicalOverrideColorHelper
|
{
|
private readonly Dictionary<VisualL3d, string> _cache = new();
|
|
/// <summary>
|
/// 获取颜色
|
/// </summary>
|
public string GetColor(VisualL3d visual)
|
{
|
if (!_cache.ContainsKey(visual))
|
{
|
return default;
|
}
|
return _cache[visual];
|
}
|
|
/// <summary>
|
/// 设置颜色
|
/// </summary>
|
public void SetColor(VisualL3d visual, string htmlColor)
|
{
|
_cache[visual] = htmlColor;
|
}
|
|
/// <summary>
|
/// 设置颜色
|
/// </summary>
|
public void SetColor(List<VisualL3d> visuals, string htmlColor)
|
{
|
visuals?.ForEach(x => _cache[x] = htmlColor);
|
}
|
|
/// <summary>
|
/// 清理颜色
|
/// </summary>
|
public void ClearColor(VisualL3d visual)
|
{
|
if (!_cache.ContainsKey(visual))
|
{
|
return;
|
}
|
_cache.Remove(visual);
|
}
|
|
/// <summary>
|
/// 清理颜色
|
/// </summary>
|
public void ClearColor(List<VisualL3d> visuals)
|
{
|
visuals?.ForEach(x => ClearColor(x));
|
}
|
|
|
}
|
}
|