CssListStyleImageProperty
More information available at
https://developer.mozilla.org/en-US/docs/Web/CSS/list-style-image
using AngleSharp.Css;
using AngleSharp.Css.Values;
using AngleSharp.Extensions;
namespace AngleSharp.Dom.Css
{
internal sealed class CssListStyleImageProperty : CssProperty, ICssListStyleImageProperty, ICssProperty
{
internal static readonly IImageSource Default = null;
internal static readonly IValueConverter<IImageSource> Converter = Converters.ImageSourceConverter.Or(Keywords.None, Default);
private IImageSource _image;
public IImageSource Image => _image;
internal CssListStyleImageProperty(CssStyleDeclaration rule)
: base(PropertyNames.ListStyleImage, rule, PropertyFlags.Inherited)
{
Reset();
}
public void SetImage(IImageSource image)
{
_image = image;
}
internal override void Reset()
{
_image = Default;
}
protected override bool IsValid(ICssValue value)
{
return Converter.TryConvert(value, SetImage);
}
}
}