Option Strict On
Option Explicit On

Imports System
Imports Nexamas.UI.General
Imports Nexamas.UI.Theming
Imports Nexamas.UI.Values
Imports SkiaSharp

Namespace Nexamas.UI.Components

    Friend NotInheritable Class MASMediaControlPainter

        Private Sub New()
        End Sub

        Friend Shared Sub DrawChipSurface(canvas As SKCanvas,
                                          rect As SKRect,
                                          style As MASMediaVisualStyle,
                                          dpi As Single,
                                          selected As Boolean)
            If canvas Is Nothing OrElse style Is Nothing Then Return
            If rect.Width <= 1.0F OrElse rect.Height <= 1.0F Then Return

            Dim radius As Single = PixelSnap.SafeRadius(rect.Height * 0.32F)
            Dim fill As SKColor = If(selected, style.Control.FillSelected, style.Control.Fill)
            Using fillPaint As New SKPaint With {.IsAntialias = True, .IsDither = True, .Style = SKPaintStyle.Fill, .Color = fill}
                canvas.DrawRoundRect(rect, radius, radius, fillPaint)
            End Using
            Using strokePaint As New SKPaint With {.IsAntialias = True, .Style = SKPaintStyle.Stroke, .StrokeWidth = Math.Max(1.0F, PixelSnap.SafeDpi(dpi)), .Color = style.Control.Border}
                canvas.DrawRoundRect(rect, radius, radius, strokePaint)
            End Using
        End Sub


    End Class

End Namespace
