40 lines
955 B
C#
40 lines
955 B
C#
using System;
|
|
using System.Drawing;
|
|
|
|
namespace Dashboard.Drawing
|
|
{
|
|
public class BrushExtension : DrawExtension
|
|
{
|
|
private BrushExtension() : base("DB_Brush") { }
|
|
|
|
public static readonly BrushExtension Instance = new BrushExtension();
|
|
}
|
|
|
|
public interface IBrush : IDrawResource
|
|
{
|
|
}
|
|
|
|
public readonly struct SolidBrush : IBrush
|
|
{
|
|
public IDrawExtension Kind { get; } = SolidBrushExtension.Instance;
|
|
public Color Color { get; }
|
|
|
|
public SolidBrush(Color color)
|
|
{
|
|
Color = color;
|
|
}
|
|
|
|
public override int GetHashCode()
|
|
{
|
|
return HashCode.Combine(Kind, Color);
|
|
}
|
|
}
|
|
|
|
public class SolidBrushExtension : DrawExtension
|
|
{
|
|
private SolidBrushExtension() : base("DB_Brush_solid", new[] { BrushExtension.Instance }) { }
|
|
|
|
public static readonly SolidBrushExtension Instance = new SolidBrushExtension();
|
|
}
|
|
}
|